This commit is contained in:
enricoturri1966 2022-05-25 09:36:52 +02:00
parent 6047eec609
commit ed482316ee
4 changed files with 38 additions and 87 deletions

View File

@ -81,8 +81,6 @@
#define ENABLE_USED_FILAMENT_POST_PROCESS (1 && ENABLE_2_5_0_ALPHA1) #define ENABLE_USED_FILAMENT_POST_PROCESS (1 && ENABLE_2_5_0_ALPHA1)
// Enable gizmo grabbers to share common models // Enable gizmo grabbers to share common models
#define ENABLE_GIZMO_GRABBER_REFACTOR (1 && ENABLE_2_5_0_ALPHA1) #define ENABLE_GIZMO_GRABBER_REFACTOR (1 && ENABLE_2_5_0_ALPHA1)
// Disable association to 3mf and stl files if the application is run on Windows 8 or later
#define ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER (1 && ENABLE_2_5_0_ALPHA1)
#endif // _prusaslicer_technologies_h_ #endif // _prusaslicer_technologies_h_

View File

@ -1934,10 +1934,7 @@ void ConfigWizard::priv::load_pages()
index->add_page(page_update); index->add_page(page_update);
index->add_page(page_reload_from_disk); index->add_page(page_reload_from_disk);
#ifdef _WIN32 #ifdef _WIN32
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER index->add_page(page_files_association);
if (page_files_association != nullptr)
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
index->add_page(page_files_association);
#endif // _WIN32 #endif // _WIN32
index->add_page(page_mode); index->add_page(page_mode);
@ -2750,32 +2747,20 @@ bool ConfigWizard::priv::apply_config(AppConfig *app_config, PresetBundle *prese
app_config->set("export_sources_full_pathnames", page_reload_from_disk->full_pathnames ? "1" : "0"); app_config->set("export_sources_full_pathnames", page_reload_from_disk->full_pathnames ? "1" : "0");
#ifdef _WIN32 #ifdef _WIN32
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER app_config->set("associate_3mf", page_files_association->associate_3mf() ? "1" : "0");
if (page_files_association != nullptr) { app_config->set("associate_stl", page_files_association->associate_stl() ? "1" : "0");
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER // app_config->set("associate_gcode", page_files_association->associate_gcode() ? "1" : "0");
app_config->set("associate_3mf", page_files_association->associate_3mf() ? "1" : "0");
app_config->set("associate_stl", page_files_association->associate_stl() ? "1" : "0");
// app_config->set("associate_gcode", page_files_association->associate_gcode() ? "1" : "0");
if (wxGetApp().is_editor()) { if (wxGetApp().is_editor()) {
if (page_files_association->associate_3mf()) if (page_files_association->associate_3mf())
wxGetApp().associate_3mf_files(); wxGetApp().associate_3mf_files();
if (page_files_association->associate_stl()) if (page_files_association->associate_stl())
wxGetApp().associate_stl_files(); wxGetApp().associate_stl_files();
}
// else {
// if (page_files_association->associate_gcode())
// wxGetApp().associate_gcode_files();
// }
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
} }
else { // else {
app_config->set("associate_3mf", "0"); // if (page_files_association->associate_gcode())
app_config->set("associate_stl", "0"); // wxGetApp().associate_gcode_files();
// app_config->set("associate_gcode", "0"); // }
}
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
#endif // _WIN32 #endif // _WIN32
page_mode->serialize_mode(app_config); page_mode->serialize_mode(app_config);
@ -2935,11 +2920,7 @@ ConfigWizard::ConfigWizard(wxWindow *parent)
p->add_page(p->page_update = new PageUpdate(this)); p->add_page(p->page_update = new PageUpdate(this));
p->add_page(p->page_reload_from_disk = new PageReloadFromDisk(this)); p->add_page(p->page_reload_from_disk = new PageReloadFromDisk(this));
#ifdef _WIN32 #ifdef _WIN32
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER p->add_page(p->page_files_association = new PageFilesAssociation(this));
// file association is not possible anymore starting with Win 8
if (wxPlatformInfo::Get().GetOSMajorVersion() < 8)
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
p->add_page(p->page_files_association = new PageFilesAssociation(this));
#endif // _WIN32 #endif // _WIN32
p->add_page(p->page_mode = new PageMode(this)); p->add_page(p->page_mode = new PageMode(this));
p->add_page(p->page_firmware = new PageFirmware(this)); p->add_page(p->page_firmware = new PageFirmware(this));

View File

@ -1203,17 +1203,10 @@ bool GUI_App::on_init_inner()
if (is_editor()) { if (is_editor()) {
#ifdef __WXMSW__ #ifdef __WXMSW__
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER if (app_config->get("associate_3mf") == "1")
// file association is not possible anymore starting with Win 8 associate_3mf_files();
if (wxPlatformInfo::Get().GetOSMajorVersion() < 8) { if (app_config->get("associate_stl") == "1")
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER associate_stl_files();
if (app_config->get("associate_3mf") == "1")
associate_3mf_files();
if (app_config->get("associate_stl") == "1")
associate_stl_files();
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
}
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
#endif // __WXMSW__ #endif // __WXMSW__
preset_updater = new PresetUpdater(); preset_updater = new PresetUpdater();
@ -1251,15 +1244,8 @@ bool GUI_App::on_init_inner()
} }
else { else {
#ifdef __WXMSW__ #ifdef __WXMSW__
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER if (app_config->get("associate_gcode") == "1")
// file association is not possible anymore starting with Win 8 associate_gcode_files();
if (wxPlatformInfo::Get().GetOSMajorVersion() < 8) {
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
if (app_config->get("associate_gcode") == "1")
associate_gcode_files();
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
}
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
#endif // __WXMSW__ #endif // __WXMSW__
} }
@ -2432,23 +2418,16 @@ void GUI_App::open_preferences(const std::string& highlight_option /*= std::stri
this->plater_->refresh_print(); this->plater_->refresh_print();
#ifdef _WIN32 #ifdef _WIN32
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER if (is_editor()) {
// file association is not possible anymore starting with Win 8 if (app_config->get("associate_3mf") == "1")
if (wxPlatformInfo::Get().GetOSMajorVersion() < 8) { associate_3mf_files();
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER if (app_config->get("associate_stl") == "1")
if (is_editor()) { associate_stl_files();
if (app_config->get("associate_3mf") == "1") }
associate_3mf_files(); else {
if (app_config->get("associate_stl") == "1") if (app_config->get("associate_gcode") == "1")
associate_stl_files(); associate_gcode_files();
}
else {
if (app_config->get("associate_gcode") == "1")
associate_gcode_files();
}
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
} }
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
#endif // _WIN32 #endif // _WIN32
if (mainframe->preferences_dialog->settings_layout_changed()) { if (mainframe->preferences_dialog->settings_layout_changed()) {

View File

@ -230,23 +230,16 @@ void PreferencesDialog::build()
app_config->get("export_sources_full_pathnames") == "1"); app_config->get("export_sources_full_pathnames") == "1");
#ifdef _WIN32 #ifdef _WIN32
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER // Please keep in sync with ConfigWizard
// file association is not possible anymore starting with Win 8 append_bool_option(m_optgroup_general, "associate_3mf",
if (wxPlatformInfo::Get().GetOSMajorVersion() < 8) { L("Associate .3mf files to PrusaSlicer"),
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER L("If enabled, sets PrusaSlicer as default application to open .3mf files."),
// Please keep in sync with ConfigWizard app_config->get("associate_3mf") == "1");
append_bool_option(m_optgroup_general, "associate_3mf",
L("Associate .3mf files to PrusaSlicer"),
L("If enabled, sets PrusaSlicer as default application to open .3mf files."),
app_config->get("associate_3mf") == "1");
append_bool_option(m_optgroup_general, "associate_stl", append_bool_option(m_optgroup_general, "associate_stl",
L("Associate .stl files to PrusaSlicer"), L("Associate .stl files to PrusaSlicer"),
L("If enabled, sets PrusaSlicer as default application to open .stl files."), L("If enabled, sets PrusaSlicer as default application to open .stl files."),
app_config->get("associate_stl") == "1"); app_config->get("associate_stl") == "1");
#if ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
}
#endif // ENABLE_REMOVE_ASSOCIATION_TO_FILE_FOR_WINDOWS_8_AND_LATER
#endif // _WIN32 #endif // _WIN32
m_optgroup_general->append_separator(); m_optgroup_general->append_separator();