From 062dc9d6dfd8277bf7fb5c5a879840531846df8a Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Mon, 19 Mar 2012 16:36:28 -0300 Subject: [PATCH] Added RFE 513 - Arch walls auto-grouping --- src/Mod/Arch/ArchWall.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Mod/Arch/ArchWall.py b/src/Mod/Arch/ArchWall.py index c3e5ec85c..b1389556a 100644 --- a/src/Mod/Arch/ArchWall.py +++ b/src/Mod/Arch/ArchWall.py @@ -143,6 +143,7 @@ class _CommandWall: FreeCADGui.Snapper.getPoint(last=self.points[0],callback=self.getPoint,movecallback=self.update,extradlg=self.taskbox()) elif len(self.points) == 2: import Part + add = False l = Part.Line(self.points[0],self.points[1]) self.tracker.finalize() FreeCAD.ActiveDocument.openTransaction("Wall") @@ -154,16 +155,21 @@ class _CommandWall: if areSameWallTypes([w,self]): w.Base.addGeometry(l) else: - self.addDefault(l) + nw = self.addDefault(l) + add = True else: self.addDefault(l) FreeCAD.ActiveDocument.commitTransaction() FreeCAD.ActiveDocument.recompute() + if add: + import ArchCommands + ArchCommands.addComponents(nw,w) def addDefault(self,l): s = FreeCAD.ActiveDocument.addObject("Sketcher::SketchObject","WallTrace") s.addGeometry(l) - makeWall(s,width=self.Width,height=self.Height,align=self.Align) + w = makeWall(s,width=self.Width,height=self.Height,align=self.Align) + return w def update(self,point): "this function is called by the Snapper when the mouse is moved"