diff --git a/MANIFEST b/MANIFEST index 035cef1a..56e61cd4 100644 --- a/MANIFEST +++ b/MANIFEST @@ -60,3 +60,30 @@ utils/stl-to-amf.pl var/Slic3r.icns var/Slic3r.ico var/Slic3r.png +var/Slic3r_128px.png +var/add.png +var/arrow_out.png +var/arrow_rotate_anticlockwise.png +var/arrow_rotate_clockwise.png +var/arrow_up.png +var/box.png +var/brick_add.png +var/brick_delete.png +var/brick_go.png +var/bricks.png +var/building.png +var/cog.png +var/cog_go.png +var/cross.png +var/delete.png +var/funnel.png +var/hourglass.png +var/layers.png +var/note.png +var/page_white_go.png +var/printer_empty.png +var/shading.png +var/shape_ungroup.png +var/spool.png +var/time.png +var/wrench.png diff --git a/lib/Slic3r/GUI/SkeinPanel.pm b/lib/Slic3r/GUI/SkeinPanel.pm index 83873d44..1b7b4383 100644 --- a/lib/Slic3r/GUI/SkeinPanel.pm +++ b/lib/Slic3r/GUI/SkeinPanel.pm @@ -34,12 +34,14 @@ sub new { my @tabs = ( $make_treebook_tab->('Slic3r::GUI::Tab::Print'), + $make_treebook_tab->('Slic3r::GUI::Tab::Filament'), $make_treebook_tab->('Slic3r::GUI::Tab::Printer'), ); $tabpanel->AddPage(Slic3r::GUI::Plater->new($tabpanel), "Plater"); $tabpanel->AddPage($tabs[0], "Print settings"); - $tabpanel->AddPage($tabs[1], "Filament/printer settings"); + $tabpanel->AddPage($tabs[1], "Filament settings"); + $tabpanel->AddPage($tabs[2], "Printer settings"); my $buttons_sizer; { diff --git a/lib/Slic3r/GUI/Tab.pm b/lib/Slic3r/GUI/Tab.pm index 70dc33de..b3489245 100644 --- a/lib/Slic3r/GUI/Tab.pm +++ b/lib/Slic3r/GUI/Tab.pm @@ -90,22 +90,6 @@ sub new { }, ]); - $self->AddOptionsPage('Cooling', 'hourglass.png', optgroups => [ - { - title => 'Enable', - options => [qw(cooling)], - }, - { - title => 'Fan settings', - options => [qw(min_fan_speed max_fan_speed bridge_fan_speed disable_fan_first_layers fan_always_on)], - }, - { - title => 'Cooling thresholds', - label_width => 250, - options => [qw(fan_below_layer_time slowdown_below_layer_time min_print_speed)], - }, - ]); - $self->AddOptionsPage('Support material', 'building.png', optgroups => [ { title => 'Support material', @@ -140,6 +124,7 @@ sub new { $self->AddOptionsPage('Advanced', 'wrench.png', optgroups => [ { title => 'Extrusion width', + label_width => 180, options => [qw(extrusion_width first_layer_extrusion_width perimeters_extrusion_width infill_extrusion_width)], }, { @@ -155,6 +140,47 @@ sub new { return $self; } +package Slic3r::GUI::Tab::Filament; + +use Wx qw(:sizer :progressdialog); +use Wx::Event qw(); +use base 'Slic3r::GUI::Tab'; + +sub new { + my $class = shift; + my ($parent) = @_; + my $self = $class->SUPER::new($parent, -1); + + $self->AddOptionsPage('Filament', 'spool.png', optgroups => [ + { + title => 'Filament', + options => [qw(filament_diameter extrusion_multiplier)], + }, + { + title => 'Temperature', + options => [qw(temperature first_layer_temperature bed_temperature first_layer_bed_temperature)], + }, + ]); + + $self->AddOptionsPage('Cooling', 'hourglass.png', optgroups => [ + { + title => 'Enable', + options => [qw(cooling)], + }, + { + title => 'Fan settings', + options => [qw(min_fan_speed max_fan_speed bridge_fan_speed disable_fan_first_layers fan_always_on)], + }, + { + title => 'Cooling thresholds', + label_width => 250, + options => [qw(fan_below_layer_time slowdown_below_layer_time min_print_speed)], + }, + ]); + + return $self; +} + package Slic3r::GUI::Tab::Printer; use Wx qw(:sizer :progressdialog); @@ -177,18 +203,14 @@ sub new { }, ]); - $self->AddOptionsPage('Extruder and filament', 'spool.png', optgroups => [ + $self->AddOptionsPage('Extruder 1', 'funnel.png', optgroups => [ { title => 'Size', options => [qw(nozzle_diameter)], }, { - title => 'Filament', - options => [qw(filament_diameter extrusion_multiplier)], - }, - { - title => 'Temperature', - options => [qw(temperature first_layer_temperature bed_temperature first_layer_bed_temperature)], + title => 'Retraction', + options => [qw(retract_length retract_lift retract_speed retract_restart_extra retract_before_travel)], }, ]); @@ -210,17 +232,6 @@ sub new { }, ]); - $self->AddOptionsPage('Retraction', 'arrow_up.png', optgroups => [ - { - title => 'Retraction', - options => [qw(retract_length retract_lift retract_speed)], - }, - { - title => 'Advanced', - options => [qw(retract_restart_extra retract_before_travel)], - }, - ]); - return $self; } diff --git a/var/funnel.png b/var/funnel.png new file mode 100644 index 00000000..d0ef56a6 Binary files /dev/null and b/var/funnel.png differ