From deedc12ee079d461afb3692e8888bc68142f7733 Mon Sep 17 00:00:00 2001 From: paullee Date: Sun, 7 Oct 2018 12:59:20 +0800 Subject: [PATCH] Tweak makeRailing(None) to (re)-create Railing and insert back to Stairs.Additions Discussion:- https://forum.freecadweb.org/viewtopic.php?f=23&t=29358&p=260767#p260767 --- src/Mod/Arch/ArchStairs.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/Mod/Arch/ArchStairs.py b/src/Mod/Arch/ArchStairs.py index 37a92ef362..651e6cfd98 100644 --- a/src/Mod/Arch/ArchStairs.py +++ b/src/Mod/Arch/ArchStairs.py @@ -182,6 +182,25 @@ def makeRailing(stairs): railList = stair.Additions railList.append(lrRail) stair.Additions = railList + + if stairs == None: + sel = FreeCADGui.Selection.getSelection() + sel0 = sel[0] + stairs = [] + if Draft.getType(sel[0]) == "Stairs": # TODO currently consider 1st selected object, then would tackle multiple objects ? + stairs.append(sel0) + if Draft.getType(sel0.Base) == "Stairs": + stairs.append(sel0.Base) + additions = sel0.Additions + for additionsI in additions: + if Draft.getType(additionsI) == "Stairs": + stairs.append(additionsI) + else: + stairs.append(sel[0]) + else: + print("No Stairs object selected") + return + makeRailingLorR(stairs,"L") makeRailingLorR(stairs,"R")