Author: jmorliaguet
Date: Mon May 15 21:10:28 2006
New Revision: 3138

Modified:
   cpsskins/branches/paris-sprint-2006/setup/README.txt
   cpsskins/branches/paris-sprint-2006/setup/manager.py

Log:

- we register global settings in the settings folder of the global theme
  management folder.



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        Mon May 15 
21:10:28 2006
@@ -88,6 +88,7 @@
 
     >>> resources.register(name=u'setting1', title=u'Setting 1',
     ...                    resource=resource1)
+    <Setting: cpsskins://[EMAIL PROTECTED]>
 
 we can look up the setting:
 
@@ -109,6 +110,7 @@
 
     >>> resources.register(name=u'setting2', title=u'Setting 2',
     ...                    resource=resource2)
+    <Setting: cpsskins://[EMAIL PROTECTED]>
 
 and look it up in the registry:
 
@@ -130,6 +132,7 @@
 
     >>> resources.register(name=u'setting3', title=u'Setting 3',
     ...                    resource=resource3, context=root)
+    <Setting: cpsskins://[EMAIL PROTECTED]>
 
 We now have a local resource in the context of the root folder:
 
@@ -510,6 +513,7 @@
 
     >>> style = Style()
     >>> resources.register(name=u'style1', title=u'Style 1', resource=style)
+    <Setting: cpsskins://[EMAIL PROTECTED]>
 
     >>> setting = resources.lookup(u'style1')
     >>> print toXML(setting, u'settings')
@@ -744,6 +748,7 @@
     #ff0000
 
     >>> resources.register(name=u'red', title=u'Color red', resource=color)
+    <Setting: cpsskins://[EMAIL PROTECTED]>
 
     >>> IType(color).getTypeName()
     u'field-color'

Modified: cpsskins/branches/paris-sprint-2006/setup/manager.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/setup/manager.py        (original)
+++ cpsskins/branches/paris-sprint-2006/setup/manager.py        Mon May 15 
21:10:28 2006
@@ -46,16 +46,16 @@
                        custom=False, context=None):
         """Register the setting as a utility.
         """
+        settings = getThemeManager(context).getSettings()
         # register as a global utility
         if context is None:
             setting = GlobalSetting(name=name, title=title,
                                     resource=resource, filename=filename)
             uri = IIdentifiable(setting).getURI()
-            self.gsm.registerUtility(setting, ISetting, uri)
+            settings.registerUtility(setting, ISetting, uri)
 
         # register as a local utility
         else:
-            settings = getThemeManager(context).getSettings()
             chooser = INameChooser(settings)
             name = name or chooser.chooseName(title, context)
             setting = LocalSetting(name=name, title=title, resource=resource)
@@ -90,12 +90,12 @@
 
         setting = None
 
-        if context is not None:
-            settings = getThemeManager(context).getSettings()
-            setting = settings.queryUtility(ISetting, uri)
+        settings = getThemeManager(context).getSettings()
+        setting = settings.queryUtility(ISetting, uri)
 
-        if context is None or setting is None:
-            setting = self.gsm.queryUtility(ISetting, uri)
+        if setting is None and context is not None:
+            global_settings = getThemeManager().getSettings()
+            setting = global_settings.queryUtility(ISetting, uri)
 
         if setting is None:
             return default
@@ -103,7 +103,8 @@
         return setting
 
     def list(self, type=None, context=None):
-        entries = list(self.gsm.getUtilitiesFor(ISetting))
+        global_settings = getThemeManager().getSettings()
+        entries = list(global_settings.getUtilitiesFor(ISetting))
         if context is not None:
             settings = getThemeManager(context).getSettings()
             entries.extend(list(settings.getUtilitiesFor(ISetting)))
@@ -159,7 +160,8 @@
     ### Customization  ################################################
 
     def isGlobal(self, uri=u''):
-        setting = self.gsm.queryUtility(ISetting, uri)
+        global_settings = getThemeManager().getSettings()
+        setting = global_settings.queryUtility(ISetting, uri)
         if setting is None:
             raise ValueError("No such setting: '%s'." % uri)
         return IGlobalSetting.providedBy(setting)
@@ -183,7 +185,8 @@
         if context is None:
             raise ValueError("Must specify a context.")
 
-        setting = self.gsm.queryUtility(ISetting, uri)
+        global_settings = getThemeManager().getSettings()
+        setting = global_settings.queryUtility(ISetting, uri)
         if setting is None:
             raise ValueError("No such setting: '%s'." % uri)
 
@@ -203,7 +206,8 @@
         if context is None:
             raise ValueError("Must specify a context.")
 
-        if self.gsm.queryUtility(ISetting, uri) is None:
+        global_settings = getThemeManager().getSettings()
+        if global_settings.queryUtility(ISetting, uri) is None:
             raise ValueError("No such customized setting.")
 
         self.unregister(uri, context)
-- 
http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins

Reply via email to