diff --git a/composer/layout/README.txt b/composer/layout/README.txt
index e9af1a2..96e376c 100644
--- a/composer/layout/README.txt
+++ b/composer/layout/README.txt
@@ -26,34 +26,11 @@ manager.
>>> manager = LayoutManager()
>>> component.provideUtility(manager)
-The layouts themselves are also specified as utilities.
+The layouts themselves are also specified as utilities that are automatically
+registered when we import the modules they are defined in.
- >>> from cybertools.composer.layout.browser.default import page
- >>> component.provideUtility(page, ILayout, name='page')
-
- >>> from cybertools.composer.layout.browser.liquid.default import css
- >>> component.provideUtility(css, ILayout, name='css.liquid')
-
- >>> from cybertools.composer.layout.browser.liquid.default import body
- >>> component.provideUtility(body, ILayout, name='body.liquid')
-
- >>> from cybertools.composer.layout.browser.default import logo
- >>> component.provideUtility(logo, ILayout, name='logo.default')
-
- >>> from cybertools.composer.layout.browser.default import top_actions
- >>> component.provideUtility(top_actions, ILayout, name='top_actions.default')
-
- >>> from cybertools.composer.layout.browser.default import column1
- >>> component.provideUtility(column1, ILayout, name='column1.default')
-
- >>> from cybertools.composer.layout.browser.default import content
- >>> component.provideUtility(content, ILayout, name='content.default')
-
- >>> from cybertools.composer.layout.browser.default import column2
- >>> component.provideUtility(column2, ILayout, name='column2.default')
-
- >>> from cybertools.composer.layout.browser.default import footer
- >>> component.provideUtility(footer, ILayout, name='footer.default')
+ >>> from cybertools.composer.layout.browser import default
+ >>> from cybertools.composer.layout.browser.liquid import default
In addition we have to provide at least one layout instance adapter that
connects a layout with the client object.
diff --git a/composer/layout/base.py b/composer/layout/base.py
index 148d880..2e75352 100644
--- a/composer/layout/base.py
+++ b/composer/layout/base.py
@@ -70,12 +70,12 @@ class Layout(Template):
self.regionName = regionName
for k, v in kw.items():
setattr(self, k, v)
- #self.register()
+ self.register()
def register(self):
existing = component.queryUtility(ILayout, name=self.name)
if existing:
- raise ValueError('Layout %s has already been registered.' % self.name)
+ raise ValueError("Layout '%s' has already been registered." % self.name)
component.provideUtility(self, provides=ILayout, name=self.name)
diff --git a/composer/layout/browser/configure.zcml b/composer/layout/browser/configure.zcml
index 5dc52f3..60b6c88 100644
--- a/composer/layout/browser/configure.zcml
+++ b/composer/layout/browser/configure.zcml
@@ -7,42 +7,11 @@
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/composer/layout/browser/default.py b/composer/layout/browser/default.py
index 1b322d9..18fda55 100644
--- a/composer/layout/browser/default.py
+++ b/composer/layout/browser/default.py
@@ -32,22 +32,19 @@ from cybertools.composer.layout.browser.standard import standardRenderers
defaultRenderers = RendererFactory(ViewPageTemplateFile('default.pt'))
-page = Layout('page', 'page', renderer=standardRenderers['page'],
- sublayouts=set(['css.liquid', 'body.liquid']),
- favicon='default/favicon.png')
+Layout('page', 'page', renderer=standardRenderers['page'],
+ sublayouts=set(['css.liquid', 'body.liquid']),
+ favicon='default/favicon.png')
-logo = Layout('logo.default', 'body.logo', renderer=defaultRenderers.logo)
+Layout('logo.default', 'body.logo', renderer=defaultRenderers.logo)
-top_actions = Layout('top_actions.default', 'body.top_actions',
- renderer=defaultRenderers.top_actions)
+Layout('top_actions.default', 'body.top_actions',
+ renderer=defaultRenderers.top_actions)
-column1 = Layout('column1.default', 'body.column1',
- renderer=defaultRenderers.column1)
+Layout('column1.default', 'body.column1', renderer=defaultRenderers.column1)
-content = Layout('content.default', 'body.content',
- renderer=defaultRenderers.content)
+Layout('content.default', 'body.content', renderer=defaultRenderers.content)
-column2 = Layout('column2.default', 'body.column2',
- renderer=defaultRenderers.column2)
+Layout('column2.default', 'body.column2', renderer=defaultRenderers.column2)
-footer = Layout('footer.default', 'body.footer', renderer=defaultRenderers.footer)
+Layout('footer.default', 'body.footer', renderer=defaultRenderers.footer)
diff --git a/composer/layout/browser/liquid/configure.zcml b/composer/layout/browser/liquid/configure.zcml
index fa0f012..4c032cf 100644
--- a/composer/layout/browser/liquid/configure.zcml
+++ b/composer/layout/browser/liquid/configure.zcml
@@ -8,14 +8,8 @@
-
+
-
+