Author: jmorliaguet Date: Thu Apr 20 17:14:47 2006 New Revision: 2915 Modified: cpsskins/branches/paris-sprint-2006/browser/caching.py cpsskins/branches/paris-sprint-2006/browser/negotiation/views.py cpsskins/branches/paris-sprint-2006/controllers/cell.py cpsskins/branches/paris-sprint-2006/controllers/controller.py cpsskins/branches/paris-sprint-2006/controllers/pageblock.py cpsskins/branches/paris-sprint-2006/controllers/portlet.py cpsskins/branches/paris-sprint-2006/controllers/slot.py cpsskins/branches/paris-sprint-2006/controllers/theme.py cpsskins/branches/paris-sprint-2006/controllers/themepage.py cpsskins/branches/paris-sprint-2006/elements/presentation.py cpsskins/branches/paris-sprint-2006/elements/theme.py cpsskins/branches/paris-sprint-2006/elements/themepage.py cpsskins/branches/paris-sprint-2006/setup/README.txt cpsskins/branches/paris-sprint-2006/setup/utils.py cpsskins/branches/paris-sprint-2006/standard/filters/effect/__init__.py cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py cpsskins/branches/paris-sprint-2006/standard/io/relation.py cpsskins/branches/paris-sprint-2006/ui/authoring/views.py cpsskins/branches/paris-sprint-2006/ui/editing/views.py cpsskins/branches/paris-sprint-2006/ui/manager/views.py cpsskins/branches/paris-sprint-2006/ui/screens/sitemanager/views.py cpsskins/branches/paris-sprint-2006/utils.py Log:
- getThemeManager() must take a context Modified: cpsskins/branches/paris-sprint-2006/browser/caching.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/browser/caching.py (original) +++ cpsskins/branches/paris-sprint-2006/browser/caching.py Thu Apr 20 17:14:47 2006 @@ -27,7 +27,7 @@ """ def getCachedImage(self, key): - tmutil = getThemeManager() + tmutil = getThemeManager(self.context) cache = tmutil.getImageCache() image = cache.get(key) Modified: cpsskins/branches/paris-sprint-2006/browser/negotiation/views.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/browser/negotiation/views.py (original) +++ cpsskins/branches/paris-sprint-2006/browser/negotiation/views.py Thu Apr 20 17:14:47 2006 @@ -34,7 +34,7 @@ implements(INegotiation) def negotiate(self, name): - manager = getThemeManager() + manager = getThemeManager(self.context) strategy = zapi.getUtility(INegotiationStrategy, manager.negotiation) chain = strategy.getChain(name) negotiation_context = (self.context, manager, self.request) Modified: cpsskins/branches/paris-sprint-2006/controllers/cell.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/cell.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/cell.py Thu Apr 20 17:14:47 2006 @@ -37,6 +37,6 @@ def removed(self): """What to do when the element has been removed. """ - tmutil = getThemeManager() - tmutil.removeDisplays(self.element) + element = self.element + getThemeManager(element).removeDisplays(element) Modified: cpsskins/branches/paris-sprint-2006/controllers/controller.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/controller.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/controller.py Thu Apr 20 17:14:47 2006 @@ -64,7 +64,7 @@ """This suscriber is called when an element has been added to a container. """ # register the element - getThemeManager().registerElement(element) + getThemeManager(element).registerElement(element) # get the object's controller controller = IController(element, None) @@ -78,7 +78,7 @@ """This suscriber is called when an element has been removed from a container. """ - tmutil = getThemeManager() + tmutil = getThemeManager(element) # the element may be removed from a folder above the theme manager if tmutil is None: return Modified: cpsskins/branches/paris-sprint-2006/controllers/pageblock.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/pageblock.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/pageblock.py Thu Apr 20 17:14:47 2006 @@ -37,6 +37,6 @@ def removed(self): """What to do when the element has been removed. """ - tmutil = getThemeManager() - tmutil.removeDisplays(self.element) + element = self.element + getThemeManager(element).removeDisplays(element) Modified: cpsskins/branches/paris-sprint-2006/controllers/portlet.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/portlet.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/portlet.py Thu Apr 20 17:14:47 2006 @@ -48,6 +48,6 @@ def removed(self): """What to do when the element has been removed. """ - tmutil = getThemeManager() - tmutil.removeDisplays(self.element) + element = self.element + getThemeManager(element).removeDisplays(element) Modified: cpsskins/branches/paris-sprint-2006/controllers/slot.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/slot.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/slot.py Thu Apr 20 17:14:47 2006 @@ -37,8 +37,8 @@ def removed(self): """What to do when the element has been removed. """ - tmutil = getThemeManager() - tmutil.removeDisplays(self.element) + element = self.element + getThemeManager(element).removeDisplays(element) def modified(self): """What to do when the element has been modified. Modified: cpsskins/branches/paris-sprint-2006/controllers/theme.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/theme.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/theme.py Thu Apr 20 17:14:47 2006 @@ -33,7 +33,7 @@ """ element = self.element - tmutil = getThemeManager() + tmutil = getThemeManager(element) if tmutil.getDefaultTheme() is None: tmutil.setAsDefault(element) Modified: cpsskins/branches/paris-sprint-2006/controllers/themepage.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/controllers/themepage.py (original) +++ cpsskins/branches/paris-sprint-2006/controllers/themepage.py Thu Apr 20 17:14:47 2006 @@ -33,7 +33,7 @@ """What to do when the element has been added. """ element = self.element - tmutil = getThemeManager() + tmutil = getThemeManager(element) if tmutil.getDefaultPage() is None: tmutil.setAsDefault(element) @@ -42,6 +42,6 @@ def removed(self): """What to do when the element has been removed. """ - tmutil = getThemeManager() - tmutil.removeDisplays(self.element) + element = self.element + getThemeManager(element).removeDisplays(element) Modified: cpsskins/branches/paris-sprint-2006/elements/presentation.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/elements/presentation.py (original) +++ cpsskins/branches/paris-sprint-2006/elements/presentation.py Thu Apr 20 17:14:47 2006 @@ -142,7 +142,7 @@ object = self.context reltool = IRelationTool(object) - tmutil = getThemeManager() + tmutil = getThemeManager(object) presentations = {} # set initial values for perspective in tmutil.listPerspectives(): Modified: cpsskins/branches/paris-sprint-2006/elements/theme.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/elements/theme.py (original) +++ cpsskins/branches/paris-sprint-2006/elements/theme.py Thu Apr 20 17:14:47 2006 @@ -56,10 +56,10 @@ return [v for v in self.values() if IThemePage.providedBy(v)] def setAsDefault(self): - return getThemeManager().setAsDefault(self) + return getThemeManager(self).setAsDefault(self) def isDefault(self): - return getThemeManager().isDefault(self) + return getThemeManager(self).isDefault(self) def getThemeName(self): for k, v in getUtilitiesFor(ITheme, self): Modified: cpsskins/branches/paris-sprint-2006/elements/themepage.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/elements/themepage.py (original) +++ cpsskins/branches/paris-sprint-2006/elements/themepage.py Thu Apr 20 17:14:47 2006 @@ -42,7 +42,7 @@ return "ThemePage('%s')" % self.title def isDefault(self): - tmutil = getThemeManager() + tmutil = getThemeManager(self) return tmutil.isDefault(self) def getPageName(self): Modified: cpsskins/branches/paris-sprint-2006/setup/README.txt ============================================================================== --- cpsskins/branches/paris-sprint-2006/setup/README.txt (original) +++ cpsskins/branches/paris-sprint-2006/setup/README.txt Thu Apr 20 17:14:47 2006 @@ -544,15 +544,17 @@ >>> resources.register(name=u'red', title=u'Color red', resource=color) - >>> print resource(u'red') + >>> print resource(root, u'red') #ff0000 This makes it possible to embed references to resources inside objects: +# TODO: to be rewritten + >>> style = Style() >>> root[u'style'] = style - >>> style[u'div.body'] = {'color': resource(u'red')} + >>> style[u'div.body'] = {'color': resource(root, u'red')} >>> from cpsskins.standard.filters.style import ICSSRenderer >>> ICSSRenderer(style)() Modified: cpsskins/branches/paris-sprint-2006/setup/utils.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/setup/utils.py (original) +++ cpsskins/branches/paris-sprint-2006/setup/utils.py Thu Apr 20 17:14:47 2006 @@ -35,8 +35,8 @@ logger = logging.getLogger("cpsskins") -def resource(name): - mgr = getThemeManager() +def resource(context, name): + mgr = getThemeManager(context) resources = getUtility(IResourceManager) return resources.lookup(name, context=mgr) Modified: cpsskins/branches/paris-sprint-2006/standard/filters/effect/__init__.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/standard/filters/effect/__init__.py (original) +++ cpsskins/branches/paris-sprint-2006/standard/filters/effect/__init__.py Thu Apr 20 17:14:47 2006 @@ -67,7 +67,7 @@ z_h = int(context.height) / float(h) zoom = min(z_w, z_h) new_size = (int(zoom * w), int(zoom * h)) - tmutil = getThemeManager() + tmutil = getThemeManager(context) cache = tmutil.getImageCache() key = { 'portlet': element.identifier, Modified: cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py (original) +++ cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py Thu Apr 20 17:14:47 2006 @@ -36,7 +36,7 @@ return widget.view(None, None).renderPreview() def getModel(self, id): - tmutil = getThemeManager() + tmutil = getThemeManager(self.context) style = tmutil.getElementById(id) style_path = zapi.getPath(style) return json.write({ Modified: cpsskins/branches/paris-sprint-2006/standard/io/relation.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/standard/io/relation.py (original) +++ cpsskins/branches/paris-sprint-2006/standard/io/relation.py Thu Apr 20 17:14:47 2006 @@ -72,7 +72,7 @@ def load(self, dom): context = self.context - relations = getThemeManager().getRelationStorage() + relations = getThemeManager(context).getRelationStorage() for relation_def in dom.getElementsByTagName('relation'): predicate_str = relation_def.getAttribute('predicate') Modified: cpsskins/branches/paris-sprint-2006/ui/authoring/views.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/ui/authoring/views.py (original) +++ cpsskins/branches/paris-sprint-2006/ui/authoring/views.py Thu Apr 20 17:14:47 2006 @@ -150,7 +150,7 @@ def _getElementById(self, id): """Return an element by id. """ - return getThemeManager().getElementById(id) + return getThemeManager(self.context).getElementById(id) def renderElement(self, id=u'', engine=u'default'): """Render the element and return the markup Modified: cpsskins/branches/paris-sprint-2006/ui/editing/views.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/ui/editing/views.py (original) +++ cpsskins/branches/paris-sprint-2006/ui/editing/views.py Thu Apr 20 17:14:47 2006 @@ -120,7 +120,7 @@ context = self.context request = self.request - tmutil = getThemeManager() + tmutil = getThemeManager(context) form = request.form format_name = form.get('format') Modified: cpsskins/branches/paris-sprint-2006/ui/manager/views.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/ui/manager/views.py (original) +++ cpsskins/branches/paris-sprint-2006/ui/manager/views.py Thu Apr 20 17:14:47 2006 @@ -49,7 +49,7 @@ implements(IThemeManagerView) def getThemeManager(self): - return getThemeManager() + return getThemeManager(self.context) def getThemes(self): return self.context.getThemes() Modified: cpsskins/branches/paris-sprint-2006/ui/screens/sitemanager/views.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/ui/screens/sitemanager/views.py (original) +++ cpsskins/branches/paris-sprint-2006/ui/screens/sitemanager/views.py Thu Apr 20 17:14:47 2006 @@ -123,9 +123,10 @@ def importSettings(self, xml=u''): """Import site settings """ + context = self.context request = self.request - mgr = getThemeManager() + mgr = getThemeManager(context) settings = getUtility(ISettings, context=context) dom = parseString(xml) @@ -167,7 +168,7 @@ portlets_data = archive[u'portlets.xml'] relations_data = archive[u'relations.xml'] - mgr = getThemeManager() + mgr = getThemeManager(self.context) uri_mapping = {} @@ -189,7 +190,7 @@ ################################################################### def getSnapshotStorage(self): - return getThemeManager().getSnapshotStorage() + return getThemeManager(self.context).getSnapshotStorage() def createSnapshot(self): snapshots = self.getSnapshotStorage() @@ -228,7 +229,7 @@ if not name: raise KeyError("Must specify a storage name.") - mgr = getThemeManager() + mgr = getThemeManager(context) storage = mgr[name] exporter = getMultiAdapter((storage, request), IDataExporter) @@ -237,7 +238,7 @@ def importStorage(self, name=u'', xml=u''): request = self.request - mgr = getThemeManager() + mgr = getThemeManager(context) storage = mgr[name] dom = parseString(xml) @@ -255,7 +256,7 @@ request = self.request xml = u'' - for theme in getThemeManager().getThemes(): + for theme in getThemeManager(context).getThemes(): exporter = getMultiAdapter((theme, request), IDataExporter) xml += exporter().replace('<?xml version="1.0"?>', '') Modified: cpsskins/branches/paris-sprint-2006/utils.py ============================================================================== --- cpsskins/branches/paris-sprint-2006/utils.py (original) +++ cpsskins/branches/paris-sprint-2006/utils.py Thu Apr 20 17:14:47 2006 @@ -17,13 +17,14 @@ """ __docformat__ = "reStructuredText" -from zope.component import queryUtility, getUtility +from zope.component import queryUtility, getUtility, getSiteManager from cpsskins.setup.interfaces import IResourceManager from cpsskins.thememanager import IThemeManagementFolder THEMES_MANAGER_NAME = 'themes' -def getThemeManager(): - return queryUtility(IThemeManagementFolder, THEMES_MANAGER_NAME) +def getThemeManager(context): + return getSiteManager(context).queryUtility( + IThemeManagementFolder, THEMES_MANAGER_NAME) -- http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins