Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
service
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
Freenet DSL
Who's Online
5 user(s) are online (4 user(s) are browsing encyclopedia)

Members: 0
Guests: 5

more...
partner

XUL

XUL (XML User Interface Language) is a user interface markup language developed to support Mozilla applications like Mozilla Firefox and Mozilla Thunderbird. Like UIML, it is an application of XML that describes user interfaces. The acronym and initialism is pronounced zool , to rhyme with cool (see #Film references).

While XUL is not a public standard, it reuses many existing standards and technologies, including Cascading Style Sheets, JavaScript, Document Type Definition and Resource Description Framework, which makes it relatively easy to learn for people with a background in web programming and design.

The main benefit of XUL is that it provides a simple and portable definition of common widget (computing)s. This reduces the software development effort in a way analogous to the savings offered by 4GL tools.

=Introduction=

An XUL interface is typically defined as three discrete sets of components: *Content: The XUL documents, which define the layout of the user interface. *Skin: The CSS and image files, which define the appearance of an application. *Locale: The DTD documents, which define entity for easy software localization.

For an example, see Hello world program#XUL.

=XUL elements=

XUL defines a wide range of elements, which roughly belong to the following types: ; Top-level elements: e.g. window (computing), page, dialog box, wizard (software), etc. ; Widgets : e.g. label, button (computing), text box, list box, combo box, radio button, check box, tree, menu (computing), toolbar, group box, tab (GUI), color picker, spacer, splitter, etc. ; Box model: e.g. box, grid, stack, deck, etc. ; Events and Scripts: e.g. script, command, key, broadcaster, observer, etc. ; Data source: e.g. template, rule, etc. ; Others: e.g. overlay (analogous to Server Side Includes, but client side and more powerful), iframe, browser, editor, etc.

It is possible to use elements from other applications of XML within XUL documents, such as XHTML, Scalar Vector Graphics, and MathML.

Some common widgets - such as spinbox, slider, and canvas - are not available in the current XUL widget set, but are planned for XUL 2.0 [http://wiki.mozilla.org/wiki/XUL:Home_Page].

=Usage=

While XUL is mostly used for creating the Mozilla application itself and its extensions, it is possible to use it for web applications transferred over HTTP. One of the most well-known XUL applications of this type is the Mozilla Amazon Browser, which provides a rich interface for searching books at Amazon.com. However, many of the powerful features of Mozilla, like privileged XPCOM objects, are not available to unpriviledged XUL documents (unless the script is digital signature), and such documents also suffer from various limitations of the browser, such as the inability to load remote XUL, DTD and RDF documents.

=Film references=

The XUL name is a reference to the film Ghostbusters, in which the ghost of an ancient Sumerian deity called Zuul possesses the character Dana Barrett (played by Sigourney Weaver) and declares There is no Dana, only Zuul . Since XUL is unusual in using XML to define an interface, rather than a document, its developers adopted the slogan There is no data, only XUL . This is referred to by the XML namespace Uniform Resource Identifier at the beginning of every XUL document, http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul; when viewed with a XUL-capable application, the document pointed to displays the slogan in large letters in the center of the screen (similar to that to the right).

Keymaster and gatekeeper are also references to the same plotline. This is not the only reference to Ghostbusters within Mozilla - for instance, the JavaScript Debugger component is called Venkman, one of the main characters in the film.

=See also=

*List of user interface markup languages *Comparison of user interface markup languages

=External links=

*[http://www.mozilla.org/projects/xul/ Mozilla XUL] – The home page for Mozilla XUL documentation. *[http://www.xulplanet.com XULPlanet] – A developer site with tutorials, references and forums. *[http://wiki.mozilla.org/index.php/XUL:Xul_Runner Xul Runner] – An attempt to run XUL applications in a light-weight container. *[http://www.hevanet.com/acorbin/xul/top.xul XUL Periodic Table] – Visual demonstration of XUL capabilitites (Requires an XUL-enabled, Gecko-based application such as Mozilla Firefox).