XULMaker is a visual XUL application builder.
A XULMaker user is a XUL application developer. A XULMaker user visually and interactively creates
and edits a XUL document representing a XUL application by visually interacting
with both an XML DOM (Document Object Model) and an XML text representation of the XUL document.
The XUL document is a typical XML document consisting of various elements with various attributes
and attribute values. A XULMaker user builds a XUL document by visually and interactively
adding/deleting/moving XUL elements, adding/deleting element attributes, and setting attribute values.
A XULMaker user is able to see the results of his work as he builds the XUL document - as it would
appear in a Mozilla browser (or any browser that supports the display of XUL files.)
A XUL application consists of content, skin and locale data.
content consists of XUL files (window and overlay files)
for presentation layout and javascript files (.js files) for presentation behaviour.
skin consists of stylesheets (.css files) and image files
(.gif, .jpeg, etc. files) organized into "themes".
locale contains the static text that makes up the application, organized into "locales"
or languages.
XULMaker is currently a visual and interactive creater and editor of only XUL files.
It is intended to evolve XULMaker over time into a full blown IDE - covering all development aspects
of a XUL application. This will include the integration of a JavaScript editor and a CSS stylesheet editor
for example.
XULMaker comes with lots of user documentation most of which is published as a Mozilla Help document.
This user documentation includes:
- User Manual (Help document)
- on-line copy of the book "Creating Applications with Mozilla" (Help Document)
- link to XULPlanet's XUL Reference Manual (Support View)
There is also a wealth of real world experience documented in the project documentation
for XULMaker from which XUL developers may learn how to develop a XUL application.
The project documentation is available on-line as a Mozilla Help document.
It includes XULMaker's architecture, design, standards, etc. The project documentation
should be particularly helpful to potential contributors to get involved with the project.
(Press ctrl-D to activate the developer mode that gives access to the project documentation.)
XULMaker code has been integrated with a logging facility that is able
to trace the execution of code. Although this is meant primarily for the
testing and debuging of code during development it may be used by any user
to explore the inner workings of XULMaker.
(Press ctrl-D to activate the developer mode that gives access to the trace menu.)
In addition, access to the DOM Inspector is available from the Tools menu.
allowing the user to explore the application under construction and the XULMaker application itself.
XULMaker version 0.50 has the following features:
(See the project's roadmap to see where we intend to take this project.)
- Support for all standard XUL element names, attribute names and attribute values
- Support for user "write-in" element names, attribute names and attribute values
- Add or remove XUL elements
- Add or remove XUL attributes
- Move XUL elements (move up/down)
- Cut, copy and paste XUL elements (use of clipboard)
- Element list for:
- all XUL elements
- XUL elements containable in the currently "active" element
- Information XUL elements only
- XBL/template XUL elements only
- Attribute list for:
- currently "active" element
- the element selected in the element list
- Attribute value list for the attribute selected in the attribute list
- user "write-in" for any string or number type value
- list of possible enumerated values
- View XUL document:
- Design View - graphic web page under construction. (Not always displayed at 100% correctly)
- Code View - text document
- Browser View - graphic web page in production
- View, select ("active"), add and remove XUL elements and attributes:
- Design View - graphic web page under construction.
- Element Explorer - Tree View (hierarchical tree of XUL elements)
- Element Explorer - List View (flat list of XUL elements)
- Attribute Inspector - list of XUL attributes and its values for the "active" element
- Toolbars
- Element Palette Toolbar- tabbed sets of XUL elements
- Custom Element Palette Toolbar - user configured set of XUL elements
- Element Toolbar - add elements to the "active" element container
- Element + Attribute Toolbar - add elements, attributes and attribute values to the "active" element container
- Attribute Toolbar - add attributes and attribute values to either the "active" element container or the element selected in the element list
- Mode Toolbar - sets the mode of construction for elements and attributes
- Use of Logger for tracing and assertions
- File I/O using JSLIB
- New XUL document to clear current document and create a new empty document
- Open (load) XUL document (serialized text) as a local file using a directory/file dialog
- Save XUL document (serialized text) as a local file using a directory/file dialog
- Use of "dirty" flag to prompt for save before closing a XUL document or exiting XULMaker.
- The title bar of XULMaker contains the name of the opened file (followed by "*" when modified)
- Window debug mode - elaborate display of box layout
- On-line users manual - presented as a help document
(i.e. includes a table of content, index, glossary and search)
- On-line version of the book "Creating Applications with Mozilla" - presented as a help document
- On-line project documentation - presented as a help document
- Access to DOM Inspector to explore the XUL application under construction or the XULMaker application itself
If you are interested in contributing to the XULMaker project please contact me, Franklin de Graaf.
In particular, I would especially appreciate some help from a graphic designer to do/redo the element icons, etc.
You are also invited to join the mailing list and read the newsgroup.
This is where most of the discussion about XULMaker will take place.
|