On Dec 2, 9:55 pm, Chris Nelson <[email protected]> wrote: > On 12/02/2011 03:35 PM, Olemis Lang wrote: > > > ... > > My question now is, how can TracPM find the TeamCalendar > > implementation of IResourceCalendar? I think I want to set up the > > calendar as an extension point and then I can find them by interface > > name but if I only want one active at a time, how do I disable and > > enable them? Where do the names in trac.ini come from? Do I want > > > tracjsgantt.tracpm.__SimpleCalendar = disabled > > > ? > > > extension points do the trick and hide all the underlying magic involved > > ... Take a look at the code of PermissionSystem for instance , or maybe > > some other @ trac.web core components , so as to see how this works . > > I can set up an extension point but my question is "where do I get the > name from that I put in trac.ini to enable/disable each instance? > Presumably, I'd use the same name in an ExtensionOption. > > trac.ini: > > teamcalendar.calendar.TeamCalendar = enabled > tracjsgantt.tracpm.SimpleCalendar = disabled > > or in my source: > > cal = ExtensionOption('TracPM', > 'calendar', > IResourceCalendar, > 'teamcalendar.calendar.TeamCalendar') > > But those names are an educated guess and I'd rather know how to > derive/create them than hope I'm right.
The trac.ini config [component] sections should contain the full python name/namespace of the class, module or package. So if tracjsgantt.tracpm.SimpleCalendar is an actual component implementing one or more interface (because tracjsgantt/tracpm.py defines or imports a SimpleCalendar class), it will be enabled if trac.ini is configured to enable it; as "tracjsgantt.tracpm.SimpleCalendar = enabled", or enabling at some wildcard pattern like "tracjsgantt.tracpm.* = enabled" to enable all classes in the module. :::simon -- You received this message because you are subscribed to the Google Groups "Trac Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/trac-users?hl=en.
