diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2016-05-25 23:31:20 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2016-05-25 23:31:20 +0200 |
commit | 739b0e37ee6ce461cdfa550f3a5d410470f18f6c (patch) | |
tree | 396441e8cc66b93a10c023be42d223beffe83b72 /InitGui.py | |
parent | 5c386786c57ffc09f53976c488db68adbc932b98 (diff) | |
download | freecad-boxer-739b0e37ee6ce461cdfa550f3a5d410470f18f6c.tar.gz freecad-boxer-739b0e37ee6ce461cdfa550f3a5d410470f18f6c.tar.bz2 freecad-boxer-739b0e37ee6ce461cdfa550f3a5d410470f18f6c.tar.xz freecad-boxer-739b0e37ee6ce461cdfa550f3a5d410470f18f6c.zip |
o Working FreeCAD module for creating boxes useful for laser cutting.
Diffstat (limited to 'InitGui.py')
-rw-r--r-- | InitGui.py | 95 |
1 files changed, 87 insertions, 8 deletions
@@ -1,16 +1,92 @@ -print "GUI: Caser loaded" +class MakeBoxCommandClass(): + def GetResources(self): + return {#'Pixmap' : os.path.join( iconPath , 'AddWall.svg') , # the name of a svg file available in the resources + 'MenuText': "Make Box" , + 'ToolTip' : "Extends a wall from a side face of metal sheet"} + + def Activated(self): + from Boxer import BoxCfg, makeBox + # TODO: put all objects in a group: + # group = doc.addObject("App::DocumentObjectGroup","Group") + + cfg = BoxCfg().outerDimmensions(300, 100, 50) + # cfg.notches = 2 + cfg.notchUnitWidth = 10 + cfg.thickness = 10 + cfg.prt() + + doc = FreeCAD.ActiveDocument + makeBox(doc, cfg) + + doc.recompute() + Gui.SendMsgToActiveView("ViewFit") + + return + + def IsActive(self): + return FreeCAD.ActiveDocument is not None -class BoxerWorkbench (Workbench): +class RemoveBoxCommandClass(): + def GetResources(self): + return { + 'MenuText': "Remove Box", + 'ToolTip' : "Remove the box"} + + def Activated(self): + import BoxerGui + BoxerGui.gui.removeBox() + + def IsActive(self): + return FreeCAD.ActiveDocument is not None + +class ShowPanelCommandClass(): + def GetResources(self): + return { + 'MenuText': "Show Panel"} + + def Activated(self): + from PySide import QtCore + import BoxerGui + print('ShowPanelCommandClass.Activated') + + #dockWidget = QtGui.QDockWidget() + #dockWidget.setWindowTitle("Boxer 3") + #dockWidget.resize(656, 300) + #dockWidget.setObjectName("BoxerDockWidget") + #verticalLayout = QtGui.QVBoxLayout(dockWidget) + #verticalLayout.setObjectName("verticalLayout") + #tabSizeLabel = QtGui.QLabel(dockWidget) + #tabSizeLabel.setObjectName("tabSizeLabel") + #tabSizeLabel.setText("Tab size") + + window = FreeCADGui.getMainWindow() + window.addDockWidget(QtCore.Qt.RightDockWidgetArea, BoxerGui.gui.dockWidget) + BoxerGui.gui.dockWidget.show() + +# app = QtGui.qApp +# window = app.activeWindow() +# window.addDockWidget(QtCore.Qt.RightDockWidgetArea, dockWidget) + +# d = QtGui.QWidget() +# d.ui = BoxerDockWidget.Ui_BoxerDockWidget() +# d.ui.setupUi(d) +# d.show() + + return + + def IsActive(self): + return True + +class BoxerWorkbench(Workbench): MenuText = "Boxer" ToolTip = "Box Maker" -# Icon = def Initialize(self): - import Boxer - self.list = ["BoxerMakeBox", "BoxerRemoveBox"] - self.appendToolbar("Boxer Commands", self.list) - + self.list = ["BoxerMakeBox", "BoxerRemoveBox", "BoxerShowPanel"] + self.appendToolbar("Boxer Commands", self.list) + import BoxerGui + def Activated(self): return @@ -23,5 +99,8 @@ class BoxerWorkbench (Workbench): def GetClassName(self): return "Gui::PythonWorkbench" - + +Gui.addCommand('BoxerMakeBox', MakeBoxCommandClass()) +Gui.addCommand('BoxerRemoveBox', RemoveBoxCommandClass()) +Gui.addCommand('BoxerShowPanel', ShowPanelCommandClass()) Gui.addWorkbench(BoxerWorkbench()) |