From 9c5706dc1f922ecd593ea57a9c499c0ca0311e78 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sat, 4 Jun 2016 21:07:19 +0200 Subject: o Adding a special 'Fit all' button. --- BoxerGui.py | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'BoxerGui.py') diff --git a/BoxerGui.py b/BoxerGui.py index c57a517..5cb8315 100644 --- a/BoxerGui.py +++ b/BoxerGui.py @@ -43,7 +43,8 @@ class BoxerGui(object): self.dockWidget = dockWidget = QtGui.QDockWidget() dockWidget.setWindowTitle("Box config") dockWidget.ui = BoxerDockWidget.Ui_BoxerDockWidget() - dockWidget.generateClicked = self.generateButtonClick + dockWidget.generateClicked = self.generateButtonClicked + dockWidget.fitAllClicked = self.fitAllButtonClicked dockWidget.ui.setupUi(dockWidget) dockWidget.ui.generateButton.setEnabled(doc is not None) dockWidget.ui.outerWidth.setValue(self.cfg.outerWidth) @@ -55,7 +56,7 @@ class BoxerGui(object): self.documentObserver = BoxerDocumentObserver() FreeCAD.addDocumentObserver(self.documentObserver) - def generateButtonClick(self): + def generateButtonClicked(self): ui = self.dockWidget.ui self.cfg.outerDimmensions( @@ -68,11 +69,26 @@ class BoxerGui(object): self.cfg.prt() doc = FreeCAD.ActiveDocument Boxer.removeEverything(doc) - Boxer.make(doc, self.cfg) - + objects = Boxer.make(doc, self.cfg) + + itemsToSelect = objects['parts'] + + extrudes = objects['extrudes'] + if extrudes is not None: + itemsToSelect = extrudes + + Gui.Selection.clearSelection() + [Gui.Selection.addSelection(e) for e in itemsToSelect.values()] + Gui.SendMsgToActiveView("ViewSelection") + Gui.Selection.clearSelection() + + def removeBox(self): doc = FreeCAD.ActiveDocument Boxer.removeEverything(doc) + def fitAllButtonClicked(self): + Gui.SendMsgToActiveView("ViewFit") + gui = BoxerGui() gui.setupGui() -- cgit v1.2.3