Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEnrico Turri <enricoturri@seznam.cz>2018-06-25 16:27:06 +0300
committerEnrico Turri <enricoturri@seznam.cz>2018-06-25 16:27:06 +0300
commit714204b227f7db4367fc62b313cd21cba9fa9407 (patch)
tree283b8995aa85c92fcd9a1d6f56f7991b37b25521 /lib/Slic3r/GUI
parentb6b14ef8195335c4a51f052569e9deea959fbd01 (diff)
parent40b327eb116392b80835d28ef43778212a7a14a1 (diff)
Merge branch 'master' of https://github.com/prusa3d/Slic3r into time_estimate
Diffstat (limited to 'lib/Slic3r/GUI')
-rw-r--r--lib/Slic3r/GUI/Plater.pm20
-rw-r--r--lib/Slic3r/GUI/Plater/2D.pm6
2 files changed, 13 insertions, 13 deletions
diff --git a/lib/Slic3r/GUI/Plater.pm b/lib/Slic3r/GUI/Plater.pm
index 47ccb2269..9d8974afe 100644
--- a/lib/Slic3r/GUI/Plater.pm
+++ b/lib/Slic3r/GUI/Plater.pm
@@ -187,6 +187,7 @@ sub new {
if ($Slic3r::GUI::have_OpenGL) {
$self->{preview3D} = Slic3r::GUI::Plater::3DPreview->new($self->{preview_notebook}, $self->{print}, $self->{gcode_preview_data}, $self->{config});
Slic3r::GUI::_3DScene::set_active($self->{preview3D}->canvas, 0);
+ Slic3r::GUI::_3DScene::enable_legend_texture($self->{preview3D}->canvas, 1);
Slic3r::GUI::_3DScene::register_on_viewport_changed_callback($self->{preview3D}->canvas, sub { Slic3r::GUI::_3DScene::set_viewport_from_scene($self->{canvas3D}, $self->{preview3D}->canvas); });
$self->{preview_notebook}->AddPage($self->{preview3D}, L('Preview'));
$self->{preview3D_page_idx} = $self->{preview_notebook}->GetPageCount-1;
@@ -200,19 +201,18 @@ sub new {
EVT_NOTEBOOK_PAGE_CHANGED($self, $self->{preview_notebook}, sub {
my $preview = $self->{preview_notebook}->GetCurrentPage;
- if ($preview == $self->{preview3D})
- {
+ if (($preview != $self->{preview3D}) && ($preview != $self->{canvas3D})) {
+ Slic3r::GUI::_3DScene::set_active($self->{preview3D}->canvas, 0);
+ Slic3r::GUI::_3DScene::set_active($self->{canvas3D}, 0);
+ Slic3r::GUI::_3DScene::reset_current_canvas();
+ $preview->OnActivate if $preview->can('OnActivate');
+ } elsif ($preview == $self->{preview3D}) {
Slic3r::GUI::_3DScene::set_active($self->{preview3D}->canvas, 1);
Slic3r::GUI::_3DScene::set_active($self->{canvas3D}, 0);
- Slic3r::GUI::_3DScene::enable_legend_texture($self->{preview3D}->canvas, 1);
- $self->{preview3D}->load_print(1);
+ $self->{preview3D}->load_print;
# sets the canvas as dirty to force a render at the 1st idle event (wxWidgets IsShownOnScreen() is buggy and cannot be used reliably)
Slic3r::GUI::_3DScene::set_as_dirty($self->{preview3D}->canvas);
- } else {
- Slic3r::GUI::_3DScene::enable_legend_texture($self->{preview3D}->canvas, 0);
- }
-
- if ($preview == $self->{canvas3D}) {
+ } elsif ($preview == $self->{canvas3D}) {
Slic3r::GUI::_3DScene::set_active($self->{canvas3D}, 1);
Slic3r::GUI::_3DScene::set_active($self->{preview3D}->canvas, 0);
if (Slic3r::GUI::_3DScene::is_reload_delayed($self->{canvas3D})) {
@@ -222,8 +222,6 @@ sub new {
}
# sets the canvas as dirty to force a render at the 1st idle event (wxWidgets IsShownOnScreen() is buggy and cannot be used reliably)
Slic3r::GUI::_3DScene::set_as_dirty($self->{canvas3D});
- } else {
- $preview->OnActivate if $preview->can('OnActivate');
}
});
diff --git a/lib/Slic3r/GUI/Plater/2D.pm b/lib/Slic3r/GUI/Plater/2D.pm
index ad8f54ddb..83c2a5021 100644
--- a/lib/Slic3r/GUI/Plater/2D.pm
+++ b/lib/Slic3r/GUI/Plater/2D.pm
@@ -231,8 +231,10 @@ sub mouse_event {
}
$self->Refresh;
} elsif ($event->LeftUp) {
- $self->{on_instances_moved}->()
- if $self->{drag_object};
+ if ($self->{drag_object}) {
+ $self->{on_instances_moved}->();
+ Slic3r::GUI::_3DScene::reset_current_canvas();
+ }
$self->{drag_start_pos} = undef;
$self->{drag_object} = undef;
$self->SetCursor(wxSTANDARD_CURSOR);