Commit Graph

424 Commits

Author SHA1 Message Date
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
Vojtech Bubnik
e3d21b1a71 Fix of the "dock" menu on OSX to start a new instance of PrusaSlicer
in case a single instance is disabled.
Make the "single_instance" enabled by default on OSX initially
to match the platform.
2020-10-17 09:23:05 +02:00
YuSanka
392a5df569 UnsavedChangesDialog: Updated icons on "Discard" buttons
+ Put "exit" icon on "Quit" menu item
2020-10-16 13:21:23 +02:00
David Kocik
89d5f17b28 OSX dock menu item start new instance visibility 2020-10-16 10:49:15 +02:00
David Kocik
685e54d917 fix of OSX dock menu items 2020-10-15 19:40:57 +02:00
David Kocik
17ef424330 OSX dock menu items 2020-10-15 18:53:35 +02:00
Yuri D'Elia
0daa24a6bd Use Ctrl+Shift+I to open a new instance instead of Ctrl+I
"Open new instance" overrider the "import" shortcut.

Use Ctrl+Shift+I for new instance, which is definitely less important
than importing new models.

Also document the shortcut in the Keyboard shortcuts dialog.

Fixes #4711
2020-10-14 20:51:21 +02:00
Vojtech Bubnik
1fb9e1f70c wxEVT_CREATE and wxEVT_ACTIVATE is not being called on the main frame
on application start-up, at least not on Windows.
wxEVT_CREATE was called for some control deep in the Plater, however
the event was delivered to the main frame and only for slicer, not
for G-code viewer. Thus the callbacks for 3D Mouse were not registered
for and the 3D mouse did not work on Windows.

Fixed by calling the callback registration from the first execution
of the Idle function.
2020-10-14 12:55:07 +02:00
enricoturri1966
dd1976cac0 #4864 - Fixed collapse sidebar using Shift+Tab 2020-10-13 11:31:12 +02:00
David Kocik
fe618b04e3 starting prusaslicer from gcode viewer and vice versa, by menus or by stl drop on icon. Bring gcode viewer forward after start. 2020-10-12 15:26:19 +02:00
enricoturri1966
1318c67b39 Tech ENABLE_GCODE_DRAG_AND_DROP_GCODE_FILES set as default 2020-10-12 13:09:04 +02:00
enricoturri1966
9c48a5de5d Tech ENABLE_GCODE_APP_CONFIG as default 2020-10-12 12:38:34 +02:00