Account confirmers, Anti-spam team, Confirmed users, Bureaucrats and Sysops emeriti
1,529
edits
(Drop summary for "Callek"'s (my own) implementation, still TODO for the other one.) |
(Add Mnyromyr's) |
||
Line 54: | Line 54: | ||
=== Latest Patch === | === Latest Patch === | ||
* [https://bugzilla.mozilla.org/attachment.cgi?id=229434&action=view Attachment # 229434] of {{bug|342087}} | * [https://bugzilla.mozilla.org/attachment.cgi?id=229434&action=view Attachment # 229434] of {{bug|342087}} | ||
== [[User:Mnyromyr|Mnyromyr]]'s Variant == | |||
=== Example Use === | |||
In Mnyromyr's implementation, he adds <code><preftree></code> and <code><preftreeitem></code> elements. Which serve the purpose of defining the structure of the tree. The <code>preftreeitem</code>'s themselves ''point'' to the pane via the pane's id in a <code>prefpane</code> attribute. The <code><preftreeitem></code> element will look first on itself for a <code>label</code> attribute to use as the treeitem's label; if there is no <code>label</code> set on itself, it will look on the referenced <code><prefpane></code> element for a label. | |||
In the absense of a <code><preftree></code> element all panes will be listed as top-level panes. While if <code><preftree></code> is present, and <code><prefpane></code>'s not referenced by <code><preftreeitem></code>'s will effectively be innaccessible. | |||
<pre> | |||
<prefwindow> | |||
<preftree> | |||
<preftreeitem id="prefItemFoo" label="Foo" prefpane="Foo"> | |||
<preftreeitem id="prefItemFooBaz" label="Baz" prefpane="FooBaz"/> | |||
<preftreeitem id="prefItemFooNoo" label="Baz" prefpane="FooNoo"/> | |||
<preftreeitem id="prefItemFooBoo" prefpane="FooBoo"/> | |||
</preftreeitem> | |||
<preftreeitem id="prefItemBar" label="Bar" prefpane="Bar"/> | |||
<preftreeitem id="prefItemGoo" prefpane="Goo"> | |||
<preftreeitem id="prefItemGooGag" label="Gag" prefpane="GooGag"/> | |||
</preftreeitem> | |||
</preftree> | |||
<prefpane id="Foo" label="Foo" src="..."/> | |||
<prefpane id="Bar" label="Bar" src="..."/> | |||
<prefpane id="FooBaz" label="Baz" src="..."/> | |||
<prefpane id="FooNoo" label="Noo" src="..."/> | |||
<prefpane id="FooBoo" label="Boo" src="..."/> | |||
<prefpane id="Goo" label="Goo" src="..."/> | |||
<prefpane id="GooGag" label="Gag" src="..."/> | |||
</prefwindow> | |||
</pre> | |||
=== Example UI Mockup === | |||
<pre> | |||
=============================================== | |||
| Category: | = | |||
|------------| Lorem ipsum dolor sit amet, = | |||
|[-] Foo | consectetuer adipiscing elit. = | |||
| |- Baz | Vestibulum mi. Nulla tempor = | |||
| |- Noo | velit et enim. In fermentum. = | |||
| \- Boo | Etiam quis odio eget nisi = | |||
| Bar | egestas gravida. Donec nisi = | |||
|[+] Goo | nisl, eleifend eu, pulvinar = | |||
| | a, porttitor eu, elit. Morbi = | |||
| | non velit quis magna eleifend = | |||
| | posuere. Praesent. = | |||
| | = | |||
=============================================== | |||
</pre> | |||
=== Pro's and Con's === | |||
* Inaccessible <code><prefpane></code>'s if not referenced by a <code><preftreeitem></code> | |||
* Adds two more elements to <code>xul</code>, which are only used in SeaMonkey. | |||
* Complexity of creating a tree. | |||
* Actual tree hierarchy is structurally a tree. | |||
* Internal Implementation uses a Tree Walker. | |||
=== Latest Patch === | |||
* [https://bugzilla.mozilla.org/attachment.cgi?id=230663&action=view Attachment # 230663] of {{bug|342087}} |
edits