Commit Graph

235 Commits

Author SHA1 Message Date
2f6326a2eb Windows specific refactoring of Mouse3DController and RemovableDriveManager.
PrusaSlicer newly registers by Windows operating system for HID USB
plug / unplug notifications and for Volume attach / detach notifications,
and the background threads of the two respective services are waken up
on these Windows notifications.
The RemovableDriveManager also wakes up every 30 seconds to cope with
the drives ejected from Windows Explorer or from another application,
for example Cura, for which Windows OS does not send out notifications.
2020-03-13 14:19:14 +01:00
d4ac4df21c Fixed crash on switching the application language.
This crash was caused by the RemovableDriveManager and 3DConnexion
detection services not being stopped correctly.
The fix executes all the tasks of the MainFrame at the language switch,
that are normally performed on application shut down.
2020-03-07 12:24:53 +01:00
877e824de1 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-03-06 17:39:36 +01:00
c47565430f Localization: "\t" symbols are deleted from community translations (ko, nl, pt_br, tr, zc_CN(TW)),
fixed some phrases
2020-03-06 17:34:06 +01:00
e39e9b05ae keyboard and file menu shortcuts for save to sd card and eject 2020-03-06 15:35:47 +01:00
b3b800de65 Refactoring of RemovableDriveManager:
1) On Windows and Linux, the device enumeration now runs at a background
   thread, while it ran on the UI thread on idle, which may have been
   blocking on some rare Windows setups, see GH #3515 #3733 #3746 #3766
2) On OSX, the device enumeration now relies on OS callback, no
   polling is required.
3) Refactored for cleaner interface.
2020-03-06 15:10:58 +01:00
a2b7c6945c Merge remote-tracking branch 'remotes/origin/vb_3dconnexion_refactoring' 2020-03-05 09:56:06 +01:00
0b96855c2e Reworked the 3DConnexion interfacing code to run the device
enumeration / connect / disconnect and read out at the background
thread only.
2020-03-04 11:36:36 +01:00
eb3b65d8af Fixing build against wxWidgets 3.0
The wxString saga continues. wxWidgets 3.0 don't have the wxString::FromUTF8(const std::string&) overload, we must use the GUI::from_u8 helper
Also wxWidgets 3.0 don't allow to disable wxString->const char* conversion, so calling show_info(wxWindow*, wxString, const char*) was ambiguous
Several includes moved around
2020-03-04 10:34:59 +01:00
bcd3842183 Fixing wxString::Format encoding mismatches (part 2) 2020-03-03 10:54:17 +01:00
7cb92ef5e8 #3646 - Ask user whether remove from recent projects list a project no longer available 2020-03-02 12:33:17 +01:00
dff9af20a4 Follow-up of 47604b6326 -> Fixed layout at startup 2020-02-28 11:19:46 +01:00
47604b6326 #3707 - Fixed buttons layout after closing preference dialog 2020-02-26 10:18:04 +01:00
4a59a45d51 ENABLE_SHOW_SCENE_LABELS set as default 2020-02-13 13:24:52 +01:00
15343847bc Fix build on Win 2020-02-07 11:15:01 +01:00
34588f365d For the builds with a label assigned (no commit after the label),
show just the label in the application title. For Win32, add the
" 32 bit" indicator, so that we may see clearly if somebody is running
a 32bit build on 64bit windows by a mistake.
2020-02-06 10:17:22 +01:00
3ec4b77dcd Added item menu 'Edit/Show labels' and removed labels activation from preferences dialog 2020-02-04 14:42:26 +01:00
1472ad9b14 To fix blurred icons under OSX there is implemented PresetBitmapComboBox, derived from wxBitmapComboBox,
which now will be used for preset choosers on sidebar a preset tabs.

+ for BitmapCache class added m_scale used for correct scaling of SVG images on Retina displays

+ some code clearing from unused functions or function's parameters
2020-01-31 16:57:45 +01:00
3a99b23ec7 #3580 - Added menu item 'Edit/Reload from disk' and F5 key acceleration to reload the entire plater 2020-01-31 12:15:04 +01:00
63b0eec5a9 Merge branch 'master' into lm_tm_hollowing 2020-01-21 13:00:07 +01:00
07d6fd8f7e Platter->Plater 2020-01-20 11:16:49 -05:00
b3f15b1c98 Merge branch 'master' into lm_tm_hollowing 2019-12-20 10:33:53 +01:00
07f428fe62 Implemented function to get an icon name considering to OS color mode
For a Dark mode we start to looking of icons in folder "white"

Added missed "white" icons
2019-12-18 15:54:01 +01:00
a9403319b7 Separate Job, ProgressStatusBar and ProgressIndicator
* Separate GUI::Job
* make use of ProgressIndicator interface
* make ProgressStatusbar independent from GUI::App
2019-12-16 11:07:43 +01:00
805a6c936c Localization improvements: Text correction 2019-12-06 13:58:23 +01:00
a624590b36 Fixed conflicts after merge with master 2019-11-07 09:55:44 +01:00
1e8aa54559 ENABLE_THUMBNAIL_GENERATOR -> Added ENABLE_THUMBNAIL_GENERATOR_DEBUG (disabled) 2019-11-07 09:01:28 +01:00
de60b40347 ENABLE_THUMBNAIL_GENERATOR -> Thumbnail data saved into gcode using base64 encoding + debug code to extract thumbnails from gcode 2019-10-25 12:18:10 +02:00
e6403a74ef ENABLE_3DCONNEXION_DEVICES tech set as default 2019-10-11 15:51:36 +02:00
6f85b0885a Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion 2019-10-07 09:31:43 +02:00
587effbedf ENABLE_3DCONNEXION_DEVICES -> Refactored Mouse3DController to be unaware of current active GLCanvas3D 2019-10-03 11:38:31 +02:00
e675a5d5c6 Reworked pad creation algorithm with new parameters:
* brim size
* force pad around object everywhere
2019-10-01 14:58:37 +02:00
4b3eab0ed9 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion 2019-09-27 14:52:30 +02:00
f958cfd2ff ENABLE_3DCONNEXION_DEVICES - 1st installment of support for 3Dconnexion devices
Implemented using hidapi library (https://github.com/libusb/hidapi) and https://github.com/koenieee/CrossplatformSpacemouseDriver/tree/master/SpaceMouseDriver as reference

Unsolved issues:

- When manipulating the SpaceNavigator wxWidgets generates a mouse wheel event that needs to be filtered out

- wxWidgets does not detect devices being connected/disconnected to the pc

- Current state forces a continuous rendering

- Current state misses dependence on camera zoom

- Non intuitive movement limits

- Translation and rotation speed factors are hardcoded

- Number of device buttons hardcoded
2019-09-27 14:52:19 +02:00
7861fa5086 Whitespace changes to supress misleading indentation warnings
These appear in newer gcc when spaces and tabs are mixed
2019-09-24 16:01:01 +02:00
ae3a72d291 Fixed menu icons for undo / redo. 2019-08-30 16:05:12 +02:00
c6604ff55d Merge remote-tracking branch 'remotes/origin/et_toolpaths_export' 2019-08-22 15:02:02 +02:00
c8a78f5d85 Merge remote-tracking branch 'remotes/origin/ys_bf_msw_scale' 2019-08-20 16:53:23 +02:00
58473f84ee Check for existence of gcode toolpaths that can be exported to obj file 2019-08-20 11:33:58 +02:00
a99a89a831 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_toolpaths_export 2019-08-20 09:51:44 +02:00
1f6aab312b 1st installment of export of gcode toolpaths to obj file 2019-08-20 09:01:09 +02:00
c8ac46df43 Fixed some memory leaks related to heap-allocated wxDialogs
Some correctly destroyed dialogs were also converted to stack-allocated
2019-08-15 12:52:56 +02:00
c91df2c769 Fixed a typo in print_host variable name 2019-08-05 14:36:50 +02:00
9471c9cd17 Implemented FR #2633 2019-08-01 16:25:08 +02:00
f913bbf8ef Reverted order of items in recent projects list 2019-08-01 09:03:06 +02:00
ab7ecc1819 Merge remote-tracking branch 'remotes/origin/vb_undo_redo' 2019-07-15 11:34:18 +02:00
de88db5918 #2616 - Added Recent projects item to File menu 2019-07-12 15:36:01 +02:00
fbf14b42e9 Added undo/redo icons. Fist step to implementation Undo/Redo list for toolbar 2019-07-08 18:01:14 +02:00
7b6229289d Added undo/redo to the "Edit" menu 2019-07-08 10:57:35 +02:00
7aaba25520 Do not allow to copy/paste volumes when using sla printer 2019-06-24 13:21:05 +02:00