235
edits
(→Order of Initialization Code: typo) |
(correction of late night errors) |
||
| Line 109: | Line 109: | ||
* On opening the preferences dialog, the prefwindow binding gets attached to the <prefwindow> element. The toolkit base binding's constructor is executed and dispatches 'paneload' events to any static <prefpane>s. | * On opening the preferences dialog, the prefwindow binding gets attached to the <prefwindow> element. The toolkit base binding's constructor is executed and dispatches 'paneload' events to any static <prefpane>s. | ||
* On changing the panel selection, either by code or tree selection, a 'paneload' event is only dispatched to the new <prefpane> if it hasn't been initialized yet. | * On changing the panel selection, either by code or tree selection, a 'paneload' event is only dispatched to the new <prefpane> if it hasn't been initialized yet. | ||
These 'paneload' events are processed in the following order: | |||
* SeaMonkey's derived <prefpane> 'paneload' handler is called, loading the scripts specified in the <prefpane>'s 'script' attribute. If defined, the <prefpane>'s Startup() function is called, so that <preference> elements can be created dynamically.<br><i style="color:red">Mind that UI elements tied to <preference>s are '''not''' yet initialized to their <preference> value here!</i> | |||
* Toolkit's <prefpane> 'paneload' handler is called and initializes the <preference> based UI elements. Any 'onsyncfrompreference' handlers attributes on such UI elements are evaluated. (See [https://bugzilla.mozilla.org/show_bug.cgi?id=308754 bug 308754] for problems with these handlers.) | |||
* SeaMonkey's <prefwindow> 'paneload' handler is called, synchronizing <tree> and <prefpane>. | |||
* Finally, any <prefpane> 'onpaneload' handler attribute is evaluated. | |||
<div style="font-size:smaller; direction: rtl;">''Page maintained by [mailto:mnyromyr@tprac.de Karsten Düsterloh]''</div> | <div style="font-size:smaller; direction: rtl;">''Page maintained by [mailto:mnyromyr@tprac.de Karsten Düsterloh]''</div> | ||
edits