+ ProjectDropDialog: wxRadiloBox was changes to the wxStaticBox with wxRadioButtons because of dark mode colors update
+ Preferences: Fixed update of the text colors
* MSW specific: First implementation of the Notebook control to support Dark/Light color modes
* MSW specific: Set mode sizer to the Notebook control.
* MSW specific: Added icons to the Notepad control
+ There is no need to restart application after the changing of the color mode
* Fixed non-MSW build
* Updated color for SavePresetDialog
+ Added wrapper to wxMessageBox for mom-MSW platforms
* MSW specific: Dark Mode: First implementation
* Use menu instead of NoteBook
* Implemented MessageDialog
+ Fixed DarkMode for all dialogs and ColorPicker
* MSW DarkMode: Added missed updates for the switching between modes
* MSW DarkMode: Updated all existed context menus after switching of the mode
+ Added markers for the menu item witch is related to the selected tab
* Used wxFrame instead of wxDialog for SettingsDialog
(this change allow us to use menu bar in SettingsDialog)
+ fix for #6548 - Prusa Slicer 2.3.1 not activating non-modal settings window if settings window is minimized
* Implemented "Always use Dark mode colors" preference option
* Fixes for non_MSW build
* Next fixes for non-MSW builds
* Preferences: Fixed selection of the Settings Layout for non-MSW platforms
+ Updated DarkMode for colorpickers
* Windows DarkMode next fixes
* MSWDarkMode: Suppress to use system color to the PrusaSlicer
Select "Preferences -> Use Dark color mode (experimental)" to allow dark mode for the application
* Fixed MSW build
* MSWDarkMode: Upadteed color mode for ExtruderSequenceDialog and for dialogs related to the DoubleSlider
* Implemented Auto recreation of the PrusaSlicer when color mode is changed.
* Preferences: Added option "Set settings tabs as menu items (experimental)"
Steps to repro:
1. start PrusaSlicer
2. add a box
-> watch the object list: only one item is shown in the list
3. switch to preview
-> the item in the object list gets a child
* Implementation for #6216 - Make number keys select extruder when object treeview has focus
+ deleted unused extruder_selection()
+ Fixed notification after splitting of the solid object
* Follow up https://github.com/prusa3d/PrusaSlicer/commit/85a10268b9eabfa8aac4c7b1361136b40b75f9f0 - OSX implementation
+ Added shortcuts description to the "Keyboard Shortcuts" dialog
* Workaround to use "+/-" and numbers shortcuts on Linux
+ Fixed build on Linux
* OSX specific: fixed a work of keyboard accelerators from numbers on NumPad keyboard
* KBShortcutsDialog: fixed shortcuts for "Preferences" and "Show/Hide 3Dconnexion devices settings dialog, if enabled" under osx
and "Set Printable/Unprintable" and "Set extruder" under Linux
+ OSX specific: Added minimize of the application on "Cmd+M"
* Hot-fix for https://github.com/prusa3d/PrusaSlicer/commit/6efeb9d6b433f49aaca8ee42ed02d824c452eb8e
* Removed Linux specific workaround
When "string" type was returned, strange editing TextControl was appeared.
+ Added check of the selection for ObjectList::toggle_printable_state() function
Steps to repro:
1. Add 2 objects, add Settings for some of object -> Object Settings item is selected
2. In the 3D-scene select another object -> BUG: no changes in the ObjectList
Note: the wxEVT_SYS_COLOUR_CHANGED event works only for high contrast settings under MSW.
+ ConfigSnapshotDialog: Fixed UI colors for dark mode on all platforms
It contains "preset_type;opt_key" now. This key helps to avoid a collisions by using a same options key from different type presets.
Example: Option "elefant_foot_compensation" is in Print presets and SLA_printer presets
Problem description:
When "Print Settings -> Multiple Extruders -> No sparse layer" is enabled, then "Smart" Wipe Tower is used for wiping.
As a result, each layer with tool changes is splited for min 3 parts: first tool, wiping, second tool ...
But vertical slider wasn't respect to this case.
* GUI_ObjectList code refactoring:
The MenuFactory structure contains functions related to the context menu and bitmaps used to different volume types.
The SettingsFactory structure contains functions to getting overridden options, its bundles and bitmaps used to setting categories.
Fixed bugs/crashes:
1. Add object -> Add Settings from 3D scene -> Right click on object => Part's Settings list instead of object's
(Same behavior if something else but Object is selected in ObjectList)
2. Add settings to the part -> Change part type to the "Support Blocker/Enforcer" -> Settings disappears (it's OK) but =>
Save Project -> Open project => Support Blocker/Enforcer has a settings
3. Add part for object -> Change type of part -> Change monitor DPI -> old type icon appears
4. Select all instances in ObjectList -> Context menu in 3D scene -> Add Settings -> Select some category -> Crash
* ObjectLayers: Fixed a crash on re-scaling, when some layer range is selected
* Fixed OSX build
* Added menu item "Split to Objects" for multipart objects
+ Fixed bug: Add 2 parts,
Add some settings for one part
Delete part without settings => Single part object without settings, but settings are applied for the object.
+ Next refactoring: use same menu for Plater and ObjectList
Added check for visibility for all loaded presets.
Added notification about this action.
+ PresetComboBox: Fixed update() function for physical printers, when some of related presets are invisible.
BitmapComboBox: Use virtual OnSelect() on wxEVT_COMBO event
Don't save information about preset combobox type to the evt.SetInt(). This information can be received from BitmapComboBox::get_type() now.
1. DoubleSlider::Control : Update extruder colors before another updates for layers slider
2. GCodeViewer : Control count of extruders during the legend updating
Description of issue:
When for some parameter set a value which is out of rage or inaccurate and than click to another parameter,
receive a warning message dialog with description of a problem.
After closing of this Dialog any button on settings tab doesn't work for first click.
Looks like after dialog is closed Notebook page loses a focus.
Workaround:
Use self-created WarningDialog (inherited from the wxDialog) instead of wxMessageDialog
option "Use colors for axes values in Manipulation panel" is enabled in Preferences -> GUI
+ Fix one more compilation warning in UnsavedChangesDialog.cpp
* changed evaluation coefficients inside fuzzy_match_recursive
* don't add markers to the labels before it's used in fuzzy_match_recursive
+ follow-up https://github.com/prusa3d/PrusaSlicer/commit/78a3d8b63eb024f66a21274b828e5891b68f779c - added missed fix for one more line (use std::towlower instead of std::tolower for wchar_t) Problem was appearance on Cyrillic languages
(wxWidgets 3.1.4 can binding of wxEVT_DPI_CHANGED now, so it was called msw_rescale() for most of the controls redundantly)
+ Fixed update of the DoubleSlider after changing of the system color