diff --git a/freecad/InitGui.py b/freecad/InitGui.py index aae3b2a..74af1e2 100644 --- a/freecad/InitGui.py +++ b/freecad/InitGui.py @@ -106,7 +106,9 @@ def _register_silo_overlay(): return False try: - FreeCADGui.registerEditingOverlay( + from kindred_sdk import register_overlay + + register_overlay( "silo", # overlay id ["Silo Origin"], # toolbar names to append _silo_overlay_match, # match function diff --git a/freecad/__pycache__/silo_commands.cpython-313.pyc b/freecad/__pycache__/silo_commands.cpython-313.pyc new file mode 100644 index 0000000..34de21a Binary files /dev/null and b/freecad/__pycache__/silo_commands.cpython-313.pyc differ diff --git a/freecad/__pycache__/silo_origin.cpython-313.pyc b/freecad/__pycache__/silo_origin.cpython-313.pyc new file mode 100644 index 0000000..b6c91d0 Binary files /dev/null and b/freecad/__pycache__/silo_origin.cpython-313.pyc differ diff --git a/freecad/__pycache__/silo_start.cpython-313.pyc b/freecad/__pycache__/silo_start.cpython-313.pyc new file mode 100644 index 0000000..0d29d82 Binary files /dev/null and b/freecad/__pycache__/silo_start.cpython-313.pyc differ diff --git a/freecad/package.xml b/freecad/package.xml index 73e54a9..06a6730 100644 --- a/freecad/package.xml +++ b/freecad/package.xml @@ -12,4 +12,17 @@ ./ + + + + 0.1.0 + 60 + true + + sdk + + + + + diff --git a/freecad/silo_origin.py b/freecad/silo_origin.py index 131b0d0..51612a5 100644 --- a/freecad/silo_origin.py +++ b/freecad/silo_origin.py @@ -388,9 +388,7 @@ class SiloOrigin: # Upload to Silo properties = collect_document_properties(doc) - _client._upload_file( - obj.SiloPartNumber, str(file_path), properties, comment="" - ) + _client._upload_file(obj.SiloPartNumber, str(file_path), properties, comment="") # Clear modified flag (Modified is on Gui.Document, not App.Document) gui_doc = FreeCADGui.getDocument(doc.Name) @@ -567,12 +565,9 @@ def register_silo_origin(): This should be called during workbench initialization to make Silo available as a file origin. """ - origin = get_silo_origin() - try: - FreeCADGui.addOrigin(origin) - FreeCAD.Console.PrintLog("Registered Silo origin\n") - except Exception as e: - FreeCAD.Console.PrintWarning(f"Could not register Silo origin: {e}\n") + from kindred_sdk import register_origin + + register_origin(get_silo_origin()) def unregister_silo_origin(): @@ -582,9 +577,7 @@ def unregister_silo_origin(): """ global _silo_origin if _silo_origin: - try: - FreeCADGui.removeOrigin(_silo_origin) - FreeCAD.Console.PrintLog("Unregistered Silo origin\n") - except Exception as e: - FreeCAD.Console.PrintWarning(f"Could not unregister Silo origin: {e}\n") + from kindred_sdk import unregister_origin + + unregister_origin(_silo_origin) _silo_origin = None diff --git a/freecad/silo_start.py b/freecad/silo_start.py index a224ec6..c9e8a6a 100644 --- a/freecad/silo_start.py +++ b/freecad/silo_start.py @@ -19,23 +19,10 @@ from PySide import QtCore, QtGui, QtWidgets # --------------------------------------------------------------------------- # Catppuccin Mocha palette # --------------------------------------------------------------------------- -_MOCHA = { - "base": "#1e1e2e", - "mantle": "#181825", - "crust": "#11111b", - "surface0": "#313244", - "surface1": "#45475a", - "surface2": "#585b70", - "text": "#cdd6f4", - "subtext0": "#a6adc8", - "subtext1": "#bac2de", - "blue": "#89b4fa", - "green": "#a6e3a1", - "red": "#f38ba8", - "peach": "#fab387", - "lavender": "#b4befe", - "overlay0": "#6c7086", -} +# Catppuccin Mocha palette — sourced from kindred-addon-sdk +from kindred_sdk.theme import get_theme_tokens + +_MOCHA = get_theme_tokens() _PREF_GROUP = "User parameter:BaseApp/Preferences/Mod/KindredSilo"