Commit Graph

435 Commits

Author SHA1 Message Date
YuSanka
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
enricoturri1966
75f0b81bdd Do not close application when user select 'Cancel' in the save dirty project dialog 2021-06-08 11:51:41 +02:00
enricoturri1966
862eac6589 Changed logic to avoid saving a project while a gizmo is in editing mode 2021-06-01 08:32:58 +02:00
YuSanka
31cb4afb65 Fix of some warnings 2021-05-18 12:58:14 +02:00
YuSanka
a5c34ce632 Probably fix for #6270 - Segfault during startup in prusa-slicer-git 2.3.0.r24.gd06aa6069-1 2021-05-11 18:03:57 +02:00
enricoturri1966
a138446ed2 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_project_dirty_state 2021-05-03 16:05:22 +02:00
Lukas Matena
22af3b8e30 Fixed a memory leak when repairing an external stl 2021-04-26 20:45:43 +02:00
Lukas Matena
e610102fa5 Fixed build against wxWidgets 3.0 2021-04-14 07:05:12 +02:00
YuSanka
424e1233fa MSW specific: Fixed update of the UI after system color change.
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
2021-04-06 22:25:35 +02:00
enricoturri1966
a23cfac53f Project dirty state manager -> presets dirty state 2021-04-06 16:29:05 +02:00
enricoturri1966
36afd411d6 Extended interface of project dirty state manager 2021-04-06 13:17:29 +02:00
YuSanka
56df6f80aa Suppress to show Search window on the Plater using Ctrl+F shortcut, when we are at Preview mode 2021-03-24 11:32:33 +01:00
Oleksandra Yushchenko
acd4db4340 Follow-up of 908c48ae6a -> Fixed update after switching tab after editing custom g-code in settings tabs (#6258) 2021-03-24 11:20:57 +01:00
YuSanka
32afda7d57 Fix of #6212 - Cannot select "New Project" after deleting models in saved project, continuing overwrites old project 2021-03-16 10:32:15 +01:00
Vojtech Bubnik
1f1c2544a6 Disable the new Toggle fullscreen menu item on OSX, it adds its own. 2021-03-16 08:54:46 +01:00
Vojtech Bubnik
ec0d603e13 Changing the Fullscreen hotkey to Ctrl+Cmd+F for OSX 2021-03-15 17:11:36 +01:00
Vojtech Bubnik
aa0216af39 Worked around some quirky Linux file system issues. Namely
the Chromebooks share their file system to Linux using the 9p file
system, which does not support setting file ownership. Newly PrusaSlicer
will detect platform and it will not panick if copy_file() cannot set
file ownership after copying. It just logs the incident, and on
chromebooks the loglevel for that incident is "Info", not "Error".

Adjusted the full screen mode to contain menu bar.
Moved Platform.cpp/hpp to libslic3r
2021-03-15 16:19:22 +01:00
Oleksandra Yushchenko
31c7eacfbe Ys code refactoring (#6227)
* 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
2021-03-15 10:04:45 +01:00
Vojtech Bubnik
2c3fa45f7f Full screen toggle 2021-03-15 09:55:57 +01:00
Enrico Turri
4f48002fdb Custom G-code validation - Do not veto setting tab switch when invalid g-code is found 2021-03-02 17:00:11 +01:00
enricoturri1966
29c0f9fdd1 Follow-up of 86d7e1fb90 -> Fixed update after switching tab after editing custom g-code in settings tabs 2021-03-01 13:03:43 +01:00
enricoturri1966
c7f69edd10 Tech ENABLE_WX_3_1_3_DPI_CHANGED_EVENT set as default 2021-02-25 12:40:42 +01:00
YuSanka
f2e56bb63e Some code refactoring follow-up 33aa6be7b7 and 92b1302a08 2021-02-24 15:50:18 +01:00
enricoturri1966
54258ac336 Follow-up of 86d7e1fb90 -> Custom gcode validation in Filament settings tab 2021-02-22 08:39:36 +01:00
enricoturri1966
3b2b937d0e Follow-up of 86d7e1fb90 -> Custom gcode validation in Printer settings tab 2021-02-22 08:13:48 +01:00
YuSanka
a1688767d3 Fixed a crash on language changing
(DiffPresetDialog should get mainframe as a parent explicitly)
2021-02-09 09:56:19 +01:00
Lukas Matena
22ef17af54 Fixing Clang warnings 1 2021-02-08 17:52:29 +01:00
Vojtech Bubnik
68a9114a34 DiffPresetDialog, non modal to compare two presets.
Added menu item "Window->Compare presets" to compare more than one type
of presets.
Code refactoring for PresetComboBox: Use suffix "modified" just for
PlaterPresetComboBox and TabPresetComboBox
Code refactoring. wxDataViewCtrl and related functions extracted from
DiffPresetDialog and UnsavedChangesDialog to the separate class
DiffViewCtrl
Code refactoring, Tab.cpp: Build all unregular pages on a first build of
the Printer Settings

Squashed commit of the following:

commit 91f45a8a2d97d252337c7306dd02db607fd79c00
Author: Vojtech Bubnik <bubnikv@gmail.com>
Date:   Thu Feb 4 09:34:29 2021 +0100

    Fixed after merge

commit 09aa502498b08c059ecdf334f5db1567739b4520
Merge: 6df8e83e1 0baa92fab
Author: Vojtech Bubnik <bubnikv@gmail.com>
Date:   Thu Feb 4 09:31:43 2021 +0100

    Merge remote-tracking branch 'remotes/origin/master' into ys_diff_dlg

commit 6df8e83e1af3ba096ac39d25985b6deb2e0a245b
Author: Vojtech Bubnik <bubnikv@gmail.com>
Date:   Thu Feb 4 09:29:53 2021 +0100

    Tiny beautification.

commit e781ceaaf7c39bc073476409cc02918d9f182930
Author: Vojtech Bubnik <bubnikv@gmail.com>
Date:   Wed Feb 3 18:05:19 2021 +0100

    Reworked copying of PresetBundles:
    1) Simplified by using the default copy constructors and copy operators.
    2) Made safer by not allowing PresetCollection and PhysicalPrinterPresetCollection
       to be copied or instantiated outside of PresetBundle.
    3) Fixed Preset::vendor pointers after copying PresetBundle.

commit a8f0b7aa5156465cdb3e3dbb86feb66a64bcebc0
Author: YuSanka <yusanka@gmail.com>
Date:   Mon Jan 25 16:13:53 2021 +0100

    DiffPresetsDialog: Show compatibility to print/printer presets selected in DiffPresetDialog

commit 597451f930a4330376966d8cf3350056d4f85a73
Merge: cce5b5710 59017a7da
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Jan 21 12:14:48 2021 +0100

    Merge remote-tracking branch 'origin/master' into ys_diff_dlg

commit cce5b5710d1225c7eaa52d0abb4b3f66fbd3b6a1
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Jan 21 12:11:40 2021 +0100

    DiffPresetDialog: Fixed crash on ASAN build

commit ad8d728d89d7a75c2ac136ea8cdbb730ab774cd9
Author: YuSanka <yusanka@gmail.com>
Date:   Wed Jan 20 16:38:28 2021 +0100

    FullCompareDialog improvements

commit 316bafbeec9bb63f731b653d296062d9e22dd02f
Author: YuSanka <yusanka@gmail.com>
Date:   Wed Jan 20 09:25:46 2021 +0100

    DiffPresetDialog improvements:
    * Update presets lists after save changes in edited preset or change printer_technology
    * Tab.cpp: Build all unregular pages on a first build of the Printer Settings

commit 01171c8ef50389d0801b0ccc5746ab0c3b731b11
Author: YuSanka <yusanka@gmail.com>
Date:   Tue Jan 19 17:26:28 2021 +0100

    DiffPresetDialog : improvements
    * This dialog is non-modal now
    * "Compare presets" menu item is moved from "View" to the "Window" menu group
    * Added info tooltips for the bitmap buttons between presets
    * Added "Show all presets" checkbox
    * Show full difference between printer presets with different count of extruders

commit 3d38b62f3c9de8aab352ed3bcff297d5c0239b2e
Merge: e50fe6de9 9a2310ae9
Author: YuSanka <yusanka@gmail.com>
Date:   Mon Jan 18 10:00:18 2021 +0100

    Merge remote-tracking branch 'origin/master' into ys_diff_dlg

commit e50fe6de984decadfef3d4b952f0eec8ab9e6670
Author: YuSanka <yusanka@gmail.com>
Date:   Sat Jan 16 02:27:24 2021 +0100

    DiffPresetDialog improvements
    Added menu item "View->Compare presets" to compare more than one type of presets

commit bf08b7c8c969ad0ca631b9eeac1bc231f474e72b
Author: YuSanka <yusanka@gmail.com>
Date:   Sat Jan 16 00:28:39 2021 +0100

    Code refactoring. wxDataViewCtrl and related functions extracted from DiffPresetDialog and UnsavedChangesDialog to the separate class DiffViewCtrl

commit 7aeb63032b0bc2bd06e60990c060008660a5c44f
Author: YuSanka <yusanka@gmail.com>
Date:   Fri Jan 15 21:35:43 2021 +0100

    DiffPresetDialog: first implementation

commit 2f23d5af9d6b5dd670dfb7d06eedbe0e6d2960c6
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Jan 14 16:28:43 2021 +0100

    Code refactoring for PresetComboBox.
    Use suffix "modified" just for PlaterPresetComboBox and TabPresetComboBox
2021-02-04 09:42:32 +01:00
Vojtech Bubnik
5aa4501d23 Support for HiDPI in OpenGL on Linux / GTK3.
wxGTK3 HiDPI support seems to emulate what OSX does quite closely,
thus the changes are relatively minimal.

Also fixed an ugly rounding issue when populating the ImGUI font map
with image thumbnails.

Fixes Gtk3 issue on 4k+ screens #4135
Fixes HiDPI screens with Wayland on Fedora 30 cause Plater view to be too small. #3245
2020-12-15 12:14:38 +01:00
David Kocik
1b5ce83ef9 Changed condition for showing Open new instance item in dock icon menu (mac). Fix of #5463. 2020-12-14 19:26:25 +01:00
David Kocik
e6c600c46f Ongoing uploads while exiting dialog
Ongoing uploads while exiting dialog

Ongoing uploads while exiting dialog
2020-12-10 11:02:46 +01:00
YuSanka
1c17d434ae Changed layout for for the Preferences Dialog (related to #5381)
+ Fixed #5312
+ Deleted unused now EVT_TAB_VALUE_CHANGED and EVT_TAB_PRESETS_CHANGED
2020-12-08 17:10:17 +01:00
Vojtěch Bubník
0bb7ed7402 Merge pull request #4734 from wavexx/fix_new_instance_shortcut
Use Ctrl+Shift+I to open a new instance instead of Ctrl+I
2020-12-07 11:28:03 +01:00
enricoturri1966
0778bcd5c9 Replace F5 with Ctrl+Shift+R as shortcut key for reload from disk commands on MAC 2020-12-07 08:39:43 +01:00
Vojtech Bubnik
fcae337e31 Fix of Unexpected Behavior @ Application Open and When GCODE is Generated #5254
Icon not loaded from the exe on Windows.
2020-12-03 14:14:40 +01:00
enricoturri1966
6f31fcc1fb #5360 - GCode Viewer -> Added menu command to reload gcode file 2020-12-03 13:48:54 +01:00
enricoturri1966
76e36e6893 ENABLE_GCODE_VIEWER set as default in:
MainFrame hpp/cpp

Plater hpp/cpp
2020-11-19 14:59:46 +01:00
enricoturri1966
d2d8b4cc50 Added missing include 2020-11-18 14:10:02 +01:00
YuSanka
543341516b Localization, new POT 2020-11-18 12:30:00 +01:00
Lukas Matena
f6ad6f088d Fix of an ASAN crash on app close (Linux) 2020-11-09 14:00:58 +01:00
YuSanka
7fe44d6a33 OSX specific : Set top border for the mode buttons, when settings pages has new layouts
(when tabs bar is hidden)

+ Code cleaning for OG_CustomCtrl (delete unused input parameter from the draw_blinking_bmp())
2020-11-06 16:24:03 +01:00
YuSanka
c204e90ecc Localization:
Some phrases are corrected in the code
The POT-file is updated
2020-11-05 22:17:49 +01:00
YuSanka
649d2aad72 Fixed a Dialog position under OSX
Always set parent for the Dialog, if we want to see the Dialog in the same display as a parent.
Dialog will be shown in the primary monitor otherwise.

+ fixed a draw of the canvas legend when we move application between Retina and non-Retina displays
2020-11-05 11:53:16 -08:00
Vojtech Bubnik
c8e1104ef6 Fix of previous commit. 2020-10-28 11:11:58 +01:00
Vojtech Bubnik
5e53e66681 Revert of d29a82e944 2020-10-28 11:11:58 +01:00
Vojtech Bubnik
af0b587f1c Merge of pull request Add support for RepetierServer #4384 by @docbobo
with the following refactorings:

1) Removed the "printhost_slug" config from the Printer config
   and from all the Printer config related spots.
2) "printhost_slug" renamed to "printhost_port". Slug sounds nasty.
3) Improved error reporting of RepetierHost class.
4) Refactored for the new "Physical Printers"

Following refactorings were done independently of the Repetier pull request:
1) Removed PrintHost static print config.
2) Clean-up after conversion of print host configuration
   from Printer config to Physical Printer config.
3) Fixed some issues, where the Printer config was still queried for
   host configuration. Vojtech believes that this should not happen
   after the host configuration is converted to physical printers.

Vojtech still feels that more refactoring is needed in regard to porting
the host configuration from Printer profile to the new Physical Printer
profile.
2020-10-28 09:51:05 +01:00
YuSanka
e472f7f7f8 Fixed 493cdbd069
Instead of "sep" should be used "\t" to the "Shift"-part will not be spoiled
2020-10-26 09:18:04 +01:00
YuSanka
fc945d4193 Added shortcut ("Shift+Tab") for the menu item "Collapse sidebar" 2020-10-25 15:10:51 +01:00
enricoturri1966
125b9dfdb0 #4888 - Fixed jerky movements in Preview when using 3D mouse 2020-10-19 12:34:33 +02:00
Vojtech Bubnik
b2e024a1f6 Reverted the "single_instance" condition check, David thinks
the old way is correct.
2020-10-17 12:57:02 +02:00