# XULMaker Project

## Notes

## XUL Version 0.6 to Version 1.0

Element and Attribute names changed from XUL Version 0.6 to XUL Version 1.0 as follows:

XUL v0.6 -> XUL v1.0
- value -> label
- tabpanel -> tabbox, etc.
- textfield -> textbox
- treecolgroup -> treecols
- text -> description
- spring -> spacer

## XULMaker Namespace for Element, Attribute and Value Names

Elements, Attributes and Values that are specific to XULMaker are given a XULMaker namespace. The namespace is defined as a constant in `xmSettings.js` and as an entity in `xulmaker.xul`. (Currently the XUlMaker namespace is defined as `xm:`.)

The following are some of the defined XULMaker Attributes:

- `xm:active`

All elements in the XUL design document are given `id` attributes with values generated by XULMaker. These values have a XULMaker namespace, e.g. `id="xm:box0"`

Elements in the XULMaker application that require id's also have values that have a XULMaker namespace, e.g. `id="xm:idtree"`. Elements in `xulmaker.xul` and associated overlays that are used as containers are typically given id's so that they may be found with the `document.getElementsById()` method.

References in a CSS stylesheet to elements and attributes with a namespace need to be dealt with by using an escape character for the ":" character since this character is special in the CSS syntax. e.g.
`.idlist-id[xm/:active="true"] { font-weight : bold }`
`*[xm/:active="true"] { border-style: dashed }`