You are not logged in Log in Join
You are here: Home » Members » Phillip J. Eby's Zope Center » My Wikis » ZPatterns Wiki » PlugInGroups » wikipage_view

Log in
Name

Password

 
 
PlugInsIntroduction »

PlugInGroups

PlugInGroups are Methoids which manage collections of PlugIns on behalf of PlugInContainers. They are shared, static objects which are placed in the classes of the PlugInContainers that use them.

The visible manifestation of a plug-in group is as a Zope management interface tab. Placing a plug-in group in the __plugin_groups__ attribute of the plug-in container's class automatically adds that group to the container's tabs. The plug-in group then manages the display of its tab.

Similar in appearance and function to a normal folder "Contents" tab, plug-in group tabs display a list of objects contained in the plug-in container, and offer options to add, delete, rename, and so on. Specialized subclasses of the basic PlugInGroup class may also include additional information above or below the "Contents"-style interface. For example the AttributeProviderGroup class adds a diagnostic chart at the bottom of the page, displaying which attributes will be get/set by the AttributeProviders which are displayed and managed on that tab.

Also unlike a normal "Contents" tab, plug-in group tabs are ordered; that is, there is meaning to the order in which the contents are displayed. You can change the order of the PlugIns by selecting their checkboxes and then clicking on the button marked "First". This moves the selected PlugIns to the beginning of the list. For some PlugIns, such as IndexingAgents, changing their order has no real effect. But for most, changing the order affects the precedence or ranking of the PlugIns in some way. Usually, PlugIns near the top of the list will get a higher priority than ones which are lower. Top RuleAgents will get to fire first, top AttributeProviders will have first claim on registering to supply an attribute, and so on.