From 396d4727dc1bf1fa200695397e82a7332e99ff96 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Sun, 17 Jan 2016 14:16:24 +0100 Subject: [PATCH] provide a collection of sub-parts of a page that may be placed separately on the page --- browser/common.py | 1 + browser/node.py | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/browser/common.py b/browser/common.py index bbb9c1e..e30af25 100755 --- a/browser/common.py +++ b/browser/common.py @@ -192,6 +192,7 @@ class BaseView(GenericView, I18NView, SortableMixin): actions = {} portlet_actions = [] parts = () + subparts = () icon = None modeName = 'view' isToplevel = False diff --git a/browser/node.py b/browser/node.py index 5af88d1..ff5a27e 100755 --- a/browser/node.py +++ b/browser/node.py @@ -98,6 +98,18 @@ class NodeView(BaseView): def macro(self): return self.template.macros['content'] + @Lazy + def subparts(self): + def getParts(n): + t = n.targetObjectView + if t is None: + return [] + return t.subparts + parts = getParts(self) + for n in self.textItems: + parts.extend(getParts(n)) + return parts + def update(self): result = super(NodeView, self).update() self.recordAccess()