
git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@616 fd906abe-77d9-0310-91a1-e0d9ade77398
32 lines
No EOL
939 B
Text
32 lines
No EOL
939 B
Text
Creating and Rendering Menus
|
|
============================
|
|
|
|
We first set up a test and working environment:
|
|
|
|
>>> from zope.app import zapi
|
|
>>> from zope.app.testing import ztapi
|
|
>>> from zope.app.component import site, interfaces
|
|
>>> from zope.app.folder import Folder
|
|
>>> from cybertools.menu import Menu
|
|
>>> from cybertools.interfaces import IMenu
|
|
|
|
Set up a site:
|
|
|
|
>>> f1 = Folder()
|
|
>>> sm = site.LocalSiteManager(f1)
|
|
>>> f1.setSiteManager(sm)
|
|
>>> default = sm['default']
|
|
|
|
Create a menu and register it:
|
|
|
|
>>> m1 = Menu('m1')
|
|
>>> default['m1'] = m1
|
|
>>> reg = site.UtilityRegistration('main', IMenu, m1)
|
|
>>> default.registrationManager.addRegistration(reg)
|
|
'UtilityRegistration'
|
|
>>> reg.status = interfaces.registration.ActiveStatus
|
|
>>> zapi.getUtility(IMenu, 'main', context=f1)
|
|
Menu('m1')
|
|
>>> list(zapi.getUtilitiesFor(IMenu, f1))
|
|
[('main', Menu('m1'))]
|
|
|