Validate config before launching the object settings dialog

This commit is contained in:
Alessandro Ranellucci 2013-08-25 22:24:43 +02:00
parent 026e0c06e4
commit 94a7d6b941

View File

@ -1094,6 +1094,11 @@ sub object_settings_dialog {
($obj_idx, undef) = $self->selected_object; ($obj_idx, undef) = $self->selected_object;
} }
# validate config before opening the settings dialog because
# that dialog can't be closed if validation fails, but user
# can't fix any error which is outside that dialog
return unless $self->validate_config;
my $dlg = Slic3r::GUI::Plater::ObjectSettingsDialog->new($self, my $dlg = Slic3r::GUI::Plater::ObjectSettingsDialog->new($self,
object => $self->{objects}[$obj_idx], object => $self->{objects}[$obj_idx],
); );
@ -1167,6 +1172,16 @@ sub selected_object {
return ($obj_idx, $self->{objects}[$obj_idx]), return ($obj_idx, $self->{objects}[$obj_idx]),
} }
sub validate_config {
my $self = shift;
eval {
$self->skeinpanel->config->validate;
};
return 0 if Slic3r::GUI::catch_error($self);
return 1;
}
sub statusbar { sub statusbar {
my $self = shift; my $self = shift;
return $self->skeinpanel->GetParent->{statusbar}; return $self->skeinpanel->GetParent->{statusbar};