mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-30 12:11:15 -06:00 
			
		
		
		
	Save a position and size of the settings dialog
+ Added a check of the printer technology inside can_merge_to_multipart_object() => suppress merge for the SLA printing + clear MainFrame.cpp from unused commented code
This commit is contained in:
		
							parent
							
								
									b376e2c703
								
							
						
					
					
						commit
						ba963ac404
					
				
					 3 changed files with 13 additions and 24 deletions
				
			
		|  | @ -715,16 +715,24 @@ void GUI_App::update_ui_from_settings() | |||
| void GUI_App::persist_window_geometry(wxTopLevelWindow *window, bool default_maximized) | ||||
| { | ||||
|     const std::string name = into_u8(window->GetName()); | ||||
|     wxTopLevelWindow* settings_dlg = dynamic_cast<MainFrame*>(window)->m_settings_dialog; | ||||
|     const std::string settings_dlg_name = "settings_dialog"; | ||||
| 
 | ||||
|     window->Bind(wxEVT_CLOSE_WINDOW, [=](wxCloseEvent &event) { | ||||
|         window_pos_save(window, name); | ||||
|         if (settings_dlg) | ||||
|             window_pos_save(settings_dlg, settings_dlg_name); | ||||
|         event.Skip(); | ||||
|     }); | ||||
| 
 | ||||
|     window_pos_restore(window, name, default_maximized); | ||||
|     if (settings_dlg) | ||||
|         window_pos_restore(settings_dlg, settings_dlg_name, default_maximized); | ||||
| 
 | ||||
|     on_window_geometry(window, [=]() { | ||||
|         window_pos_sanitize(window); | ||||
|         if (settings_dlg) | ||||
|             window_pos_sanitize(settings_dlg); | ||||
|     }); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -2696,6 +2696,9 @@ bool ObjectList::can_split_instances() | |||
| 
 | ||||
| bool ObjectList::can_merge_to_multipart_object() const | ||||
| { | ||||
|     if (printer_technology() == ptSLA) | ||||
|         return false; | ||||
| 
 | ||||
|     wxDataViewItemArray sels; | ||||
|     GetSelections(sels); | ||||
|     if (sels.IsEmpty()) | ||||
|  |  | |||
|  | @ -204,29 +204,6 @@ DPIFrame(NULL, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_S | |||
|         event.Skip(); | ||||
|     }); | ||||
| 
 | ||||
|     /*
 | ||||
|     Bind(wxEVT_SYS_COLOUR_CHANGED, [this](wxSysColourChangedEvent& event) | ||||
|     { | ||||
|         bool recreate_gui = false; | ||||
|         { | ||||
|             // the dialog needs to be destroyed before the call to recreate_gui()
 | ||||
|             // or sometimes the application crashes into wxDialogBase() destructor
 | ||||
|             // so we put it into an inner scope
 | ||||
|             wxMessageDialog dialog(nullptr, | ||||
|                                    _L("System color mode was changed. " | ||||
|                                       "It is possible to update the Slicer in respect to the system mode.") + "\n" + | ||||
|                                    _L("You will lose content of the plater.") + "\n\n" + | ||||
|                                    _L("Do you want to proceed?"), | ||||
|                                    wxString(SLIC3R_APP_NAME) + " - " + _L("Switching system color mode"), | ||||
|                                    wxICON_QUESTION | wxOK | wxCANCEL); | ||||
|             recreate_gui = dialog.ShowModal() == wxID_OK; | ||||
|         } | ||||
|         if (recreate_gui) | ||||
|             wxGetApp().recreate_GUI(_L("Changing of an application in respect to the system mode") + dots); | ||||
|         event.Skip(); | ||||
|     }); | ||||
|     */ | ||||
| 
 | ||||
|     wxGetApp().persist_window_geometry(this, true); | ||||
| 
 | ||||
|     update_ui_from_settings();    // FIXME (?)
 | ||||
|  | @ -350,7 +327,8 @@ void MainFrame::init_tabpanel() | |||
|     m_tabpanel->Bind(wxEVT_NOTEBOOK_PAGE_CHANGED, [this](wxEvent&) { | ||||
|         auto panel = m_tabpanel->GetCurrentPage(); | ||||
| 
 | ||||
|         if (panel == nullptr) | ||||
|         // There shouldn't be a case, when we try to select a tab, which doesn't support a printer technology
 | ||||
|         if (panel == nullptr || !static_cast<Tab*>(panel)->supports_printer_technology(m_plater->printer_technology())) | ||||
|             return; | ||||
| 
 | ||||
|         auto& tabs_list = wxGetApp().tabs_list; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 YuSanka
						YuSanka