Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEnrico Turri <enricoturri@seznam.cz>2019-09-27 15:52:19 +0300
committerEnrico Turri <enricoturri@seznam.cz>2019-09-27 15:52:19 +0300
commitf958cfd2ff88ab788f458b6149aa30fb982d7a4a (patch)
treefc9476b257d9f2df90b644e0fa09ace7dfe03f84 /src/slic3r/GUI/MainFrame.cpp
parentc1e3be9b27c3ac641ff6dd00692516cb164bd76d (diff)
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
Diffstat (limited to 'src/slic3r/GUI/MainFrame.cpp')
-rw-r--r--src/slic3r/GUI/MainFrame.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/slic3r/GUI/MainFrame.cpp b/src/slic3r/GUI/MainFrame.cpp
index dfe3a9cf9..ae0413937 100644
--- a/src/slic3r/GUI/MainFrame.cpp
+++ b/src/slic3r/GUI/MainFrame.cpp
@@ -24,6 +24,9 @@
#include "PrintHostDialogs.hpp"
#include "wxExtensions.hpp"
#include "GUI_ObjectList.hpp"
+#if ENABLE_3DCONNEXION_DEVICES
+#include "Mouse3DController.hpp"
+#endif // ENABLE_3DCONNEXION_DEVICES
#include "I18N.hpp"
#include <fstream>
@@ -108,6 +111,10 @@ DPIFrame(NULL, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_S
}
if(m_plater) m_plater->stop_jobs();
+#if ENABLE_3DCONNEXION_DEVICES
+ if (m_plater != nullptr)
+ m_plater->get_mouse3d_controller().set_canvas(nullptr);
+#endif // ENABLE_3DCONNEXION_DEVICES
// Weird things happen as the Paint messages are floating around the windows being destructed.
// Avoid the Paint messages by hiding the main window.