Commit graph

421 commits

Author SHA1 Message Date
Vojtech Bubnik
d0febbec32 Disable the new Toggle fullscreen menu item on OSX, it adds its own. 2021-03-16 08:54:46 +01:00
Vojtech Bubnik
d695e090ef Changing the Fullscreen hotkey to Ctrl+Cmd+F for OSX 2021-03-15 17:11:36 +01:00
Vojtech Bubnik
01406fd521 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
e002f0066f
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
932336612c Full screen toggle 2021-03-15 09:55:57 +01:00
Enrico Turri
91ffd8d501 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
908c48ae6a 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
be7e2f2ae1 Tech ENABLE_WX_3_1_3_DPI_CHANGED_EVENT set as default 2021-02-25 12:40:42 +01:00
YuSanka
88bd189047 Some code refactoring follow-up 33aa6be7b7 and 92b1302a08 2021-02-24 15:50:18 +01:00
enricoturri1966
92b1302a08 Follow-up of 86d7e1fb90 -> Custom gcode validation in Filament settings tab 2021-02-22 08:39:36 +01:00
enricoturri1966
9b0b0f5e27 Follow-up of 86d7e1fb90 -> Custom gcode validation in Printer settings tab 2021-02-22 08:13:48 +01:00
YuSanka
e833e63c42 Fixed a crash on language changing
(DiffPresetDialog should get mainframe as a parent explicitly)
2021-02-09 09:56:19 +01:00
Lukas Matena
0ff0444dcc Fixing Clang warnings 1 2021-02-08 17:52:29 +01:00
Vojtech Bubnik
4cdcfe6005 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
a13b35ce92 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
159dde511e 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
3523bb421f Ongoing uploads while exiting dialog
Ongoing uploads while exiting dialog

Ongoing uploads while exiting dialog
2020-12-10 11:02:46 +01:00
YuSanka
661ad1735b 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
d4c949dab6
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
10be5d1361 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
6fd1143b1c 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
2a0a9af0c9 #5360 - GCode Viewer -> Added menu command to reload gcode file 2020-12-03 13:48:54 +01:00
enricoturri1966
a1905d9b9e ENABLE_GCODE_VIEWER set as default in:
MainFrame hpp/cpp

Plater hpp/cpp
2020-11-19 14:59:46 +01:00
enricoturri1966
d0c87eb7ca Added missing include 2020-11-18 14:10:02 +01:00
YuSanka
5be9d42519 Localization, new POT 2020-11-18 12:30:00 +01:00
Lukas Matena
2618992c8b Fix of an ASAN crash on app close (Linux) 2020-11-09 14:00:58 +01:00
YuSanka
8448d1a1dc 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
ed2f03ec79 Localization:
Some phrases are corrected in the code
The POT-file is updated
2020-11-05 22:17:49 +01:00
YuSanka
f0a339758b 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
cfbc9f0845 Fix of previous commit. 2020-10-28 11:11:58 +01:00
Vojtech Bubnik
eb103e45a6 Revert of d29a82e944 2020-10-28 11:11:58 +01:00
Vojtech Bubnik
7c571c1d9d 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
d29a82e944 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
493cdbd069 Added shortcut ("Shift+Tab") for the menu item "Collapse sidebar" 2020-10-25 15:10:51 +01:00
enricoturri1966
5d3d9d9b92 #4888 - Fixed jerky movements in Preview when using 3D mouse 2020-10-19 12:34:33 +02:00
Vojtech Bubnik
c2f5cef8a4 Reverted the "single_instance" condition check, David thinks
the old way is correct.
2020-10-17 12:57:02 +02:00
Vojtech Bubnik
7896de892b 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
0f85777a79 UnsavedChangesDialog: Updated icons on "Discard" buttons
+ Put "exit" icon on "Quit" menu item
2020-10-16 13:21:23 +02:00
David Kocik
0aced42f64 OSX dock menu item start new instance visibility 2020-10-16 10:49:15 +02:00
David Kocik
1b2dcabf94 fix of OSX dock menu items 2020-10-15 19:40:57 +02:00
David Kocik
4ec5ea34bf OSX dock menu items 2020-10-15 18:53:35 +02:00
Yuri D'Elia
1fd54938ef 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
e0c5309bc3 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
e3e74f4ae0 #4864 - Fixed collapse sidebar using Shift+Tab 2020-10-13 11:31:12 +02:00
David Kocik
4b224359ef 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
5356b72a86 Tech ENABLE_GCODE_DRAG_AND_DROP_GCODE_FILES set as default 2020-10-12 13:09:04 +02:00
enricoturri1966
f04d9c1806 Tech ENABLE_GCODE_APP_CONFIG as default 2020-10-12 12:38:34 +02:00
enricoturri1966
7630be6cf1 Extract icon from executable files on Windows 2020-10-12 10:44:50 +02:00
Yuri D'Elia
a875b4f1c0 Document Shift+Tab in menus and shortcuts dialog 2020-10-12 09:16:08 +02:00
enricoturri1966
21366f56e7 Added menu command Configuration/Language to standalone gcode viewer 2020-10-12 08:39:40 +02:00