diff --git a/lib/Slic3r/GUI/Plater/2DToolpaths.pm b/lib/Slic3r/GUI/Plater/2DToolpaths.pm index 2faf59fa0..208d85a59 100644 --- a/lib/Slic3r/GUI/Plater/2DToolpaths.pm +++ b/lib/Slic3r/GUI/Plater/2DToolpaths.pm @@ -91,10 +91,15 @@ sub reload_print { $z{$layer->print_z} = 1; } } + $self->enabled(1); $self->{layers_z} = [ sort { $a <=> $b } keys %z ]; $self->{slider}->SetRange(0, scalar(@{$self->{layers_z}})-1); - $self->enabled(1); - $self->set_z($self->{layers_z}[0]) if @{$self->{layers_z}}; + if ((my $z_idx = $self->{slider}->GetValue) <= $#{$self->{layers_z}}) { + $self->set_z($self->{layers_z}[$z_idx]); + } else { + $self->{slider}->SetValue(0); + $self->set_z($self->{layers_z}[0]) if @{$self->{layers_z}}; + } $self->{slider}->Show; $self->Layout; }