* Fixed builds for non-MSW platforms (We can't change the signature of the RichMessageDialog. It have to be completely the same as for wxRichMessageDialog)
* Texts of the message dialog are changed. Use InfoDialog instead of a RichMessageDialog.
* MsgDialog: Added SetButtonLabel() function
* InfoDialog: For constructor added is_marked_message and style parameter to allow to use marked text in the Dialog and set different style
Change random values of the S and V in HSV colors.
To avoid generation of the extremely light or dark colors we use now generated values from the range [0.65; 0.1]
When part's configuration is updated =>
Don't call config_manipulation.update_print_fff_config() separately for applied object's config and then applied own config.
Configuration have to be applied from object config and its config. And than call config_manipulation.update_print_fff_config().
+ Redundant call of the update_config_values() is deleted from DeleteButton event. All checks are made during update_settings_list().
+ OptionsGroup::activate_line():Add same as at OG_CustomCtrl::CtrlLine::render() condition for the drawing of a option label.
It means that we draw option labels only, if line has more than one option.
first_layer_height cannot be changed to ConfigOptionFloat, that would break loading of old 3MFs.
The relative values from 3MFs should already be converted to absolute in `Preset::normalize`, what is missing is the UI check.
+ Code refactoring for OptionsGroup::create_single_option_line():
Don't clear label value in an Option. This value is used in Field::get_value_by_opt_type() to show error "%s doesn't support percentage".
=> At functions OG_CustomCtrl::CtrlLine::render() and OG_CustomCtrl::CtrlLine::get_pos() added check if current line has more than one option.
=> Draw option's label only when line has several options.
MessageDialog is used instead of wxMessageDialog on MSW for supporting of the Light/Dark color mode.
But a constructor of the MsgDialog replaces a parent which is equal to nullptr with the MainFrame .
That is why non-modal dialog with Preset Settings loses a focus after close of the MessageDialog.
"m_msg_dlg_parent" is added to ConfigManipulation class. ConfigManipulation's instance owed by Tab will use the Tab as a parent for MessageDialogs.
=> The MessageDialog with information about configuration incompatibility will always appear over related SettingsTab
and a non-modal dialog with Preset Settings will not lose the focus.
Otherwise click on this line causes a strange frizz of the settings page.
And line hovering by the mouse has no visual effect on Linux.
(Neither wxEVT_ENTER_WINDOW nor wxEVT_LEAVE_WINDOW isn't catch by wxStaticText for some reason)
+ Call of the SetToolTip() moved from constructor to wxEVT_ENTER_WINDOW. In this case Tooltip text will always respect to the "suppress_hyperlinks" value.
* --boost option is added to gettext_make_pot script to recognize Boost format strings.
* New script gettext_merge_po_with_pot is added to merging new lines from POT to current PO
* --check-format option is added to gettext_po_to_mo script to check language dependent format strings during generation MO from PO.
* POT is updated and all PO files are merged with it. So, community can just load needed PO file and continue in translation.
* ExtruderSequenceDialog: Added messed localization markers
reload_scene() call were followed by update(). It synchronizes back-end with front-end and then it calls reload_scene() again.
However in SLA mode reload_scene() expects the back-end to be synchronized with front-end, thus we get asserts that we all have ignored for a long time.
So, we call ObjectList::update_info_items() after the call of update() where reload_scene() is already called and GLCanvas3D::is_object_sinking() will return correct value
(related to the fix of #7355 - PrusaSlicer 2.4.0-beta-2+win64 will not start on Windows 7 64-bit )
+ Updated URL_HASH SHA256 in wxWidgets.cmake in respect to the 51c824019e98fc97b0bcdd4d9f4ed4cb523a7cac in wxWidgets-v3.1.4-patched
+ Added nsvgParseFromFileWithReplace() to replace some colors before parsing from SVG file
+ Thumbnails are saved with selected resin color in SL1 or SL1S files
+ "white" folder is deleted from "icons" now. THere is no needed anymore.
* A little bit reworked MsgDialog: Checkbox and buttons are placed under the Static line
* Implemented wrapper for wxRichMessageDialog
+ Implemented wrapper for wxStaticLine
* Refreshed title bar for all Dialogs and MainFrame
* Refreshed header of the DataViewCtrl and ListView
* Refresh tooltips
* Redraw SpinCtrls
* Use system menu with is colored in respect to the color mode
* Preferences: Added parameter "Use system menu for application" and moved to the "Dark mode" tab with "Enable Dark mode parameter"
* Fixed update of a warning icon for multi-part object, when some part with errors was deleted
* Fixed a crash when selecting non-Object and non-Volume item (in get_mesh_errors_info() was missed check of the obj_idx)
+ Follow-up https://github.com/prusa3d/PrusaSlicer/commit/1cc7b4ba971e8d04558b8a49869d9ce1647b8f77 - some code refactoring:
* fixed RepairedMeshErrors.merge()
* get_mesh_errors_count() renamed to get_repaired_errors_count()