diff --git a/lib/Slic3r/GUI/Plater.pm b/lib/Slic3r/GUI/Plater.pm index 3ce193a7c..d8d11f3e2 100644 --- a/lib/Slic3r/GUI/Plater.pm +++ b/lib/Slic3r/GUI/Plater.pm @@ -435,7 +435,7 @@ sub new { my $print_info_sizer; { - my $box = Wx::StaticBox->new($self, -1, "Sliced Info"); + my $box = Wx::StaticBox->new($self, -1, "Print Summary"); $print_info_sizer = Wx::StaticBoxSizer->new($box, wxVERTICAL); $print_info_sizer->SetMinSize([350,-1]); my $grid_sizer = Wx::FlexGridSizer->new(2, 2, 5, 5); @@ -444,9 +444,7 @@ sub new { $grid_sizer->AddGrowableCol(3, 1); $print_info_sizer->Add($grid_sizer, 0, wxEXPAND); my @info = ( - fil_cm => "Used Filament (cm)", - fil_cm3 => "Used Filament (cm^3)", - fil_g => "Used Filament (g)", + fil => "Used Filament", cost => "Cost", ); while (my $field = shift @info) { @@ -1398,10 +1396,22 @@ sub on_export_completed { $self->send_gcode if $send_gcode; $self->{print_file} = undef; $self->{send_gcode_file} = undef; - $self->{"print_info_cost"}->SetLabel(sprintf("%.2f" , $self->{print}->total_cost)); - $self->{"print_info_fil_g"}->SetLabel(sprintf("%.2f" , $self->{print}->total_weight)); - $self->{"print_info_fil_cm3"}->SetLabel(sprintf("%.2f" , $self->{print}->total_extruded_volume) / 1000); - $self->{"print_info_fil_cm"}->SetLabel(sprintf("%.2f" , $self->{print}->total_used_filament) / 10); + + { + my $fil = sprintf( + '%.2fcm (%.2fcm³%s)', + $self->{print}->total_used_filament / 10, + $self->{print}->total_extruded_volume / 1000, + $self->{print}->total_weight + ? sprintf(', %.2fg', $self->{print}->total_weight) + : '', + ); + my $cost = $self->{print}->total_cost + ? sprintf("%.2f" , $self->{print}->total_cost) + : 'n.a.'; + $self->{print_info_fil}->SetLabel($fil); + $self->{print_info_cost}->SetLabel($cost); + } # this updates buttons status $self->object_list_changed; diff --git a/lib/Slic3r/GUI/Tab.pm b/lib/Slic3r/GUI/Tab.pm index 1b61e3f38..6f772d2b7 100644 --- a/lib/Slic3r/GUI/Tab.pm +++ b/lib/Slic3r/GUI/Tab.pm @@ -916,12 +916,7 @@ sub build { $optgroup->append_single_option_line('filament_colour', 0); $optgroup->append_single_option_line('filament_diameter', 0); $optgroup->append_single_option_line('extrusion_multiplier', 0); - $optgroup->append_single_option_line('filament_density', 0); - $optgroup->append_single_option_line('filament_cost', 0); } - - - { my $optgroup = $page->new_optgroup('Temperature (°C)'); @@ -943,6 +938,11 @@ sub build { $optgroup->append_line($line); } } + { + my $optgroup = $page->new_optgroup('Optional information'); + $optgroup->append_single_option_line('filament_density', 0); + $optgroup->append_single_option_line('filament_cost', 0); + } } { @@ -1008,7 +1008,7 @@ sub build { } } { - my $page = $self->add_options_page('Custom G-code', 'cog.png'); + my $page = $self->add_options_page('Custom G-code', 'script.png'); { my $optgroup = $page->new_optgroup('Start G-code', label_width => 0, @@ -1237,7 +1237,7 @@ sub build { } } { - my $page = $self->add_options_page('Custom G-code', 'cog.png'); + my $page = $self->add_options_page('Custom G-code', 'script.png'); { my $optgroup = $page->new_optgroup('Start G-code', label_width => 0, diff --git a/var/script.png b/var/script.png new file mode 100755 index 000000000..0f9ed4d48 Binary files /dev/null and b/var/script.png differ diff --git a/xs/src/libslic3r/PrintConfig.cpp b/xs/src/libslic3r/PrintConfig.cpp index caeaaf8da..586661510 100644 --- a/xs/src/libslic3r/PrintConfig.cpp +++ b/xs/src/libslic3r/PrintConfig.cpp @@ -382,7 +382,7 @@ PrintConfigDef::PrintConfigDef() def = this->add("filament_density", coFloats); def->label = "Density"; def->tooltip = "Enter your filament density here. This is only for statistical information. A decent way is to weigh a known length of filament and compute the ratio of the length to volume. Better is to calculate the volume directly through displacement."; - def->sidetext = "g/cm^3"; + def->sidetext = "g/cm³"; def->cli = "filament-density=f@"; def->min = 0; { @@ -909,7 +909,7 @@ PrintConfigDef::PrintConfigDef() def->default_value = new ConfigOptionFloat(4); def = this->add("resolution", coFloat); - def->label = "Resolution"; + def->label = "Resolution (deprecated)"; def->tooltip = "Minimum detail resolution, used to simplify the input file for speeding up the slicing job and reducing memory usage. High-resolution models often carry more detail than printers can render. Set to zero to disable any simplification and use full resolution from input."; def->sidetext = "mm"; def->cli = "resolution=f";