From 8ec18763152f5e5d65f033d9de1c8842fa688518 Mon Sep 17 00:00:00 2001 From: helmutm Date: Fri, 18 May 2007 11:08:08 +0000 Subject: [PATCH] renamed client to instance; re-build schema/README.txt git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@1745 fd906abe-77d9-0310-91a1-e0d9ade77398 --- composer/instance.py | 12 +++++++++++- composer/schema/instance.py | 2 ++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/composer/instance.py b/composer/instance.py index ebbcdad..83c20e7 100644 --- a/composer/instance.py +++ b/composer/instance.py @@ -30,12 +30,22 @@ from cybertools.composer.interfaces import IInstance class Instance(object): implements(IInstance) - template = None + + templateKey = 'composer.template' def __init__(self, context): self.context = context self.instances = [] + def setTemplate(self, template): + templates = getattr(self.context, '__templates__', {}) + templates.setdefault(self.templateKey, template) + self.context.__templates__ = templates + def getTemplate(self): + templates = getattr(self.context, '__templates__', {}) + return templates.get(self.templateKey, None) + template = property(getTemplate, setTemplate) + def applyTemplate(self, *args, **kw): raise ValueError('To be implemented by subclass') diff --git a/composer/schema/instance.py b/composer/schema/instance.py index dd8d801..62b243b 100644 --- a/composer/schema/instance.py +++ b/composer/schema/instance.py @@ -29,6 +29,8 @@ from cybertools.composer.instance import Instance class Editor(Instance): + templateKey = 'schema.editor' + def applyTemplate(self, data={}, *args, **kw): for c in self.template.components: # save data (if available) in context