diff --git a/plugins/3DConnexion/NavlibClient.py b/plugins/3DConnexion/NavlibClient.py index 329b46a049..37edb3b792 100644 --- a/plugins/3DConnexion/NavlibClient.py +++ b/plugins/3DConnexion/NavlibClient.py @@ -8,7 +8,7 @@ from cura.PickingPass import PickingPass from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator from UM.Scene.SceneNode import SceneNode from UM.Resources import Resources -from UM.PluginObject import PluginObject +from UM.Tool import Tool from UM.Logger import Logger from .OverlayNode import OverlayNode import pynavlib.pynavlib_interface as pynav @@ -19,11 +19,11 @@ if TYPE_CHECKING: from UM.Scene import Scene from UM.View.Renderer import Renderer -class NavlibClient(pynav.NavlibNavigationModel, PluginObject): +class NavlibClient(pynav.NavlibNavigationModel, Tool): def __init__(self, scene: Scene, renderer: Renderer) -> None: pynav.NavlibNavigationModel.__init__(self, False, pynav.NavlibOptions.RowMajorOrder) - PluginObject.__init__(self) + Tool.__init__(self) self._scene = scene self._renderer = renderer self._pointer_pick = None diff --git a/plugins/3DConnexion/__init__.py b/plugins/3DConnexion/__init__.py index d2a4c0da49..0a226b0969 100644 --- a/plugins/3DConnexion/__init__.py +++ b/plugins/3DConnexion/__init__.py @@ -10,13 +10,17 @@ if TYPE_CHECKING: def getMetaData() -> Dict[str, Any]: - return {} + return { + "tool": { + "visible": False + } + } def register(app: "Application") -> Dict[str, Any]: try: from .NavlibClient import NavlibClient - return { "view_manipulator": NavlibClient(app.getController().getScene(), app.getRenderer()) } + return { "tool": NavlibClient(app.getController().getScene(), app.getRenderer()) } except BaseException as exception: Logger.warning(f"Unable to load 3Dconnexion library: {exception}") return { }