Edgewall Software

Changes between Version 1 and Version 2 of TracDev/Proposals/AdvancedNotification/IPreferencePanelProvider


Ignore:
Timestamp:
Oct 8, 2013, 8:09:16 AM (11 years ago)
Author:
Peter Suter
Comment:

Describe proposed extension of child panels

Legend:

Unmodified
Added
Removed
Modified
  • TracDev/Proposals/AdvancedNotification/IPreferencePanelProvider

    v1 v2  
    22
    33||'''Interface'''||''IPreferencePanelProvider''||'''Since'''||[wiki:TracDev/ApiChanges/0.11#IPreferencePanelProvider 0.11]||
    4 ||'''Module'''||''trac.prefs''||'''Source'''||[source:trunk/trac/prefs/api.py api.py]||
     4||'''Module'''||''trac.prefs''||'''Source'''||[source:psuter/trac/prefs/api.py@advanced-notification-preferences#/IPreferencePanelProvider api.py]||
    55
    66The ''IPreferencePanelProvider'' allows adding panels to Trac's preferences dialog.
     
    1111
    1212When a user browses to the preferences dialog, all implementations are called to provide any implemented panels, which are shown as tabs. When the user activates a tab the respective implementation is called to render the page corresponding to that tab.
     13
     14Since Trac 1.1.2 different implementations can provide ''child panels''. These show up as sections in a tab of their parent panel, which can be implemented by a different plugin. A modular ecosystem of thematically related plugins can use this to populate a shared preferences page.
    1315
    1416== Usage ==
     
    9597 * #9162: Ticket with a patch to split the core {{{IPreferencePanelProviders}}} from the {{{PreferencesModule}}}
    9698 * #9313: Ticket about documenting preference session saving
     99
     100==== API History ====
     101 * [wiki:TracDev/ApiChanges/0.11#IPreferencePanelProvider 0.11] introduced the interface.
     102 * [wiki:TracDev/ApiChanges/1.1.2#IPreferencePanelProvider 1.1.2] added possibility to return tuples with a third item `parent_panel` for [wiki:TracDev/Proposals/AdvancedNotification#Modularpreferencepages modular preference pages].