Annotation of books/www/chapters/appc.html, revision 1.7

1.7     ! petejc      1:     <h2>Appendix C</h2>
        !             2:     <h1><a name="77003"></a> Programmer's Reference</h1>
        !             3:     <p>This appendix is an easy-to-use reference that contains
        !             4:     information about XUL elements, XBL elements, and event
        !             5:     attributes. Details about how each element and event works
        !             6:     within a Mozilla application are covered in the rest of the
        !             7:     book; to learn how to use XUL or XBL, read <a href=
        !             8:     "ch03.html#32764">Chapter 3</a> and <a href=
        !             9:     "ch07.html#70326">Chapter 7</a>.</p>
        !            10:     <p>Once you know how to use XUL and XBL, this reference allows
        !            11:     you to look up all available tags and elements quickly. Each
        !            12:     entry listed below includes a brief description of the element
        !            13:     or event, its purpose, what attributes the element or event
        !            14:     has, and what other related elements or events you can look at
        !            15:     to get more information.</p>
        !            16:     <h2><a name="77004"></a> XUL Element Set</h2>
        !            17:     <p>XUL isn't yet identified as a specification, and the 
        !            18:     <!--INDEX STARTRANGE==XUL element set --> 
        !            19:     <!--INDEX STARTRANGE==elements:XUL element set --> language is
        !            20:     still changing. The elements and attributes given here
        !            21:     represent a stable subset of the XUL widget set. XML allows you
        !            22:     to define new elements and attributes arbitrarily (which is
        !            23:     partly what makes a powerful extension like XBL possible) in
        !            24:     your markup. Although it's discouraged in practice, Mozilla
        !            25:     application developers-even those working on the Mozilla source
        !            26:     itself-often use this flexibility to manage data in one-off
        !            27:     attributes. For example, you may find XUL buttons in the source
        !            28:     with attributes like "loading," which is not part of the XUL
        !            29:     specification. In fact, XBL's presence, XML's flexibility, and
        !            30:     DOM interfaces blur the distinction between valid XUL and other
        !            31:     XML markup. This reference tries to document all widgets in the
        !            32:     XUL 1.0 release, any additional attributes these elements have,
        !            33:     and their use 
        !            34:     <!--INDEX attributes:XUL:elements;XUL elements, attributes -->
        !            35:     in Mozilla application development.</p>
        !            36:     <p>All XUL elements have the attributes shown in Table C-1.</p>
        !            37:     <p><i>Table C-1: <a name="77002"></a></i> <i>Common XUL element
        !            38:     attributes</i></p>
        !            39:     false
        !            40:     <table width="100%" border="1">
        !            41:       <tr>
        !            42:         <td><b>Attribute</b></td>
        !            43:         <td><b>Description</b></td>
        !            44:       </tr>
        !            45:       <tr>
        !            46:         <td>align</td>
        !            47:         <td>Specifies how child elements are aligned: baseline,
        !            48:         center, end, start, or stretch</td>
        !            49:       </tr>
        !            50:       <tr>
        !            51:         <td>allowevents</td>
        !            52:         <td>(Boolean) Specifies whether events should be passed to
        !            53:         the child elements</td>
        !            54:       </tr>
        !            55:       <tr>
        !            56:         <td>class</td>
        !            57:         <td>The element class of the ; often used for class-based
        !            58:         style rules</td>
        !            59:       </tr>
        !            60:       <tr>
        !            61:         <td>collapsed</td>
        !            62:         <td>(Boolean) Specifies whether the element is collapsed or
        !            63:         displayed; defaults to false</td>
        !            64:       </tr>
        !            65:       <tr>
        !            66:         <td>container</td>
        !            67:         <td>(Boolean) Specifies whether the element can have child
        !            68:         elements</td>
        !            69:       </tr>
        !            70:       <tr>
        !            71:         <td>containment</td>
        !            72:         <td>Used in templates; points to RDF property represented
        !            73:         by this XUL element</td>
        !            74:       </tr>
        !            75:       <tr>
        !            76:         <td>context</td>
        !            77:         <td>Points to the context menu that this element should
        !            78:         use</td>
        !            79:       </tr>
        !            80:       <tr>
        !            81:         <td>datasources</td>
        !            82:         <td>Used in templates; points to the RDF data that gets
        !            83:         processed</td>
        !            84:       </tr>
        !            85:       <tr>
        !            86:         <td>debug</td>
        !            87:         <td>Used for debugging XUL; adds borders to make the
        !            88:         element and its layout easily visible</td>
        !            89:       </tr>
        !            90:       <tr>
        !            91:         <td>dir</td>
        !            92:         <td>Specifies the direction of the children: normal or
        !            93:         reverse</td>
        !            94:       </tr>
        !            95:       <tr>
        !            96:         <td>empty</td>
        !            97:         <td>(Boolean) Used for template; specifies that the
        !            98:         container has no children</td>
        !            99:       </tr>
        !           100:       <tr>
        !           101:         <td>equalsize</td>
        !           102:         <td>Specifies whether the children should be of the same
        !           103:         size: always or never</td>
        !           104:       </tr>
        !           105:       <tr>
        !           106:         <td>flex</td>
        !           107:         <td>Provides an integer or percent value that specifies the
        !           108:         flexibility of an element relative to its siblings within a
        !           109:         container</td>
        !           110:       </tr>
        !           111:       <tr>
        !           112:         <td>flexgroup</td>
        !           113:         <td>Provides an integer that can group elements and give
        !           114:         them the same degree of flexibility</td>
        !           115:       </tr>
        !           116:       <tr>
        !           117:         <td>height</td>
        !           118:         <td>Specifies an element's height</td>
        !           119:       </tr>
        !           120:       <tr>
        !           121:         <td>hidden</td>
        !           122:         <td>(Boolean) Specifies whether the element is displayed;
        !           123:         defaults to</td>
        !           124:       </tr>
        !           125:       <tr>
        !           126:         <td>id</td>
        !           127:         <td>A unique identifier for the element</td>
        !           128:       </tr>
        !           129:       <tr>
        !           130:         <td>insertafter</td>
        !           131:         <td>Names the ID of the element after which this element
        !           132:         should be overlaid; this attribute works only in
        !           133:         overlays</td>
        !           134:       </tr>
        !           135:       <tr>
        !           136:         <td>insertbefore</td>
        !           137:         <td>Names the ID of the element which this element should
        !           138:         be overlaid before; this attribute works only in
        !           139:         overlays</td>
        !           140:       </tr>
        !           141:       <tr>
        !           142:         <td>left</td>
        !           143:         <td>Specifies an element's position within a container in
        !           144:         pixels to the left</td>
        !           145:       </tr>
        !           146:       <tr>
        !           147:         <td>maxheight</td>
        !           148:         <td>Specifies an element's maximum height</td>
        !           149:       </tr>
        !           150:       <tr>
        !           151:         <td>maxwidth</td>
        !           152:         <td>Specifies an element's maximum width</td>
        !           153:       </tr>
        !           154:       <tr>
        !           155:         <td>minheight</td>
        !           156:         <td>Specifies an element's minimum height</td>
        !           157:       </tr>
        !           158:       <tr>
        !           159:         <td>minwidth</td>
        !           160:         <td>Specifies an element's minimum width</td>
        !           161:       </tr>
        !           162:       <tr>
        !           163:         <td>observes</td>
        !           164:         <td>Points to a broadcasting element whose state this
        !           165:         element observes</td>
        !           166:       </tr>
        !           167:       <tr>
        !           168:         <td>ordinal</td>
        !           169:         <td>(Integer) Specifies the element's order within the
        !           170:         parent</td>
        !           171:       </tr>
        !           172:       <tr>
        !           173:         <td>orient</td>
        !           174:         <td>Shows the element's orientation: vertical or
        !           175:         horizontal</td>
        !           176:       </tr>
        !           177:       <tr>
        !           178:         <td>pack</td>
        !           179:         <td>Shows how children should be distributed within this
        !           180:         container: center, end, or start</td>
        !           181:       </tr>
        !           182:       <tr>
        !           183:         <td>persist</td>
        !           184:         <td>Shows which of the element's attributes should be
        !           185:         persisted/stored for reuse</td>
        !           186:       </tr>
        !           187:       <tr>
        !           188:         <td>position</td>
        !           189:         <td>Shows the element's position within a list (e.g.,
        !           190:         menuitems in a menu)</td>
        !           191:       </tr>
        !           192:       <tr>
        !           193:         <td>ref</td>
        !           194:         <td>Specifies the RDF data root to begin processing (used
        !           195:         in templates)</td>
        !           196:       </tr>
        !           197:       <tr>
        !           198:         <td>style</td>
        !           199:         <td>Provides style rules for the current element</td>
        !           200:       </tr>
        !           201:       <tr>
        !           202:         <td>template</td>
        !           203:         <td>Specifies an existing template to use for this content
        !           204:         (used in templates)</td>
        !           205:       </tr>
        !           206:       <tr>
        !           207:         <td>tooltip</td>
        !           208:         <td>Specifies a pop up or tooltip ID to be used for this
        !           209:         element</td>
        !           210:       </tr>
        !           211:       <tr>
        !           212:         <td>tooltiptext</td>
        !           213:         <td>Specifies text to be displayed in the element's tooltip
        !           214:         (doesn't require a separate tooltip attribute)</td>
        !           215:       </tr>
        !           216:       <tr>
        !           217:         <td>top</td>
        !           218:         <td>Shows the current element's position within a container
        !           219:         in pixels from the top</td>
        !           220:       </tr>
        !           221:       <tr>
        !           222:         <td>uri</td>
        !           223:         <td>Specifies the root in the XUL where content processing
        !           224:         begins (used in templates)</td>
        !           225:       </tr>
        !           226:       <tr>
        !           227:         <td>width</td>
        !           228:         <td>Specifies an element's width</td>
        !           229:       </tr>
        !           230:     </table>
        !           231:     <hr>
        !           232:     <h3><a name="77008"></a> action</h3>
        !           233:     Child element in a XUL template structure that draws content
        !           234:     for matched data 
        !           235:     <h4><a name="77008"></a> Additional Attributes</h4>
        !           236:     None. 
        !           237:     <h4><a name="77008"></a> Description</h4>
        !           238:     The <tt><!--INDEX action element, XUL --> action</tt> element
        !           239:     defines the content drawn into the XUL when the rules defined
        !           240:     in a template's <tt>conditions</tt> structure are met. The
        !           241:     content to be drawn is an <tt>action</tt> element's child. 
        !           242:     <h4><a name="77008"></a> See Also</h4>
        !           243:     <tt>template</tt>, <tt>rule</tt>, <tt>condition</tt>,
        !           244:     <tt>binding</tt> 
        !           245:     <hr>
        !           246:     <h3><a name="77012"></a> arrowscrollbox</h3>
        !           247:     <p>Container box for scrolling contents</p>
        !           248:     <h4><a name="77012"></a> Additional Attributes</h4>
        !           249:     None. 
        !           250:     <h4><a name="77012"></a> Description</h4>
        !           251:     A <tt>box</tt> with arrows 
        !           252:     <!--INDEX arrowscrollbox element, XUL --> that allow scrolling
        !           253:     through its contents. The box scrolls when the user's mouse
        !           254:     hovers over the arrows. It is commonly used in large menus that
        !           255:     overflow a provided space. 
        !           256:     <h4><a name="77012"></a> See Also</h4>
        !           257:     <tt>autorepeatbutton</tt>, <tt>scrollbox</tt> 
        !           258:     <hr>
        !           259:     <h3><a name="77016"></a> autorepeatbutton</h3>
        !           260:     <p>Provides arrows for a scrolling area</p>
        !           261:     <h4><a name="77016"></a> Additional Attributes</h4>
        !           262:     scrolldir 
        !           263:     <h4><a name="77016"></a> Description</h4>
        !           264:     This element is used to 
        !           265:     <!--INDEX autorepeatbutton element, XUL --> internally bind the
        !           266:     <tt>arrowscrollbox</tt> element and it surrounds a
        !           267:     <tt>scrollbox</tt> area to provide the navigation arrows. The
        !           268:     <tt>scrolldir</tt> attribute, which can have a value of
        !           269:     <tt>up</tt> or <tt>down</tt>, determines the direction of the
        !           270:     arrows. 
        !           271:     <h4><a name="77016"></a> See Also</h4>
        !           272:     <tt>arrowscrollbox</tt>, <tt>scrollbox</tt> 
        !           273:     <hr>
        !           274:     <h3><a name="77020"></a> binding</h3>
        !           275:     <p>Child element in a XUL template that optionally matches in
        !           276:     the data</p>
        !           277:     <h4><a name="77020"></a> Additional Attributes</h4>
        !           278:     <tt>predicate</tt>, <!--INDEX binding element, XUL -->
        !           279:     <tt>object</tt>, <tt>subject</tt>, <tt>template</tt>,
        !           280:     <tt>rule</tt>, <tt>condition</tt>, <tt>action</tt>,
        !           281:     <tt>bindings</tt> 
        !           282:     <h4><a name="77020"></a> Description</h4>
        !           283:     In contrast to the <tt>rule</tt> element, which must match to
        !           284:     trigger the action, <tt>binding</tt> allows you to create an
        !           285:     optional rule for data matching. 
        !           286:     <h4><a name="77020"></a> See Also</h4>
        !           287:     <tt>action</tt>, <tt>template</tt>, <tt>rule</tt>,
        !           288:     <tt>condition</tt>, <tt>bindings</tt> 
        !           289:     <hr>
        !           290:     <h3><a name="77024"></a> bindings</h3>
        !           291:     <p>Substructure in a XUL template that collects the optional
        !           292:     binding rules Additional Attributes None.</p>
        !           293:     <h4><a name="77024"></a> Description</h4>
        !           294:     Individual bindings must be <!--INDEX bindings element, XUL -->
        !           295:     defined with a <tt>bindings</tt> parent to be a part of a valid
        !           296:     XUL template. 
        !           297:     <h4><a name="77024"></a> See Also</h4>
        !           298:     <tt>action</tt>, <tt>template</tt>, <tt>rule</tt>,
        !           299:     <tt>condition</tt>, <tt>binding</tt> 
        !           300:     <hr>
        !           301:     <h3><a name="77028"></a> box</h3>
        !           302:     <p>Generic container and layout element</p>
        !           303:     <h4><a name="77028"></a> Additional Attributes</h4>
        !           304:     None. 
        !           305:     <h4><a name="77028"></a> Description</h4>
        !           306:     This element can contain any <!--INDEX box element, XUL -->
        !           307:     type of content and any number of elements. Its default
        !           308:     orientation is <tt>horizontal</tt>, unless otherwise overridden
        !           309:     by the <tt>orient</tt> attribute, and the contents are laid out
        !           310:     in the order they appear in the file. The <tt>box</tt> is the
        !           311:     basic layout unit in a XUL interface. Many, if not most, XUL
        !           312:     elements inherit from <tt>box</tt>. 
        !           313:     <h4><a name="77028"></a> See Also</h4>
        !           314:     <tt>hbox</tt>, <tt>vbox</tt> 
        !           315:     <hr>
        !           316:     <h3>broadcaster</h3>
        !           317:     <p>Notifies elements when a change occurs in the UI Contained
        !           318:     by broadcasterset</p>
        !           319:     <h4><a name="77033"></a> Additional Attributes</h4>
        !           320:     <tt>checked</tt>, <tt>accesskey</tt>, <tt>oncommand</tt>,
        !           321:     <tt>value</tt>, <tt>label</tt>, <tt>disabled</tt> 
        !           322:     <h4><a name="77033"></a> Description</h4>
        !           323:     A <tt>broadcaster</tt> acts as a host for 
        !           324:     <!--INDEX broadcaster element, XUL --> other elements,
        !           325:     detecting changes that occur in the UI and notifying those
        !           326:     elements of the changes via attribute changes. The elements
        !           327:     that use it are said to observe the broadcaster. The observed
        !           328:     attribute is typically the <tt>oncommand</tt> attribute, but
        !           329:     can be any attribute. 
        !           330:     <h4><a name="77033"></a> See Also</h4>
        !           331:     <tt>broadcasterset</tt>, <tt>command</tt>, <tt>observes</tt> 
        !           332:     <hr>
        !           333:     <h3><a name="77038"></a> broadcasterset</h3>
        !           334:     <p>Container for broadcaster elements <a name="77038"></a>
        !           335:     Contains broadcaster</p>
        !           336:     <h4><a name="77038"></a> Additional Attributes</h4>
        !           337:     None. 
        !           338:     <h4><a name="77038"></a> Description</h4>
        !           339:     The purpose of this nonvisible 
        !           340:     <!--INDEX broadcasterset element, XUL --> element is to group a
        !           341:     set of broadcasters logically. The XUL document can contain one
        !           342:     or multiple sets. 
        !           343:     <h4><a name="77038"></a> See Also</h4>
        !           344:     <tt>broadcaster</tt>, <tt>commandset</tt> 
        !           345:     <hr>
        !           346:     <h3><a name="77042"></a> browser</h3>
        !           347:     <p>Web-content container</p>
        !           348:     <h4><a name="77042"></a> Additional Attributes</h4>
        !           349:     <tt>src</tt>, <tt>name</tt>, <tt>content</tt>,
        !           350:     <tt>onclick</tt>, <tt>type</tt>, <tt>disablehistory</tt>,
        !           351:     <tt>disablesecurity</tt> 
        !           352:     <h4><a name="77042"></a> Description</h4>
        !           353:     A content widget or frame used 
        !           354:     <!--INDEX browser element, XUL --> to load in web content for
        !           355:     read-only viewing. This element is used by the main Mozilla
        !           356:     browser, so it handles HTML, XML, and plain text. To load a
        !           357:     page, set the <tt>src</tt> attribute to a URL. Other features
        !           358:     include the attachment of a context menu that uses the
        !           359:     <tt>context</tt> attribute and various methods and properties
        !           360:     exposed for web navigation and display. 
        !           361:     <h4><a name="77042"></a> See Also</h4>
        !           362:     <tt>editor</tt>, <tt>iframe</tt> 
        !           363:     <hr>
        !           364:     <h3><a name="77046"></a> button</h3>
        !           365:     <p>A widget that activates some functionality when pressed</p>
        !           366:     <h4><a name="77046"></a> Additional Attributes</h4>
        !           367:     <tt>accesskey</tt>, <tt>dir</tt>, <tt>disabled</tt>,
        !           368:     <tt>dlgType</tt>, <tt>group</tt>, <tt>image</tt>,
        !           369:     <tt>label</tt>, <tt>orient</tt>, <tt>type</tt>, <tt>value</tt> 
        !           370:     <h4><a name="77046"></a> Description</h4>
        !           371:     A <tt>button</tt> typically gives the user 
        !           372:     <!--INDEX button element, XUL --> an option to click it to
        !           373:     carry out JavaScript code routine(s). This code can be a
        !           374:     function call or inline script and is contained in the
        !           375:     <tt>onclick</tt> attribute or the <tt>oncommand</tt> event
        !           376:     handler. It can optionally have an image associated with a URL
        !           377:     contained in the <tt>image</tt> attribute or by using the
        !           378:     <tt>list-style-image</tt> CSS property. There are various types
        !           379:     of buttons, determined by the type attribute, including
        !           380:     <tt>checkbox</tt>, <tt>menu</tt>, <tt>menu-button</tt>, and
        !           381:     <tt>radio</tt>. Leave this out for a normal button. 
        !           382:     <h4><a name="77046"></a> See Also</h4>
        !           383:     <tt>autorepeatbutton</tt>, <tt>toolbarbutton</tt> 
        !           384:     <hr>
        !           385:     <h3><a name="77051"></a> caption</h3>
        !           386:     <p>Provides heading for a groupbox element <a name="77051"></a>
        !           387:     Contained by <tt>groupbox</tt>, 
        !           388:     <!--INDEX caption element, XUL --> radiogroup</p>
        !           389:     <h4><a name="77051"></a> Additional Attributes</h4>
        !           390:     None. 
        !           391:     <h4><a name="77051"></a> Description</h4>
        !           392:     This element is most commonly used to provide a text label for
        !           393:     a <tt>groupbox</tt> by setting the <tt>label</tt> attribute.
        !           394:     However, it is flexible about other content it can contain,
        !           395:     such as checkboxes or radio buttons. 
        !           396:     <h4><a name="77051"></a> See Also</h4>
        !           397:     <tt>description</tt>, <tt>groupbox</tt>, <tt>label</tt>,
        !           398:     <tt>radiogroup</tt> 
        !           399:     <hr>
        !           400:     <h3><a name="77055"></a> checkbox</h3>
        !           401:     <p>Indicates a specified feature's on/off state</p>
        !           402:     <h4><a name="77055"></a> Additional Attributes</h4>
        !           403:     <tt>accesskey</tt>, <tt>label</tt>, <tt>checked</tt> 
        !           404:     <h4><a name="77055"></a> Description</h4>
        !           405:     A <tt>checkbox</tt> appears as a small 
        !           406:     <!--INDEX checkbox element, XUL --> box that can be checked on
        !           407:     or off. When checked on or off, the <tt>checked</tt> attribute
        !           408:     is set to <tt>true</tt> or <tt>false</tt>. It can be set
        !           409:     initially for a default value. To associate text with a
        !           410:     <tt>checkbox</tt>, set the <tt>label</tt> attribute. 
        !           411:     <h4><a name="77055"></a> See Also</h4>
        !           412:     radio 
        !           413:     <hr>
        !           414:     <h3>colorpicker</h3>
        !           415:     <p>Widget used to choose a color Additional Attributes
        !           416:     <tt>onchange</tt>, <tt><!--INDEX colorpicker element, XUL -->
        !           417:     type</tt>, <tt>id</tt>, <tt>palettename</tt></p>
        !           418:     <h4><a name="77059"></a> Description</h4>
        !           419:     When activated, this widget presents a choice of colors to the
        !           420:     user in a grid format. The user selects a color by clicking on
        !           421:     it. The <tt>palettename</tt> attribute determines the displayed
        !           422:     colors. Three values for this attribute represent three types
        !           423:     of palettes: standard, grey, and web. 
        !           424:     <h4><a name="77059"></a> JavaScript Methods and Properties</h4>
        !           425:     color 
        !           426:     <hr>
        !           427:     <h3><a name="77064"></a> column</h3>
        !           428:     <p>A column in a grid <a name="77064"></a> Contained by columns
        !           429:     <!--INDEX column element, XUL -->
        !           430:     </p>
        !           431:     <h4><a name="77064"></a> Additional Attributes</h4>
        !           432:     None. 
        !           433:     <h4><a name="77064"></a> Description</h4>
        !           434:     <tt>column</tt> is a column entry in a <tt>grid</tt>, of which
        !           435:     there can be one or more contained in a <tt>columns</tt>
        !           436:     element. The content of cells in a column is determined by the
        !           437:     children of each <tt>row</tt> element. 
        !           438:     <h4><a name="77064"></a> See Also</h4>
        !           439:     <tt>columns</tt>, <tt>grid</tt>, <tt>row</tt>, <tt>rows</tt> 
        !           440:     <hr>
        !           441:     <h3><a name="77069"></a> columns</h3>
        !           442:     <p>Container for the number of columns in a grid <a name=
        !           443:     "77069"></a> Contains column <!--INDEX columns element, XUL -->
        !           444:     </p>
        !           445:     <h4><a name="77069"></a> Additional Attributes</h4>
        !           446:     None. 
        !           447:     <h4><a name="77069"></a> Description</h4>
        !           448:     The children of this element are one or more <tt>column</tt>
        !           449:     elements, the number of which determines the actual number of
        !           450:     grid columns. 
        !           451:     <h4><a name="77069"></a> See Also</h4>
        !           452:     <tt>column</tt>, <tt>grid</tt>, <tt>row</tt>, <tt>rows</tt> 
        !           453:     <hr>
        !           454:     <h3>command</h3>
        !           455:     <p>Defines functionality that can be called from multiple
        !           456:     sources Contained by commandset 
        !           457:     <!--INDEX command element, XUL -->
        !           458:     </p>
        !           459:     <h4><a name="77074"></a> Additional Attributes</h4>
        !           460:     <tt>disabled</tt>, <tt>accesskey</tt>, <tt>observes</tt>,
        !           461:     <tt>label</tt>, <tt>checked</tt> 
        !           462:     <h4><a name="77074"></a> Description</h4>
        !           463:     The <tt>command</tt> element provides a place to organize
        !           464:     functionality used in more than one place in the interface-from
        !           465:     a context menu, a keyboard shortcut, and a regular menu, for
        !           466:     example. The element is identified and shared by using its
        !           467:     <tt>ID</tt> value and an interested element's (i.e., a menu
        !           468:     that wants the command) <tt>observes</tt> attribute. It also
        !           469:     typically calls a JavaScript command from its
        !           470:     <tt>oncommand</tt> event handler. 
        !           471:     <h4><a name="77074"></a> See Also</h4>
        !           472:     <tt>commands</tt>, <tt>commandset</tt> 
        !           473:     <hr>
        !           474:     <h3><a name="77078"></a> commands</h3>
        !           475:     <p>Container for a group of command sets</p>
        !           476:     <h4><a name="77078"></a> Additional Attributes</h4>
        !           477:     None. <!--INDEX commands element, XUL -->
        !           478:     <h4><a name="77078"></a> Description</h4>
        !           479:     <tt>commandsets</tt> no longer need to be contained within a
        !           480:     <tt>commands</tt> element. Still, the <tt>commands</tt> group
        !           481:     can help you organize your code and user overlays to import
        !           482:     commands, especially related sets. 
        !           483:     <h4><a name="77078"></a> See Also</h4>
        !           484:     <tt>command</tt>, <tt>commandset</tt> 
        !           485:     <hr>
        !           486:     <h3><a name="77083"></a> commandset</h3>
        !           487:     <p>A container for multiple command elements <a name=
        !           488:     "77083"></a> Contains command</p>
        !           489:     <h4><a name="77083"></a> Additional Attributes</h4>
        !           490:     <tt>oncommandupdate</tt>, <!--INDEX commandset element, XUL -->
        !           491:     <tt>commandupdater</tt>, <tt>events</tt> 
        !           492:     <h4><a name="77083"></a> Description</h4>
        !           493:     An invisible, document-level element that acts as a logical
        !           494:     grouping for commands or other command sets. 
        !           495:     <h4><a name="77083"></a> See Also</h4>
        !           496:     <tt>command</tt>, <tt>commands</tt> 
        !           497:     <hr>
        !           498:     <h3><a name="77088"></a> conditions</h3>
        !           499:     <p>Defines the conditions within a template rule <a name=
        !           500:     "77088"></a> Contains <tt>content</tt>, <tt>member</tt>, triple
        !           501:     <!--INDEX conditions element, XUL -->
        !           502:     </p>
        !           503:     <h4><a name="77088"></a> Additional Attributes</h4>
        !           504:     None. 
        !           505:     <h4><a name="77088"></a> Description</h4>
        !           506:     Within a <tt>template</tt>, the <tt>conditions</tt>,
        !           507:     <tt>action</tt>, and sometimes the <tt>bindings</tt> elements
        !           508:     comprise a single rule. The children of the <tt>conditions</tt>
        !           509:     element must be matched to the processed data for that rule's
        !           510:     action to make content. 
        !           511:     <h4><a name="77088"></a> See Also</h4>
        !           512:     <tt>template</tt>, <tt>rule</tt>, <tt>action</tt>,
        !           513:     <tt>member</tt>, <tt>triple</tt>, <tt>content</tt> 
        !           514:     <hr>
        !           515:     <h3><a name="77093"></a> content</h3>
        !           516:     <p>Binds variables in a template <a name="77093"></a> Contained
        !           517:     by conditions <!--INDEX conditions element, XUL -->
        !           518:     </p>
        !           519:     <h4><a name="77093"></a> Additional Attributes</h4>
        !           520:     None. 
        !           521:     <h4><a name="77093"></a> Description</h4>
        !           522:     The <tt>content</tt> element is the portion of a template's
        !           523:     <tt>conditions</tt> element that associates a variable, often
        !           524:     representing a URI (e.g., <tt>&lt;content uri="?uri"/&gt;</tt>)
        !           525:     with the data. 
        !           526:     <h4><a name="77093"></a> See Also</h4>
        !           527:     <tt>template</tt>, <tt>rule</tt>, <tt>action</tt>,
        !           528:     <tt>conditions</tt>, <tt>member</tt>, <tt>triple</tt> 
        !           529:     <hr>
        !           530:     <h3>deck</h3>
        !           531:     <p>Box container that displays one child element at a time
        !           532:     Additional Attributes selectedIndex</p>
        !           533:     <h4><a name="77097"></a> Description</h4>
        !           534:     <tt>deck</tt> uses the attribute <tt>selectedIndex</tt> 
        !           535:     <!--INDEX deck element, XUL --> to determine which child
        !           536:     element to display. The others are hidden until they are
        !           537:     displayed by index. <tt>deck</tt> is often used dynamically via
        !           538:     the DOM to cycle through child elements, such as buttons. 
        !           539:     <h4><a name="77097"></a> See Also</h4>
        !           540:     stack 
        !           541:     <hr>
        !           542:     <h3><a name="77101"></a> description</h3>
        !           543:     <p>Holder for block of text that can wrap to multiple lines</p>
        !           544:     <h4><a name="77101"></a> Additional Attributes</h4>
        !           545:     <tt>crop</tt>, <tt>onmouseover</tt>, 
        !           546:     <!--INDEX description element, XUL --> <tt>onmouseout</tt>,
        !           547:     <tt>value</tt> 
        !           548:     <h4><a name="77101"></a> Description</h4>
        !           549:     The <tt>description</tt> element replaces
        !           550:     <tt>&lt;html:label&gt;</tt> and other HTML-namespaced elements
        !           551:     to wrap text in XUL interfaces. Text in a <tt>description</tt>
        !           552:     can be defined as content with the open and close tags or
        !           553:     provided in the <tt>value</tt> attribute. Note that the text
        !           554:     does not wrap when placed in the <tt>value</tt> attribute. 
        !           555:     <h4><a name="77101"></a> See Also</h4>
        !           556:     <tt>caption</tt>, <tt>label</tt> 
        !           557:     <hr>
        !           558:     <h3><a name="77105"></a> dialog</h3>
        !           559:     <p>Root element for secondary XUL window</p>
        !           560:     <h4><a name="77105"></a> Additional Attributes</h4>
        !           561:     <tt>ondialogaccept</tt>, <tt>ondialogcancel</tt>,
        !           562:     <tt>ondialoghelp</tt>, <tt>onunload</tt>, <tt>onload</tt>,
        !           563:     <tt>title</tt>, <tt>buttons</tt>, <tt>windowtype</tt>,
        !           564:     p<tt>ersist</tt>, <tt>y</tt>, <tt>x</tt>, <tt>screenY</tt>,
        !           565:     <tt>screenX</tt> 
        !           566:     <h4><a name="77105"></a> Description</h4>
        !           567:     <tt>dialog</tt> is a version of the <tt>window</tt> element 
        !           568:     <!--INDEX dialog element, XUL --> built for displaying a
        !           569:     secondary dialog window in the application. Like
        !           570:     <tt>window</tt>, <tt>dialog</tt> is the root element in a XUL
        !           571:     file. Event handlers such as <tt>ondialogaccept</tt> and
        !           572:     <tt>ondialogcancel</tt> are included as conveniences for
        !           573:     handling user input. 
        !           574:     <h4><a name="77105"></a> See Also</h4>
        !           575:     <tt>window</tt>, <tt>page</tt> 
        !           576:     <hr>
        !           577:     <h3><a name="77110"></a> dialogheader</h3>
        !           578:     <p>Styled text heading for UI panel <a name="77110"></a>
        !           579:     Contained by dialog</p>
        !           580:     <h4><a name="77110"></a> Additional Attributes</h4>
        !           581:     <tt>title</tt>, <!--INDEX dialogheader element, XUL -->
        !           582:     description 
        !           583:     <h4><a name="77110"></a> Description</h4>
        !           584:     This is a formatted horizontal panel that contains text
        !           585:     specified by the <tt>title</tt> attribute. This element is the
        !           586:     heading that appears at the top of the right panel in the
        !           587:     Mozilla global preferences dialog. 
        !           588:     <h4><a name="77110"></a> See Also</h4>
        !           589:     <tt>window</tt>, <tt>dialog</tt> 
        !           590:     <hr>
        !           591:     <h3><a name="77115"></a> editor</h3>
        !           592:     <p>Content area for editable web content</p>
        !           593:     <h4><a name="77115"></a> Additional Attributes</h4>
        !           594:     src <!--INDEX editor element, XUL -->
        !           595:     <h4><a name="77115"></a> Description</h4>
        !           596:     This high-level widget edits text and HTML.
        !           597:     <tt>contentDocument</tt> is a reference to the document
        !           598:     contained within the editor. 
        !           599:     <h4><a name="77115"></a> JavaScript Methods and Properties</h4>
        !           600:     contentDocument 
        !           601:     <h4><a name="77115"></a> See Also</h4>
        !           602:     <tt>browser</tt>, <tt>iframe</tt> 
        !           603:     <hr>
        !           604:     <h3><a name="77120"></a> grid</h3>
        !           605:     <p>Widget for laying out content in a structured tabular
        !           606:     fashion <a name="77120"></a> Contains <tt>rows</tt>,
        !           607:     <tt>columns</tt></p>
        !           608:     <h4><a name="77120"></a> Additional Attributes</h4>
        !           609:     None. 
        !           610:     <h4><a name="77120"></a> Description</h4>
        !           611:     The number of column elements <!--INDEX grid element, XUL -->
        !           612:     that are placed in rows determines the number of columns and
        !           613:     the content for each row is placed in the <tt>row</tt> element.
        !           614:     The number of row children must correspond to the number of
        !           615:     columns. 
        !           616:     <h4><a name="77120"></a> See Also</h4>
        !           617:     <tt>column</tt>, <tt>columns</tt>, <tt>listbox</tt>,
        !           618:     <tt>row</tt>, <tt>rows</tt>, <tt>tree</tt> 
        !           619:     <hr>
        !           620:     <h3><a name="77124"></a> grippy</h3>
        !           621:     <p>Visible widget used on a grippy bar to expand or collapse a
        !           622:     UI region <a name="77124"></a> Contained by splitter 
        !           623:     <!--INDEX grippy element, XUL -->
        !           624:     </p>
        !           625:     <h4><a name="77124"></a> Additional Attributes</h4>
        !           626:     None. 
        !           627:     <h4><a name="77124"></a> Description</h4>
        !           628:     <tt>grippy</tt> appears as a child of a <tt>splitter</tt> and
        !           629:     provides the little "handle" that opens and closes the
        !           630:     <tt>sidebar</tt> and other collapsible elements in the
        !           631:     interface. 
        !           632:     <hr>
        !           633:     <h3><a name="77129"></a> groupbox</h3>
        !           634:     <p>Box with frame surrounding it <a name="77129"></a> Contains
        !           635:     caption <!--INDEX groupbox element, XUL -->
        !           636:     </p>
        !           637:     <h4><a name="77129"></a> Additional Attributes</h4>
        !           638:     None. 
        !           639:     <h4><a name="77129"></a> Description</h4>
        !           640:     The border that appears around and organizes elements in the
        !           641:     interface (e.g., in dialogs where selectable elements are
        !           642:     grouped together); often comes from a <tt>groupbox</tt> parent.
        !           643:     
        !           644:     <h4><a name="77129"></a> See Also</h4>
        !           645:     box 
        !           646:     <hr>
        !           647:     <h3><a name="77133"></a> hbox</h3>
        !           648:     <p>Box container whose children are laid out horizontally</p>
        !           649:     <h4><a name="77133"></a> Additional Attributes</h4>
        !           650:     None. <!--INDEX hbox element, XUL -->
        !           651:     <h4><a name="77133"></a> Description</h4>
        !           652:     The <tt>hbox</tt> element is a shorthand for <tt>&lt;box
        !           653:     orient="horizontal"&gt;</tt>. It is the preferred way to
        !           654:     achieve horizontal orientation in box layout. 
        !           655:     <h4><a name="77133"></a> See Also</h4>
        !           656:     <tt>box</tt>, <tt>vbox</tt> 
        !           657:     <hr>
        !           658:     <h3><a name="77137"></a> iframe</h3>
        !           659:     <p>Web content area</p>
        !           660:     <h4><a name="77137"></a> Additional Attributes</h4>
        !           661:     <tt>name</tt>, <tt>src</tt>, <tt>type</tt> 
        !           662:     <h4><a name="77137"></a> Description</h4>
        !           663:     Like <tt>browser</tt>, <tt>iframe</tt> allows you to 
        !           664:     <!--INDEX iframe element, XUL --> display web content, XML, and
        !           665:     other data using the <tt>src</tt> attribute, but has less
        !           666:     intrinsic browsing functionality available (such as browser
        !           667:     history). You can use any number of iframes in a document. 
        !           668:     <h4><a name="77137"></a> See Also</h4>
        !           669:     <tt>browser</tt>, <tt>editor</tt> 
        !           670:     <hr>
        !           671:     <h3><a name="77140"></a> image</h3>
        !           672:     <p>Display of a supported type image</p>
        !           673:     <h4><a name="77140"></a> Additional Attributes</h4>
        !           674:     src 
        !           675:     <h4><a name="77140"></a> Description</h4>
        !           676:     The XUL image is analogous to the 
        !           677:     <!--INDEX image element, XUL --> HTML <tt>&lt;img&gt;</tt>
        !           678:     element. The supported types in Gecko are PNG, JPG, GIF, and
        !           679:     BMP. 
        !           680:     <hr>
        !           681:     <h3><a name="77145"></a> key</h3>
        !           682:     <p>Definition for a keyboard shortcut <a name="77145"></a>
        !           683:     Contained by keyset <!--INDEX key element, XUL -->
        !           684:     </p>
        !           685:     <h4><a name="77145"></a> Additional Attributes</h4>
        !           686:     <tt>modifiers</tt>, <tt>command</tt>, <tt>key</tt> ,
        !           687:     <tt>keycode</tt>, <tt>observes</tt> 
        !           688:     <h4><a name="77145"></a> Description</h4>
        !           689:     A <tt>key</tt> is often defined with a <tt>commandkey</tt> and
        !           690:     a modifier (e.g., <tt>P</tt> + <tt>Ctrl</tt>), and uses an
        !           691:     <tt>oncommand</tt> event handler to fire the given command when
        !           692:     invoked. 
        !           693:     <h4><a name="77145"></a> See Also</h4>
        !           694:     keyset 
        !           695:     <hr>
        !           696:     <h3><a name="77150"></a> keybinding</h3>
        !           697:     <p>Container for a keyset or group of keysets <a name=
        !           698:     "77150"></a> Contains keyset 
        !           699:     <!--INDEX keybinding element, XUL -->
        !           700:     </p>
        !           701:     <h4><a name="77150"></a> Additional Attributes</h4>
        !           702:     None. 
        !           703:     <h4><a name="77150"></a> Description</h4>
        !           704:     This element is used in an overlaid file to contain a group of
        !           705:     platform-specific key sets. It uses the <tt>ID</tt> attribute
        !           706:     to overlay itself into XUL files that pick up sets of key
        !           707:     bindings. 
        !           708:     <h4><a name="77150"></a> See Also</h4>
        !           709:     <tt>key</tt>, <tt>keyset</tt> 
        !           710:     <hr>
        !           711:     <h3><a name="77154"></a> keyset</h3>
        !           712:     <p>Container for one or more key elements Contains key 
        !           713:     <!--INDEX keyset element, XUL -->
        !           714:     </p>
        !           715:     <h4><a name="77154"></a> Additional Attributes</h4>
        !           716:     None. 
        !           717:     <h4><a name="77154"></a> Description</h4>
        !           718:     <tt>key</tt> elements no longer need to be contained within a
        !           719:     <tt>keyset</tt> parent. Still, keysets can help organize groups
        !           720:     of keys-particularly related ones. 
        !           721:     <h4><a name="77154"></a> See Also</h4>
        !           722:     <tt>key</tt>, <tt>keybinding</tt> 
        !           723:     <hr>
        !           724:     <h3><a name="77158"></a> label</h3>
        !           725:     <p>Simple text display element and label for a control
        !           726:     element</p>
        !           727:     <h4><a name="77158"></a> Additional Attributes</h4>
        !           728:     <tt>control</tt>, <tt>for</tt>, <tt>accesskey</tt>,
        !           729:     <tt>crop</tt>, <!--INDEX label element, XUL --> <tt>value</tt> 
        !           730:     <h4><a name="77158"></a> Description</h4>
        !           731:     This text element can just display text in the UI. Unlike the
        !           732:     <tt>description</tt> element, the text will not wrap. If you
        !           733:     use it with a control element (the association occurs through
        !           734:     the <tt>for</tt> attribute, the value of which must match the
        !           735:     element's <tt>id</tt>) such as a <tt>textbox</tt>, the focus
        !           736:     moves to the control element when the <tt>label</tt> is
        !           737:     clicked. 
        !           738:     <h4><a name="77158"></a> See Also</h4>
        !           739:     <tt>caption</tt>, <tt>description</tt> 
        !           740:     <hr>
        !           741:     <h3><a name="77162"></a> listbox</h3>
        !           742:     <p>Used for display of a flat list of items</p>
        !           743:     <h4><a name="77162"></a> Additional Attributes</h4>
        !           744:     <tt>datasources</tt>, <tt>sortResource</tt>, <tt>
        !           745:     <!--INDEX listbox element, XUL --> sortDirection</tt>,
        !           746:     <tt>rows</tt>, <tt>seltype</tt>, <tt>ref</tt> 
        !           747:     <h4><a name="77162"></a> Description</h4>
        !           748:     <tt>listbox</tt> is a lightweight tabular display widget.
        !           749:     Unlike <tt>tree</tt>, it cannot handle nested rows. It does
        !           750:     support multiple columns, however. It is easy to use and
        !           751:     renders content very quickly. 
        !           752:     <h4><a name="77162"></a> See Also</h4>
        !           753:     <tt>listcell</tt>, <tt>listcol</tt>, <tt>listcols</tt>,
        !           754:     <tt>listhead</tt>, <tt>listheader</tt>, <tt>listitem</tt> 
        !           755:     <hr>
        !           756:     <h3><a name="77167"></a> listcell</h3>
        !           757:     <p>Single cell of a listbox <a name="77167"></a> Contained by
        !           758:     listitem <!--INDEX listcell element, XUL -->
        !           759:     </p>
        !           760:     <h4><a name="77167"></a> Additional Attributes</h4>
        !           761:     <tt>label</tt>, <tt>flexlabel</tt>, <tt>crop</tt>,
        !           762:     <tt>disabled</tt>, <tt>image</tt>, <tt>checked</tt> 
        !           763:     <h4><a name="77167"></a> Description</h4>
        !           764:     The <tt>listcell</tt> is the element within a <tt>listbox</tt>
        !           765:     that actually displays data. 
        !           766:     <h4><a name="77167"></a> See Also</h4>
        !           767:     <tt>listbox</tt>, <tt>listcol</tt>, <tt>listcols</tt>,
        !           768:     <tt>listheader</tt>, <tt>listitem</tt> 
        !           769:     <hr>
        !           770:     <h3>listcol</h3>
        !           771:     <p>Listbox column definition <a name="77171"></a> Contained by
        !           772:     listcols <!--INDEX listcol element, XUL -->
        !           773:     </p>
        !           774:     <h4><a name="77171"></a> Description</h4>
        !           775:     This element represents a column in a <tt>listbox</tt>. 
        !           776:     <h4><a name="77171"></a> See Also</h4>
        !           777:     <tt>listbox</tt>, <tt>listcell</tt>, <tt>listcols</tt>,
        !           778:     <tt>listheader</tt>, <tt>listitem</tt> 
        !           779:     <hr>
        !           780:     <h3><a name="77176"></a> listcols</h3>
        !           781:     <p>Container for listbox columns (listcol) <a name="77176"></a>
        !           782:     Contained by listbox <!--INDEX listcols element, XUL -->
        !           783:     <a name="77176"></a> Contains listcol</p>
        !           784:     <h4><a name="77176"></a> Description</h4>
        !           785:     This element contains any number of individual <tt>listbox</tt>
        !           786:     columns. 
        !           787:     <h4><a name="77176"></a> See Also</h4>
        !           788:     <tt>listbox</tt>, <tt>listcell</tt>, <tt>listcol</tt>,
        !           789:     <tt>listheader</tt>, <tt>listitem</tt> 
        !           790:     <hr>
        !           791:     <h3><a name="77181"></a> listhead</h3>
        !           792:     <p>Container for column header in list boxes (listheader) <a
        !           793:     name="77181"></a> Contained by listbox 
        !           794:     <!--INDEX listhead element, XUL -->
        !           795:     <a name="77181"></a> Contains listheader</p>
        !           796:     <h4><a name="77181"></a> Description</h4>
        !           797:     The <tt>listhead</tt> element is analogous to the HTML
        !           798:     <tt>thead</tt> element, and contains the header cells for an
        !           799:     XUL listbox table. 
        !           800:     <h4><a name="77181"></a> See Also</h4>
        !           801:     <tt>listbox</tt>, <tt>listcell</tt>, <tt>listcol,
        !           802:     listcols</tt>, <tt>listheader</tt>, <tt>listitem</tt> 
        !           803:     <hr>
        !           804:     <h3><a name="77186"></a> listheader</h3>
        !           805:     <p>Text header for listbox column <a name="77186"></a>
        !           806:     Contained by listhead <!--INDEX listheader element, XUL -->
        !           807:     </p>
        !           808:     <h4><a name="77186"></a> Additional Attributes</h4>
        !           809:     <tt>sortActive</tt>, <tt>sortDirection</tt>, <tt>resource</tt>,
        !           810:     <tt>sortable</tt> 
        !           811:     <h4><a name="77186"></a> Description</h4>
        !           812:     The <tt>listheader</tt> element displays the header text. 
        !           813:     <h4><a name="77186"></a> See Also</h4>
        !           814:     <tt>listbox</tt>, <tt>listcell, listcol</tt>,
        !           815:     <tt>listcols</tt>, <tt>listhead</tt>, <tt>listitem</tt> 
        !           816:     <hr>
        !           817:     <h3><a name="77192"></a> listitem</h3>
        !           818:     <p>Listbox row definition <a name="77192"></a> Contained By
        !           819:     listbox <!--INDEX listitem element, XUL -->
        !           820:     <a name="77192"></a> Contains listcell</p>
        !           821:     <h4><a name="77192"></a> Additional Attributes</h4>
        !           822:     <tt>value</tt>, <tt>description</tt>, <tt>accesskey</tt>,
        !           823:     <tt>label</tt>, <tt>context</tt>, <tt>type</tt>, <tt>name</tt> 
        !           824:     <h4><a name="77192"></a> Description</h4>
        !           825:     A <tt>listitem</tt> is a row in a <tt>listbox</tt>. The number
        !           826:     of <tt>listcell</tt> children corresponds to the number of
        !           827:     columns in the <tt>listbox</tt>. 
        !           828:     <h4><a name="77192"></a> See Also</h4>
        !           829:     <tt>listbox</tt>, <tt>listcell</tt>, <tt>listcol</tt>,
        !           830:     <tt>listcols</tt>, <tt>listhead</tt>, <tt>listheader</tt> 
        !           831:     <hr>
        !           832:     <h3><a name="77196"></a> member</h3>
        !           833:     <p>Matches container relationships in which the parent element
        !           834:     is given by a container element and the child by a child
        !           835:     element Additional Attributes <tt>container</tt>, 
        !           836:     <!--INDEX member element, XUL --> <tt>child</tt></p>
        !           837:     <h4><a name="77196"></a> Description</h4>
        !           838:     The <tt>member</tt> element is part of the conditional
        !           839:     structure in a XUL template. It creates a rule by which
        !           840:     parent-child relationships are matched and used as a basis for
        !           841:     drawing content in the XUL. 
        !           842:     <h4><a name="77196"></a> See Also</h4>
        !           843:     <tt>conditions</tt>, <tt>rules</tt>, <tt>bindings</tt>,
        !           844:     <tt>template</tt> 
        !           845:     <hr>
        !           846:     <h3><a name="77200"></a> menu</h3>
        !           847:     <p>A menu element for containing menu items</p>
        !           848:     <h4><a name="77200"></a> Additional Attributes</h4>
        !           849:     <tt>label</tt>, <tt>accesskey</tt>, 
        !           850:     <!--INDEX menu element, XUL --> <tt>disabled</tt>,
        !           851:     <tt>image</tt>, <tt>disabled</tt> 
        !           852:     <h4><a name="77200"></a> Description</h4>
        !           853:     <tt>menu</tt> is the basic menu widget. It's often contained in
        !           854:     a <tt>menubar</tt>, but may appear elsewhere. The actual
        !           855:     <tt>menuitems</tt> are defined within a <tt>menupopup</tt> that
        !           856:     is usually the direct child of <tt>menu</tt>. 
        !           857:     <h4><a name="77200"></a> See Also</h4>
        !           858:     <tt>menubar</tt>, <tt>menubutton</tt>, <tt>menuitem</tt>,
        !           859:     <tt>menulist</tt>, <tt>menupopup</tt>, <tt>menuseparator</tt> 
        !           860:     <hr>
        !           861:     <h3><a name="77205"></a> menubar</h3>
        !           862:     <p>Containing element for one or more menus <a name=
        !           863:     "77205"></a> Contains menu</p>
        !           864:     <h4><a name="77205"></a> Additional Attributes</h4>
        !           865:     None. 
        !           866:     <h4><a name="77205"></a> Description</h4>
        !           867:     <tt>menubar</tt> is a special box for containing 
        !           868:     <!--INDEX menubar element, XUL --> menus (though it can include
        !           869:     other content). By default it has a <tt>grippy</tt> for
        !           870:     expanding and collapsing the menubar. 
        !           871:     <h4><a name="77205"></a> See Also</h4>
        !           872:     <tt>menu</tt>, <tt>menubutton</tt>, <tt>menuitem</tt>,
        !           873:     <tt>menulist</tt>, <tt>menupopup</tt>, <tt>menuseparator</tt>,
        !           874:     <tt>grippy</tt> 
        !           875:     <hr>
        !           876:     <h3><a name="77210"></a> menuitem</h3>
        !           877:     <p>Single selectable choice in a menu <a name="77210"></a>
        !           878:     Contained by menupopup <!--INDEX menuitem element, XUL -->
        !           879:     </p>
        !           880:     <h4><a name="77210"></a> Additional Attributes</h4>
        !           881:     <tt>label</tt>, <tt>accesskey</tt>, <tt>crop</tt>,
        !           882:     <tt>image</tt>, <tt>disabled</tt>, <tt>checked</tt> 
        !           883:     <h4><a name="77210"></a> Description</h4>
        !           884:     The <tt>menuitem</tt> is the basic element used to display a
        !           885:     single item in a menu (e.g., <tt>&lt;menuitem</tt>
        !           886:     <tt>label="File"/&gt;</tt>). 
        !           887:     <h4><a name="77210"></a> See Also</h4>
        !           888:     menu, menubar, menubutton, menulist, menupopup, menuseparator 
        !           889:     <hr>
        !           890:     <h3><a name="77215"></a> menulist</h3>
        !           891:     <p>Drop-down list of selectable items <a name="77215"></a>
        !           892:     Contains menupopup <!--INDEX menulist element, XUL -->
        !           893:     </p>
        !           894:     <h4><a name="77215"></a> Additional Attributes</h4>
        !           895:     None. 
        !           896:     <h4><a name="77215"></a> Description</h4>
        !           897:     The <tt>menulist</tt> displays a list of menuitems, the
        !           898:     selected one of which is displayed in the <tt>menulist</tt>
        !           899:     itself. It is a type of drop-down menu. 
        !           900:     <h4><a name="77215"></a> See Also</h4>
        !           901:     <tt>menu</tt>, <tt>menubar</tt>, <tt>menubutton</tt>,
        !           902:     <tt>menuitem</tt>, <tt>menupopup</tt>, <tt>menuseparator</tt> 
        !           903:     <hr>
        !           904:     <h3><a name="77221"></a> menupopup</h3>
        !           905:     <p>Pop-up container for menu items <a name="77221"></a>
        !           906:     Contained By <tt>menu</tt>, <tt>
        !           907:     <!--INDEX menupopup element, XUL --> menubutton</tt>,
        !           908:     <tt>menulist</tt> <a name="77221"></a> Contains menuitem</p>
        !           909:     <h4><a name="77221"></a> Additional Attributes</h4>
        !           910:     <tt>popupalign</tt>, <tt>datasources</tt>,
        !           911:     <tt>onpopupshowing</tt>, <tt>sortResource</tt>,
        !           912:     <tt>onpopuphiding</tt>, <tt>sortDirection</tt>,
        !           913:     <tt>context</tt>, <tt>position</tt>, <tt>popupanchor</tt>,
        !           914:     <tt>ref</tt> 
        !           915:     <h4><a name="77221"></a> Description</h4>
        !           916:     The <tt>menupopup</tt> contains the actual menu items defined
        !           917:     for a menu and acts much like the <tt>popup</tt> element to
        !           918:     show the window with a list of choices. 
        !           919:     <h4><a name="77221"></a> See Also</h4>
        !           920:     popup, menu, menubar, menubutton, menuitem, menulist,
        !           921:     menuseparator 
        !           922:     <hr>
        !           923:     <h3><a name="77226"></a> menuseparator</h3>
        !           924:     <p>Line separating menu items <a name="77226"></a> Contained By
        !           925:     menupopup <!--INDEX menuseparator element, XUL -->
        !           926:     </p>
        !           927:     <h4><a name="77226"></a> Additional Attributes</h4>
        !           928:     type 
        !           929:     <h4><a name="77226"></a> Description</h4>
        !           930:     The <tt>menuseparator</tt> is a line through the menu that
        !           931:     divides menu items into different groups. You can use the
        !           932:     <tt>position</tt> attribute on the <tt>menuseparator</tt> to
        !           933:     make sure it appears in a particular place, or you can use the
        !           934:     common attribute <tt>insertAfter</tt>. 
        !           935:     <h4><a name="77226"></a> See Also</h4>
        !           936:     <tt>menu</tt>, <tt>menubar</tt>, <tt>menubutton</tt>,
        !           937:     <tt>menuitem</tt>, <tt>menulist</tt>, <tt>menuspopup</tt> 
        !           938:     <hr>
        !           939:     <h3><a name="77230"></a> observes</h3>
        !           940:     <p>Broadcast event and attribute listener</p>
        !           941:     <h4><a name="77230"></a> Additional Attributes</h4>
        !           942:     <tt>element</tt>, <tt>attribute</tt>, 
        !           943:     <!--INDEX observes element, XUL --> <tt>onbroadcast</tt> 
        !           944:     <h4><a name="77230"></a> Description</h4>
        !           945:     The <tt>observes</tt> element observes the state of a
        !           946:     broadcasting element and its attributes. <tt>observes</tt> can
        !           947:     be a separate element, defined as a child of the interested
        !           948:     observer, or it can be an attribute on any element that wants
        !           949:     to watch changes in a broadcasting element. 
        !           950:     <h4><a name="77230"></a> See Also</h4>
        !           951:     broadcaster 
        !           952:     <hr>
        !           953:     <h3><a name="77234"></a> overlay</h3>
        !           954:     <p>Root element in a separate file that contains reusable XUL
        !           955:     content</p>
        !           956:     <h4><a name="77234"></a> Additional Attributes</h4>
        !           957:     <tt>xmlns</tt>, title <!--INDEX overlay element, XUL -->
        !           958:     <h4><a name="77234"></a> Description</h4>
        !           959:     Like <tt>page</tt>, <tt>window</tt>, <tt>dialog</tt>, and
        !           960:     <tt>wizard</tt>, <tt>overlay</tt> is a XUL document's root
        !           961:     element. Overlay documents contain content blocks that are
        !           962:     overlaid dynamically at runtime into XUL content whose IDs
        !           963:     match theirs. For example, a <tt>menupopup</tt> with the
        !           964:     <tt>ID</tt> "file" and a <tt>menuitem</tt> child in an overlay
        !           965:     adds that new <tt>menuitem</tt> into any <tt>menupopup</tt>
        !           966:     with the <tt>ID</tt> "file" that it finds in the base XUL. 
        !           967:     <h4><a name="77234"></a> See Also</h4>
        !           968:     <tt>page</tt>, <tt>window</tt> 
        !           969:     <hr>
        !           970:     <h3><a name="77238"></a> page</h3>
        !           971:     <p>Root element of XUL file loaded in a content frame</p>
        !           972:     <h4><a name="77238"></a> Additional Attributes</h4>
        !           973:     <tt>context</tt>, <!--INDEX page element, XUL -->
        !           974:     <tt>headertitle</tt>, <tt>onload</tt>, <tt>onunload</tt>,
        !           975:     <tt>title</tt>, <tt>xmlns</tt> 
        !           976:     <h4><a name="77238"></a> Description</h4>
        !           977:     <tt>page</tt> is the root element for a XUL document that is
        !           978:     meant to be loaded within another XUL document, such as a
        !           979:     preference panel. 
        !           980:     <h4><a name="77238"></a> See Also</h4>
        !           981:     <tt>dialog</tt>, <tt>overlay</tt>, <tt>window</tt> 
        !           982:     <hr>
        !           983:     <h3><a name="77242"></a> popup</h3>
        !           984:     <p>Box container as child window</p>
        !           985:     <h4><a name="77242"></a> Additional Attributes</h4>
        !           986:     <tt>onpopupshowing</tt>, <!--INDEX popup element, XUL -->
        !           987:     onpopuphiding 
        !           988:     <h4><a name="77242"></a> Description</h4>
        !           989:     <tt>popup</tt> is a pop-up window that can be hooked up to any
        !           990:     UI content. It is often used for context menus and invoked by
        !           991:     elements that use its <tt>ID</tt> attribute in their
        !           992:     <tt>popup</tt> or <tt>context</tt> attribute. 
        !           993:     <h4><a name="77242"></a> See Also</h4>
        !           994:     <tt>menupopup</tt>, <tt>popupset</tt> 
        !           995:     <hr>
        !           996:     <h3><a name="77246"></a> popupset</h3>
        !           997:     <p>Container for popup elements</p>
        !           998:     <h4><a name="77246"></a> Additional Attributes</h4>
        !           999:     None. <!--INDEX popupset element, XUL -->
        !          1000:     <h4><a name="77246"></a> Description</h4>
        !          1001:     While not strictly necessary as a container for the
        !          1002:     <tt>popup</tt> element, <tt>popupset</tt> helps you organize
        !          1003:     and overlays groups of popups. 
        !          1004:     <h4><a name="77246"></a> See Also</h4>
        !          1005:     popup 
        !          1006:     <hr>
        !          1007:     <h3><a name="77249"></a> progressmeter</h3>
        !          1008:     <p>Visual progress indicator of a time-consuming operation</p>
        !          1009:     <h4><a name="77249"></a> Additional Attributes</h4>
        !          1010:     <tt>value</tt>, <!--INDEX progressmeter element, XUL --> mode 
        !          1011:     <h4><a name="77249"></a> Description</h4>
        !          1012:     This high-level widget uses its <tt>value</tt> attribute to
        !          1013:     fill in a meter that usually represents how long a particular
        !          1014:     task takes. You can change the <tt>value</tt> attribute
        !          1015:     dynamically to update the fill or set the mode to
        !          1016:     "undetermined" (as opposed to the default "determined" mode) to
        !          1017:     display a busy meter that doesn't chart actual progress. 
        !          1018:     <hr>
        !          1019:     <h3><a name="77253"></a> radio</h3>
        !          1020:     <p>Single on/off choice represented as selectable circle <a
        !          1021:     name="77253"></a> Contained By radiogroup 
        !          1022:     <!--INDEX radio element, XUL -->
        !          1023:     </p>
        !          1024:     <h4><a name="77253"></a> Additional Attributes</h4>
        !          1025:     <tt>selected</tt>, <tt>group</tt>, <tt>label</tt>,
        !          1026:     <tt>accesskey</tt>, <tt>value</tt> 
        !          1027:     <h4><a name="77253"></a> Description</h4>
        !          1028:     Within a <tt>radiogroup</tt> element, a single <tt>radio</tt>
        !          1029:     widget is selected to indicate user choice. <tt>radio</tt>
        !          1030:     elements can also be used singularly to check an option on or
        !          1031:     off in the interface. 
        !          1032:     <hr>
        !          1033:     <h3><a name="77257"></a> radiogroup</h3>
        !          1034:     <p>Framed box for containing radio elements <a name=
        !          1035:     "77257"></a> Contains radio 
        !          1036:     <!--INDEX radiogroup element, XUL -->
        !          1037:     </p>
        !          1038:     <h4><a name="77257"></a> Additional Attributes</h4>
        !          1039:     disabled 
        !          1040:     <h4><a name="77257"></a> Description</h4>
        !          1041:     The <tt>radiogroup</tt> makes all <tt>radio</tt> elements
        !          1042:     within it belong to a single group from which only a single
        !          1043:     element can be selected. 
        !          1044:     <hr>
        !          1045:     <h3><a name="77261"></a> resizer</h3>
        !          1046:     <p>Window-resizing element</p>
        !          1047:     <h4><a name="77261"></a> Additional Attributes</h4>
        !          1048:     direction <!--INDEX resizer element, XUL -->
        !          1049:     <h4><a name="77261"></a> Description</h4>
        !          1050:     A bar that changes the cursor when hovered over to signify that
        !          1051:     the bar can be dragged to resize the a window. The
        !          1052:     <tt>direction</tt> attribute specifies which way the window is
        !          1053:     resized, and can have values such as <tt>topleft</tt>,
        !          1054:     <tt>top</tt>, <tt>right</tt>, and <tt>bottomright</tt>. For
        !          1055:     example, a value of <tt>bottomleft</tt> resizes the window down
        !          1056:     and to the left. 
        !          1057:     <h4><a name="77261"></a> See Also</h4>
        !          1058:     window 
        !          1059:     <hr>
        !          1060:     <h3><a name="77266"></a> row</h3>
        !          1061:     <p>Container for grid cells laid out consecutively <a name=
        !          1062:     "77266"></a> Contained By rows <!--INDEX row element, XUL -->
        !          1063:     </p>
        !          1064:     <h4><a name="77266"></a> Additional Attributes</h4>
        !          1065:     None. 
        !          1066:     <h4><a name="77266"></a> Description</h4>
        !          1067:     <tt>row</tt> is a single row in a <tt>grid</tt>. It is
        !          1068:     analogous to the <tt>&lt;TR&gt;</tt> element in HTML. 
        !          1069:     <h4><a name="77266"></a> See Also</h4>
        !          1070:     <tt>grid</tt>, <tt>rows</tt> 
        !          1071:     <hr>
        !          1072:     <h3><a name="77271"></a> rows</h3>
        !          1073:     <p>Definition for grid rows <a name="77271"></a> Contains row 
        !          1074:     <!--INDEX rows element, XUL -->
        !          1075:     </p>
        !          1076:     <h4><a name="77271"></a> Additional Attributes</h4>
        !          1077:     None. 
        !          1078:     <h4><a name="77271"></a> Description</h4>
        !          1079:     The <tt>rows</tt> element is a child of the <tt>grid</tt>
        !          1080:     element that contains any number of individual <tt>row</tt>
        !          1081:     elements. It is a sibling of <tt>columns</tt> within the
        !          1082:     <tt>grid</tt>. 
        !          1083:     <h4><a name="77271"></a> See Also</h4>
        !          1084:     <tt>grid</tt>, <tt>row</tt>, <tt>columns</tt>, <tt>column</tt> 
        !          1085:     <hr>
        !          1086:     <h3><a name="77276"></a> rule</h3>
        !          1087:     <p>Defines rules for rendering data as XUL <a name="77276"></a>
        !          1088:     Contained by template <!--INDEX rule element, XUL -->
        !          1089:     </p>
        !          1090:     <h4><a name="77276"></a> Additional Attributes</h4>
        !          1091:     <tt>rdf:type</tt>, <tt>parent</tt>, <tt>isempty</tt>,
        !          1092:     <tt>iscontainer</tt> 
        !          1093:     <h4><a name="77276"></a> Description</h4>
        !          1094:     The children of the <tt>rule</tt> element define a rule: the
        !          1095:     conditions stated in the <tt>conditions</tt> element must be
        !          1096:     met, the <tt>bindings</tt> provides optional matching, and the
        !          1097:     content in the <tt>action</tt> element is rendered if the rule
        !          1098:     is matched. 
        !          1099:     <h4><a name="77276"></a> See Also</h4>
        !          1100:     <tt>template</tt>, <tt>action</tt>, <tt>conditions</tt> 
        !          1101:     <hr>
        !          1102:     <h3><a name="77279"></a> script</h3>
        !          1103:     <p>Declaration of script used in XUL file</p>
        !          1104:     <h4><a name="77279"></a> Additional Attributes</h4>
        !          1105:     <tt>src</tt>, type <!--INDEX script element, XUL -->
        !          1106:     <h4><a name="77279"></a> Description</h4>
        !          1107:     The <tt>script</tt> element can contain script content (e.g.,
        !          1108:     <tt>&lt;script&gt;alert("it")&lt;/script&gt;</tt>) and can also
        !          1109:     import scripts in JavaScript files, in which case the
        !          1110:     <tt>src</tt> attribute is used. The type for JavaScript is
        !          1111:     <tt>application/x-javascript</tt>, and the <tt>src</tt>
        !          1112:     attribute may also use <i>chrome://</i> type URLs to point at
        !          1113:     JavaScript in the chrome. 
        !          1114:     <hr>
        !          1115:     <h3>scrollbar</h3>
        !          1116:     <p>Widget for scrolling in a container Contains
        !          1117:     <tt>scrollbarbutton</tt>, <!--INDEX scrollbar element, XUL -->
        !          1118:     <tt>slider</tt></p>
        !          1119:     <h4><a name="77283"></a> Additional Attributes</h4>
        !          1120:     <tt>curpos</tt>, <tt>increment</tt>, <tt>maxpos</tt>,
        !          1121:     <tt>pageincrement</tt> 
        !          1122:     <h4><a name="77283"></a> Description</h4>
        !          1123:     The <tt>scrollbar</tt> element uses the <tt>curpos</tt> and
        !          1124:     <tt>maxpos</tt> attributes to determine where the
        !          1125:     <tt>scrollbarbutton</tt> element is drawn within its length.
        !          1126:     <tt>increment</tt> specifies how much the scrollbar should move
        !          1127:     on user input. <tt>pageincrement</tt> specifies how many pages
        !          1128:     it should move. 
        !          1129:     <hr>
        !          1130:     <h3><a name="77287"></a> scrollbarbutton</h3>
        !          1131:     <p>Button used to move position of scrollbar thumb <a name=
        !          1132:     "77287"></a> Contained By scrollbar 
        !          1133:     <!--INDEX scrollbarbutton element, XUL -->
        !          1134:     </p>
        !          1135:     <h4><a name="77287"></a> Additional Attributes</h4>
        !          1136:     <tt>sborient</tt>, <tt>type</tt> 
        !          1137:     <h4><a name="77287"></a> Description</h4>
        !          1138:     The <tt>scrollbarbutton</tt> can use its <tt>src</tt> attribute
        !          1139:     to point to an image that should be drawn over it. 
        !          1140:     <hr>
        !          1141:     <h3><a name="77291"></a> scrollbox</h3>
        !          1142:     <p>Box for scrolling content</p>
        !          1143:     <h4><a name="77291"></a> Additional Attributes</h4>
        !          1144:     crop <!--INDEX scrollbox element, XUL -->
        !          1145:     <h4><a name="77291"></a> Description</h4>
        !          1146:     The <tt>scrollbox</tt> is a regular box with scrollbars that
        !          1147:     display automatically when the content inside the box overflows
        !          1148:     the size of the box itself. 
        !          1149:     <h4><a name="77291"></a> See Also</h4>
        !          1150:     <tt>box</tt>, <tt>hbox</tt>, <tt>vbox</tt> 
        !          1151:     <hr>
        !          1152:     <h3><a name="77295"></a> separator</h3>
        !          1153:     <p>Bar between elements</p>
        !          1154:     <h4><a name="77295"></a> Additional Attributes</h4>
        !          1155:     None. 
        !          1156:     <h4><a name="77295"></a> Description</h4>
        !          1157:     The <tt>separator</tt> is a 
        !          1158:     <!--INDEX separator element, XUL --> general-purpose divider.
        !          1159:     In menus, use <tt>menuseparator</tt>. 
        !          1160:     <h4><a name="77295"></a> See Also</h4>
        !          1161:     menuseparator 
        !          1162:     <hr>
        !          1163:     <h3><a name="77299"></a> slider</h3>
        !          1164:     <p>A scrollbar without buttons</p>
        !          1165:     <h4><a name="77299"></a> Additional Attributes</h4>
        !          1166:     <tt>curpos</tt>, <tt>increment</tt>, 
        !          1167:     <!--INDEX slider element, XUL --> <tt>maxpos</tt>,
        !          1168:     <tt>pageincrement</tt> 
        !          1169:     <h4><a name="77299"></a> Description</h4>
        !          1170:     The <tt>slider</tt> element provides simpler user input-a
        !          1171:     <tt>thumb</tt> button and no arrows-for scrolling large
        !          1172:     content. Like <tt>scrollbar</tt>, it uses <tt>curpos</tt> and
        !          1173:     <tt>maxpos</tt> to display its position. 
        !          1174:     <h4><a name="77299"></a> See Also</h4>
        !          1175:     <tt>scrollbar</tt>, <tt>scrollbarbutton</tt> 
        !          1176:     <hr>
        !          1177:     <h3><a name="77302"></a> spacer</h3>
        !          1178:     <p>Blank space separating element</p>
        !          1179:     <h4><a name="77302"></a> Additional Attributes</h4>
        !          1180:     None. <!--INDEX spacer element, XUL -->
        !          1181:     <h4><a name="77302"></a> Description</h4>
        !          1182:     This element is a general-purpose blank space. The use of a
        !          1183:     <tt>spacer</tt> with <tt>flex</tt> to take up available space
        !          1184:     within a <tt>box</tt> and shrink its siblings is a staple of
        !          1185:     the box layout model that XUL uses. 
        !          1186:     <hr>
        !          1187:     <h3><a name="77306"></a> splitter</h3>
        !          1188:     <p>Element for dragging and resizing associated elements</p>
        !          1189:     <h4><a name="77306"></a> Additional Attributes</h4>
        !          1190:     <tt>persist</tt>, <!--INDEX splitter element, XUL --> state 
        !          1191:     <h4><a name="77306"></a> Description</h4>
        !          1192:     Users can drag a <tt>splitter</tt> to resize an associated
        !          1193:     element or panel that holds content and click a
        !          1194:     <tt>splitter</tt> to collapse the specified element within a
        !          1195:     box. To specify which element you manipulate with a
        !          1196:     <tt>splitter</tt>, set this element's <tt>collapse</tt>
        !          1197:     attribute accordingly: <tt>before</tt> to control the element
        !          1198:     before it in the parent; <tt>after</tt> to control the element
        !          1199:     after it. 
        !          1200:     <h4><a name="77306"></a> See Also</h4>
        !          1201:     <tt>grippy</tt>, <tt>toolbar</tt> 
        !          1202:     <hr>
        !          1203:     <h3><a name="77309"></a> stack</h3>
        !          1204:     <p>Shows children one on top of one another, all at the same
        !          1205:     time</p>
        !          1206:     <h4><a name="77309"></a> Description</h4>
        !          1207:     In contrast to the <tt>deck</tt>, <tt>stack</tt> is a
        !          1208:     <tt>box</tt> <!--INDEX stack element, XUL --> that displays all
        !          1209:     of its children at once. You can use a <tt>stack</tt> to
        !          1210:     display elements and blend them together, as when you use
        !          1211:     different stack children as background images and visual
        !          1212:     layers. 
        !          1213:     <h4><a name="77309"></a> See Also</h4>
        !          1214:     <tt>deck</tt>, <tt>box</tt> 
        !          1215:     <hr>
        !          1216:     <h3><a name="77314"></a> statusbar</h3>
        !          1217:     <p>Box container for status elements <a name="77314"></a>
        !          1218:     Contains statusbarpanel <!--INDEX statusbar element, XUL -->
        !          1219:     </p>
        !          1220:     <h4><a name="77314"></a> Additional Attributes</h4>
        !          1221:     None. 
        !          1222:     <h4><a name="77314"></a> Description</h4>
        !          1223:     In Mozilla, the <tt>statusbar</tt> is placed at the bottom of
        !          1224:     the main windows, where it is hooked up to the
        !          1225:     <tt>window.status</tt> property and can be used to display
        !          1226:     status text. It is divided into panels, one of which is the
        !          1227:     <tt>taskbar</tt> where some main component icons are displayed.
        !          1228:     
        !          1229:     <h4><a name="77314"></a> See Also</h4>
        !          1230:     statusbarpanel 
        !          1231:     <hr>
        !          1232:     <h3><a name="77319"></a> statusbarpanel</h3>
        !          1233:     <p>Single unit of a statusbar <a name="77319"></a> Contained by
        !          1234:     statusbar <!--INDEX statusbarpanel element, XUL -->
        !          1235:     </p>
        !          1236:     <h4><a name="77319"></a> Additional Attributes</h4>
        !          1237:     <tt>persist</tt>, <tt>label</tt> 
        !          1238:     <h4><a name="77319"></a> Description</h4>
        !          1239:     <tt>statusbarpanel</tt>s are subdivisions of the
        !          1240:     <tt>statusbar</tt> at the bottom of main browser windows. They
        !          1241:     can contain other content, text using the <tt>label</tt>
        !          1242:     attribute and an image using the <tt>list-style-image</tt> CSS
        !          1243:     style rule. 
        !          1244:     <h4><a name="77319"></a> See Also</h4>
        !          1245:     statusbar 
        !          1246:     <hr>
        !          1247:     <h3><a name="77324"></a> stringbundle</h3>
        !          1248:     <p>Holder of localized properties for use in script <a name=
        !          1249:     "77324"></a> Contained by stringbundleset 
        !          1250:     <!--INDEX stringbundle element, XUL -->
        !          1251:     </p>
        !          1252:     <h4><a name="77324"></a> Additional Attributes</h4>
        !          1253:     src 
        !          1254:     <h4><a name="77324"></a> Description</h4>
        !          1255:     Like the <tt>script</tt> element, <tt>stringbundle</tt> uses
        !          1256:     the <tt>src</tt> attribute to locate a file for use. In this
        !          1257:     case, the files is a string bundle (properties file) that is
        !          1258:     used for holding localizable strings used in the UI. 
        !          1259:     <h4><a name="77324"></a> See Also</h4>
        !          1260:     stringbundleset 
        !          1261:     <hr>
        !          1262:     <h3><a name="77329"></a> stringbundleset</h3>
        !          1263:     <p>Container for stringbundle elements <a name="77329"></a>
        !          1264:     Contains stringbundle 
        !          1265:     <!--INDEX stringbundleset element, XUL -->
        !          1266:     </p>
        !          1267:     <h4><a name="77329"></a> Additional Attributes</h4>
        !          1268:     None. 
        !          1269:     <h4><a name="77329"></a> Description</h4>
        !          1270:     <tt>stringbundleset</tt> is an optional container for groups of
        !          1271:     <tt>stringbundle</tt> elements. Like <tt>commandset</tt> use
        !          1272:     for commands, <tt>stringbundle</tt> organizes sets of related
        !          1273:     <tt>stringbundle</tt>s, particularly when those sets are
        !          1274:     overlaid into the UI. 
        !          1275:     <h4><a name="77329"></a> See Also</h4>
        !          1276:     stringbundle 
        !          1277:     <hr>
        !          1278:     <h3><a name="77334"></a> tab</h3>
        !          1279:     <p>A single selectable tab of a tabbox <a name="77334"></a>
        !          1280:     Contained by tabs</p>
        !          1281:     <h4><a name="77334"></a> Additional Attributes</h4>
        !          1282:     <tt>accesskey</tt>, <!--INDEX tab element, XUL -->
        !          1283:     <tt>crop</tt>, <tt>disabled</tt>, <tt>label</tt>,
        !          1284:     <tt>image</tt> 
        !          1285:     <h4><a name="77334"></a> Description</h4>
        !          1286:     Individual tabs correspond to panels in the <tt>tabbox</tt>. 
        !          1287:     <h4><a name="77334"></a> See Also</h4>
        !          1288:     <tt>tabbox</tt>, <tt>tabpanel</tt>, <tt>tabpanels</tt>,
        !          1289:     <tt>tabs</tt> 
        !          1290:     <hr>
        !          1291:     <h3>tabbox</h3>
        !          1292:     <p>Box container for tab panels Contains <tt>tabs</tt>,
        !          1293:     tabpanels <!--INDEX tabbox element, XUL -->
        !          1294:     </p>
        !          1295:     <h4><a name="77339"></a> Additional Attributes</h4>
        !          1296:     None. 
        !          1297:     <h4><a name="77339"></a> Description</h4>
        !          1298:     <tt>tabbox</tt> is the container in which the tabs and
        !          1299:     tabpanels are defined. It lays out children like a regular box
        !          1300:     to the orientation specified, which defaults to vertical. The
        !          1301:     panels are defined in the <tt>tabpanels</tt> element. 
        !          1302:     <h4><a name="77339"></a> See Also</h4>
        !          1303:     <tt>tab</tt>, <tt>tabpanel</tt>, <tt>tabpanels</tt>,
        !          1304:     <tt>tabs</tt> 
        !          1305:     <hr>
        !          1306:     <h3><a name="77343"></a> tabbrowser</h3>
        !          1307:     <p>Tabbed holder for a set of web content views</p>
        !          1308:     <h4><a name="77343"></a> Additional Attributes</h4>
        !          1309:     <tt>contentcontextmenu</tt>, 
        !          1310:     <!--INDEX tabbrowser element, XUL --> <tt>contenttooltip</tt> 
        !          1311:     <h4><a name="77343"></a> Description</h4>
        !          1312:     <tt>tabbrowser</tt> derives from the <tt>browser</tt> widget.
        !          1313:     Like <tt>browser</tt>, it lets you view HTML pages and other
        !          1314:     content. <tt>tabbrowser</tt> has additional methods on it that
        !          1315:     manage tabbed windows (e.g., <tt>addTab</tt>,
        !          1316:     <tt>enterTabbedMode</tt>). 
        !          1317:     <h4><a name="77343"></a> See Also</h4>
        !          1318:     browser 
        !          1319:     <hr>
        !          1320:     <h3><a name="77349"></a> tabpanel</h3>
        !          1321:     <p>A single panel of a tabbox <a name="77349"></a> Contained by
        !          1322:     tabpanels <!--INDEX tabpanel element, XUL -->
        !          1323:     <a name="77349"></a> Contains XUL content</p>
        !          1324:     <h4><a name="77349"></a> Additional Attributes</h4>
        !          1325:     None. 
        !          1326:     <h4><a name="77349"></a> Description</h4>
        !          1327:     A <tt>tabpanel</tt> is one of the special <tt>box</tt> elements
        !          1328:     that correspond to a particular tab within a <tt>tabbox</tt>.
        !          1329:     It can hold any XUL content to be displayed on a particular tab
        !          1330:     panel. 
        !          1331:     <h4><a name="77349"></a> See Also</h4>
        !          1332:     <tt>tab</tt>, <tt>tabbox</tt>, <tt>tabpanels</tt>,
        !          1333:     <tt>tabs</tt> 
        !          1334:     <hr>
        !          1335:     <h3><a name="77355"></a> tabpanels</h3>
        !          1336:     <p>Container for tabpanel elements <a name="77355"></a>
        !          1337:     Contained by tabbox <!--INDEX tabpanels element, XUL -->
        !          1338:     <a name="77355"></a> Contains <tt>tabpanel</tt>,
        !          1339:     <tt>box</tt></p>
        !          1340:     <h4><a name="77355"></a> Additional Attributes</h4>
        !          1341:     None. 
        !          1342:     <h4><a name="77355"></a> Description</h4>
        !          1343:     The <tt>tabpanels</tt> container corresponds to the
        !          1344:     <tt>tabs</tt> element that holds all individual tabs, and is a
        !          1345:     container for the <tt>tabpanel</tt> associated with that tab.
        !          1346:     This child panel can be either an optional <tt>tabpanel</tt>
        !          1347:     element that holds XUL content, or just the XUL content. 
        !          1348:     <h4><a name="77355"></a> See Also</h4>
        !          1349:     <tt>tab</tt>, <tt>tabbox</tt>, <tt>tabpanel</tt>, <tt>tabs</tt>
        !          1350:     
        !          1351:     <hr>
        !          1352:     <h3><a name="77361"></a> tabs</h3>
        !          1353:     <p>Container for tab elements <a name="77361"></a> Contained by
        !          1354:     tabbox <!--INDEX tabs element, XUL -->
        !          1355:     <a name="77361"></a> Contains tab</p>
        !          1356:     <h4><a name="77361"></a> Additional Attributes</h4>
        !          1357:     None. 
        !          1358:     <h4><a name="77361"></a> Description</h4>
        !          1359:     This element is a required container for individual tabs. 
        !          1360:     <h4><a name="77361"></a> See Also</h4>
        !          1361:     <tt>tab</tt>, <tt>tabbox</tt>, <tt>tabpanel</tt>,
        !          1362:     <tt>tabpanels</tt> 
        !          1363:     <hr>
        !          1364:     <h3><a name="77365"></a> template</h3>
        !          1365:     <p>A high-level widget used to build content dynamically from
        !          1366:     data <a name="77365"></a> Contains rule 
        !          1367:     <!--INDEX template element, XUL -->
        !          1368:     </p>
        !          1369:     <h4><a name="77365"></a> Additional Attributes</h4>
        !          1370:     <tt>xmlns:nc</tt>, <tt>xmlns:chrome</tt> 
        !          1371:     <h4><a name="77365"></a> Description</h4>
        !          1372:     The <tt>template</tt> element has several <tt>rule</tt>
        !          1373:     children, each of which defines rules for matching data in a
        !          1374:     datasource and rendering that data as XUL content. A template
        !          1375:     is defined within the regular XUL content. 
        !          1376:     <hr>
        !          1377:     <h3><a name="77369"></a> textbox</h3>
        !          1378:     <p>Accepts text input from user</p>
        !          1379:     <h4><a name="77369"></a> Additional Attributes</h4>
        !          1380:     <tt>multiline</tt>, <tt><!--INDEX textbox element, XUL -->
        !          1381:     maxlength</tt>, <tt>disabled</tt>, <tt>readonly</tt>,
        !          1382:     <tt>type</tt>, <tt>size</tt> 
        !          1383:     <h4><a name="77369"></a> Description</h4>
        !          1384:     <tt>textbox</tt> is a user-input element. Expand it beyond its
        !          1385:     single-line default by setting <tt>multiline</tt> to
        !          1386:     <tt>true</tt>. You can also disable it, and set its size. 
        !          1387:     <h4><a name="77369"></a> See Also</h4>
        !          1388:     label 
        !          1389:     <hr>
        !          1390:     <h3><a name="77373"></a> thumb</h3>
        !          1391:     <p>Object used to move content in scrollable area</p>
        !          1392:     <h4><a name="77373"></a> Additional Attributes</h4>
        !          1393:     sborient <!--INDEX thumb element, XUL -->
        !          1394:     <h4><a name="77373"></a> Description</h4>
        !          1395:     The <tt>thumb</tt> element appears in the <tt>slider</tt> and
        !          1396:     the <tt>scrollbar</tt>. 
        !          1397:     <h4><a name="77373"></a> See Also</h4>
        !          1398:     <tt>scrollbar</tt>, <tt>scrollbarbutton</tt>, <tt>slider</tt> 
        !          1399:     <hr>
        !          1400:     <h3><a name="77378"></a> toolbar</h3>
        !          1401:     <p>Holder of buttons for quick-access UI functionality <a name=
        !          1402:     "77378"></a> Contains <tt>toolbarbutton</tt>, 
        !          1403:     <!--INDEX toolbar element, XUL -->
        !          1404:     <tt>toolbarseparator</tt></p>
        !          1405:     <h4><a name="77378"></a> Additional Attributes</h4>
        !          1406:     <tt>grippyhidden</tt>, <tt>tborient</tt>, <tt>tbalign</tt>,
        !          1407:     <tt>tbpack</tt> 
        !          1408:     <h4><a name="77378"></a> Description</h4>
        !          1409:     Toolbars usually have horizontal orientation at the top of an
        !          1410:     application window, but this does not have to be the case. You
        !          1411:     can use the <tt>orient</tt> attribute to set it vertically and
        !          1412:     run its content down and not across. While the most common
        !          1413:     content for a toolbar is buttons and menus, it can contain any
        !          1414:     type of content. 
        !          1415:     <h4><a name="77378"></a> See Also</h4>
        !          1416:     <tt>toolbarbutton</tt>, <tt>toolbarseparator</tt>,
        !          1417:     <tt>toolbox</tt> 
        !          1418:     <hr>
        !          1419:     <h3><a name="77383"></a> toolbarbutton</h3>
        !          1420:     <p>Specially adapted button for use in a toolbar <a name=
        !          1421:     "77383"></a> Contained by toolbar 
        !          1422:     <!--INDEX toolbarbutton element, XUL -->
        !          1423:     </p>
        !          1424:     <h4><a name="77383"></a> Additional Attributes</h4>
        !          1425:     <tt>accesskey</tt>, <tt>dir</tt>, <tt>disabled</tt>,
        !          1426:     <tt>dlgType</tt>, <tt>group</tt>, <tt>image</tt>,
        !          1427:     <tt>label</tt>, <tt>orient</tt>, <tt>type</tt>, <tt>value</tt> 
        !          1428:     <h4><a name="77383"></a> Description</h4>
        !          1429:     This is a button designed especially for a toolbar, with
        !          1430:     special stylings for this purpose. The current theme determines
        !          1431:     a <tt>toolbarbutton</tt>'s look. See <i>toolbar.css</i> in the
        !          1432:     theme JARs to view styles and bindings for this common button. 
        !          1433:     <h4><a name="77383"></a> See Also</h4>
        !          1434:     <tt>toolbar</tt>, <tt>toolbarseparator</tt>, <tt>toolbox</tt> 
        !          1435:     <hr>
        !          1436:     <h3><a name="77388"></a> toolbarseparator</h3>
        !          1437:     <p>Visible separator for elements contained in a toolbar <a
        !          1438:     name="77388"></a> Contained by toolbar 
        !          1439:     <!--INDEX toolbarseparator element, XUL -->
        !          1440:     </p>
        !          1441:     <h4><a name="77388"></a> Additional Attributes</h4>
        !          1442:     None. 
        !          1443:     <h4><a name="77388"></a> Description</h4>
        !          1444:     Like the <tt>menuseparator</tt> in a <tt>menu</tt>,
        !          1445:     <tt>toolbarseparator</tt> divides elements in a
        !          1446:     <tt>toolbar</tt>. 
        !          1447:     <h4><a name="77388"></a> See Also</h4>
        !          1448:     <tt>toolbar</tt>, <tt>toolbarbutton</tt>, <tt>toolbox</tt> 
        !          1449:     <hr>
        !          1450:     <h3><a name="77393"></a> toolbox</h3>
        !          1451:     <p>Optional container for menu bars and toolbars <a name=
        !          1452:     "77393"></a> Contains <tt>menubar</tt>, 
        !          1453:     <!--INDEX toolbox element, XUL --> <tt>toolbar</tt></p>
        !          1454:     <h4><a name="77393"></a> Additional Attributes</h4>
        !          1455:     None. 
        !          1456:     <h4><a name="77393"></a> Description</h4>
        !          1457:     <tt>toolbox</tt> can organize several toolbars into one parent
        !          1458:     element. <tt>toolbox</tt> inherits from <tt>box</tt>, so you
        !          1459:     can use box layout attributes to control the positioning and
        !          1460:     layout of toolbars within. 
        !          1461:     <h4><a name="77393"></a> See Also</h4>
        !          1462:     <tt>menubar</tt>, <tt>toolbar</tt> 
        !          1463:     <hr>
        !          1464:     <h3><a name="77396"></a> tooltip</h3>
        !          1465:     <p>Pop-up window for context-sensitive help</p>
        !          1466:     <h4><a name="77396"></a> Additional Attributes</h4>
        !          1467:     <tt>noautohide</tt>, <!--INDEX tooltip element, XUL -->
        !          1468:     <tt>onpopupshowing</tt>, <tt>onpopuphiding</tt>,
        !          1469:     <tt>position</tt> 
        !          1470:     <h4><a name="77396"></a> Description</h4>
        !          1471:     The <tt>tooltip</tt> element defines text to be displayed. It
        !          1472:     is associated by <tt>ID</tt> with elements that want to use its
        !          1473:     content in the pop ups they display. However, elements can also
        !          1474:     use the <tt>tooltip</tt> attribute to display a tooltip more
        !          1475:     directly for themselves. 
        !          1476:     <hr>
        !          1477:     <h3><a name="77401"></a> tree</h3>
        !          1478:     <p>Hierarchical holder of information represented as rows <a
        !          1479:     name="77401"></a> Contains <tt>treecols</tt>,
        !          1480:     <tt>treechildren</tt></p>
        !          1481:     <h4><a name="77401"></a> Additional Attributes</h4>
        !          1482:     <tt>multiple</tt>, <!--INDEX tree element, XUL -->
        !          1483:     <tt>datasources</tt>, <tt>enableColumnDrag</tt>,
        !          1484:     <tt>containment</tt>, <tt>sortResource</tt>,
        !          1485:     <tt>sortDirection</tt>, <tt>border</tt>, <tt>seltype</tt>,
        !          1486:     <tt>sortActive</tt>, <tt>flags, context</tt>, <tt>persist</tt>,
        !          1487:     <tt>hidecolumnpicker</tt> 
        !          1488:     <h4><a name="77401"></a> Description</h4>
        !          1489:     The <tt>tree</tt> element is a high-level widget that displays
        !          1490:     tabular data. More complex than <tt>listbox</tt>, <tt>tree</tt>
        !          1491:     allows you to define nested content, different views, and data
        !          1492:     display, and provides methods that sort and manipulate its
        !          1493:     contents. 
        !          1494:     <h4><a name="77401"></a> See Also</h4>
        !          1495:     <tt>treecell</tt>, <tt>treechildren</tt>, <tt>treecol</tt>,
        !          1496:     <tt>treecols</tt>, <tt>treeitem</tt>, <tt>treerow</tt> 
        !          1497:     <hr>
        !          1498:     <h3><a name="77406"></a> treecell</h3>
        !          1499:     <p>A single cell in a tree <a name="77406"></a> Contained by
        !          1500:     treerow</p>
        !          1501:     <h4><a name="77406"></a> Additional Attributes</h4>
        !          1502:     <tt>src</tt>, <tt>indent</tt>, 
        !          1503:     <!--INDEX treecell element, XUL --> <tt>observes</tt>,
        !          1504:     <tt>url</tt>, <tt>value</tt>, <tt>label</tt>, <tt>sortActive,
        !          1505:     sortDirection</tt>, <tt>tag</tt>, <tt>mode</tt>,
        !          1506:     <tt>resource</tt>, <tt>allowevents</tt>, <tt>properties</tt> 
        !          1507:     <h4><a name="77406"></a> Description</h4>
        !          1508:     The <tt>treecell</tt> contains the actual content to be
        !          1509:     displayed in a tree. That content can be in the form of a value
        !          1510:     for the <tt>label</tt> attribute. It can also be content in the
        !          1511:     <tt>treecell</tt>'s start and end tags (e.g.,
        !          1512:     <tt>&lt;treecell&gt;data&lt;/treecell&gt;</tt>). 
        !          1513:     <h4><a name="77406"></a> See Also</h4>
        !          1514:     tree, treechildren, treecol, treecols, treeitem, treerow 
        !          1515:     <hr>
        !          1516:     <h3><a name="77412"></a> treechildren</h3>
        !          1517:     <p>The main body of a tree; a container for treeitems <a name=
        !          1518:     "77412"></a> Contains treeitem 
        !          1519:     <!--INDEX treechildren element, XUL -->
        !          1520:     <a name="77412"></a> Contained by tree</p>
        !          1521:     <h4><a name="77412"></a> Additional Attributes</h4>
        !          1522:     open 
        !          1523:     <h4><a name="77412"></a> Description</h4>
        !          1524:     The <tt>treechildren</tt> element defines the subset of the
        !          1525:     <tt>tree</tt> where the content is actually contained (in
        !          1526:     contrast to <tt>treecols</tt>, which defines aspects of the
        !          1527:     layout). 
        !          1528:     <h4><a name="77412"></a> See Also</h4>
        !          1529:     <tt>tree</tt>, <tt>treecell</tt>, <tt>treecol</tt>,
        !          1530:     <tt>treecols</tt>, <tt>treeitem</tt>, <tt>treerow</tt> 
        !          1531:     <hr>
        !          1532:     <h3><a name="77417"></a> treecol</h3>
        !          1533:     <p>A single column of a tree <a name="77417"></a> Contained by
        !          1534:     treecols <!--INDEX treecol element, XUL -->
        !          1535:     </p>
        !          1536:     <h4><a name="77417"></a> Additional Attributes</h4>
        !          1537:     <tt>sort</tt>, <tt>resource</tt>, <tt>primary</tt>,
        !          1538:     <tt>sortSeparators</tt>, <tt>label</tt>, <tt>sortActive</tt>,
        !          1539:     <tt>sortDirection</tt>, <tt>hideheader</tt>,
        !          1540:     <tt>accesskey</tt>, <tt>type</tt> 
        !          1541:     <h4><a name="77417"></a> Description</h4>
        !          1542:     The <tt>treecol</tt> typically does not contain content.
        !          1543:     Instead, it defines the header for the columns whose contents
        !          1544:     are defined in the <tt>treerow</tt>s. 
        !          1545:     <h4><a name="77417"></a> See Also</h4>
        !          1546:     <tt>tree</tt>, <tt>treecell</tt>, <tt>treechildren</tt>,
        !          1547:     <tt>treecols</tt>, <tt>treeitem</tt>, <tt>treerow</tt> 
        !          1548:     <hr>
        !          1549:     <h3><a name="77423"></a> treecols</h3>
        !          1550:     <p>Container for tree columns <a name="77423"></a> Contained by
        !          1551:     tree <a name="77423"></a> Contains treecol</p>
        !          1552:     <h4><a name="77423"></a> Additional Attributes</h4>
        !          1553:     None. 
        !          1554:     <h4><a name="77423"></a> Description</h4>
        !          1555:     This element is a container for a group of <tt>treecol</tt>
        !          1556:     elements, or columns, in a tree. A tree should have only one
        !          1557:     <tt>treecols</tt>. 
        !          1558:     <h4><a name="77423"></a> See Also</h4>
        !          1559:     <tt>tree</tt>, <tt>treecell</tt>, <tt>treechildren</tt>,
        !          1560:     <tt>treecol</tt>, <tt>treeitem</tt>, <tt>treerow</tt> 
        !          1561:     <hr>
        !          1562:     <h3><a name="77429"></a> treeitem</h3>
        !          1563:     <p>A treerow container <a name="77429"></a> Contained by
        !          1564:     treechildren <!--INDEX treeitem element, XUL -->
        !          1565:     <a name="77429"></a> Contains treerow</p>
        !          1566:     <h4><a name="77429"></a> Additional Attributes</h4>
        !          1567:     <tt>rdf:type</tt>, <tt>container</tt>, <tt>open</tt> 
        !          1568:     <h4><a name="77429"></a> Description</h4>
        !          1569:     The <tt>treeitem</tt> element is a container for a
        !          1570:     <tt>treerow</tt>, and makes <tt>treerow</tt> a selectable
        !          1571:     element within the <tt>tree</tt>. 
        !          1572:     <h4><a name="77429"></a> See Also</h4>
        !          1573:     <tt>tree</tt>, <tt>treecell</tt>, <tt>treechildren</tt>,
        !          1574:     <tt>treecol</tt>, <tt>treecols</tt>, <tt>treerow</tt> 
        !          1575:     <hr>
        !          1576:     <h3><a name="77435"></a> treerow</h3>
        !          1577:     <p>A single row of a tree <a name="77435"></a> Contained by
        !          1578:     treeitem <!--INDEX treerow element, XUL -->
        !          1579:     <a name="77435"></a> Contains treecell</p>
        !          1580:     <h4><a name="77435"></a> Additional Attributes</h4>
        !          1581:     properties 
        !          1582:     <h4><a name="77435"></a> Description</h4>
        !          1583:     Contained within a <tt>treeitem</tt>, this element represents a
        !          1584:     single row of a tree. 
        !          1585:     <h4><a name="77435"></a> See Also</h4>
        !          1586:     <tt>tree</tt>, <tt>treecell</tt>, <tt>treechildren</tt>,
        !          1587:     <tt>treecol</tt>, <tt>treecols</tt>, <tt>treeitem</tt> 
        !          1588:     <hr>
        !          1589:     <h3><a name="77439"></a> triple</h3>
        !          1590:     <p>Substructure of a template that matches RDF statements in
        !          1591:     the data</p>
        !          1592:     <h4><a name="77439"></a> Additional Attributes</h4>
        !          1593:     <tt>predicate</tt>, <!--INDEX triple element, XUL -->
        !          1594:     <tt>object</tt>, <tt>subject</tt> 
        !          1595:     <h4><a name="77439"></a> Description</h4>
        !          1596:     The children of <tt>triple-predicate</tt>, <tt>object</tt>, and
        !          1597:     <tt>subject-</tt>match RDF statements that appear in the data
        !          1598:     processed in the template. 
        !          1599:     <h4><a name="77439"></a> See Also</h4>
        !          1600:     <tt>template</tt>, <tt>member</tt>, <tt>content</tt>,
        !          1601:     <tt>conditions</tt> 
        !          1602:     <hr>
        !          1603:     <h3><a name="77442"></a> vbox</h3>
        !          1604:     <p>Box container with vertically laid out children</p>
        !          1605:     <h4><a name="77442"></a> Additional Attributes</h4>
        !          1606:     None. 
        !          1607:     <h4><a name="77442"></a> See Also</h4>
        !          1608:     <tt>box</tt>, <!--INDEX vbox element, XUL --> hbox 
        !          1609:     <hr>
        !          1610:     <h3><a name="77446"></a> window</h3>
        !          1611:     <p>Root element of a top-level XUL window document</p>
        !          1612:     <h4><a name="77446"></a> Additional Attributes</h4>
        !          1613:     <tt>windowtype</tt>, <tt><!--INDEX window element, XUL -->
        !          1614:     xmlns:rdf</tt>, <tt>xmlns:web</tt>, <tt>titlepreface</tt>,
        !          1615:     <tt>onload</tt>, <tt>onunload</tt>, <tt>xmlns</tt>,
        !          1616:     <tt>titlemodifier</tt>, <tt>xmlns:html</tt>, <tt>title</tt>,
        !          1617:     <tt>onclose</tt>, <tt>titlemenuseparator</tt>,
        !          1618:     <tt>contenttitlesetting</tt>, <tt>y</tt>, <tt>x</tt>,
        !          1619:     <tt>screenY</tt>, <tt>screenX</tt> 
        !          1620:     <h4><a name="77446"></a> Description</h4>
        !          1621:     The <tt>window</tt> is an XUL document's basic root element.
        !          1622:     The contents of a XUL document, including the <tt>script</tt>
        !          1623:     elements, commands, keys, and broadcasters, appear as children
        !          1624:     of the window. Overlays, the XML and stylesheet-processing
        !          1625:     instructions, and the <tt>DOCTYPE</tt> declaration appear
        !          1626:     before and outside a document's root element. The window should
        !          1627:     have a unique ID and use minimally, the XUL namespace to
        !          1628:     identify markup elements as XUL: <tt>xmlns="<a href=
        !          1629:     "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
        !          1630:     http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul</a>"</tt>.
        !          1631:     
        !          1632:     <h4><a name="77446"></a> See Also</h4>
        !          1633:     <tt>overlay</tt>, <tt>page</tt> 
        !          1634:     <hr>
        !          1635:     <h3><a name="77451"></a> wizard</h3>
        !          1636:     <p>Window used to step though a task <a name="77451"></a>
        !          1637:     Contains wizardpage</p>
        !          1638:     <h4><a name="77451"></a> Additional Attributes</h4>
        !          1639:     <tt>onwizardaccept</tt>, <tt>onwizardcancel</tt>,
        !          1640:     <tt>xmlns</tt>, <tt>onwizardfinish</tt>, <tt>xmlns:nc</tt> 
        !          1641:     <h4><a name="77451"></a> Description</h4>
        !          1642:     Like <tt>dialog</tt>, <tt>wizard</tt> is a specialized version
        !          1643:     of the <tt>window</tt> root element. It easily creates
        !          1644:     multistep dialog windows that help users set up accounts,
        !          1645:     password data, and other customizable information. A
        !          1646:     <tt>wizard</tt> contains one or more <tt>wizardpage</tt>s. 
        !          1647:     <h4><a name="77451"></a> See Also</h4>
        !          1648:     <tt>wizardpage</tt>, <tt>window</tt>, <tt>dialog</tt> 
        !          1649:     <hr>
        !          1650:     <h3><a name="77456"></a> wizardpage</h3>
        !          1651:     <p>A single panel (step) of a wizard <a name="77456"></a>
        !          1652:     Contained by wizard</p>
        !          1653:     <h4><a name="77456"></a> Additional Attributes</h4>
        !          1654:     <tt>label</tt>, <tt>pageid</tt>, <tt>onpageadvanced</tt>,
        !          1655:     <tt>onpageshow</tt>, <tt>onpagecancel</tt> 
        !          1656:     <h4><a name="77456"></a> Description</h4>
        !          1657:     The <tt>wizardpage</tt> can contain 
        !          1658:     <!--INDEX wizardpage element, XUL --> arbitrary XUL content.
        !          1659:     One or more wizardpages are defined in a <tt>wizard</tt>
        !          1660:     window. The intrinsic functionality of a wizard window allows
        !          1661:     you to step through <tt>wizardpage</tt>s by setting the
        !          1662:     <tt>onpageshow</tt> and <tt>onpagecancel</tt> event handlers on
        !          1663:     individual pages and using the <tt>onwizardaccept</tt> and
        !          1664:     <tt>onwizardcancel</tt> event handlers on 
        !          1665:     <!--INDEX ENDRANGE==XUL element set --> the 
        !          1666:     <!--INDEX ENDRANGE==elements:XUL element set -->
        !          1667:     <tt>wizard</tt> parent element. 
        !          1668:     <h4><a name="77456"></a> See Also</h4>
        !          1669:     <tt>wizard</tt>, <tt>window</tt>, <tt>dialog</tt> 
        !          1670:     <h2><a name="77457"></a> XBL Element Set</h2>
        !          1671:     <p>The XBL 1.0 specification published on the 
        !          1672:     <!--INDEX STARTRANGE==XBL element set;elements:XBL element set -->
        !          1673:     mozilla.org web site appeared to be a beacon for application
        !          1674:     developers. Because the specification was available early in
        !          1675:     the development process, XBL seemed to be a tighter, more
        !          1676:     comprehensible language that was easier to learn and master
        !          1677:     than XUL. Since then, XBL development has strayed from the
        !          1678:     specification quite a bit, however, and now people consider XBL
        !          1679:     as opaque as XUL without good documentation that helps people
        !          1680:     learn and to create a roadmap for use based on continuing
        !          1681:     development.</p>
        !          1682:     <p>This reference section tries to capture basic elements and
        !          1683:     attributes in XBL. Because it binds rather than creates
        !          1684:     content, XBL is smaller and inherently more formal than XUL.
        !          1685:     Nonetheless, as you will see, the language has quite a bit of
        !          1686:     range and complexity. Each entry in this section describes the
        !          1687:     XBL element and its purpose, its position in the hierarchy
        !          1688:     (i.e., which elements it contains and which elements it is
        !          1689:     contained by), and lists the element's attributes. <a href=
        !          1690:     "ch07.html#77027">Chapter 7</a> introduces XBL and shows how to
        !          1691:     use it. However, once you are familiar with the basics of XBL,
        !          1692:     you can consult this reference to find the XBL items you
        !          1693:     want.</p>
        !          1694:     <hr>
        !          1695:     <h3><a name="77463"></a> binding</h3>
        !          1696:     <p>A single XBL binding <a name="77463"></a> Contains
        !          1697:     <tt>content</tt>, <tt>implementation</tt>, 
        !          1698:     <!--INDEX binding element, XBL --> handlers <a name=
        !          1699:     "77463"></a> Contained by bindings <a name="77463"></a>
        !          1700:     Attributes <tt>id</tt>, <tt>extends</tt>, <tt>display</tt>,
        !          1701:     <tt>applyauthorstyles</tt>, <tt>styleexplicitcontent</tt></p>
        !          1702:     <h4><a name="77463"></a> Description</h4>
        !          1703:     This element defines a single XBL binding that can be attached
        !          1704:     to a bound document. It enables the creation of self-contained
        !          1705:     widgets that can contain content, implementation, and handlers.
        !          1706:     This element must have an <tt>id</tt> attribute value; this
        !          1707:     value is how it is associated-either through a CSS style rule
        !          1708:     or a DOM method-to the bound element that acts a placeholder
        !          1709:     for the binding that is filled out during attachment. The
        !          1710:     <tt>extends</tt> attribute inherits from a XUL element or
        !          1711:     another binding. 
        !          1712:     <h4><a name="77463"></a> See Also</h4>
        !          1713:     bindings 
        !          1714:     <hr>
        !          1715:     <h3><a name="77468"></a> bindings</h3>
        !          1716:     <p>An XBL document's root element <a name="77468"></a> Contains
        !          1717:     <tt>binding</tt>, <tt>resources</tt>, 
        !          1718:     <!--INDEX bindings element, XBL --> stylesheet <a name=
        !          1719:     "77468"></a> Attributes <tt>id</tt>, <tt>type</tt></p>
        !          1720:     <h4><a name="77468"></a> Description</h4>
        !          1721:     This root container can hold one or more bindings, represented
        !          1722:     by the <tt>&lt;binding&gt;</tt> markup. The Mozilla code base
        !          1723:     references an XBL document through its name, which has an
        !          1724:     <i>.xml</i> extension. The document <tt>id</tt> has to be
        !          1725:     unique. The other children of <tt>&lt;bindings&gt;</tt> are
        !          1726:     <tt>&lt;resources&gt;</tt> and <tt>&lt;stylesheet&gt;</tt>,
        !          1727:     which contain style and image information to be used by the
        !          1728:     document's bindings. 
        !          1729:     <h4><a name="77468"></a> See Also</h4>
        !          1730:     binding 
        !          1731:     <hr>
        !          1732:     <h3><a name="77473"></a> body</h3>
        !          1733:     <p>Container for JavaScript code to be executed by an XBL
        !          1734:     method <a name="77473"></a> Contained by method 
        !          1735:     <!--INDEX body element, XBL -->
        !          1736:     <a name="77473"></a> Attributes id</p>
        !          1737:     <h4><a name="77473"></a> Description</h4>
        !          1738:     This element is designed as a holder for the method's script.
        !          1739:     It defines a logical block and differentiates the script from
        !          1740:     the parameter element, which also lies within the method.
        !          1741:     Script contained in a method has to be in a body element, which
        !          1742:     in turn should contain a CDATA section. &lt;![CDATA[...]]&gt;
        !          1743:     escapes JavaScript characters like quotes and slashes that may
        !          1744:     otherwise conflict with the XML parser. 
        !          1745:     <h4><a name="77473"></a> See Also</h4>
        !          1746:     method 
        !          1747:     <hr>
        !          1748:     <h3><a name="77477"></a> children</h3>
        !          1749:     <p>Insertion point for children of a bound element, or
        !          1750:     inherited binding <a name="77477"></a> Contained by content 
        !          1751:     <!--INDEX children element, XBL -->
        !          1752:     <a name="77477"></a> Attributes <tt>id</tt>, <tt>includes</tt>,
        !          1753:     <tt>type</tt></p>
        !          1754:     <h4><a name="77477"></a> Description</h4>
        !          1755:     This element needs to be placed in the binding content at the
        !          1756:     point where you want to place children of the bound element
        !          1757:     when the binding is rendered. If the children tag contains its
        !          1758:     own elements, then that element will be default content. If the
        !          1759:     element the binding attaches to contains children, the default
        !          1760:     content is ignored. 
        !          1761:     <hr>
        !          1762:     <h3><a name="77482"></a> constructor</h3>
        !          1763:     <p>Container for code to be executed when a binding is created
        !          1764:     <a name="77482"></a> Contained by implementation 
        !          1765:     <!--INDEX constructor element, XBL -->
        !          1766:     <a name="77482"></a> Attributes <tt>action</tt>,
        !          1767:     <tt>class</tt>, <tt>id</tt></p>
        !          1768:     <h4><a name="77482"></a> Description</h4>
        !          1769:     This behavior element is contained in the
        !          1770:     <tt>implementation</tt> element and holds code that will be
        !          1771:     carried out when the binding attachment first takes place. If
        !          1772:     you picture a binding as an object, your vision is
        !          1773:     initialization code. The code can alternatively be contained as
        !          1774:     the <tt>action</tt> attribute's value. 
        !          1775:     <h4><a name="77482"></a> See Also</h4>
        !          1776:     destructor 
        !          1777:     <hr>
        !          1778:     <h3><a name="77487"></a> content</h3>
        !          1779:     <p>Container for anonymous content to be inserted into a bound
        !          1780:     document <a name="77487"></a> Contains <tt>children</tt>; any
        !          1781:     markup <!--INDEX content element, XBL --> content <a name=
        !          1782:     "77487"></a> Contained by binding <a name="77487"></a>
        !          1783:     Attributes id</p>
        !          1784:     <h4><a name="77487"></a> Description</h4>
        !          1785:     This container for the anonymous binding content is placed at
        !          1786:     the point where the element using it is in the bound document.
        !          1787:     <tt>children</tt> is the only XBL element allowed as a child of
        !          1788:     <tt>content</tt>. All other content is either HTML or XUL,
        !          1789:     depending on the context in which you use the binding. 
        !          1790:     <hr>
        !          1791:     <h3><a name="77492"></a> destructor</h3>
        !          1792:     <p>Container for code to be executed when a binding is
        !          1793:     destroyed <a name="77492"></a> Contained by implementation 
        !          1794:     <!--INDEX destructor element, XBL -->
        !          1795:     <a name="77492"></a> Attributes <tt>action</tt>,
        !          1796:     <tt>class</tt>, <tt>id</tt></p>
        !          1797:     <h4><a name="77492"></a> Description</h4>
        !          1798:     Contained in the binding's <tt>implementation</tt>, this
        !          1799:     element carries out code placed within it when the binding is
        !          1800:     detached or destroyed. This detachment and destruction occurs
        !          1801:     when the bound element matches a different style rule, the
        !          1802:     bound element is removed from the document, or the document is
        !          1803:     closed or destroyed. The code can alternatively be a value of
        !          1804:     the <tt>action</tt> attribute. 
        !          1805:     <h4><a name="77492"></a> See Also</h4>
        !          1806:     constructor 
        !          1807:     <hr>
        !          1808:     <h3><a name="77497"></a> element</h3>
        !          1809:     <p>Insertion point for bound elements in anonymous content <a
        !          1810:     name="77497"></a> Contained by content <a name="77497"></a>
        !          1811:     Attributes id</p>
        !          1812:     <h4><a name="77497"></a> Description</h4>
        !          1813:     This element allows placement of a 
        !          1814:     <!--INDEX element element, XBL --> bound element at a point in
        !          1815:     the anonymous content (other than the top level that is the
        !          1816:     default for it). To use it, place it at the point in the
        !          1817:     binding content where you want the bound element to be
        !          1818:     rendered. This element is part of the XBL 1.0 specification,
        !          1819:     but is not yet implemented. 
        !          1820:     <h4><a name="77497"></a> See Also</h4>
        !          1821:     content 
        !          1822:     <hr>
        !          1823:     <h3><a name="77502"></a> field</h3>
        !          1824:     <p>Holder property for simple data <a name="77502"></a>
        !          1825:     Contained by implementation <!--INDEX field element, XBL -->
        !          1826:     <a name="77502"></a> Attributes <tt>class</tt>, <tt>id</tt>
        !          1827:     <tt>name</tt>, <tt>readonly</tt></p>
        !          1828:     <h4><a name="77502"></a> Description</h4>
        !          1829:     This element is a simple data holder and an alternative to a
        !          1830:     <tt>property</tt>. It differs from <tt>property</tt> because it
        !          1831:     does not use a <tt>getter</tt> or <tt>setter</tt>. It is useful
        !          1832:     for holding static/constant values for use elsewhere in the
        !          1833:     binding. 
        !          1834:     <h4><a name="77502"></a> See Also</h4>
        !          1835:     <tt>implementation</tt>, <tt>property</tt> 
        !          1836:     <hr>
        !          1837:     <h3><a name="77507"></a> getter</h3>
        !          1838:     <p>Script access point for an element's property <a name=
        !          1839:     "77507"></a> Contained by property <a name="77507"></a>
        !          1840:     Attributes <tt>id</tt>, <tt>type</tt></p>
        !          1841:     <h4><a name="77507"></a> Description</h4>
        !          1842:     This element executes script when the <tt>property</tt> it is
        !          1843:     attached to is accessed. This is most commonly used to return
        !          1844:     the value of the property. 
        !          1845:     <h4><a name="77507"></a> See Also</h4>
        !          1846:     <tt>property</tt>, <tt>setter</tt> 
        !          1847:     <hr>
        !          1848:     <h3><a name="77512"></a> handler</h3>
        !          1849:     <p>Single event handler for an XBL element <a name="77512"></a>
        !          1850:     Contained by handlers <a name="77512"></a> Attributes
        !          1851:     <tt>id</tt>, <tt>event</tt>, <tt>action</tt>, <tt>phase</tt>,
        !          1852:     <tt>attachto</tt>, <tt>button</tt>, <tt>modifiers</tt>,
        !          1853:     <tt>keycode</tt>, <tt>charcode</tt>, <tt>type</tt></p>
        !          1854:     <h4><a name="77512"></a> Description</h4>
        !          1855:     This element defines an <!--INDEX handler element, XBL -->
        !          1856:     event handler on a binding that reacts to a mouse movement or
        !          1857:     keyboard press on the binding. Some executed code is contained
        !          1858:     in the handler. This code can go directly under the element or
        !          1859:     in the <tt>action</tt> attribute. The <tt>attachto</tt>
        !          1860:     attribute determines where the event is received-in the
        !          1861:     element, document, or window. The default receiver is the bound
        !          1862:     element. The <tt>phase</tt> attribute has three possible
        !          1863:     values-capturing, bubbling, and target-that determine which
        !          1864:     part of the event flow and default is bubbling The
        !          1865:     <tt>button</tt>, <tt>charcode</tt>, <tt>keycode</tt>, and
        !          1866:     <tt>modifiers</tt> attributes act as filters. For example, the
        !          1867:     value of <tt>button</tt> must match the label of the button
        !          1868:     that triggers the event. The section "Event Attributes," later
        !          1869:     in this chapter, contains a complete list of events. 
        !          1870:     <h4><a name="77512"></a> See Also</h4>
        !          1871:     handlers 
        !          1872:     <hr>
        !          1873:     <h3><a name="77518"></a> handlers</h3>
        !          1874:     <p>Container for event-handler elements <a name="77518"></a>
        !          1875:     Contains handler <!--INDEX handlers element, XBL -->
        !          1876:     <a name="77518"></a> Contained by binding <a name="77518"></a>
        !          1877:     Attributes <tt>id</tt>, <tt>type</tt></p>
        !          1878:     <h4><a name="77518"></a> Description</h4>
        !          1879:     This element is placed under the binding element and contains
        !          1880:     the event handlers used by that binding. 
        !          1881:     <h4><a name="77518"></a> See Also</h4>
        !          1882:     handler 
        !          1883:     <hr>
        !          1884:     <h3><a name="77523"></a> image</h3>
        !          1885:     <p>An image resource in a binding <a name="77523"></a>
        !          1886:     Contained by resources <a name="77523"></a> Attributes
        !          1887:     <tt>class</tt>,<tt>id</tt>, <tt>src</tt></p>
        !          1888:     <h4><a name="77523"></a> Description</h4>
        !          1889:     This element preloads images; all included image resources are
        !          1890:     loaded when the binding is used. 
        !          1891:     <h4><a name="77523"></a> See Also</h4>
        !          1892:     <tt>resources</tt>, <tt>stylesheet</tt> 
        !          1893:     <hr>
        !          1894:     <h3><a name="77529"></a> implementation</h3>
        !          1895:     <p>Container for binding methods and properties <a name=
        !          1896:     "77529"></a> Contains <tt>method</tt>, 
        !          1897:     <!--INDEX implementation element, XBL --> property <a name=
        !          1898:     "77529"></a> Contained by binding <a name="77529"></a>
        !          1899:     Attributes <tt>id</tt>, <tt>name</tt>, <tt>implements</tt>,
        !          1900:     <tt>type</tt></p>
        !          1901:     <h4><a name="77529"></a> Description</h4>
        !          1902:     This element holds a binding's <tt>&lt;method&gt;</tt> and
        !          1903:     <tt>&lt;property&gt;</tt> elements that, as a whole, make up a
        !          1904:     binding's behavior. The optional <tt>implements</tt> attribute
        !          1905:     can hold a list of comma-separated XPCOM interfaces that are
        !          1906:     used by the implementation's methods and properties. The
        !          1907:     optional <tt>type</tt> attribute represents the scripting
        !          1908:     language to be used. This attribute defaults to JavaScript, the
        !          1909:     only implemented language that scripts Mozilla's XPFE. 
        !          1910: <pre>
        !          1911: &lt;implementation type="application/x-javascript" implements="nsIAccessibleProvider"&gt;
1.1       david    1912: ...
1.7     ! petejc   1913: &lt;/implementation&gt;
        !          1914: </pre>
        !          1915:     <h4><a name="77529"></a> See Also</h4>
        !          1916:     <tt>binding</tt>, <tt>method</tt>, <tt>property</tt> 
        !          1917:     <hr>
        !          1918:     <h3><a name="77535"></a> method</h3>
        !          1919:     <p>Script function to be accessed on a binding object <a name=
        !          1920:     "77535"></a> Contains <tt>body</tt>, 
        !          1921:     <!--INDEX method element, XBL --> parameter <a name=
        !          1922:     "77535"></a> Contained by implementation <a name="77535"></a>
        !          1923:     Attributes <tt>id</tt>, <tt>name</tt>, <tt>type</tt></p>
        !          1924:     <h4><a name="77535"></a> Description</h4>
        !          1925:     This element supplies a single function to the bound element or
        !          1926:     binding object. The most important attribute is <tt>name</tt>,
        !          1927:     which calls the method and is compulsory. The method can have
        !          1928:     the <tt>&lt;parameter&gt;</tt> element define parameters. A
        !          1929:     <tt>&lt;body&gt;</tt> element contains the code that will be
        !          1930:     executed. 
        !          1931:     <h4><a name="77535"></a> See Also</h4>
        !          1932:     <tt>body</tt>, <tt>implementation</tt>, <tt>parameter</tt> 
        !          1933:     <hr>
        !          1934:     <h3><a name="77540"></a> parameter</h3>
        !          1935:     <p>Single paramter declaration for a method <a name=
        !          1936:     "77540"></a> Contained by method <a name="77540"></a>
        !          1937:     Attributes <tt>id</tt>, <tt>name</tt></p>
        !          1938:     <h4><a name="77540"></a> Description</h4>
        !          1939:     Each <tt>&lt;parameter&gt;</tt> element 
        !          1940:     <!--INDEX parameter element, XBL --> lists a single parameter
        !          1941:     for a method. The <tt>name</tt> attribute is compulsory and is
        !          1942:     used by the method code to access the parameter's value. 
        !          1943:     <h4><a name="77540"></a> See Also</h4>
        !          1944:     method 
        !          1945:     <hr>
        !          1946:     <h3><a name="77546"></a> property</h3>
        !          1947:     <p>Definition of a single binding object property <a name=
        !          1948:     "77546"></a> Contains <tt>getter</tt>, 
        !          1949:     <!--INDEX property element, XBL --> <tt>setter</tt> <a name=
        !          1950:     "77546"></a> Contained by implementation <a name="77546"></a>
        !          1951:     Attributes <tt>id</tt>, <tt>name</tt>, <tt>readonly</tt>,
        !          1952:     <tt>onget</tt>, <tt>onset</tt>, <tt>element</tt>,
        !          1953:     <tt>attribute</tt>, <tt>property</tt>, <tt>type</tt></p>
        !          1954:     <h4><a name="77546"></a> Description</h4>
        !          1955:     This element defines a bound element's or binding object's
        !          1956:     property. The name attribute is compulsory because it accesses
        !          1957:     the property. <tt>&lt;getter&gt;</tt> and
        !          1958:     <tt>&lt;setter&gt;</tt> child elements are optional and get and
        !          1959:     set the property value, respectively. The <tt>onget</tt> and
        !          1960:     <tt>onset</tt> attributes are alternatives. The
        !          1961:     <tt>element</tt> attribute is a reference to the anonymous
        !          1962:     content's node <tt>id</tt>. When the property is set, it is
        !          1963:     also set on that node. The property can be set to
        !          1964:     <tt>readonly</tt>. 
        !          1965:     <h4><a name="77546"></a> See Also</h4>
        !          1966:     <tt>field</tt>, <tt>getter</tt>, <tt>setter</tt> 
        !          1967:     <hr>
        !          1968:     <h3><a name="77551"></a> resources</h3>
        !          1969:     <p>Container for list of resources that can be used by a
        !          1970:     binding <a name="77551"></a> Contains <tt>image</tt>, 
        !          1971:     <!--INDEX resources element, XBL --> stylesheet <a name=
        !          1972:     "77551"></a> Contained by binding</p>
        !          1973:     <h4><a name="77551"></a> Description</h4>
        !          1974:     Along with <tt>&lt;content&gt;</tt>,
        !          1975:     <tt>&lt;implementation&gt;</tt>, and <tt>&lt;handlers&gt;</tt>,
        !          1976:     this element is one of the binding element's top-level
        !          1977:     children. It defines the binding's resources. Stylesheets and
        !          1978:     images are the current resources available to bindings. It is
        !          1979:     common for a single binding to contain all resources, which
        !          1980:     another binding can then inherit. 
        !          1981:     <h4><a name="77551"></a> See Also</h4>
        !          1982:     <tt>image</tt>, <tt>stylesheet</tt> 
        !          1983:     <hr>
        !          1984:     <h3><a name="77556"></a> setter</h3>
        !          1985:     <p>Change a binding property's value <a name="77556"></a>
        !          1986:     Contained by property <a name="77556"></a> Attributes
        !          1987:     <tt>id</tt>, <tt>type</tt></p>
        !          1988:     <h4><a name="77556"></a> Description</h4>
        !          1989:     This element commonly sets the 
        !          1990:     <!--INDEX setter element, XBL --> value of the property, and
        !          1991:     optionally executes other script for the property. 
        !          1992:     <h4><a name="77556"></a> See Also</h4>
        !          1993:     <tt>getter</tt>, <tt>property</tt> 
        !          1994:     <hr>
        !          1995:     <h3><a name="77561"></a> stylesheet</h3>
        !          1996:     <p>Captures an external stylesheet for use by anonymous content
        !          1997:     <a name="77561"></a> Contained by resources <a name=
        !          1998:     "77561"></a> Attributes src</p>
        !          1999:     <h4><a name="77561"></a> Description</h4>
        !          2000:     This element defines a stylesheet 
        !          2001:     <!--INDEX stylesheet element, XBL --> to be used by a binding.
        !          2002:     An element's bound element and explicit children as well as
        !          2003:     anonymous content can use <tt>stylesheet</tt>. The <tt>src</tt>
        !          2004:     attribute has a URL value that points to the stylesheet. If you
        !          2005:     use the <tt>xml-stylesheet</tt> processing instruction on a
        !          2006:     binding, it can be applied only at a document level. It 
        !          2007:     <!--INDEX ENDRANGE==XBL element set;elements:XBL element set -->
        !          2008:     cannot be applied at a binding level, which is covered by the
        !          2009:     <tt>&lt;stylesheet&gt;</tt> element. 
        !          2010:     <h4><a name="77561"></a> See Also</h4>
        !          2011:     <tt>image</tt>, <tt>resources</tt> 
        !          2012:     <h2><a name="77562"></a> Event Attributes</h2>
        !          2013:     <p>Events are built-in constructs that 
        !          2014:     <!--INDEX STARTRANGE==events:attributes;attributes:events -->
        !          2015:     are part of the interaction between JavaScript and HTML. These
        !          2016:     constructs have been crucial to DHTML for many years. They are
        !          2017:     designed to capture and handle actions triggered by the user,
        !          2018:     such as a mouse click or the pressing of a certain key. Event
        !          2019:     handlers have been brought into the world of XUL/XBL and allow
        !          2020:     dynamic, interactive Mozilla applications. In XUL, events can
        !          2021:     exist on any attribute, and typically bubble up through the
        !          2022:     hierarchy. An event attribute of the empty string generates a
        !          2023:     JS strict warning (if this is turned on in the user
        !          2024:     preferences), and removing an event attribute from a XUL event
        !          2025:     does not remove the event listener (although it does in
        !          2026:     HTML).</p>
        !          2027:     <p>The events are listed in the form
        !          2028:     <tt>on&lt;eventName&gt;</tt>, which is how events are used as
        !          2029:     attributes on XUL elements. The attribute contains lines of
        !          2030:     script or a function call, when a script is too long. Here is
        !          2031:     an example of an event attribute that carries out a function
        !          2032:     each time a <tt>menulist</tt> value changes:</p>
        !          2033: <pre>
        !          2034: &lt;menulist id="eventList" editable="true" flex="1" onchange="addEvent(this)"&gt;
        !          2035: </pre>
        !          2036:     <p>The syntax is different in XBL. Here the event is specified
        !          2037:     as the value of the <tt>name</tt> attribute, which is attached
        !          2038:     to the <tt>handler</tt> element. One or more of these elements
        !          2039:     can optionally be contained in a binding. The given value is
        !          2040:     the event's name, minus the "on" prefix. The executed code is
        !          2041:     contained in the body of the handler inline, or in the
        !          2042:     <tt>action</tt> attribute, as shown in this example:</p>
        !          2043: <pre>
        !          2044: &lt;handler name="focus" action="this.activate( )"/&gt;
        !          2045: </pre>
        !          2046:     <p><a href="ch07.html#77027">Chapter 7</a> provides a closer
        !          2047:     look at events in XBL. All the events listed here are available
        !          2048:     for use in XUL and XBL.</p>
        !          2049:     <hr>
        !          2050:     <h3><a name="77563"></a> onblur</h3>
        !          2051:     Usually used for input element 
        !          2052:     <!--INDEX onblur event;events onblur --> such as a textbox,
        !          2053:     this event triggers actions when the focus leaves a widget.
        !          2054:     This action is the opposite of the <tt>onfocus</tt> event. 
        !          2055:     <hr>
        !          2056:     <h3><a name="77564"></a> onbroadcast</h3>
        !          2057:     This event is activated when the 
        !          2058:     <!--INDEX onbroadcast event;events:onbroadcast --> broadcaster
        !          2059:     attributes being "listened to" are changed. It can be placed on
        !          2060:     the <tt>observes</tt> element, which is placed in an element
        !          2061:     that is being listened to, or on an element that uses the
        !          2062:     <tt>observes</tt> attribute. Refer to <a href=
        !          2063:     "ch03.html#77084">Chapter 3</a> for more information on
        !          2064:     broadcasters and observers. 
        !          2065:     <hr>
        !          2066:     <h3><a name="77565"></a> onchange</h3>
        !          2067:     This event is fired when the value 
        !          2068:     <!--INDEX onchange event;events:onchange --> of a particular
        !          2069:     widget's (element) attribute that uses it changes. A menulist
        !          2070:     selection is one example. It can also be used on an observer
        !          2071:     when the attribute the observer listens to changes. 
        !          2072:     <hr>
        !          2073:     <h3><a name="77566"></a> onclick</h3>
        !          2074:     Relevant to any element that can be 
        !          2075:     <!--INDEX onclick event;events:onchange --> clicked on, such as
        !          2076:     a button, this event occurs when the mouse is clicked on an
        !          2077:     element that uses it. For some widgets that use this event,
        !          2078:     using <tt>oncommand</tt> attribute (which covers clicking) is
        !          2079:     recommended to avoid excluding keyboard selection. Here are
        !          2080:     some commonly used properties associated with this event: 
        !          2081:     <dl>
        !          2082:       <dt>button</dt>
        !          2083:       <dd>This property tells you which mouse button was clicked.
        !          2084:       Its values are 0 for the left mouse button, 1 for middle
        !          2085:       button, and 2 for right button.</dd>
        !          2086:       <dt>detail</dt>
        !          2087:       <dd>This property counts how many clicks occur over an
        !          2088:       element before the mouse is moved. The values for this
        !          2089:       property start at 1 and increment for every click.</dd>
        !          2090:     </dl>
        !          2091:     Instead of catching double clicks this way, you can use the
        !          2092:     <tt>ondblclick</tt> event. 
        !          2093:     <hr>
        !          2094:     <h3><a name="77567"></a> onclose</h3>
        !          2095:     Usually used to evaluate script when 
        !          2096:     <!--INDEX onclose event;events:onclose --> a window is closed
        !          2097:     with the close button or via a <tt>window.close( )</tt> call,
        !          2098:     this event traps the closure of a widow. If the JavaScript
        !          2099:     evaluates to "true," the window closes; otherwise, the window
        !          2100:     remains open. 
        !          2101:     <hr>
        !          2102:     <h3><a name="77568"></a> oncommand</h3>
        !          2103:     This event is sent when an element 
        !          2104:     <!--INDEX oncommand event;events:oncommand --> is activated.
        !          2105:     Activation can mean more than one thing. You can activate by
        !          2106:     selecting a menu item, hitting Enter on the keyboard when an
        !          2107:     element has focus, or clicking on an element. Use this event if
        !          2108:     you want to cover the most possibilities available for
        !          2109:     activation. 
        !          2110:     <hr>
        !          2111:     <h3><a name="77569"></a> oncommandupdate</h3>
        !          2112:     This event is used on a command set 
        !          2113:     <!--INDEX oncommandupdate event;events:oncommandupdate --> when
        !          2114:     one of its commands is updated, such as when its disabled
        !          2115:     attribute changes. 
        !          2116:     <hr>
        !          2117:     <h3><a name="77570"></a> oncontextmenu</h3>
        !          2118:     This event occurs when a request 
        !          2119:     <!--INDEX oncontextmenu event;events:oncontextmenu --> is made
        !          2120:     for a context menu-usually a right click, depending on the
        !          2121:     platform-and is activated before the menu appears.
        !          2122:     <tt>oncontextmenu</tt> is similar to the <tt>oncreate</tt> and
        !          2123:     <tt>onpopupshowing</tt> events. 
        !          2124:     <hr>
        !          2125:     <h3><a name="77571"></a> oncreate</h3>
        !          2126:     Called on a <tt>popup</tt> element, this event carries 
        !          2127:     <!--INDEX oncreate event;events:oncreate --> out some code
        !          2128:     before the <tt>popup</tt> appears. It can be useful for
        !          2129:     dynamically determining which items appear in the resulting
        !          2130:     menu. 
        !          2131:     <hr>
        !          2132:     <h3><a name="77572"></a> ondblclick</h3>
        !          2133:     This event cccurs when there are two 
        !          2134:     <!--INDEX ondblclick event;events:ondblclick --> consecutive
        !          2135:     mouse clicks on an element. You could also use the
        !          2136:     <tt>onclick</tt> event's detail property with a value of 2. 
        !          2137:     <hr>
        !          2138:     <h3><a name="77573"></a> ondestroy</h3>
        !          2139:     Designed to carry out functions after a 
        !          2140:     <!--INDEX ondestroy event;events:ondestroy --> pop-up window
        !          2141:     disappears, this event can be used with a <tt>popup</tt> or
        !          2142:     <tt>menupopup</tt> element. 
        !          2143:     <hr>
        !          2144:     <h3><a name="77574"></a> ondragdrop</h3>
        !          2145:     When a drag and drop session completes 
        !          2146:     <!--INDEX ondragdrop event;events:ondragdrop --> and the user
        !          2147:     releases the mouse over the element, this event is triggered.
        !          2148:     The accessed code can acknowledge the drop and carry out an
        !          2149:     operation after accepting the dragged object. 
        !          2150:     <hr>
        !          2151:     <h3><a name="77575"></a> ondragenter</h3>
        !          2152:     The <tt>ondragenter</tt> event is sent when the 
        !          2153:     <!--INDEX ondragenter event;events:ondragenter --> mouse cursor
        !          2154:     first moves over an element during a drag and drop session.
        !          2155:     This element differs from the <tt>mouseover</tt> event because
        !          2156:     it occurs during a drag and drop session. 
        !          2157:     <hr>
        !          2158:     <h3><a name="77576"></a> ondragexit</h3>
        !          2159:     This element is activated when the 
        !          2160:     <!--INDEX ondragexit event;events:ondragexit --> cursor moves
        !          2161:     away from an element during a drag and drop session. It occurs
        !          2162:     after the <tt>ondragdrop</tt> event. 
        !          2163:     <hr>
        !          2164:     <h3><a name="77577"></a> ondraggesture</h3>
        !          2165:     The event is triggered at the beginning 
        !          2166:     <!--INDEX ondraggesture event;events:ondraggesture --> of a
        !          2167:     drag and drop session when the user holds the mouse button on
        !          2168:     the dragged object. 
        !          2169:     <hr>
        !          2170:     <h3><a name="77578"></a> ondragover</h3>
        !          2171:     When an object is dragged over an 
        !          2172:     <!--INDEX ondragover event;events:ondragover --> element, this
        !          2173:     event is commonly used by an element to determine whether the
        !          2174:     drop can occur. 
        !          2175:     <hr>
        !          2176:     <h3><a name="77579"></a> onfocus</h3>
        !          2177:     This event is triggered when an element 
        !          2178:     <!--INDEX onfocus event;events:onfocus --> receives focus in
        !          2179:     the UI. When it has focus, it can accept keyboard events. The
        !          2180:     opposite of <tt>onfocus</tt> is <tt>onblur</tt>. 
        !          2181:     <hr>
        !          2182:     <h3><a name="77580"></a> oninput</h3>
        !          2183:     Used on <tt>textbox</tt> elements, this event is 
        !          2184:     <!--INDEX oninput event;events:oninput --> activated when
        !          2185:     displayable keys change the text in the box. 
        !          2186:     <hr>
        !          2187:     <h3><a name="77581"></a> onkeydown</h3>
        !          2188:     This event occurs when the user presses 
        !          2189:     <!--INDEX onkeydown event;events:onkeydown --> a key on an
        !          2190:     element that has focus and the key press is not released. 
        !          2191:     <hr>
        !          2192:     <h3><a name="77582"></a> onkeypress</h3>
        !          2193:     Similar to <tt>onkeydown</tt>, this event occurs 
        !          2194:     <!--INDEX onkeypress event;events:onkeypress --> on a focused
        !          2195:     element when a key is pressed. The distinction is that with
        !          2196:     this event, the key is released soon after being pressed. The
        !          2197:     check for which key was pressed can be using the
        !          2198:     <tt>event.keyCode</tt> property. 
        !          2199:     <hr>
        !          2200:     <h3><a name="77583"></a> onkeyup</h3>
        !          2201:     This event is activated when the key press 
        !          2202:     <!--INDEX onkeyup event;events:onkeyup --> is released on a
        !          2203:     focused element. 
        !          2204:     <hr>
        !          2205:     <h3><a name="77584"></a> onload</h3>
        !          2206:     This event is activated on a XUL window 
        !          2207:     <!--INDEX onload event;events:onload --> or dialog after it has
        !          2208:     fully loaded. It should be attached to the elements of the same
        !          2209:     name. It can also be attached to <tt>image</tt> elements or
        !          2210:     elements that display images. 
        !          2211:     <hr>
        !          2212:     <h3><a name="77585"></a> onmousedown</h3>
        !          2213:     This event occurs when a mouse 
        !          2214:     <!--INDEX onmousedown event;events:onmousedown --> is pressed
        !          2215:     on an element but not released. 
        !          2216:     <hr>
        !          2217:     <h3><a name="77586"></a> onmousemove</h3>
        !          2218:     A reoccuring event, this event 
        !          2219:     <!--INDEX onmousemove event;events:onmousemove --> repeatedly
        !          2220:     fires when a mouse moves over an element. 
        !          2221:     <hr>
        !          2222:     <h3><a name="77587"></a> onmouseout</h3>
        !          2223:     When the mouse moves away 
        !          2224:     <!--INDEX onmouseout event;events:onmouseout --> from an
        !          2225:     element, this event occurs. 
        !          2226:     <hr>
        !          2227:     <h3><a name="77588"></a> onmouseover</h3>
        !          2228:     A hover event, this event fires 
        !          2229:     <!--INDEX onmouseover event;events:onmouseover --> when the
        !          2230:     mouse initially moves into an element's space. 
        !          2231:     <hr>
        !          2232:     <h3><a name="77589"></a> onmouseup</h3>
        !          2233:     This event occurs when a 
        !          2234:     <!--INDEX onmouseup event;events:onmouseup --> mouse is clicked
        !          2235:     and the button is released on an element immediately
        !          2236:     afterwards. 
        !          2237:     <hr>
        !          2238:     <h3><a name="77590"></a> onoverflow</h3>
        !          2239:     Relating to a box or layout 
        !          2240:     <!--INDEX onoverflow event;events:onoverflow --> element, this
        !          2241:     event is activated when the content contained in the box is too
        !          2242:     big for its given size and and "falls over the edge." 
        !          2243:     <hr>
        !          2244:     <h3><a name="77591"></a> onoverflowchanged</h3>
        !          2245:     This element is called when an 
        !          2246:     <!--INDEX onoverflowchanged event;events:onoverflowchanged -->
        !          2247:     element's overflow state changes. This can indicate that it did
        !          2248:     not have enough space to display it contents fully but does
        !          2249:     now, or that it does not have enough space and thus overflowed.
        !          2250:     
        !          2251:     <hr>
        !          2252:     <h3><a name="77592"></a> onpopuphidden</h3>
        !          2253:     This event is activated on a <tt>popup</tt> 
        !          2254:     <!--INDEX onpopuphidden event;events:onpopuphidden --> when the
        !          2255:     pop-up window is hidden. 
        !          2256:     <hr>
        !          2257:     <h3><a name="77593"></a> onpopuphiding</h3>
        !          2258:     This event is activated on a <tt>popup</tt> 
        !          2259:     <!--INDEX onpopuphidden event;events:onpopuphidden --> while it
        !          2260:     is hidden. 
        !          2261:     <hr>
        !          2262:     <h3><a name="77594"></a> onpopupshowing</h3>
        !          2263:     This event is activated on a <tt>popup</tt> 
        !          2264:     <!--INDEX onpopupshowing event;events:onpopupshowing --> just
        !          2265:     before it opens. It is commonly used to dynamically set the
        !          2266:     contents of the <tt>popup</tt> when it is requested in the UI. 
        !          2267:     <hr>
        !          2268:     <h3><a name="77595"></a> onpopupshown</h3>
        !          2269:     This is event is activated on a <tt>popup</tt> 
        !          2270:     <!--INDEX onpopupshown event;events:onpopupshown --> after it
        !          2271:     is opened. 
        !          2272:     <hr>
        !          2273:     <h3><a name="77596"></a> onselect</h3>
        !          2274:     When you activate or select an 
        !          2275:     <!--INDEX onselect event;events:onselect --> available option
        !          2276:     in a widget, this event is fired. This event applies to such
        !          2277:     widgets as trees and listboxes. 
        !          2278:     <hr>
        !          2279:     <h3><a name="77597"></a> onunderflow</h3>
        !          2280:     This event can be used in tandem 
        !          2281:     <!--INDEX onunderflow event;events:onunderflow --> with the
        !          2282:     <tt>onoverflow</tt> event. It is activated when a layout
        !          2283:     element's content changes to fit into its given constraints
        !          2284:     after being in an overflow state. 
        !          2285:     <hr>
        !          2286:     <h3><a name="77598"></a> onunload</h3>
        !          2287:     This event is activated when a window 
        !          2288:     <!--INDEX onunload event;events:onunload --> or dialog closes.
        !          2289:     It should be used on the root elements of these 
        !          2290:     <!--INDEX ENDRANGE==events:attributes;attributes:events -->
        !          2291:     window documents. 
        !          2292:     <hr>
        !          2293:     <!-- ?php require(NOTES); ? -->
        !          2294:     <?php $post_to_list=NO; $author='reviewers@mozdev.org'; $target_page='appc'; require(NOTES); ?>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>