mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-31 04:31:15 -06:00 
			
		
		
		
	Hopefuly a fix of https://github.com/prusa3d/Slic3r/issues/116
Enabling / disabling of the layer editing button on OSX & linux did not work.
This commit is contained in:
		
							parent
							
								
									e2f8ea2809
								
							
						
					
					
						commit
						fd54956d70
					
				
					 1 changed files with 32 additions and 18 deletions
				
			
		|  | @ -1636,12 +1636,21 @@ sub on_config_change { | |||
|             $self->Layout; | ||||
|         } elsif ($opt_key eq 'variable_layer_height') { | ||||
|             if ($config->get('variable_layer_height') != 1) { | ||||
|                 $self->{"btn_layer_editing"}->Disable; | ||||
|                 $self->{"btn_layer_editing"}->SetValue(0); | ||||
|                 if ($self->{htoolbar}) { | ||||
|                     $self->{htoolbar}->EnableTool(TB_LAYER_EDITING, 0); | ||||
|                     $self->{htoolbar}->ToggleTool(TB_LAYER_EDITING, 0); | ||||
|                 } else { | ||||
|                     $self->{"btn_layer_editing"}->Disable; | ||||
|                     $self->{"btn_layer_editing"}->SetValue(0); | ||||
|                 } | ||||
|                 $self->{canvas3D}->layer_editing_enabled(0); | ||||
|                 $self->{canvas3D}->update; | ||||
|             } else { | ||||
|                 $self->{"btn_layer_editing"}->Enable; | ||||
|                 if ($self->{htoolbar}) { | ||||
|                     $self->{htoolbar}->EnableTool(TB_LAYER_EDITING, 1); | ||||
|                 } else { | ||||
|                     $self->{"btn_layer_editing"}->Enable; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | @ -1746,25 +1755,28 @@ sub object_settings_dialog { | |||
| # whether background processing (export of a G-code, sending to Octoprint, forced background re-slicing) is active. | ||||
| sub object_list_changed { | ||||
|     my $self = shift; | ||||
|      | ||||
|          | ||||
|     # Enable/disable buttons depending on whether there are any objects on the platter. | ||||
|     my $have_objects = @{$self->{objects}} ? 1 : 0; | ||||
|     my $method = $have_objects ? 'Enable' : 'Disable'; | ||||
|     $self->{"btn_$_"}->$method | ||||
|         for grep $self->{"btn_$_"}, qw(reset arrange reslice export_gcode export_stl print send_gcode layer_editing); | ||||
|     $self->{"btn_layer_editing"}->Disable if (! $self->{config}->variable_layer_height); | ||||
|      | ||||
|     if ($self->{htoolbar}) { | ||||
|         # On OSX or Linux | ||||
|         $self->{htoolbar}->EnableTool($_, $have_objects) | ||||
|             for (TB_RESET, TB_ARRANGE, TB_LAYER_EDITING); | ||||
|         $self->{htoolbar}->EnableTool(TB_LAYER_EDITING, 0) if (! $self->{config}->variable_layer_height); | ||||
|     } else { | ||||
|         # On MSW | ||||
|         my $method = $have_objects ? 'Enable' : 'Disable'; | ||||
|         $self->{"btn_$_"}->$method | ||||
|             for grep $self->{"btn_$_"}, qw(reset arrange reslice export_gcode export_stl print send_gcode layer_editing); | ||||
|         $self->{"btn_layer_editing"}->Disable if (! $self->{config}->variable_layer_height); | ||||
|     } | ||||
| 
 | ||||
|     if ($self->{export_gcode_output_file} || $self->{send_gcode_file}) { | ||||
|         $self->{btn_reslice}->Disable; | ||||
|         $self->{btn_export_gcode}->Disable; | ||||
|         $self->{btn_print}->Disable; | ||||
|         $self->{btn_send_gcode}->Disable; | ||||
|     } | ||||
|      | ||||
|     if ($self->{htoolbar}) { | ||||
|         $self->{htoolbar}->EnableTool($_, $have_objects) | ||||
|             for (TB_RESET, TB_ARRANGE); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| sub selection_changed { | ||||
|  | @ -1773,13 +1785,15 @@ sub selection_changed { | |||
|     my ($obj_idx, $object) = $self->selected_object; | ||||
|     my $have_sel = defined $obj_idx; | ||||
|      | ||||
|     my $method = $have_sel ? 'Enable' : 'Disable'; | ||||
|     $self->{"btn_$_"}->$method | ||||
|         for grep $self->{"btn_$_"}, qw(remove increase decrease rotate45cw rotate45ccw changescale split cut settings); | ||||
|      | ||||
|     if ($self->{htoolbar}) { | ||||
|         # On OSX or Linux | ||||
|         $self->{htoolbar}->EnableTool($_, $have_sel) | ||||
|             for (TB_REMOVE, TB_MORE, TB_FEWER, TB_45CW, TB_45CCW, TB_SCALE, TB_SPLIT, TB_CUT, TB_SETTINGS); | ||||
|     } else { | ||||
|         # On MSW | ||||
|         my $method = $have_sel ? 'Enable' : 'Disable'; | ||||
|         $self->{"btn_$_"}->$method | ||||
|             for grep $self->{"btn_$_"}, qw(remove increase decrease rotate45cw rotate45ccw changescale split cut settings); | ||||
|     } | ||||
|      | ||||
|     if ($self->{object_info_size}) { # have we already loaded the info pane? | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 bubnikv
						bubnikv