bubnikv 
								
							 
						 
						
							
							
							
							
								
							
							
								25d58faaad 
								
							 
						 
						
							
							
								
								WIP: Windows specific 3Dconnexion using WM_INPUT.  
							
							... 
							
							
							
							This implementation works with the 3DConnexion driver (sic!)
if PrusaSlicer.xml is stored into c:\Program Files\3Dconnexion\3DxWare\3DxWinCore64\Cfg\
The implementation is inspired with Blender, see code inside WITH_INPUT_NDOF blocks. 
							
						 
						
							2020-03-31 09:01:55 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								7c56cc9f22 
								
							 
						 
						
							
							
								
								Follow-up of  f912fecad5 -> option to swap y/z axes extended to rotations  
							
							
							
						 
						
							2020-03-20 16:13:08 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								f912fecad5 
								
							 
						 
						
							
							
								
								3DConnexion devices: added option to swap y/z translations  
							
							
							
						 
						
							2020-03-20 13:09:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bubnikv 
								
							 
						 
						
							
							
							
							
								
							
							
								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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bubnikv 
								
							 
						 
						
							
							
							
							
								
							
							
								3baea9b458 
								
							 
						 
						
							
							
								
								Fixed uninitialized "Connected" flag of the Mouse3DController  
							
							... 
							
							
							
							after refactoring. 
							
						 
						
							2020-03-06 15:12:39 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lukas Matena 
								
							 
						 
						
							
							
							
							
								
							
							
								8137f7c4d4 
								
							 
						 
						
							
							
								
								Added a missing include  
							
							
							
						 
						
							2020-03-05 12:00:23 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bubnikv 
								
							 
						 
						
							
							
							
							
								
							
							
								cbe9216d79 
								
							 
						 
						
							
							
								
								WIP 3Dconnexion refactoring: Fixing compilation on OSX  
							
							
							
						 
						
							2020-03-04 12:18:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bubnikv 
								
							 
						 
						
							
							
							
							
								
							
							
								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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								5797c9edc2 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_Y_AS_ZOOM set as default  
							
							
							
						 
						
							2020-02-13 09:20:20 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									David Kocik 
								
							 
						 
						
							
							
							
							
								
							
							
								15391da512 
								
							 
						 
						
							
							
								
								OSX handler for 3dconnexion drivers  
							
							
							
						 
						
							2020-01-21 14:44:20 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								94a3d38afd 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES_CLOSE_SETTING_DIALOG set as default  
							
							
							
						 
						
							2020-01-17 11:45:52 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								7a8251b626 
								
							 
						 
						
							
							
								
								Attempt to  fix   #3479  
							
							
							
						 
						
							2020-01-08 12:30:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								83cbe1dd33 
								
							 
						 
						
							
							
								
								3DConnexion devices' Y axis used for zoom in/zoom out  
							
							
							
						 
						
							2020-01-03 14:42:52 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								a4ad0a0925 
								
							 
						 
						
							
							
								
								Fixed unresponsive 3Dconnexion device when switching to preview  
							
							
							
						 
						
							2020-01-03 11:41:29 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								43213b9548 
								
							 
						 
						
							
							
								
								Added [X] and [Close] buttons to close 3Dconnexion setting imgui dialog by clicking on them  
							
							
							
						 
						
							2019-12-16 13:35:45 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								df3e47e093 
								
							 
						 
						
							
							
								
								Another attempt to fix build on Linux (due to  ab00f501f1)  
							
							
							
						 
						
							2019-11-25 12:45:49 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								ab00f501f1 
								
							 
						 
						
							
							
								
								#3230  - Detection of 3Dconnexion devices every 2 seconds  
							
							
							
						 
						
							2019-11-25 10:34:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								98255d566e 
								
							 
						 
						
							
							
								
								Disabled ENABLE_3DCONNEXION_DEVICES_DEBUG_OUTPUT  
							
							
							
						 
						
							2019-11-22 15:35:34 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								dbc0996be1 
								
							 
						 
						
							
							
								
								3Dconnexion devices -> Disabled handling of device buttons / Added camera target to debug dialog / Added extra debug output  
							
							
							
						 
						
							2019-11-11 13:04:02 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								76a2f72e97 
								
							 
						 
						
							
							
								
								Follow-up of  a065c92302 -> proper enabling of debug output  
							
							
							
						 
						
							2019-10-21 11:12:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								e6403a74ef 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES tech set as default  
							
							
							
						 
						
							2019-10-11 15:51:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								7caa596b95 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Refactoring and code cleanup  
							
							
							
						 
						
							2019-10-10 11:55:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								f4654e376e 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Slightly increased camera target movement limits  
							
							
							
						 
						
							2019-10-10 10:49:47 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								ded6d44389 
								
							 
						 
						
							
							
								
								Fixed build on OsX  
							
							
							
						 
						
							2019-10-10 09:29:55 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								aae1250921 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Experimental input queues with max size  
							
							
							
						 
						
							2019-10-10 09:04:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								3a5823bc2e 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Added temporary debug output to measure input queue sizes  
							
							
							
						 
						
							2019-10-09 15:23:30 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								a735ec1b48 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Added tech ENABLE_3DCONNEXION_DEVICES_DEBUG_OUTPUT for debug output  
							
							
							
						 
						
							2019-10-09 14:18:43 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								4ec6199ef1 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Added translation and rotation customizable parameter deadzone  
							
							
							
						 
						
							2019-10-08 14:32:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								9447d3e1b5 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Mouse3DController reworked to handle reports of length 7 bytes and 13 bytes  
							
							
							
						 
						
							2019-10-08 13:38:08 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								8aa33a9e05 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Hack for filtering out mouse wheel events coming from 3Dconnexion driver  
							
							
							
						 
						
							2019-10-08 08:44:50 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								5a94ac9499 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Automatic detection of plugging/unplugging 3Dconnexion devices  
							
							
							
						 
						
							2019-10-04 10:59:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								1d463fc23f 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Another small refactoring of Mouse3DController  
							
							
							
						 
						
							2019-10-04 07:58:01 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								f315681804 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Refactored Mouse3DController to simplify code  
							
							
							
						 
						
							2019-10-03 12:16:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								587effbedf 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Refactored Mouse3DController to be unaware of current active GLCanvas3D  
							
							
							
						 
						
							2019-10-03 11:38:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								a554304038 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Serialization of mouse device parameters into config  
							
							
							
						 
						
							2019-10-03 10:26:28 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								36d3f90fad 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES - Added imgui dialog to edit 3Dconnexion device parameters  
							
							
							
						 
						
							2019-10-02 15:55:26 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								d58dedd459 
								
							 
						 
						
							
							
								
								ENABLE_3DCONNEXION_DEVICES -> Increased limit of device buttons  
							
							
							
						 
						
							2019-09-30 15:58:45 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Vojtech Kral 
								
							 
						 
						
							
							
							
							
								
							
							
								520a51c62f 
								
							 
						 
						
							
							
								
								hidapi: Fix include path  
							
							
							
						 
						
							2019-09-30 15:20:23 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								1aa559585c 
								
							 
						 
						
							
							
								
								Added missing include  
							
							
							
						 
						
							2019-09-27 15:26:13 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Enrico Turri 
								
							 
						 
						
							
							
							
							
								
							
							
								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