aboutsummaryrefslogtreecommitdiff
path: root/InitGui.py
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2016-05-25 23:31:20 +0200
committerTrygve Laugstøl <trygvis@inamo.no>2016-05-25 23:31:20 +0200
commit739b0e37ee6ce461cdfa550f3a5d410470f18f6c (patch)
tree396441e8cc66b93a10c023be42d223beffe83b72 /InitGui.py
parent5c386786c57ffc09f53976c488db68adbc932b98 (diff)
downloadfreecad-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.py95
1 files changed, 87 insertions, 8 deletions
diff --git a/InitGui.py b/InitGui.py
index 3ca7ce4..b200dc8 100644
--- a/InitGui.py
+++ b/InitGui.py
@@ -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())