From 2d27451cb63498e8bd14aa552d40cebdbcac8578 Mon Sep 17 00:00:00 2001 From: Joseph Lenox Date: Mon, 5 Apr 2021 00:54:48 -0500 Subject: [PATCH] test merge --- resources/icons/PrusaSlicer_logo.svg | 5 + resources/icons/Slic3r_logo.png | Bin 0 -> 53328 bytes resources/icons/SuperSlicer-console.ico | Bin 0 -> 17542 bytes resources/icons/SuperSlicer-gcodeviewer.ico | Bin 0 -> 120230 bytes .../icons/SuperSlicer-gcodeviewer_128px.png | Bin 0 -> 21435 bytes .../icons/SuperSlicer-gcodeviewer_192px.png | Bin 0 -> 25814 bytes .../icons/SuperSlicer-gcodeviewer_32px.png | Bin 0 -> 4590 bytes resources/icons/SuperSlicer.icns | Bin 0 -> 34257 bytes resources/icons/SuperSlicer.ico | Bin 0 -> 102134 bytes resources/icons/SuperSlicer.png | Bin 0 -> 14688 bytes resources/icons/SuperSlicer_128px.png | Bin 0 -> 11866 bytes resources/icons/SuperSlicer_192px.png | Bin 0 -> 19642 bytes .../icons/SuperSlicer_192px_transparent.png | Bin 0 -> 18588 bytes resources/icons/SuperSlicer_32px.png | Bin 0 -> 6213 bytes ...a_slicer_logo.svg => SuperSlicer_logo.svg} | 0 resources/icons/printer_cog.svg | 114 +++++++ resources/icons/spool_cog.svg | 121 +++++++ resources/icons/super_slicer_logo.svg | 68 ---- src/CMakeLists.txt | 11 +- src/PrusaSlicer.cpp | 2 +- src/PrusaSlicer_app_msvc.cpp | 3 +- src/libslic3r/AppConfig.cpp | 2 +- src/libslic3r/GCode/GCodeProcessor.cpp | 2 +- src/libslic3r/libslic3r.h | 3 - src/libslic3r/libslic3r_version.h.in | 12 + ...er-gcodeviewer.rc.in => gcodeviewer.rc.in} | 0 src/slic3r/GUI/AboutDialog.cpp | 4 +- src/slic3r/GUI/Field.cpp | 22 +- src/slic3r/GUI/GCodeViewer.cpp | 4 +- src/slic3r/GUI/GLCanvas3D.cpp | 14 +- src/slic3r/GUI/GUI_App.cpp | 15 +- src/slic3r/GUI/KBShortcutsDialog.cpp | 12 +- src/slic3r/GUI/MainFrame.cpp | 316 +++++++++++++----- src/slic3r/GUI/MainFrame.hpp | 31 +- src/slic3r/GUI/NotificationManager.hpp | 2 +- src/slic3r/GUI/Plater.cpp | 21 +- src/slic3r/GUI/Plater.hpp | 1 - src/slic3r/GUI/Preferences.cpp | 16 +- src/slic3r/GUI/PresetComboBoxes.cpp | 2 +- src/slic3r/GUI/UnsavedChangesDialog.cpp | 2 +- src/slic3r/GUI/UpdateDialogs.cpp | 7 +- src/slic3r/Utils/Process.cpp | 10 +- version.inc | 9 + 43 files changed, 597 insertions(+), 234 deletions(-) create mode 100644 resources/icons/PrusaSlicer_logo.svg create mode 100644 resources/icons/Slic3r_logo.png create mode 100644 resources/icons/SuperSlicer-console.ico create mode 100644 resources/icons/SuperSlicer-gcodeviewer.ico create mode 100644 resources/icons/SuperSlicer-gcodeviewer_128px.png create mode 100644 resources/icons/SuperSlicer-gcodeviewer_192px.png create mode 100644 resources/icons/SuperSlicer-gcodeviewer_32px.png create mode 100644 resources/icons/SuperSlicer.icns create mode 100644 resources/icons/SuperSlicer.ico create mode 100644 resources/icons/SuperSlicer.png create mode 100644 resources/icons/SuperSlicer_128px.png create mode 100644 resources/icons/SuperSlicer_192px.png create mode 100644 resources/icons/SuperSlicer_192px_transparent.png create mode 100644 resources/icons/SuperSlicer_32px.png rename resources/icons/{prusa_slicer_logo.svg => SuperSlicer_logo.svg} (100%) create mode 100644 resources/icons/printer_cog.svg create mode 100644 resources/icons/spool_cog.svg delete mode 100644 resources/icons/super_slicer_logo.svg rename src/platform/msw/{PrusaSlicer-gcodeviewer.rc.in => gcodeviewer.rc.in} (100%) diff --git a/resources/icons/PrusaSlicer_logo.svg b/resources/icons/PrusaSlicer_logo.svg new file mode 100644 index 000000000..927c3e70b --- /dev/null +++ b/resources/icons/PrusaSlicer_logo.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/icons/Slic3r_logo.png b/resources/icons/Slic3r_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..9c278f6f0af135050d4f6c97c4eaef6840cd0e62 GIT binary patch literal 53328 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 Tl(=aLyt_&8J!-81Df9j>DN1cu literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer-gcodeviewer.ico b/resources/icons/SuperSlicer-gcodeviewer.ico new file mode 100644 index 0000000000000000000000000000000000000000..01ed65b6ad3e29e084f689bd30ae27020269d7d0 GIT binary patch literal 120230 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 JPDHLkV1iF>fR6wG literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer-gcodeviewer_192px.png b/resources/icons/SuperSlicer-gcodeviewer_192px.png new file mode 100644 index 0000000000000000000000000000000000000000..d0b6b07427eec2b0c27e5548acb975165788fbb1 GIT binary patch literal 25814 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 literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer-gcodeviewer_32px.png b/resources/icons/SuperSlicer-gcodeviewer_32px.png new file mode 100644 index 0000000000000000000000000000000000000000..40d7a46fc02fad7126123f3b25a4d13eb70e90aa GIT binary patch literal 4590 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 Y2aw^M(?8-7jQ{`u07*qoM6N<$g1=kHW&i*H literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer.icns b/resources/icons/SuperSlicer.icns new file mode 100644 index 0000000000000000000000000000000000000000..04a2be211b1122e6f186ace19065add48b960bf1 GIT binary patch literal 34257 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

2w+SDb^n($n&_auPQZjNjxBaY=4oswiEEqJ?ur+ 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 M?~>Xnr9Aup1Gkbz4FCWD literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer.png b/resources/icons/SuperSlicer.png new file mode 100644 index 0000000000000000000000000000000000000000..d480dc881e40f55d5120c1b8d2d8fca979b72f7f GIT binary patch literal 14688 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 iv=gC2Ra%q&wf`UbQz;waz0SA*0000L- literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer_128px.png b/resources/icons/SuperSlicer_128px.png new file mode 100644 index 0000000000000000000000000000000000000000..006e95f517b49a21787d4f42e70abee45bd298e3 GIT binary patch literal 11866 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 literal 0 HcmV?d00001 diff --git a/resources/icons/SuperSlicer_192px.png b/resources/icons/SuperSlicer_192px.png new file mode 100644 index 0000000000000000000000000000000000000000..2e08916fcc8edd18828b6aef35e68c01b813dcdd GIT binary patch literal 19642 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

Q%y_S-5z_4HeXD#ExZnFlVG`ftr2 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 + + +image/svg+xml + + + + + + + + + + \ No newline at end of file diff --git a/resources/icons/spool_cog.svg b/resources/icons/spool_cog.svg new file mode 100644 index 000000000..fa5823588 --- /dev/null +++ b/resources/icons/spool_cog.svg @@ -0,0 +1,121 @@ + + + +image/svg+xml + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/icons/super_slicer_logo.svg b/resources/icons/super_slicer_logo.svg deleted file mode 100644 index 44dde1114..000000000 --- a/resources/icons/super_slicer_logo.svg +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - - diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 1ec5caa81..bc1ed142b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -148,8 +148,11 @@ if (WIN32) if (MINGW) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -municode") endif() + + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libslic3r/libslic3r_version.h.in ${CMAKE_CURRENT_BINARY_DIR}/libslic3r_version.h @ONLY) add_executable(Slic3r_app_gui WIN32 PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/Slic3r.rc) + target_include_directories(Slic3r_app_gui PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) # Generate debug symbols even in release mode. if(MSVC) target_link_options(Slic3r_app_gui PUBLIC "$<$:/DEBUG>") @@ -160,23 +163,25 @@ if (WIN32) target_link_libraries(Slic3r_app_gui PRIVATE boost_headeronly) add_executable(Slic3r_app_console PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/Slic3r.rc) + target_include_directories(Slic3r_app_console PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) # Generate debug symbols even in release mode. if (MSVC) target_link_options(Slic3r_app_console PUBLIC "$<$:/DEBUG>") endif () target_compile_definitions(Slic3r_app_console PRIVATE -DSLIC3R_WRAPPER_CONSOLE) add_dependencies(Slic3r_app_console Slic3r) - set_target_properties(Slic3r_app_console PROPERTIES OUTPUT_NAME "slic3r_console") + set_target_properties(Slic3r_app_console PROPERTIES OUTPUT_NAME "@SLIC3R_APP_CMD@_console") target_link_libraries(Slic3r_app_console PRIVATE boost_headeronly) - add_executable(PrusaSlicer_app_gcodeviewer WIN32 PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer-gcodeviewer.rc) + add_executable(PrusaSlicer_app_gcodeviewer WIN32 PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/gcodeviewer.rc ${CMAKE_CURRENT_BINARY_DIR}/libslic3r_version.h) + target_include_directories(PrusaSlicer_app_gcodeviewer PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) # Generate debug symbols even in release mode. if (MSVC) target_link_options(PrusaSlicer_app_gcodeviewer PUBLIC "$<$:/DEBUG>") endif () target_compile_definitions(PrusaSlicer_app_gcodeviewer PRIVATE -DSLIC3R_WRAPPER_NOCONSOLE -DSLIC3R_WRAPPER_GCODEVIEWER) add_dependencies(PrusaSlicer_app_gcodeviewer Slic3r) - set_target_properties(PrusaSlicer_app_gcodeviewer PROPERTIES OUTPUT_NAME "prusa-gcodeviewer") + set_target_properties(PrusaSlicer_app_gcodeviewer PROPERTIES OUTPUT_NAME "@GCODEVIEWER_APP_CMD@") target_link_libraries(PrusaSlicer_app_gcodeviewer PRIVATE boost_headeronly) endif () diff --git a/src/PrusaSlicer.cpp b/src/PrusaSlicer.cpp index 9f0cda32b..fa6bf6708 100644 --- a/src/PrusaSlicer.cpp +++ b/src/PrusaSlicer.cpp @@ -671,7 +671,7 @@ void CLI::print_help(bool include_print_options, PrinterTechnology printer_techn << " (without GUI support)" #endif /* SLIC3R_GUI */ << std::endl - << "https://github.com/supermerill/SuperSlicer" << std::endl << std::endl + << "https://github.com/" << SLIC3R_GITHUB << std::endl << std::endl << "Usage: superslicer [ ACTIONS ] [ TRANSFORM ] [ OPTIONS ] [ file.stl ... ]" << std::endl << std::endl << "Actions:" << std::endl; diff --git a/src/PrusaSlicer_app_msvc.cpp b/src/PrusaSlicer_app_msvc.cpp index 6031b4a43..336503587 100644 --- a/src/PrusaSlicer_app_msvc.cpp +++ b/src/PrusaSlicer_app_msvc.cpp @@ -6,6 +6,7 @@ #include #include #include +#include "libslic3r/libslic3r_version.h" @@ -286,7 +287,7 @@ int wmain(int argc, wchar_t **argv) // printf("Loading Slic3r library: %S\n", path_to_slic3r); HINSTANCE hInstance_Slic3r = LoadLibraryExW(path_to_slic3r, nullptr, 0); if (hInstance_Slic3r == nullptr) { - printf("Slic3r.dll was not loaded, error code: %d\n", GetLastError()); + printf(SLIC3R_APP_NAME ".dll was not loaded, error code: %d\n", GetLastError()); return -1; } diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp index 6790486a9..d97f44176 100644 --- a/src/libslic3r/AppConfig.cpp +++ b/src/libslic3r/AppConfig.cpp @@ -24,7 +24,7 @@ namespace Slic3r { static const std::string VENDOR_PREFIX = "vendor:"; static const std::string MODEL_PREFIX = "model:"; -static const std::string VERSION_CHECK_URL = "https://api.github.com/repos/slic3r/Slic3r/releases"; +static const std::string VERSION_CHECK_URL = "https://api.github.com/repos/" SLIC3R_GITHUB "/releases"; const std::string AppConfig::SECTION_FILAMENTS = "filaments"; const std::string AppConfig::SECTION_MATERIALS = "sla_materials"; diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp index 4d6d2df54..9e002c69b 100644 --- a/src/libslic3r/GCode/GCodeProcessor.cpp +++ b/src/libslic3r/GCode/GCodeProcessor.cpp @@ -863,7 +863,7 @@ void GCodeProcessor::process_file(const std::string& filename, bool apply_postpr } }); - // if the gcode was produced by Slic3r, + // if the gcode was produced by this slicer, // extract the config from it try { if (m_producer == EProducer::PrusaSlicer || m_producer == EProducer::SuperSlicer || m_producer == EProducer::Slic3rPE || m_producer == EProducer::Slic3r) { diff --git a/src/libslic3r/libslic3r.h b/src/libslic3r/libslic3r.h index 65a519b3f..a5e8f98dd 100644 --- a/src/libslic3r/libslic3r.h +++ b/src/libslic3r/libslic3r.h @@ -2,9 +2,6 @@ #define _libslic3r_h_ #include "libslic3r_version.h" -#define GCODEVIEWER_APP_NAME "PrusaSlicer G-code Viewer" -#define GCODEVIEWER_APP_KEY "PrusaSlicerGcodeViewer" -#define GCODEVIEWER_BUILD_ID std::string("PrusaSlicer G-code Viewer-") + std::string(SLIC3R_VERSION) + std::string("-UNKNOWN") // this needs to be included early for MSVC (listing it in Build.PL is not enough) #include diff --git a/src/libslic3r/libslic3r_version.h.in b/src/libslic3r/libslic3r_version.h.in index c93610c2e..c5de9cd02 100644 --- a/src/libslic3r/libslic3r_version.h.in +++ b/src/libslic3r/libslic3r_version.h.in @@ -4,8 +4,20 @@ #define SLIC3R_APP_NAME "@SLIC3R_APP_NAME@" #define SLIC3R_APP_WNAME L"@SLIC3R_APP_NAME@" #define SLIC3R_APP_KEY "@SLIC3R_APP_KEY@" +#define SLIC3R_APP_CMD "@SLIC3R_APP_CMD@" +#define SLIC3R_APP_WCMD L"@SLIC3R_APP_CMD@" #define SLIC3R_VERSION "@SLIC3R_VERSION@" #define SLIC3R_VERSION_FULL "@SLIC3R_VERSION_FULL@" #define SLIC3R_BUILD_ID "@SLIC3R_BUILD_ID@" +#define GCODEVIEWER_APP_NAME "@GCODEVIEWER_APP_NAME@" +#define GCODEVIEWER_APP_KEY "@GCODEVIEWER_APP_KEY@" +#define GCODEVIEWER_APP_CMD "@GCODEVIEWER_APP_CMD@" +#define GCODEVIEWER_APP_WCMD L"@GCODEVIEWER_APP_CMD@" +#define GCODEVIEWER_BUILD_ID GCODEVIEWER_APP_NAME "-" SLIC3R_VERSION "-UNKNOWN" + +#define SLIC3R_BASED_ON "@SLIC3R_BASED_ON@" +#define SLIC3R_GITHUB "@SLIC3R_GITHUB@" +#define SLIC3R_INTRO "@SLIC3R_INTRO@" + #endif /* __SLIC3R_VERSION_H */ diff --git a/src/platform/msw/PrusaSlicer-gcodeviewer.rc.in b/src/platform/msw/gcodeviewer.rc.in similarity index 100% rename from src/platform/msw/PrusaSlicer-gcodeviewer.rc.in rename to src/platform/msw/gcodeviewer.rc.in diff --git a/src/slic3r/GUI/AboutDialog.cpp b/src/slic3r/GUI/AboutDialog.cpp index 33ac4def7..b7b4137ec 100644 --- a/src/slic3r/GUI/AboutDialog.cpp +++ b/src/slic3r/GUI/AboutDialog.cpp @@ -81,6 +81,8 @@ CopyrightsDialog::CopyrightsDialog() void CopyrightsDialog::fill_entries() { m_entries = { + { "Slic3r" , "2021 Slic3r" , "https://github.com/slic3r/slic3r" }, + { "Prusaslicer" , "2021 PrusaResearch" , "https://github.com/prusa3d/PrusaSlicer" }, { "wxWidgets" , "2019 wxWidgets" , "https://www.wxwidgets.org/" }, { "OpenGL" , "1997-2019 The Khronos Group Inc" , "https://www.opengl.org/" }, { "GNU gettext" , "1998, 2019 Free Software Foundation, Inc." , "https://www.gnu.org/software/gettext/" }, @@ -266,7 +268,7 @@ AboutDialog::AboutDialog() // TRN "Slic3r _is licensed under the_ License" const std::string is_lecensed_str = _utf8(L("is licensed under the")); const std::string license_str = _utf8(L("GNU Affero General Public License, version 3")); - const std::string based_on_str = _utf8(L("")); + const std::string based_on_str = _utf8(L(SLIC3R_INTRO)); const std::string contributors_str = _utf8(L("Contributions by Henrik Brix Andersen, Nicolas Dandrimont, Mark Hindess, Petr Ledvina, Joseph Lenox, Y. Sapir, Mike Sheldrake, Vojtech Bubnik, Durand Rémi and numerous others.")); const auto text = from_u8( (boost::format( diff --git a/src/slic3r/GUI/Field.cpp b/src/slic3r/GUI/Field.cpp index 8a4e3ac3e..1ecc94bd4 100644 --- a/src/slic3r/GUI/Field.cpp +++ b/src/slic3r/GUI/Field.cpp @@ -112,16 +112,18 @@ void Field::PostInitialize() BUILD(); // For the mode, when settings are in non-modal dialog, neither dialog nor tabpanel doesn't receive wxEVT_KEY_UP event, when some field is selected. - // So, like a workaround check wxEVT_KEY_UP event for the Filed and switch between tabs if Ctrl+(1-4) was pressed + // So, like a workaround check wxEVT_KEY_UP event for the Filed and switch between tabs if Ctrl+(1-6) was pressed if (getWindow()) getWindow()->Bind(wxEVT_KEY_UP, [](wxKeyEvent& evt) { if ((evt.GetModifiers() & wxMOD_CONTROL) != 0) { - int tab_id = -1; - switch (evt.GetKeyCode()) { - case '1': { tab_id = 0; break; } - case '2': { tab_id = 1; break; } - case '3': { tab_id = 2; break; } - case '4': { tab_id = 3; break; } + MainFrame::ETabType tab_id = MainFrame::ETabType::Any; + switch (evt.GetKeyCode()) { + case '1': { tab_id = MainFrame::ETabType::Plater3D; break; } + case '2': { tab_id = MainFrame::ETabType::PlaterPreview; break; } + case '3': { tab_id = MainFrame::ETabType::PlaterGcode; break; } + case '4': { tab_id = MainFrame::ETabType::PrintSettings; break; } + case '5': { tab_id = MainFrame::ETabType::FilamentSettings; break; } + case '6': { tab_id = MainFrame::ETabType::PrintSettings; break; } #ifdef __APPLE__ case 'f': #else /* __APPLE__ */ @@ -130,9 +132,11 @@ void Field::PostInitialize() case 'F': { wxGetApp().plater()->search(false); break; } default: break; } - if (tab_id >= 0) + if (tab_id < MainFrame::ETabType::Any) wxGetApp().mainframe->select_tab(tab_id); - if (tab_id > 0) + if (wxGetApp().mainframe->get_layout() == MainFrame::ESettingsLayout::Tabs + || wxGetApp().mainframe->get_layout() == MainFrame::ESettingsLayout::Old + || tab_id >= MainFrame::ETabType::PrintSettings) // tab panel should be focused for correct navigation between tabs wxGetApp().tab_panel()->SetFocus(); } diff --git a/src/slic3r/GUI/GCodeViewer.cpp b/src/slic3r/GUI/GCodeViewer.cpp index 47de3e301..e5676c12d 100644 --- a/src/slic3r/GUI/GCodeViewer.cpp +++ b/src/slic3r/GUI/GCodeViewer.cpp @@ -706,7 +706,7 @@ void GCodeViewer::export_toolpaths_to_obj(const char* filename) const } fprintf(fp, "# G-Code Toolpaths Materials\n"); - fprintf(fp, "# Generated by %s based on Slic3r\n", SLIC3R_BUILD_ID); + fprintf(fp, "# Generated by " SLIC3R_BUILD_ID " " SLIC3R_BASED_ON "\n"); unsigned int colors_count = 1; for (const Color& color : colors) { @@ -726,7 +726,7 @@ void GCodeViewer::export_toolpaths_to_obj(const char* filename) const } fprintf(fp, "# G-Code Toolpaths\n"); - fprintf(fp, "# Generated by %s based on Slic3r\n", SLIC3R_BUILD_ID); + fprintf(fp, "# Generated by " SLIC3R_BUILD_ID " " SLIC3R_BASED_ON "\n"); fprintf(fp, "\nmtllib ./%s\n", mat_filename.filename().string().c_str()); // get vertices data from vertex buffer on gpu diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp index f0b86598f..b4040ee86 100644 --- a/src/slic3r/GUI/GLCanvas3D.cpp +++ b/src/slic3r/GUI/GLCanvas3D.cpp @@ -3873,9 +3873,9 @@ void GLCanvas3D::msw_rescale() void GLCanvas3D::update_tooltip_for_settings_item_in_main_toolbar() { std::string new_tooltip = _u8L("Switch to Settings") + - "\n" + "[" + GUI::shortkey_ctrl_prefix() + "2] - " + _u8L("Print Settings Tab") + - "\n" + "[" + GUI::shortkey_ctrl_prefix() + "3] - " + (m_process->current_printer_technology() == ptFFF ? _u8L("Filament Settings Tab") : _u8L("Material Settings Tab")) + - "\n" + "[" + GUI::shortkey_ctrl_prefix() + "4] - " + _u8L("Printer Settings Tab") ; + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "4] - " + _u8L("Print Settings Tab") + + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "5] - " + (m_process->current_printer_technology() == ptFFF ? _u8L("Filament Settings Tab") : _u8L("Material Settings Tab")) + + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "6] - " + _u8L("Printer Settings Tab") ; m_main_toolbar.set_tooltip(get_main_toolbar_item_id("settings"), new_tooltip); } @@ -4613,14 +4613,14 @@ bool GLCanvas3D::_init_main_toolbar() item.name = "settings"; item.icon_filename = "settings.svg"; - item.tooltip = _u8L("Switch to Settings") + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "2] - " + _u8L("Print Settings Tab") + - "\n" + "[" + GUI::shortkey_ctrl_prefix() + "3] - " + (m_process->current_printer_technology() == ptFFF ? _u8L("Filament Settings Tab") : _u8L("Material Settings Tab")) + - "\n" + "[" + GUI::shortkey_ctrl_prefix() + "4] - " + _u8L("Printer Settings Tab") ; + item.tooltip = _u8L("Switch to Settings") + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "4] - " + _u8L("Print Settings Tab") + + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "5] - " + (m_process->current_printer_technology() == ptFFF ? _u8L("Filament Settings Tab") : _u8L("Material Settings Tab")) + + "\n" + "[" + GUI::shortkey_ctrl_prefix() + "6] - " + _u8L("Printer Settings Tab") ; item.sprite_id = 10; item.enabling_callback = GLToolbarItem::Default_Enabling_Callback; item.visibility_callback = [this]() { return (wxGetApp().app_config->get("new_settings_layout_mode") == "1" || wxGetApp().app_config->get("dlg_settings_layout_mode") == "1"); }; - item.left.action_callback = [this]() { wxGetApp().mainframe->select_tab(); }; + item.left.action_callback = [this]() { wxGetApp().mainframe->select_tab(MainFrame::ETabType::LastSettings); }; if (!m_main_toolbar.add_item(item)) return false; diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp index 5f3152abf..43e6eb382 100644 --- a/src/slic3r/GUI/GUI_App.cpp +++ b/src/slic3r/GUI/GUI_App.cpp @@ -191,7 +191,7 @@ public: BitmapCache bmp_cache; int logo_size = lround(width * 0.25); //uint32_t color = color_from_hex(Slic3r::GUI::wxGetApp().app_config->get("color_dark")); //uncomment if you also want to modify the icon color - wxBitmap logo_bmp = *bmp_cache.load_svg(wxGetApp().is_editor() ? "super_slicer_logo" : "add_gcode", logo_size, logo_size/*, color*/); + wxBitmap logo_bmp = *bmp_cache.load_svg(wxGetApp().is_editor() ? SLIC3R_APP_KEY "_logo" : "add_gcode", logo_size, logo_size/*, color*/); wxCoord margin = int(m_scale * 20); @@ -253,7 +253,8 @@ private: version = _L("Version") + " " + std::string(SLIC3R_VERSION_FULL); // credits infornation - credits = title + " " + _L("is licensed under the") + " " + _L("GNU Affero General Public License, version 3") + "\n\n" + + credits = _L(SLIC3R_INTRO) + "\n\n" + + title + " " + _L("is licensed under the") + " " + _L("GNU Affero General Public License, version 3") + "\n\n" + _L("Contributions by Vojtech Bubnik, Enrico Turri, Durand Remi, Oleksandra Iushchenko, Tamas Meszaros, Lukas Matena, Vojtech Kral, David Kocik and numerous others.") + "\n\n" + _L("Artwork model by Durand Remi"); @@ -825,7 +826,7 @@ bool GUI_App::on_init_inner() } // create splash screen with updated bmp - scrn = new SplashScreen(bmp.IsOk() ? bmp : create_scaled_bitmap("super_slicer_logo", nullptr, 400), + scrn = new SplashScreen(bmp.IsOk() ? bmp : create_scaled_bitmap( SLIC3R_APP_KEY "_logo", nullptr, 400), wxSPLASH_CENTRE_ON_SCREEN | wxSPLASH_TIMEOUT, 4000, splashscreen_pos); #ifndef __linux__ wxYield(); @@ -904,7 +905,7 @@ bool GUI_App::on_init_inner() mainframe = new MainFrame(); // hide settings tabs after first Layout if (is_editor()) - mainframe->select_tab(size_t(0)); + mainframe->select_tab(MainFrame::ETabType::LastPlater); sidebar().obj_list()->init_objects(); // propagate model objects to object list // update_mode(); // !!! do that later @@ -1172,7 +1173,7 @@ void GUI_App::recreate_GUI(const wxString& msg_name) mainframe = new MainFrame(); if (is_editor()) // hide settings tabs after first Layout - mainframe->select_tab(size_t(0)); + mainframe->select_tab(MainFrame::ETabType::LastPlater); // Propagate model objects to object list. sidebar().obj_list()->init_objects(); SetTopWindow(mainframe); @@ -1524,7 +1525,7 @@ bool GUI_App::load_language(wxString language, bool initial) // Get the active language from PrusaSlicer.ini, or empty string if the key does not exist. language = app_config->get("translation_language"); if (! language.empty()) - BOOST_LOG_TRIVIAL(trace) << boost::format("translation_language provided by Slic3r.ini: %1%") % language; + BOOST_LOG_TRIVIAL(trace) << boost::format("translation_language provided by " SLIC3R_APP_NAME ".ini: %1%") % language; // Get the system language. { @@ -1805,7 +1806,7 @@ void GUI_App::add_config_menu(wxMenuBar *menu) // hide full main_sizer for mainFrame mainframe->GetSizer()->Show(false); mainframe->update_layout(); - mainframe->select_tab(size_t(0)); + mainframe->select_tab(MainFrame::ETabType::LastPlater); } break; } diff --git a/src/slic3r/GUI/KBShortcutsDialog.cpp b/src/slic3r/GUI/KBShortcutsDialog.cpp index 178e0003a..aafc3ff20 100644 --- a/src/slic3r/GUI/KBShortcutsDialog.cpp +++ b/src/slic3r/GUI/KBShortcutsDialog.cpp @@ -97,12 +97,12 @@ void KBShortcutsDialog::fill_shortcuts() #endif // __APPLE__ { ctrl + "F", L("Search") }, // Window - { ctrl + "1", L("Select Plater Tab") }, - { ctrl + "2", L("Select Print Settings Tab") }, - { ctrl + "3", L("Select Filament Settings Tab") }, - { ctrl + "4", L("Select Printer Settings Tab") }, - { ctrl + "5", L("Switch to 3D") }, - { ctrl + "6", L("Switch to Preview") }, + { ctrl + "1", L("Select 3d editor Tab") }, + { ctrl + "2", L("Select Layer Preview Tab") }, + { ctrl + "3", L("Select Gcode preview Tab") }, + { ctrl + "4", L("Select Print Settings Tab") }, + { ctrl + "5", L("Select Filament Settings Tab") }, + { ctrl + "6", L("Select Printer Settings Tab") }, { ctrl + "J", L("Print host upload queue") }, { ctrl + "Shift+" + "I", L("Open new instance") }, // View diff --git a/src/slic3r/GUI/MainFrame.cpp b/src/slic3r/GUI/MainFrame.cpp index a22d19c5a..c051f4a85 100644 --- a/src/slic3r/GUI/MainFrame.cpp +++ b/src/slic3r/GUI/MainFrame.cpp @@ -94,12 +94,12 @@ static wxIcon main_frame_icon(GUI_App::EAppMode app_mode) if (len > 0 && len < MAX_PATH) { path.erase(path.begin() + len, path.end()); if (app_mode == GUI_App::EAppMode::GCodeViewer) { - // Only in case the slicer was started with --gcodeviewer parameter try to load the icon from prusa-gcodeviewer.exe + // Only in case the slicer was started with --gcodeviewer parameter try to load the icon from gcodeviewer.exe // Otherwise load it from the exe. - for (const std::wstring_view exe_name : { std::wstring_view(L"superslicer.exe"), std::wstring_view(L"superslicer_console.exe") }) + for (const std::wstring_view exe_name : { std::wstring_view(SLIC3R_APP_WCMD L".exe"), std::wstring_view(SLIC3R_APP_WCMD L"_console.exe") }) if (boost::iends_with(path, exe_name)) { path.erase(path.end() - exe_name.size(), path.end()); - path += L"prusa-gcodeviewer.exe"; + path += GCODEVIEWER_APP_WCMD L".exe"; break; } } @@ -131,11 +131,11 @@ DPIFrame(NULL, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_S default: case GUI_App::EAppMode::Editor: m_taskbar_icon = std::make_unique(wxTBI_DOCK); - m_taskbar_icon->SetIcon(wxIcon(Slic3r::var("Slic3r_128px.png"), wxBITMAP_TYPE_PNG), "Slic3r"); + m_taskbar_icon->SetIcon(wxIcon(Slic3r::var("Slic3r_128px.png"), wxBITMAP_TYPE_PNG), SLIC3R_APP_NAME); break; case GUI_App::EAppMode::GCodeViewer: m_taskbar_icon = std::make_unique(wxTBI_DOCK); - m_taskbar_icon->SetIcon(wxIcon(Slic3r::var("PrusaSlicer-gcodeviewer_128px.png"), wxBITMAP_TYPE_PNG), "G-code Viewer"); + m_taskbar_icon->SetIcon(wxIcon(Slic3r::var("PrusaSlicer-gcodeviewer_128px.png"), wxBITMAP_TYPE_PNG), GCODEVIEWER_APP_NAME); break; } #endif // __APPLE__ @@ -150,7 +150,7 @@ DPIFrame(NULL, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_S m_statusbar->embed(this); m_statusbar->set_status_text(_L("Version") + " " + SLIC3R_VERSION + - _L("Remember to check for updates at https://slic3r.org/download")); + _L("Remember to check for updates at https://github.com/" SLIC3R_GITHUB "/releases")); // initialize tabpanel and menubar init_tabpanel(); @@ -262,6 +262,8 @@ void MainFrame::update_layout() }; // On Linux m_plater needs to be removed from m_tabpanel before to reparent it + //clear if previous was old + m_tabpanel_stop_event = true; int plater_page_id = m_tabpanel->FindPage(m_plater); if (plater_page_id != wxNOT_FOUND) m_tabpanel->RemovePage(plater_page_id); @@ -273,24 +275,33 @@ void MainFrame::update_layout() if (m_plater->GetParent() != this) m_plater->Reparent(this); - while(m_tabpanel->GetPage(0)->GetChildren().size() == 0) - m_tabpanel->DeletePage(0); - - for (size_t i = 0; i < m_tabpanel->GetPageCount(); i++) { + for (int i = 0; i < m_tabpanel->GetPageCount(); i++) { m_tabpanel->SetPageImage(i, -1); } m_tabpanel->SetImageList(nullptr); //clear - + if (m_tabpanel->GetParent() != this) m_tabpanel->Reparent(this); + //clear if previous was hidden plater_page_id = (m_plater_page != nullptr) ? m_tabpanel->FindPage(m_plater_page) : wxNOT_FOUND; if (plater_page_id != wxNOT_FOUND) { m_tabpanel->DeletePage(plater_page_id); m_plater_page = nullptr; } + //clear if previous was tabs + for (int i = 0; i < m_tabpanel->GetPageCount(); i++) + if (m_tabpanel->GetPage(i)->GetChildren().empty() && m_tabpanel->GetPage(i)->GetSizer()->GetItemCount() > 0) { + clean_sizer(m_tabpanel->GetPage(i)->GetSizer()); + } + if (m_tabpanel->GetPage(0)->GetChildren().size() == 0 && m_tabpanel->GetPage(1)->GetChildren().size() == 0 && m_tabpanel->GetPage(2)->GetChildren().size() == 0) { + m_tabpanel->DeletePage(2); + m_tabpanel->DeletePage(1); + m_tabpanel->DeletePage(0); + } + clean_sizer(m_main_sizer); clean_sizer(m_settings_dialog.GetSizer()); @@ -298,18 +309,19 @@ void MainFrame::update_layout() m_settings_dialog.Close(); m_tabpanel->Hide(); + m_tabpanel_stop_event = false; m_plater->Hide(); m_plater->enable_view_toolbar(true); m_plater->set_force_preview(Preview::ForceState::NoForce); - m_plater->process_done_callback([this](int) {}); Layout(); }; ESettingsLayout layout = wxGetApp().is_gcode_viewer() ? ESettingsLayout::GCodeViewer : - (wxGetApp().app_config->get("old_settings_layout_mode") == "1" ? ESettingsLayout::Old : - wxGetApp().app_config->get("new_settings_layout_mode") == "1" ? ESettingsLayout::New : - wxGetApp().app_config->get("dlg_settings_layout_mode") == "1" ? ESettingsLayout::Dlg : ESettingsLayout::Old); + (wxGetApp().app_config->get("old_settings_layout_mode") == "1" ? ESettingsLayout::Old : + wxGetApp().app_config->get("tab_settings_layout_mode") == "1" ? ESettingsLayout::Tabs : + wxGetApp().app_config->get("new_settings_layout_mode") == "1" ? ESettingsLayout::Hidden : + wxGetApp().app_config->get("dlg_settings_layout_mode") == "1" ? ESettingsLayout::Dlg : ESettingsLayout::Tabs); if (m_layout == layout) return; @@ -337,8 +349,11 @@ void MainFrame::update_layout() m_layout = layout; + m_layerpreview_menu_item->Enable(m_layout == ESettingsLayout::Tabs || m_layout == ESettingsLayout::Old); + // From the very beginning the Print settings should be selected - m_last_selected_tab = m_layout == ESettingsLayout::Dlg ? 0 : 1; + m_last_selected_setting_tab = 0; + m_last_selected_plater_tab = 999; // Set new settings switch (m_layout) @@ -346,37 +361,67 @@ void MainFrame::update_layout() case ESettingsLayout::Unknown: { break; - } - case ESettingsLayout::Old: + }case ESettingsLayout::Old: { // don't use view_toolbar here m_plater->enable_view_toolbar(false); - m_plater->process_done_callback([this](int process_state) { - //note: this won't call wxEVT_NOTEBOOK_PAGE_CHANGED and it's intended as the process_done caller will update the panel itself. - if (m_tabpanel->GetSelection() != process_state && m_tabpanel->GetSelection() < 3) - { - //m_plater->Hide(); - m_tabpanel->GetCurrentPage()->GetSizer()->Clear(); - m_plater->Reparent(m_tabpanel->GetPage(process_state)); - m_tabpanel->GetPage(process_state)->GetSizer()->Add(m_plater, 1, wxEXPAND); - m_tabpanel->SetSelection(process_state); - m_plater->Show(); - } - }); + //layout + m_plater->Reparent(m_tabpanel); + m_tabpanel->InsertPage(0, m_plater, _L("Plater")); + m_main_sizer->Add(m_tabpanel, 1, wxEXPAND); // icons for ESettingsLayout::Old wxImageList* img_list = nullptr; int icon_size = 0; try { icon_size = atoi(wxGetApp().app_config->get("tab_icon_size").c_str()); } - catch (const std::exception& e) {} - if(icon_size >= 8) - for (std::string icon_name : {"editor_menu", "layers", "preview_menu", "cog"}) { + catch (std::exception e) {} + if (icon_size >= 8) { + std::initializer_list icon_list = { "plater", "cog", "spool_cog", "printer_cog" }; + if (icon_size < 16) + icon_list = { "plater", "cog", "spool", "printer" }; + for (std::string icon_name : icon_list) { const wxBitmap& bmp = create_scaled_bitmap(icon_name, this, icon_size); if (img_list == nullptr) img_list = new wxImageList(bmp.GetWidth(), bmp.GetHeight()); img_list->Add(bmp); } + } + m_tabpanel->AssignImageList(img_list); + if (icon_size >= 8) + { + m_tabpanel->SetPageImage(0, 0); + m_tabpanel->SetPageImage(1, 1); + m_tabpanel->SetPageImage(2, 2); + m_tabpanel->SetPageImage(3, 3); + } + // show + m_plater->Show(); + m_tabpanel->Show(); + break; + } + case ESettingsLayout::Tabs: + { + // don't use view_toolbar here + m_plater->enable_view_toolbar(false); + // icons for ESettingsLayout::Tabs + wxImageList* img_list = nullptr; + int icon_size = 0; + try { + icon_size = atoi(wxGetApp().app_config->get("tab_icon_size").c_str()); + } + catch (std::exception e) {} + if (icon_size >= 8) { + std::initializer_list icon_list = { "editor_menu", "layers", "preview_menu", "cog", "spool_cog", "printer_cog" }; + if (icon_size < 16) + icon_list = { "editor_menu", "layers", "preview_menu", "cog", "spool", "printer" }; + for (std::string icon_name : icon_list) { + const wxBitmap& bmp = create_scaled_bitmap(icon_name, this, icon_size); + if (img_list == nullptr) + img_list = new wxImageList(bmp.GetWidth(), bmp.GetHeight()); + img_list->Add(bmp); + } + } m_tabpanel->AssignImageList(img_list); m_tabpanel->InsertPage(0, new wxPanel(m_tabpanel), _L("3D view")); m_tabpanel->InsertPage(1, new wxPanel(m_tabpanel), _L("Sliced preview")); @@ -390,17 +435,18 @@ void MainFrame::update_layout() m_tabpanel->SetPageImage(1, 1); m_tabpanel->SetPageImage(2, 2); m_tabpanel->SetPageImage(3, 3); - m_tabpanel->SetPageImage(4, 3); - m_tabpanel->SetPageImage(5, 3); + m_tabpanel->SetPageImage(4, 4); + m_tabpanel->SetPageImage(5, 5); } m_plater->Reparent(m_tabpanel->GetPage(0)); m_tabpanel->GetPage(0)->GetSizer()->Add(m_plater, 1, wxEXPAND); + m_tabpanel->ChangeSelection(0); m_main_sizer->Add(m_tabpanel, 1, wxEXPAND); m_plater->Show(); m_tabpanel->Show(); break; } - case ESettingsLayout::New: + case ESettingsLayout::Hidden: { m_main_sizer->Add(m_plater, 1, wxEXPAND); m_tabpanel->Hide(); @@ -466,7 +512,7 @@ void MainFrame::update_layout() // // So, if we haven't possibility to set MinSize() for the MainFrame, // // set the MinSize() as a half of regular for the m_plater and m_tabpanel, when settings layout is in slNew mode // // Otherwise, MainFrame will be maximized by height -// if (m_layout == ESettingsLayout::New) { +// if (m_layout == ESettingsLayout::Hidden) { // wxSize size = wxGetApp().get_min_size(); // size.SetHeight(int(0.5 * size.GetHeight())); // m_plater->SetMinSize(size); @@ -475,7 +521,7 @@ void MainFrame::update_layout() //#endif #ifdef __APPLE__ - m_plater->sidebar().change_top_border_for_mode_sizer(m_layout != ESettingsLayout::Old); + m_plater->sidebar().change_top_border_for_mode_sizer(m_layout != ESettingsLayout::Tabs && m_layout != ESettingsLayout::Old); #endif Layout(); @@ -582,7 +628,9 @@ void MainFrame::update_title() } } - title += wxString(SLIC3R_APP_NAME) + " " + wxString(SLIC3R_VERSION) ; + title += wxString(SLIC3R_APP_NAME) + "_" + wxString(SLIC3R_VERSION) ; + if (wxGetApp().is_editor() && !has_name) + title += (" " + _L(SLIC3R_BASED_ON)); SetTitle(title); } @@ -600,6 +648,8 @@ void MainFrame::init_tabpanel() m_tabpanel->Bind(wxEVT_NOTEBOOK_PAGE_CHANGED, [this](wxEvent&) { + if (m_tabpanel_stop_event) + return; wxWindow* panel = m_tabpanel->GetCurrentPage(); Tab* tab = dynamic_cast(panel); @@ -607,19 +657,43 @@ void MainFrame::init_tabpanel() if (panel == nullptr || (tab != nullptr && !tab->supports_printer_technology(m_plater->printer_technology()))) return; - auto& tabs_list = wxGetApp().tabs_list; - int last_selected_tab = m_last_selected_tab; + std::vector& tabs_list = wxGetApp().tabs_list; + int last_selected_plater_tab = m_last_selected_plater_tab; + int last_selected_setting_tab = m_last_selected_setting_tab; if (tab && std::find(tabs_list.begin(), tabs_list.end(), tab) != tabs_list.end()) { // On GTK, the wxEVT_NOTEBOOK_PAGE_CHANGED event is triggered // before the MainFrame is fully set up. tab->OnActivate(); - m_last_selected_tab = m_tabpanel->GetSelection(); + if (this->m_layout == ESettingsLayout::Tabs) + last_selected_setting_tab = m_tabpanel->GetSelection() - 3; + if (this->m_layout == ESettingsLayout::Dlg) + last_selected_setting_tab = m_tabpanel->GetSelection(); + else + last_selected_setting_tab = m_tabpanel->GetSelection() - 1; } - else if (this->m_layout == ESettingsLayout::Old) { - //m_plater->Hide(); + else if (this->m_layout == ESettingsLayout::Tabs) { + if (last_selected_plater_tab == m_tabpanel->GetSelection()) { + std::cout << "Page changed to the same one (" << m_last_selected_plater_tab << ") no need to do anything\n"; + return; + } + bool need_freeze = !this->IsFrozen(); + if(need_freeze) Freeze(); + std::cout << "I switched to tab " << m_tabpanel->GetSelection() << " and so i need to change the panel position & content\n"; + size_t new_tab = m_tabpanel->GetSelection(); + + size_t max = 0; + for (int i = 0; i < 3; i++) + max = std::max(max, m_tabpanel->GetPage(i)->GetSizer()->GetItemCount()); + std::cout << " 1 - hide & clear the sizers: " << max << "->"; for(int i=0;i<3;i++) m_tabpanel->GetPage(i)->GetSizer()->Clear(); + max = 0; + for (int i = 0; i < 3; i++) + max = std::max(max, m_tabpanel->GetPage(i)->GetSizer()->GetItemCount()); + std::cout << max << "\n"; + m_plater->Reparent(m_tabpanel->GetCurrentPage()); + std::cout << " 2 - change parent from tab " << m_last_selected_plater_tab << " to tab " << m_tabpanel->GetSelection() << "\n"; if (m_tabpanel->GetSelection() == 0) this->m_plater->select_view_3D("3D"); else if (m_tabpanel->GetSelection() == 1) { @@ -638,10 +712,24 @@ void MainFrame::init_tabpanel() }else this->m_plater->select_view_3D("Preview"); } + std::cout << " 3 - redraw\n"; + std::cout << " 4 - add to new sizer: " << m_tabpanel->GetCurrentPage()->GetSizer()->GetItemCount() << "->"; m_tabpanel->GetCurrentPage()->GetSizer()->Add(m_plater, 1, wxEXPAND); + std::cout << m_tabpanel->GetCurrentPage()->GetSizer()->GetItemCount() << "\n"; m_plater->Show(); - }else - select_tab(size_t(0)); // select Plater + std::cout << "End of change for the panel position & content, tab is "<< m_tabpanel->GetSelection() <<"\n"; + m_last_selected_plater_tab = m_tabpanel->GetSelection(); + + if (need_freeze) Thaw(); +#ifdef __APPLE__ + m_tabpanel->ChangeSelection(new_tab); + m_tabpanel->Refresh(); + std::cout << "Macos: force tab selection to "<< new_tab <<" : " << m_tabpanel->GetSelection() << "\n"; +#endif + } else { + select_tab(MainFrame::ETabType::LastPlater); // select Plater + m_last_selected_plater_tab = 999; + } }); m_plater = new Plater(this, this); @@ -753,7 +841,7 @@ bool MainFrame::is_active_and_shown_tab(Tab* tab) if (m_layout == ESettingsLayout::Dlg) return m_settings_dialog.IsShown(); - if (m_layout == ESettingsLayout::New) + if (m_layout == ESettingsLayout::Hidden) return m_main_sizer->IsShown(m_tabpanel); return true; @@ -854,9 +942,10 @@ bool MainFrame::can_change_view() const switch (m_layout) { default: { return false; } - case ESettingsLayout::New: { return m_plater->IsShown(); } + case ESettingsLayout::Hidden: { return m_plater->IsShown(); } case ESettingsLayout::Dlg: { return true; } - case ESettingsLayout::Old: { + case ESettingsLayout::Old: + case ESettingsLayout::Tabs: { int page_id = m_tabpanel->GetSelection(); return page_id != wxNOT_FOUND && dynamic_cast(m_tabpanel->GetPage((size_t)page_id)) != nullptr; } @@ -965,25 +1054,29 @@ static const wxString sep_space = ""; static wxMenu* generate_help_menu() { wxMenu* helpMenu = new wxMenu(); - append_menu_item(helpMenu, wxID_ANY, _L("Slic3r Releases"), _L("Open the Slic3r releases page in your browser"), + append_menu_item(helpMenu, wxID_ANY, _L(SLIC3R_APP_NAME " Releases"), _L("Open the Slic3r releases page in your browser"), [](wxCommandEvent&) { wxLaunchDefaultBrowser("https://slic3r.org/download/"); }); - append_menu_item(helpMenu, wxID_ANY, _L("Slic3r manual"), _L("Open the Slic3r manual in your browser"), - [](wxCommandEvent&) { wxLaunchDefaultBrowser("http://manual.slic3r.org"); }); - append_menu_item(helpMenu, wxID_ANY, _L("Slic3r wiki"), _L("Open the Slic3r wiki in your browser"), + append_menu_item(helpMenu, wxID_ANY, _L(SLIC3R_APP_NAME " wiki", _L("Open the Slic3r wiki in your browser"), [](wxCommandEvent&) { wxLaunchDefaultBrowser("http://github.com/slic3r/Slic3r/wiki"); }); - append_menu_item(helpMenu, wxID_ANY, _L("Slic3r website"), _L("Open the Slic3r website in your browser"), + append_menu_item(helpMenu, wxID_ANY, _L(SLIC3R_APP_NAME " website"), _L("Open the Slic3r website in your browser"), [](wxCommandEvent&) { wxLaunchDefaultBrowser("http://slic3r.org"); }); //# my $versioncheck = $self->_append_menu_item($helpMenu, "Check for &Updates...", "Check for new Slic3r versions", sub{ //# wxTheApp->check_version(1); //# }); //# $versioncheck->Enable(wxTheApp->have_version_check); + append_menu_item(helpMenu, wxID_ANY, wxString::Format(_L("Slic3r Manual")), + wxString::Format(_L("Open the Slic3r Manual in your browser")), + // [this](wxCommandEvent&) { wxGetApp().open_web_page_localized("http://manual.slic3r.org"); }); + // append_menu_item(helpMenu, wxID_ANY, wxString::Format(_L("%s &Manual"), SLIC3R_APP_NAME), + // wxString::Format(_L("Open the %s manual in your browser"), SLIC3R_APP_NAME), + [](wxCommandEvent&) { wxLaunchDefaultBrowser("http://manual.slic3r.org/"); }); helpMenu->AppendSeparator(); append_menu_item(helpMenu, wxID_ANY, _L("System &Info"), _L("Show system information"), [](wxCommandEvent&) { wxGetApp().system_info(); }); append_menu_item(helpMenu, wxID_ANY, _L("Show &Configuration Folder"), _L("Show user configuration folder (datadir)"), [](wxCommandEvent&) { Slic3r::GUI::desktop_open_datadir_folder(); }); append_menu_item(helpMenu, wxID_ANY, _L("Report an I&ssue"), wxString::Format(_L("Report an issue on %s"), SLIC3R_APP_NAME), - [](wxCommandEvent&) { wxLaunchDefaultBrowser("http://github.com/slic3r/Slic3r/issues/new"); }); + [](wxCommandEvent&) { wxLaunchDefaultBrowser("http://github.com/" SLIC3R_GITHUB "/issues/new"); }); if (wxGetApp().is_editor()) append_menu_item(helpMenu, wxID_ANY, wxString::Format(_L("&About %s"), SLIC3R_APP_NAME), _L("Show about dialog"), @@ -1259,31 +1352,28 @@ void MainFrame::init_menubar_as_editor() auto windowMenu = new wxMenu(); { if (m_plater) { - append_menu_item(windowMenu, wxID_HIGHEST + 1, _L("&Plater Tab") + "\tCtrl+1", _L("Show the plater"), - [this](wxCommandEvent&) { select_tab(size_t(0)); }, "plater", nullptr, + append_menu_item(windowMenu, wxID_HIGHEST + 1, _L("3D &Plater Tab") + "\tCtrl+1", _L("Show the editor of the input models"), + [this](wxCommandEvent&) { select_tab(ETabType::Plater3D); }, "editor_menu", nullptr, + []() {return true; }, this); + m_layerpreview_menu_item = append_menu_item(windowMenu, wxID_HIGHEST + 2, _L("Layer previe&w Tab") + "\tCtrl+2", _L("Show the layers from the slicing process"), + [this](wxCommandEvent&) { select_tab(ETabType::PlaterPreview); }, "layers", nullptr, + []() {return true; }, this); + append_menu_item(windowMenu, wxID_HIGHEST + 3, _L("GCode Pre&view Tab") + "\tCtrl+3", _L("Show the preview of the gcode output"), + [this](wxCommandEvent&) { select_tab(ETabType::PlaterGcode); }, "preview_menu", nullptr, []() {return true; }, this); windowMenu->AppendSeparator(); } - append_menu_item(windowMenu, wxID_HIGHEST + 2, _L("P&rint Settings Tab") + "\tCtrl+2", _L("Show the print settings"), - [this/*, tab_offset*/](wxCommandEvent&) { select_tab(1); }, "cog", nullptr, + append_menu_item(windowMenu, wxID_HIGHEST + 4, _L("P&rint Settings Tab") + "\tCtrl+4", _L("Show the print settings"), + [this/*, tab_offset*/](wxCommandEvent&) { select_tab(ETabType::PrintSettings); }, "cog", nullptr, []() {return true; }, this); - wxMenuItem* item_material_tab = append_menu_item(windowMenu, wxID_HIGHEST + 3, _L("&Filament Settings Tab") + "\tCtrl+3", _L("Show the filament settings"), - [this/*, tab_offset*/](wxCommandEvent&) { select_tab(2); }, "spool", nullptr, + wxMenuItem* item_material_tab = append_menu_item(windowMenu, wxID_HIGHEST + 5, _L("&Filament Settings Tab") + "\tCtrl+5", _L("Show the filament settings"), + [this/*, tab_offset*/](wxCommandEvent&) { select_tab(ETabType::FilamentSettings); }, "spool", nullptr, []() {return true; }, this); m_changeable_menu_items.push_back(item_material_tab); - wxMenuItem* item_printer_tab = append_menu_item(windowMenu, wxID_HIGHEST + 4, _L("Print&er Settings Tab") + "\tCtrl+4", _L("Show the printer settings"), - [this/*, tab_offset*/](wxCommandEvent&) { select_tab(3); }, "printer", nullptr, + wxMenuItem* item_printer_tab = append_menu_item(windowMenu, wxID_HIGHEST + 6, _L("Print&er Settings Tab") + "\tCtrl+6", _L("Show the printer settings"), + [this/*, tab_offset*/](wxCommandEvent&) { select_tab(ETabType::PrinterSettings); }, "printer", nullptr, []() {return true; }, this); m_changeable_menu_items.push_back(item_printer_tab); - if (m_plater) { - windowMenu->AppendSeparator(); - append_menu_item(windowMenu, wxID_HIGHEST + 5, _L("3&D") + "\tCtrl+5", _L("Show the 3D editing view"), - [this](wxCommandEvent&) { m_plater->select_view_3D("3D"); }, "editor_menu", nullptr, - [this](){return can_change_view(); }, this); - append_menu_item(windowMenu, wxID_HIGHEST + 6, _L("Pre&view") + "\tCtrl+6", _L("Show the 3D slices preview"), - [this](wxCommandEvent&) { m_plater->select_view_3D("Preview"); }, "preview_menu", nullptr, - [this](){return can_change_view(); }, this); - } windowMenu->AppendSeparator(); append_menu_item(windowMenu, wxID_ANY, _L("Print &Host Upload Queue") + "\tCtrl+J", _L("Display the Print Host Upload Queue window"), @@ -1771,13 +1861,16 @@ void MainFrame::select_tab(Tab* tab) { if (!tab) return; - int page_idx = m_tabpanel->FindPage(tab); - if (page_idx != wxNOT_FOUND && m_layout == ESettingsLayout::Dlg) - page_idx++; - select_tab(size_t(page_idx)); + std::vector& tabs_list = wxGetApp().tabs_list; + std::vector::iterator it_tab = std::find(tabs_list.begin(), tabs_list.end(), tab); + if (it_tab != tabs_list.end()) { + select_tab((ETabType)((uint8_t)ETabType::PrintSettings + uint8_t(it_tab - tabs_list.begin()))); + } + + select_tab(ETabType::LastSettings); } -void MainFrame::select_tab(size_t tab/* = size_t(-1)*/) +void MainFrame::select_tab(ETabType tab /* = Any*/, bool keep_tab_type) { bool tabpanel_was_hidden = false; @@ -1785,7 +1878,26 @@ void MainFrame::select_tab(size_t tab/* = size_t(-1)*/) // We should select/activate tab before its showing to avoid an UI-flickering auto select = [this, tab](bool was_hidden) { // when tab == -1, it means we should show the last selected tab - size_t new_selection = tab == (size_t)(-1) ? m_last_selected_tab : (m_layout == ESettingsLayout::Dlg && tab != 0) ? tab - 1 : tab; + size_t new_selection = 0; + if (tab <= ETabType::LastPlater) { + //select plater + new_selection = (uint8_t)tab; + if (tab == ETabType::LastPlater) + new_selection = m_last_selected_plater_tab > 2 ? 0 : m_last_selected_plater_tab; + if (m_layout != ESettingsLayout::Tabs) + new_selection = 0; + + } else if (tab <= ETabType::LastSettings) { + //select setting + new_selection = (uint8_t)tab - (uint8_t)ETabType::PrintSettings; + if (tab == ETabType::LastSettings) + new_selection = m_last_selected_setting_tab > 2 ? 0 : m_last_selected_setting_tab; + //push to the correct position + if (m_layout == ESettingsLayout::Tabs) + new_selection = m_last_selected_setting_tab + 3; + else if (m_layout != ESettingsLayout::Dlg) + new_selection = new_selection + 1; + } if (m_tabpanel->GetSelection() != (int)new_selection) m_tabpanel->SetSelection(new_selection); @@ -1796,8 +1908,20 @@ void MainFrame::select_tab(size_t tab/* = size_t(-1)*/) } }; + if (m_layout != ESettingsLayout::Tabs) { + if (tab == ETabType::Plater3D || (tab == ETabType::LastPlater && m_last_selected_plater_tab == 0)) { + m_plater->select_view_3D("3D"); + } else if (tab == ETabType::PlaterPreview || (tab == ETabType::LastPlater && m_last_selected_plater_tab == 1)) { + m_plater->select_view_3D("Preview"); + } else if (tab == ETabType::PlaterGcode || (tab == ETabType::LastPlater && m_last_selected_plater_tab == 2)) { + m_plater->select_view_3D("Preview"); + } + } + if (m_layout == ESettingsLayout::Dlg) { - if (tab==0) { + if (keep_tab_type) + return; + if (tab <= ETabType::LastPlater) { if (m_settings_dialog.IsShown()) this->SetFocus(); // plater should be focused for correct navigation inside search window @@ -1828,21 +1952,35 @@ void MainFrame::select_tab(size_t tab/* = size_t(-1)*/) } #endif } - else if (m_layout == ESettingsLayout::New) { - m_main_sizer->Show(m_plater, tab == 0); + else if (m_layout == ESettingsLayout::Hidden) { + if (keep_tab_type && m_tabpanel->GetSelection()>0) + return; + m_main_sizer->Show(m_plater, tab <= ETabType::LastPlater); tabpanel_was_hidden = !m_main_sizer->IsShown(m_tabpanel); select(tabpanel_was_hidden); - m_main_sizer->Show(m_tabpanel, tab != 0); + m_main_sizer->Show(m_tabpanel, tab > ETabType::LastPlater); // plater should be focused for correct navigation inside search window - if (tab == 0 && m_plater->canvas3D()->is_search_pressed()) + if (tab <= ETabType::LastPlater && m_plater->canvas3D()->is_search_pressed()) m_plater->SetFocus(); Layout(); } + else if (m_layout == ESettingsLayout::Old) { + if (keep_tab_type && m_tabpanel->GetSelection() > 0) + return; + else + select(false); + } + else if (m_layout == ESettingsLayout::Tabs) { + if (keep_tab_type && ( (m_tabpanel->GetSelection() >=3 && tab <= ETabType::LastPlater) || (m_tabpanel->GetSelection() < 3 && tab > ETabType::LastPlater))) + return; + else + select(false); + } else select(false); - // When we run application in ESettingsLayout::New or ESettingsLayout::Dlg mode, tabpanel is hidden from the very beginning + // When we run application in ESettingsLayout::Hidden or ESettingsLayout::Dlg mode, tabpanel is hidden from the very beginning // and as a result Tab::update_changed_tree_ui() function couldn't update m_is_nonsys_values values, // which are used for update TreeCtrl and "revert_buttons". // So, force the call of this function for Tabs, if tab panel was hidden @@ -2000,10 +2138,12 @@ SettingsDialog::SettingsDialog(MainFrame* mainframe) auto key_up_handker = [this](wxKeyEvent& evt) { if ((evt.GetModifiers() & wxMOD_CONTROL) != 0) { switch (evt.GetKeyCode()) { - case '1': { m_main_frame->select_tab(size_t(0)); break; } - case '2': { m_main_frame->select_tab(1); break; } - case '3': { m_main_frame->select_tab(2); break; } - case '4': { m_main_frame->select_tab(3); break; } + case '1': { m_main_frame->select_tab(MainFrame::ETabType::Plater3D); break; } + case '2': { m_main_frame->select_tab(MainFrame::ETabType::Plater3D); break; } + case '3': { m_main_frame->select_tab(MainFrame::ETabType::PlaterGcode); break; } + case '4': { m_main_frame->select_tab(MainFrame::ETabType::PrintSettings); break; } + case '5': { m_main_frame->select_tab(MainFrame::ETabType::FilamentSettings); break; } + case '6': { m_main_frame->select_tab(MainFrame::ETabType::PrinterSettings); break; } #ifdef __APPLE__ case 'f': #else /* __APPLE__ */ diff --git a/src/slic3r/GUI/MainFrame.hpp b/src/slic3r/GUI/MainFrame.hpp index 9504376b4..45813c1ed 100644 --- a/src/slic3r/GUI/MainFrame.hpp +++ b/src/slic3r/GUI/MainFrame.hpp @@ -81,7 +81,8 @@ class MainFrame : public DPIFrame - size_t m_last_selected_tab; + size_t m_last_selected_plater_tab; + size_t m_last_selected_setting_tab; std::string get_base_name(const wxString &full_name, const char *extension = nullptr) const; std::string get_dir_name(const wxString &full_name) const; @@ -117,17 +118,36 @@ class MainFrame : public DPIFrame // vector of a MenuBar items changeable in respect to printer technology std::vector m_changeable_menu_items; + wxMenuItem* m_layerpreview_menu_item; wxFileHistory m_recent_projects; +public: + enum class ESettingsLayout { Unknown, Old, - New, + Tabs, + Hidden, Dlg, GCodeViewer }; + + enum class ETabType : uint8_t + { + Plater3D, + PlaterPreview, + PlaterGcode, + LastPlater, + PrintSettings, + FilamentSettings, + PrinterSettings, + LastSettings, + Any + }; + +private: ESettingsLayout m_layout{ ESettingsLayout::Unknown }; @@ -136,6 +156,7 @@ protected: virtual void on_sys_color_changed() override; public: + MainFrame(); ~MainFrame() = default; @@ -162,7 +183,7 @@ public: void update_ui_from_settings(bool apply_free_camera_correction = true); bool is_loaded() const { return m_loaded; } bool is_last_input_file() const { return !m_qs_last_input_file.IsEmpty(); } - bool is_dlg_layout() const { return m_layout == ESettingsLayout::Dlg; } + ESettingsLayout get_layout() const { return m_layout; } void quick_slice(const int qs = qsUndef); void reslice_now(); @@ -177,8 +198,9 @@ public: void load_config(const DynamicPrintConfig& config); // Select tab in m_tabpanel // When tab == -1, will be selected last selected tab + // 0 = a plater tab, 1 = print setting, 2 = filament settign, 3 = printer setting void select_tab(Tab* tab); - void select_tab(size_t tab = size_t(-1)); + void select_tab(ETabType tab = ETabType::Any, bool keep_tab_type = false); void select_view(const std::string& direction); // Propagate changed configuration from the Tab to the Plater and save changes to the AppConfig void on_config_changed(DynamicPrintConfig* cfg) const ; @@ -189,6 +211,7 @@ public: Plater* m_plater { nullptr }; wxNotebook* m_tabpanel { nullptr }; + bool m_tabpanel_stop_event = false; SettingsDialog m_settings_dialog; wxWindow* m_plater_page{ nullptr }; wxProgressDialog* m_progress_dialog { nullptr }; diff --git a/src/slic3r/GUI/NotificationManager.hpp b/src/slic3r/GUI/NotificationManager.hpp index 8d085e389..de7204038 100644 --- a/src/slic3r/GUI/NotificationManager.hpp +++ b/src/slic3r/GUI/NotificationManager.hpp @@ -474,7 +474,7 @@ private: {NotificationType::PresetUpdateAvailable, NotificationLevel::ImportantNotification, 20, _u8L("Configuration update is available."), _u8L("See more."), [](wxEvtHandler* evnthndlr){ if (evnthndlr != nullptr) wxPostEvent(evnthndlr, PresetUpdateAvailableClickedEvent(EVT_PRESET_UPDATE_AVAILABLE_CLICKED)); return true; }}, {NotificationType::NewAppAvailable, NotificationLevel::ImportantNotification, 20, _u8L("New version is available."), _u8L("See Releases page."), [](wxEvtHandler* evnthndlr){ - wxLaunchDefaultBrowser("https://github.com/slic3r/Slic3r/releases"); return true; }}, + wxLaunchDefaultBrowser("https://github.com/" SLIC3R_GITHUB "/releases"); return true; }}, {NotificationType::EmptyColorChangeCode, NotificationLevel::RegularNotification, 10, _u8L("You have just added a G-code for color change, but its value is empty.\n" "To export the G-code correctly, check the \"Color Change G-code\" in \"Printer Settings > Custom G-code\"") }, diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index b54f6548a..8de7209a7 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -992,7 +992,7 @@ void Sidebar::jump_to_option(size_t selected) wxGetApp().get_tab(opt.type)->activate_option(boost::nowide::narrow(opt.opt_key), boost::nowide::narrow(opt.category)); // Switch to the Settings NotePad -// wxGetApp().mainframe->select_tab(); +// wxGetApp().mainframe->select_tab(MainFrame::ETabType::LastSettings); } ObjectManipulation* Sidebar::obj_manipul() @@ -3095,14 +3095,14 @@ unsigned int Plater::priv::update_background_process(bool force_validation, bool } //update tab if needed - if (invalidated != Print::ApplyStatus::APPLY_STATUS_UNCHANGED && process_done_callback) + if (invalidated != Print::ApplyStatus::APPLY_STATUS_UNCHANGED) { if (this->preview->can_display_gcode()) - process_done_callback(2); + main_frame->select_tab(MainFrame::ETabType::PlaterGcode, true); else if (this->preview->can_display_volume()) - process_done_callback(1); + main_frame->select_tab(MainFrame::ETabType::PlaterPreview, true); else - process_done_callback(0); + main_frame->select_tab(MainFrame::ETabType::Plater3D, true); } return return_state; } @@ -3708,7 +3708,7 @@ void Plater::priv::on_slicing_update(SlicingStatusEvent &evt) void Plater::priv::on_slicing_completed(wxCommandEvent & evt) { notification_manager->push_slicing_complete_notification(evt.GetInt(), is_sidebar_collapsed()); - process_done_callback(1); + main_frame->select_tab(MainFrame::ETabType::PlaterPreview); switch (this->printer_technology) { case ptFFF: this->update_fff_scene(); @@ -3788,7 +3788,7 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt) this->background_process.stop(); this->statusbar()->reset_cancel_callback(); this->statusbar()->stop_busy(); - process_done_callback(2); + main_frame->select_tab(MainFrame::ETabType::PlaterGcode); // Reset the "export G-code path" name, so that the automatic background processing will be enabled again. this->background_process.reset_export(); @@ -4281,7 +4281,7 @@ bool Plater::priv::init_view_toolbar() item.name = "3D"; item.icon_filename = "editor.svg"; - item.tooltip = _utf8(L("3D editor view")) + " [" + GUI::shortkey_ctrl_prefix() + "5]"; + item.tooltip = _utf8(L("3D editor view")) + " [" + GUI::shortkey_ctrl_prefix() + "1]"; item.sprite_id = 0; item.left.action_callback = [this]() { if (this->q != nullptr) wxPostEvent(this->q, SimpleEvent(EVT_GLVIEWTOOLBAR_3D)); }; if (!view_toolbar.add_item(item)) @@ -4289,7 +4289,7 @@ bool Plater::priv::init_view_toolbar() item.name = "Preview"; item.icon_filename = "preview.svg"; - item.tooltip = _utf8(L("Preview")) + " [" + GUI::shortkey_ctrl_prefix() + "6]"; + item.tooltip = _utf8(L("Preview")) + " [" + GUI::shortkey_ctrl_prefix() + "3]"; item.sprite_id = 1; item.left.action_callback = [this]() { if (this->q != nullptr) wxPostEvent(this->q, SimpleEvent(EVT_GLVIEWTOOLBAR_PREVIEW)); }; if (!view_toolbar.add_item(item)) @@ -5238,9 +5238,6 @@ Preview::ForceState Plater::get_force_preview() { return p->preview->get_force_state(); } -void Plater::process_done_callback(std::function process_done_callback) { - p->process_done_callback = process_done_callback; -} bool Plater::is_preview_shown() const { return p->is_preview_shown(); } bool Plater::is_preview_loaded() const { return p->is_preview_loaded(); } diff --git a/src/slic3r/GUI/Plater.hpp b/src/slic3r/GUI/Plater.hpp index 6949f89fb..87fe4e2d1 100644 --- a/src/slic3r/GUI/Plater.hpp +++ b/src/slic3r/GUI/Plater.hpp @@ -169,7 +169,6 @@ public: void select_view_3D(const std::string& name); void set_force_preview(Preview::ForceState force); Preview::ForceState get_force_preview(); - void process_done_callback(std::function process_done_callback); bool is_preview_shown() const; bool is_preview_loaded() const; diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp index 780d858c2..56df9be00 100644 --- a/src/slic3r/GUI/Preferences.cpp +++ b/src/slic3r/GUI/Preferences.cpp @@ -590,22 +590,24 @@ void PreferencesDialog::create_settings_mode_widget() _L("Settings in non-modal window") }; auto app_config = get_app_config(); - int selection = app_config->get("old_settings_layout_mode") == "1" ? 0 : - app_config->get("new_settings_layout_mode") == "1" ? 1 : - app_config->get("dlg_settings_layout_mode") == "1" ? 2 : 0; + int selection = app_config->get("tab_settings_layout_mode") == "1" ? 0 : + app_config->get("old_settings_layout_mode") == "1" ? 1 : + app_config->get("new_settings_layout_mode") == "1" ? 2 : + app_config->get("dlg_settings_layout_mode") == "1" ? 3 : 1; wxWindow* parent = m_optgroup_gui->parent(); m_layout_mode_box = new wxRadioBox(parent, wxID_ANY, _L("Layout Options"), wxDefaultPosition, wxDefaultSize, - WXSIZEOF(choices), choices, 3, wxRA_SPECIFY_ROWS); + WXSIZEOF(choices), choices, 4, wxRA_SPECIFY_ROWS); m_layout_mode_box->SetFont(wxGetApp().normal_font()); m_layout_mode_box->SetSelection(selection); m_layout_mode_box->Bind(wxEVT_RADIOBOX, [this](wxCommandEvent& e) { int selection = e.GetSelection(); - m_values["old_settings_layout_mode"] = boost::any_cast(selection == 0) ? "1" : "0"; - m_values["new_settings_layout_mode"] = boost::any_cast(selection == 1) ? "1" : "0"; - m_values["dlg_settings_layout_mode"] = boost::any_cast(selection == 2) ? "1" : "0"; + m_values["tab_settings_layout_mode"] = boost::any_cast(selection == 0) ? "1" : "0"; + m_values["old_settings_layout_mode"] = boost::any_cast(selection == 1) ? "1" : "0"; + m_values["new_settings_layout_mode"] = boost::any_cast(selection == 2) ? "1" : "0"; + m_values["dlg_settings_layout_mode"] = boost::any_cast(selection == 3) ? "1" : "0"; }); auto sizer = new wxBoxSizer(wxHORIZONTAL); diff --git a/src/slic3r/GUI/PresetComboBoxes.cpp b/src/slic3r/GUI/PresetComboBoxes.cpp index 8dd35a591..d42853dfd 100644 --- a/src/slic3r/GUI/PresetComboBoxes.cpp +++ b/src/slic3r/GUI/PresetComboBoxes.cpp @@ -696,7 +696,7 @@ bool PlaterPresetComboBox::switch_to_tab() wxGetApp().tab_panel()->SetSelection(page_id); // Switch to Settings NotePad - wxGetApp().mainframe->select_tab(); + wxGetApp().mainframe->select_tab(MainFrame::ETabType::LastSettings); return true; } diff --git a/src/slic3r/GUI/UnsavedChangesDialog.cpp b/src/slic3r/GUI/UnsavedChangesDialog.cpp index 007c25e72..052fa6b60 100644 --- a/src/slic3r/GUI/UnsavedChangesDialog.cpp +++ b/src/slic3r/GUI/UnsavedChangesDialog.cpp @@ -559,7 +559,7 @@ UnsavedChangesDialog::UnsavedChangesDialog(Preset::Type type, PresetCollection* const std::string& def_action = wxGetApp().app_config->get(m_app_config_key); if (def_action == "none") { - if (wxGetApp().mainframe->is_dlg_layout() && wxGetApp().mainframe->m_settings_dialog.HasFocus()) + if (wxGetApp().mainframe->get_layout() == MainFrame::ESettingsLayout::Dlg && wxGetApp().mainframe->m_settings_dialog.HasFocus()) this->SetPosition(wxGetApp().mainframe->m_settings_dialog.GetPosition()); this->CenterOnScreen(); } diff --git a/src/slic3r/GUI/UpdateDialogs.cpp b/src/slic3r/GUI/UpdateDialogs.cpp index 9b70fe8ac..20f148130 100644 --- a/src/slic3r/GUI/UpdateDialogs.cpp +++ b/src/slic3r/GUI/UpdateDialogs.cpp @@ -25,9 +25,9 @@ namespace Slic3r { namespace GUI { -static const char* URL_CHANGELOG = "https://files.prusa3d.com/?latest=slicer-stable&lng=%1%"; -static const char* URL_DOWNLOAD = "https://slic3r.org/download/"; -static const char* URL_DEV = "https://github.com/slic3r/Slic3r/releases/tag/version_%1%"; +static const char* URL_CHANGELOG = "https://github.com/" SLIC3R_GITHUB "/releases"; +static const char* URL_DOWNLOAD = "https://github.com/" SLIC3R_GITHUB "/releases"; +static const char* URL_DEV = "https://github.com/" SLIC3R_GITHUB "/releases/tag/version_%1%"; static const std::string CONFIG_UPDATE_WIKI_URL("https://github.com/prusa3d/PrusaSlicer/wiki/Slic3r-PE-1.40-configuration-update"); @@ -285,7 +285,6 @@ MsgDataLegacy::MsgDataLegacy() : content_sizer->AddSpacer(VERT_SPACING); auto *text2 = new wxStaticText(this, wxID_ANY, _(L("For more information please visit Prusa wiki page:"))); - static const wxString url("https://github.com/prusa3d/PrusaSlicer/wiki/Slic3r-PE-1.40-configuration-update"); // The wiki page name is intentionally not localized: auto *link = new wxHyperlinkCtrl(this, wxID_ANY, wxString::Format("%s 1.40 configuration update", SLIC3R_APP_NAME), CONFIG_UPDATE_WIKI_URL); content_sizer->Add(text2); diff --git a/src/slic3r/Utils/Process.cpp b/src/slic3r/Utils/Process.cpp index 06da87ad7..31f32e30e 100644 --- a/src/slic3r/Utils/Process.cpp +++ b/src/slic3r/Utils/Process.cpp @@ -39,7 +39,7 @@ static void start_new_slicer_or_gcodeviewer(const NewSlicerInstanceType instance wxString path; wxFileName::SplitPath(wxStandardPaths::Get().GetExecutablePath(), &path, nullptr, nullptr, wxPATH_NATIVE); path += "\\"; - path += (instance_type == NewSlicerInstanceType::Slicer) ? "superslicer.exe" : "prusa-gcodeviewer.exe"; + path += (instance_type == NewSlicerInstanceType::Slicer) ? SLIC3R_APP_CMD ".exe" : GCODEVIEWER_APP_CMD ".exe"; std::vector args; args.reserve(4); args.emplace_back(path.wc_str()); @@ -62,9 +62,9 @@ static void start_new_slicer_or_gcodeviewer(const NewSlicerInstanceType instance { // Maybe one day we will be able to run PrusaGCodeViewer, but for now the Apple notarization // process refuses Apps with multiple binaries and Vojtech does not know any workaround. - // ((instance_type == NewSlicerInstanceType::Slicer) ? "PrusaSlicer" : "PrusaGCodeViewer"); - // Just run PrusaSlicer and give it a --gcodeviewer parameter. - bin_path = bin_path.parent_path() / "PrusaSlicer"; + // ((instance_type == NewSlicerInstanceType::Slicer) ? SLIC3R_APP_NAME : GCODEVIEWER_APP_NAME); + // Just run the slicer and give it a --gcodeviewer parameter. + bin_path = bin_path.parent_path() / SLIC3R_APP_NAME; // On Apple the wxExecute fails, thus we use boost::process instead. BOOST_LOG_TRIVIAL(info) << "Trying to spawn a new slicer \"" << bin_path.string() << "\""; try { @@ -109,7 +109,7 @@ static void start_new_slicer_or_gcodeviewer(const NewSlicerInstanceType instance std::string my_path; if (args.empty()) { // Binary path was not set to the AppImage in the Linux specific block above, call the application directly. - my_path = (bin_path.parent_path() / ((instance_type == NewSlicerInstanceType::Slicer) ? "superslicer" : "prusa-gcodeviewer")).string(); + my_path = (bin_path.parent_path() / ((instance_type == NewSlicerInstanceType::Slicer) ? SLIC3R_APP_CMD : GCODEVIEWER_APP_CMD)).string(); args.emplace_back(my_path.c_str()); } std::string to_open; diff --git a/version.inc b/version.inc index cfbff43fe..221303f62 100644 --- a/version.inc +++ b/version.inc @@ -8,3 +8,12 @@ set(SLIC3R_VERSION_FULL "2.0.00.0") set(SLIC3R_BUILD_ID "Slic3r_${SLIC3R_VERSION_FULL}") set(SLIC3R_RC_VERSION "2,0,00,0") set(SLIC3R_RC_VERSION_DOTS "${SLIC3R_VERSION_FULL}") + + +set(GCODEVIEWER_APP_NAME "G-code Viewer") +set(GCODEVIEWER_APP_KEY "GCodeViewer") +set(GCODEVIEWER_APP_CMD "gcodeviewer") + +set(SLIC3R_BASED_ON "") +set(SLIC3R_GITHUB "slic3r/Slic3r") +set(SLIC3R_INTRO "Slic3r contains sizable contributions from Prusa Research. Original work by Alessandro Ranellucci and the RepRap community.")