Commit Graph

439 Commits

Author SHA1 Message Date
a41a214584 MSW specific: Implementation of the own notebook control
* 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
2021-06-29 16:23:45 +02:00
c5304750d9 Support for forward compatibility of configurations, user and system
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.

When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.

Substitute enums and bools only.  Allow booleans to be parsed as
    true: "1", "enabled", "on" case insensitive
    false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".

Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.

WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:57:05 +02:00
313742997c Some code beautification for the last commit
+ Fix of the TabPresetComboBox layout for "light mode" + "tabs as a menu items" preferences
2021-06-18 21:54:20 +02:00
ffd33d6494 DarkMode for MSW (#6632)
* 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)"
2021-06-18 19:46:04 +02:00
eb7ce6429b Code refactoring to avoid a call of update_ui_from_settings() every time when switching between "3D-View" and "Preview" 2021-06-11 10:34:13 +02:00
1cb432a4ae Fixed first batch of locale-dependent calls 2021-05-24 12:20:29 +02:00
cfa72734b3 Fixed conflicts after merge with master 2021-05-07 13:14:11 +02:00
b0d3415fb7 desktop integration functions and dialog 2021-05-07 09:01:57 +02:00
5018cc7887 #6473 - Update titlebar when opening a project file by double-clicking the file icon 2021-05-06 10:11:53 +02:00
a138446ed2 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_project_dirty_state 2021-05-03 16:05:22 +02:00
73289e9e8e Updated splashscreen images 2021-04-21 13:49:24 +02:00
f8d7c7684a Configs should point to PrusaSlicer-alpha, not beta in alpha stage. 2021-04-09 08:11:40 +02:00
a23cfac53f Project dirty state manager -> presets dirty state 2021-04-06 16:29:05 +02:00
36afd411d6 Extended interface of project dirty state manager 2021-04-06 13:17:29 +02:00
3f68ff963b Updated version number,
alpha stores configs in alpha directory.
2021-03-23 13:50:53 +01:00
5f4b67463f Printhost upload progress bar notification 2021-03-12 10:32:26 +01:00
c2866d435b Tech ENABLE_CUSTOMIZABLE_FILES_ASSOCIATION_ON_WIN set as default 2021-02-26 10:18:16 +01:00
a12ee64cf5 Tech ENABLE_DRAG_AND_DROP_FIX set as default 2021-02-17 14:52:58 +01:00
919851b548 #5611 - Added option to show gcode line number on horizontal slider in preview 2021-02-16 10:07:05 +01:00
3be02881a9 Localization: Added plural form for some phrases, updated POT 2021-02-03 21:30:38 +01:00
673230d793 Localization: Fixed localization of some 3d-Scene notifications
+ Move a call of the load_language() before SplashScreen creation
2021-02-03 17:30:32 +01:00
da6dc77973 Fixing GCC warnings 3 2021-01-29 10:47:02 +01:00
bbbfedb600 Check loading of blacklisted dlls and show warning dialog at startup. Also show these dlls in sysinfo dialog. 2021-01-27 10:40:38 +01:00
6402cd7efc Merge remote-tracking branch 'origin/master' into dev 2021-01-13 14:18:55 +01:00
dda9c09747 Fix of #5584 - Information text on startup logo 2021-01-05 14:26:10 +01:00
05f6215f54 Fix of G-code Viewer not loading .gco files #5536
".gcode", ".gco", ".g" and ".ngc" were considered to be G-code file
extensions by the G-code import / export file dialogs, but not by
various other functions. Now the G-code extension is tested by
a single function is_gcode_file(string).
2021-01-05 12:26:11 +01:00
fb7778b84c Changed wording in one log message 2021-01-04 14:21:24 +01:00
c2abfcf1fe Move text color selection from ButtonsDescription to Preferences dialog (related to #5489) 2020-12-30 12:04:59 +01:00
17e310c09e Fix of #5537 - GUI_App::post_init could be in some cases called before GUI_App::init_openg when GCode viewer is used.
The solution adds a status flag to GUI_App::init_openg and ensures that GUI_App::post_init isn't called before initialization in GUI_App::init_openg is done.
2020-12-22 12:28:00 +01:00
62fa912a6d Fix of a crash on startup when creating physical printer profiles from 2.2 configs (#5513, #5074)
The issue is that opening the wxMessageDialog in GUI_App::check_printer_presets  fires wxEVT_IDLE event (on Linux at least).
At that point it is already bound to our lambda which will in turn call post_init prematurely.
The solution is to move the Bind at the very end of the initialization. The post_init that it calls assumes that init has been finished anyway.
2020-12-21 10:27:35 +01:00
785300d953 Bumped up version number to 2.3.0-rc1 2020-12-17 18:07:35 +01:00
747cc26614 Linux locales detection: reject unexpected formatting 2020-12-14 22:59:11 +01:00
eecd7b23fe Linux locales detection: A little refactoring 2020-12-14 22:59:02 +01:00
40bd9c08c0 Merge remote-tracking branch 'remotes/origin/lm_linux_locales' 2020-12-12 12:39:17 +01:00
df03ab392c Follow-up on 3523bb421f
(Ongoing uploads while exiting dialog):
Fixed some string conversion issues.
2020-12-12 11:26:17 +01:00
26c55c11c1 Linux: when available locales do not match the desired language completely,
list the installed locales and try to find an alternative

This should fix issues such as #3368 and #2580
2020-12-12 09:21:51 +01:00
e6c600c46f Ongoing uploads while exiting dialog
Ongoing uploads while exiting dialog

Ongoing uploads while exiting dialog
2020-12-10 11:02:46 +01:00
5e2668763d Improved error reporting on misformated boost::format string.
Improves Prusa slicer 2.3.0 BETA 2 crash when attempting to save a machine change #5418
2020-12-10 07:56:43 +01:00
2de75db3d0 Increase min height for the ObjectList.
Related to the FR #5162
2020-12-08 10:11:11 +01:00
d3f05abe9f Fixed missing include. 2020-12-07 19:47:37 +01:00
1b013c704a Linux specific: Documented an improved way of offering language
selection on Linux.
2020-12-05 09:12:28 +01:00
fb0b3bd982 Fixed conflicts after merge with master 2020-12-03 15:27:34 +01:00
fbb11ef1cc Suppressed a check of printer_presets for the containing information about "Print Host upload", when presets ate exported from the amf/3mf 2020-12-03 13:25:23 +01:00
4461d65b4e Localization: Update POT
+ Fixed translation for the "Extruder n" category on the Printer Settings Tab
 + Fixed a crash, when scrolling inside Search imGui with some localization (e.t. Russion)
2020-12-01 16:44:53 +01:00
ed7e96fdcd Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_animations 2020-11-30 13:46:03 +01:00
50d4914a6e Removed GLCanvas3D from parameters of NotificationManager methods 2020-11-30 13:45:17 +01:00
21645cd745 Linux specific fix for switching languages: PrusaSlicer 2.3 forces
en_GB locale when switching to English from the user interface,
while often Linux users have just en_US locales configured.

With this commit the user will have to select English (U.S.) or
English (U.K.). Usually English (U.S.) will work.

Vojtech is scared to touch the code for the other platforms (Windows and Mac)
as the language switching has been reworked multiple times and it is quite
fragile.
2020-11-30 11:57:16 +01:00
d49b43bcd9 Bumped up version number to beta1.
Changed the location of PrusaSlicer profiles from PrusaSlicer-alpha
to PrusaSlicer-beta.
2020-11-28 11:14:53 +01:00
0c2a0759ff call correct load_files at MacOpenFiles 2020-11-27 12:54:37 +01:00
3bc30d868e Refactoring:
1. Use C++ style cast instead of C style
2. Deleted unused code from Search
2020-11-26 14:34:54 +01:00