]> git.decadent.org.uk Git - ion3.git/blobdiff - doc/ionconf/node5.html
[svn-upgrade] Integrating new upstream version, ion3 (20070506)
[ion3.git] / doc / ionconf / node5.html
index de5ae5ec4bc23893e205c9a005e7cc940289f971..b5247f6f90c079d89604bba7855dce15a80cdf5d 100644 (file)
@@ -28,31 +28,31 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <BODY >
 
 <DIV CLASS="navigation"><!--Navigation Panel-->
 <BODY >
 
 <DIV CLASS="navigation"><!--Navigation Panel-->
-<A NAME="tex2html304"
+<A NAME="tex2html331"
   HREF="node6.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
   HREF="node6.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
-<A NAME="tex2html298"
+<A NAME="tex2html325"
   HREF="ionconf.html">
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
   HREF="ionconf.html">
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
-<A NAME="tex2html292"
+<A NAME="tex2html319"
   HREF="node4.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
   HREF="node4.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
-<A NAME="tex2html300"
+<A NAME="tex2html327"
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
-<A NAME="tex2html302"
+<A NAME="tex2html329"
   HREF="node11.html">
 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
 <BR>
   HREF="node11.html">
 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
 <BR>
-<B> Next:</B> <A NAME="tex2html305"
+<B> Next:</B> <A NAME="tex2html332"
   HREF="node6.html">5. Scripting</A>
   HREF="node6.html">5. Scripting</A>
-<B> Up:</B> <A NAME="tex2html299"
+<B> Up:</B> <A NAME="tex2html326"
   HREF="ionconf.html">Configuring and extending Ion3</A>
   HREF="ionconf.html">Configuring and extending Ion3</A>
-<B> Previous:</B> <A NAME="tex2html293"
+<B> Previous:</B> <A NAME="tex2html320"
   HREF="node4.html">3. Basic configuration</A>
   HREF="node4.html">3. Basic configuration</A>
- &nbsp; <B>  <A NAME="tex2html301"
+ &nbsp; <B>  <A NAME="tex2html328"
   HREF="node1.html">Contents</A></B> 
   HREF="node1.html">Contents</A></B> 
- &nbsp; <B>  <A NAME="tex2html303"
+ &nbsp; <B>  <A NAME="tex2html330"
   HREF="node11.html">Index</A></B> 
 <BR>
 <BR></DIV>
   HREF="node11.html">Index</A></B> 
 <BR>
 <BR></DIV>
@@ -61,51 +61,53 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
 
 <UL CLASS="ChildLinks">
 <A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
 
 <UL CLASS="ChildLinks">
-<LI><A NAME="tex2html306"
+<LI><A NAME="tex2html333"
   HREF="node5.html#SECTION00510000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN> Drawing engines, style specifications and sub-styles</A>
 <UL>
   HREF="node5.html#SECTION00510000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN> Drawing engines, style specifications and sub-styles</A>
 <UL>
-<LI><A NAME="tex2html307"
+<LI><A NAME="tex2html334"
   HREF="node5.html#SECTION00511000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> Known styles and substyles</A>
 <UL>
   HREF="node5.html#SECTION00511000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> Known styles and substyles</A>
 <UL>
-<LI><A NAME="tex2html308"
+<LI><A NAME="tex2html335"
   HREF="node5.html#SECTION00511100000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> Frames</A>
   HREF="node5.html#SECTION00511100000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> Frames</A>
-<LI><A NAME="tex2html309"
+<LI><A NAME="tex2html336"
   HREF="node5.html#SECTION00511200000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">2</SPAN> Tabs and menu entries</A>
   HREF="node5.html#SECTION00511200000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">2</SPAN> Tabs and menu entries</A>
-<LI><A NAME="tex2html310"
+<LI><A NAME="tex2html337"
   HREF="node5.html#SECTION00511300000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">3</SPAN> The rest</A>
 </UL>
 </UL>
 <BR>
   HREF="node5.html#SECTION00511300000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">3</SPAN> The rest</A>
 </UL>
 </UL>
 <BR>
-<LI><A NAME="tex2html311"
+<LI><A NAME="tex2html338"
   HREF="node5.html#SECTION00520000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN> Defining styles for the default drawing engine</A>
 <UL>
   HREF="node5.html#SECTION00520000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN> Defining styles for the default drawing engine</A>
 <UL>
-<LI><A NAME="tex2html312"
+<LI><A NAME="tex2html339"
   HREF="node5.html#SECTION00521000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">1</SPAN> The structure of the configuration files</A>
   HREF="node5.html#SECTION00521000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">1</SPAN> The structure of the configuration files</A>
-<LI><A NAME="tex2html313"
+<LI><A NAME="tex2html340"
   HREF="node5.html#SECTION00522000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN> Defining the styles</A>
 <UL>
   HREF="node5.html#SECTION00522000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN> Defining the styles</A>
 <UL>
-<LI><A NAME="tex2html314"
+<LI><A NAME="tex2html341"
   HREF="node5.html#SECTION00522100000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">1</SPAN> Colours</A>
   HREF="node5.html#SECTION00522100000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">1</SPAN> Colours</A>
-<LI><A NAME="tex2html315"
+<LI><A NAME="tex2html342"
   HREF="node5.html#SECTION00522200000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN> Borders and widths</A>
   HREF="node5.html#SECTION00522200000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN> Borders and widths</A>
-<LI><A NAME="tex2html316"
+<LI><A NAME="tex2html343"
   HREF="node5.html#SECTION00522300000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">3</SPAN> Text</A>
   HREF="node5.html#SECTION00522300000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">3</SPAN> Text</A>
-<LI><A NAME="tex2html317"
+<LI><A NAME="tex2html344"
   HREF="node5.html#SECTION00522400000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">4</SPAN> Miscellaneous</A>
   HREF="node5.html#SECTION00522400000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">4</SPAN> Miscellaneous</A>
-<LI><A NAME="tex2html318"
+<LI><A NAME="tex2html345"
   HREF="node5.html#SECTION00522500000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">5</SPAN> Substyles</A>
 </UL>
   HREF="node5.html#SECTION00522500000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">5</SPAN> Substyles</A>
 </UL>
-<LI><A NAME="tex2html319"
+<LI><A NAME="tex2html346"
   HREF="node5.html#SECTION00523000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">3</SPAN> An example</A>
 </UL>
 <BR>
   HREF="node5.html#SECTION00523000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">3</SPAN> An example</A>
 </UL>
 <BR>
-<LI><A NAME="tex2html320"
+<LI><A NAME="tex2html347"
   HREF="node5.html#SECTION00530000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN> Miscellaneous settings</A>
 <UL>
   HREF="node5.html#SECTION00530000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN> Miscellaneous settings</A>
 <UL>
-<LI><A NAME="tex2html321"
-  HREF="node5.html#SECTION00531000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">1</SPAN> Extra fields for style <TT>frame</TT></A>
-<LI><A NAME="tex2html322"
-  HREF="node5.html#SECTION00532000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">2</SPAN> Extra fields for style <TT>dock</TT></A>
+<LI><A NAME="tex2html348"
+  HREF="node5.html#SECTION00531000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">1</SPAN> Frame user attributes</A>
+<LI><A NAME="tex2html349"
+  HREF="node5.html#SECTION00532000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">2</SPAN> Extra fields for style `<TT>frame</TT>'</A>
+<LI><A NAME="tex2html350"
+  HREF="node5.html#SECTION00533000000000000000"><SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">3</SPAN> Extra fields for style `<TT>dock</TT>'</A>
 </UL></UL>
 <!--End of Table of Child-Links-->
 <HR>
 </UL></UL>
 <!--End of Table of Child-Links-->
 <HR>
@@ -120,12 +122,13 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 This chapter first gives in section <A HREF="#sec:engines">4.1</A> a general outline 
 of how drawing engines are used, of style specifications and then
 in section <A HREF="#sec:defaultde">4.2</A> describes how to specify styles
 This chapter first gives in section <A HREF="#sec:engines">4.1</A> a general outline 
 of how drawing engines are used, of style specifications and then
 in section <A HREF="#sec:defaultde">4.2</A> describes how to specify styles
-for the default drawing engine.
+for the default drawing engine. Some additional settings and
+user attributes are explained in Sections <A HREF="#sec:grmisc">4.3</A>.
 
 <P>
 
 <H2><A NAME="SECTION00510000000000000000"></A>
 
 <P>
 
 <H2><A NAME="SECTION00510000000000000000"></A>
-<A NAME="sec:engines"></A><A NAME="1708"></A><A NAME="1709"></A>
+<A NAME="sec:engines"></A><A NAME="1887"></A><A NAME="1888"></A>
 <BR>
 <SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN> Drawing engines, style specifications and sub-styles
 </H2>
 <BR>
 <SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN> Drawing engines, style specifications and sub-styles
 </H2>
@@ -133,7 +136,7 @@ for the default drawing engine.
 <P>
 Ion's drawing routines are abstracted into so-called drawing engine
 modules that can, again depending on the system, be dynamically
 <P>
 Ion's drawing routines are abstracted into so-called drawing engine
 modules that can, again depending on the system, be dynamically
-loaded as needed. The drawing engine modules provide ''brushes''
+loaded as needed. The drawing engine modules provide ``brushes''
 that objects can use to draw some high-level primitives such
 as borders and text boxes (in addition to simple text and rectangle
 drawing) on their windows and configure e.g. the shape and 
 that objects can use to draw some high-level primitives such
 as borders and text boxes (in addition to simple text and rectangle
 drawing) on their windows and configure e.g. the shape and 
@@ -150,17 +153,17 @@ element1-element2-...-elementn
 </PRE>
 
 <P>
 </PRE>
 
 <P>
-An example of such a style specification is <TT>tab-frame</TT>;
+An example of such a style specification is `<TT>tab-frame</TT>';
 see the table in subsection <A HREF="#sec:styles">4.1.1</A> for more styles.
 
 <P>
 When an object asks for a brush of certain style, the selected
 drawing engine will attempt to find the closest match to this
 specification. The styles/brushes defined by the drawing engines 
 see the table in subsection <A HREF="#sec:styles">4.1.1</A> for more styles.
 
 <P>
 When an object asks for a brush of certain style, the selected
 drawing engine will attempt to find the closest match to this
 specification. The styles/brushes defined by the drawing engines 
-may have asterisks (<code>*</code>) as some of the elements indicating
+may have asterisks (`<TT>*</TT>') as some of the elements indicating
 a match to anything. Exact matches are preferred to asterisk
 matches and longer matches to shorter. For example, let a brush
 a match to anything. Exact matches are preferred to asterisk
 matches and longer matches to shorter. For example, let a brush
-for style <TT>foo-bar-baz</TT> be queried, then the following
+for style `<TT>foo-bar-baz</TT>' be queried, then the following
 brushes are in order of preference:
 
 <P>
 brushes are in order of preference:
 
 <P>
@@ -177,7 +180,7 @@ specified, also in the form
 <PRE>
 attr1-attr2-...-attrn
 </PRE>
 <PRE>
 attr1-attr2-...-attrn
 </PRE>
-These extra attributes are called <SPAN  CLASS="textit">substyles</SPAN><A NAME="1720"></A>
+These extra attributes are called <SPAN  CLASS="textit">substyles</SPAN><A NAME="1900"></A>
 and allow, for example, the state of the object to be indicated 
 by  different colour sets while keeping the interface at an 
 abstract level and the drawing engine completely ignorant 
 and allow, for example, the state of the object to be indicated 
 by  different colour sets while keeping the interface at an 
 abstract level and the drawing engine completely ignorant 
@@ -206,27 +209,27 @@ tag and drag states.)
 <TR><TD ALIGN="LEFT">Style name</TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
 <TR><TD ALIGN="LEFT">Style name</TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>frame</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>frame</TT>'</TD>
 <TD ALIGN="LEFT">Style for frames. 
 <TD ALIGN="LEFT">Style for frames. 
-       Substyle attributes: <TT>active</TT>/<TT>inactive</TT> 
+       Substyle attributes: `<TT>active</TT>'/`<TT>inactive</TT>' 
        (mutually exclusive) and
        (mutually exclusive) and
-       <TT>quasiactive</TT>/<TT>not_quasiactive</TT>
+       `<TT>quasiactive</TT>'/`<TT>not_quasiactive</TT>'
        A frame is ``quasiactive'' when an active region
        A frame is ``quasiactive'' when an active region
-       has a backlink to it, such as a detached window.</TD>
+       has a back-link to it, such as a detached window.</TD>
 </TR>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>frame-tiled</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>frame-tiled</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for tiled frames.
 <TD ALIGN="LEFT">A more specific style for tiled frames.
-        Substyle attributes as for <TT>frame</TT>.</TD>
+        Substyle attributes as for `<TT>frame</TT>'.</TD>
 </TR>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>frame-tiled-alt</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>frame-tiled-alt</TT>'</TD>
 <TD ALIGN="LEFT">An alternative style for tiled frames.
         Often used to disable the tab-bar.</TD>
 </TR>
 <TD ALIGN="LEFT">An alternative style for tiled frames.
         Often used to disable the tab-bar.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>frame-floating</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>frame-floating</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for floating
         frames.</TD>
 </TR>
 <TD ALIGN="LEFT">A more specific style for floating
         frames.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>frame-transient</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>frame-transient</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for frames
         containing transient windows.</TD>
 </TR>
 <TD ALIGN="LEFT">A more specific style for frames
         containing transient windows.</TD>
 </TR>
@@ -243,39 +246,39 @@ tag and drag states.)
 <TR><TD ALIGN="LEFT">Style name</TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
 <TR><TD ALIGN="LEFT">Style name</TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>tab</TT>'</TD>
 <TD ALIGN="LEFT">Style for frames' tabs and menu entries. 
        Substyle attributes:
 <TD ALIGN="LEFT">Style for frames' tabs and menu entries. 
        Substyle attributes:
-       <TT>active</TT>/<TT>inactive</TT> and
-       <TT>selected</TT>/<TT>unselected</TT></TD>
+       `<TT>active</TT>'/`<TT>inactive</TT>' and
+       `<TT>selected</TT>'/`<TT>unselected</TT>'</TD>
 </TR>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-frame</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-frame</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for frames' tabs.
         Additional substyle attributes include:
 <TD ALIGN="LEFT">A more specific style for frames' tabs.
         Additional substyle attributes include:
-       <TT>tagged</TT>/<TT>not_tagged</TT>,
-       <TT>dragged</TT>/<TT>not_dragged</TT>,
-       <TT>activity</TT>/<TT>no_activity</TT> and
-       <TT>quasiactive</TT>/<TT>not_quasiactive</TT>.</TD>
+       `<TT>tagged</TT>'/`<TT>not_tagged</TT>',
+       `<TT>dragged</TT>'/`<TT>not_dragged</TT>',
+       `<TT>activity</TT>'/`<TT>no_activity</TT>',
+       `<TT>quasiactive</TT>'/`<TT>not_quasiactive</TT>'.</TD>
 </TR>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-frame-tiled</TT>,</TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-frame-tiled</TT>',</TD>
 <TD ALIGN="LEFT">&nbsp;</TD>
 </TR>
 <TD ALIGN="LEFT">&nbsp;</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-frame-tiled-alt</TT>,</TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-frame-tiled-alt</TT>',</TD>
 <TD ALIGN="LEFT">&nbsp;</TD>
 </TR>
 <TD ALIGN="LEFT">&nbsp;</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-frame-floating</TT>,</TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-frame-floating</TT>',</TD>
 <TD ALIGN="LEFT">&nbsp;</TD>
 </TR>
 <TD ALIGN="LEFT">&nbsp;</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-frame-transient</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-frame-transient</TT>'</TD>
 <TD ALIGN="LEFT">More specific styles for frames in the
         different modes.</TD>
 </TR>
 <TD ALIGN="LEFT">More specific styles for frames in the
         different modes.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-menuentry</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-menuentry</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for entries in WMenus. 
 <TD ALIGN="LEFT">A more specific style for entries in WMenus. 
-        Additional substyle attributes include <TT>submenu</TT> and
-        occasionally also <TT>activity</TT> is used.</TD>
+        Additional substyle attributes include `<TT>submenu</TT>' and
+        occasionally also `<TT>activity</TT>' is used.</TD>
 </TR>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>tab-menuentry-bigmenu</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>tab-menuentry-bigmenu</TT>'</TD>
 <TD ALIGN="LEFT">An alternate style for entries in WMenus.</TD>
 </TR>
 </TABLE>
 <TD ALIGN="LEFT">An alternate style for entries in WMenus.</TD>
 </TR>
 </TABLE>
@@ -291,30 +294,39 @@ tag and drag states.)
 <TR><TD ALIGN="LEFT">Style name</TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
 <TR><TD ALIGN="LEFT">Style name</TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>input</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>input</TT>'</TD>
 <TD ALIGN="LEFT">A style for WInputs.</TD>
 </TR>
 <TD ALIGN="LEFT">A style for WInputs.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>input-edln</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>input-edln</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for WEdlns. 
 <TD ALIGN="LEFT">A more specific style for WEdlns. 
-       Substyle attributes: <TT>selection</TT> for selected text and
-       <TT>cursor</TT> for the cursor indicating current editing point.</TD>
+       Substyle attributes: `<TT>selection</TT>' for selected text and
+       `<TT>cursor</TT>' for the cursor indicating current editing point.</TD>
 </TR>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>input-message</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>input-message</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for WMessages.</TD>
 </TR>
 <TD ALIGN="LEFT">A more specific style for WMessages.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>input-menu</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>input-menu</TT>'</TD>
 <TD ALIGN="LEFT">A more specific style for WMenus.</TD>
 </TR>
 <TD ALIGN="LEFT">A more specific style for WMenus.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>input-menu-bigmenu</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>input-menu-bigmenu</TT>'</TD>
 <TD ALIGN="LEFT">An alternate style for WMenus.</TD>
 </TR>
 <TD ALIGN="LEFT">An alternate style for WMenus.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>moveres_display</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>moveres_display</TT>'</TD>
 <TD ALIGN="LEFT">The box displaying position/size when
        moving or resizing frames.</TD>
 </TR>
 <TD ALIGN="LEFT">The box displaying position/size when
        moving or resizing frames.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>dock</TT></TD>
+<TR><TD ALIGN="LEFT">`<TT>stdisp</TT>'</TD>
+<TD ALIGN="LEFT">Any status display.</TD>
+</TR>
+<TR><TD ALIGN="LEFT">`<TT>stdisp-dock</TT>'</TD>
 <TD ALIGN="LEFT">The dock.</TD>
 </TR>
 <TD ALIGN="LEFT">The dock.</TD>
 </TR>
+<TR><TD ALIGN="LEFT">`<TT>stdisp-statusbar</TT>'</TD>
+<TD ALIGN="LEFT">The statusbar. Substyles include:
+    the name of any monitor/meter (such as `<TT>date</TT>'), and 
+    the supplied hint. Typical hints are: `<TT>normal</TT>',
+    `<TT>important</TT>', and `<TT>critical</TT>'.</TD>
+</TR>
 </TABLE>
 
 <P>
 </TABLE>
 
 <P>
@@ -354,13 +366,13 @@ end
 <P>
 The <A HREF="node7.html#fn:gr.select_engine"><TT>gr.select_engine</TT></A> function sees if the engine
 given as argument is registered (the default drawing engine is
 <P>
 The <A HREF="node7.html#fn:gr.select_engine"><TT>gr.select_engine</TT></A> function sees if the engine
 given as argument is registered (the default drawing engine is
-simply called ''de''). If the engine could not be found, it
+simply called ``de''). If the engine could not be found, it
 tries to load a module of the same name. If the engine still
 tries to load a module of the same name. If the engine still
-is not registered, <A HREF="node7.html#fn:gr.select_engine"><TT>gr.select_engine</TT></A> returns <TT>false</TT>
+is not registered, <A HREF="node7.html#fn:gr.select_engine"><TT>gr.select_engine</TT></A> returns `<TT>false</TT>'
 and in this case we also exit the style setup script.
 If the engine was found, <A HREF="node7.html#fn:gr.select_engine"><TT>gr.select_engine</TT></A> sees that
 further requests for brushes are forwarded to that engine
 and in this case we also exit the style setup script.
 If the engine was found, <A HREF="node7.html#fn:gr.select_engine"><TT>gr.select_engine</TT></A> sees that
 further requests for brushes are forwarded to that engine
-and returns <TT>true</TT>.
+and returns `<TT>true</TT>'.
 
 <P>
 Before defining new styles it may be a good idea to clear old
 
 <P>
 Before defining new styles it may be a good idea to clear old
@@ -412,7 +424,7 @@ border elements and styles referred to there are explained in Figure
 
 <P>
 
 
 <P>
 
-<DIV ALIGN="CENTER"><A NAME="fig:borders"></A><A NAME="1817"></A>
+<DIV ALIGN="CENTER"><A NAME="fig:borders"></A><A NAME="2003"></A>
 <TABLE>
 <CAPTION ALIGN="BOTTOM"><STRONG>Figure 4.1:</STRONG>
 Sketch of different border styles and elements</CAPTION>
 <TABLE>
 <CAPTION ALIGN="BOTTOM"><STRONG>Figure 4.1:</STRONG>
 Sketch of different border styles and elements</CAPTION>
@@ -450,10 +462,10 @@ in <SPAN  CLASS="textit">/usr/X11R6/lib/X11/rgb.txt</SPAN> (exact path varying).
 <TD ALIGN="LEFT">Description</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>highlight_colour</TT></TD>
 <TD ALIGN="LEFT">Description</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>highlight_colour</TT></TD>
-<TD ALIGN="LEFT">Colour for the ''highlight'' part of a border.</TD>
+<TD ALIGN="LEFT">Colour for the ``highlight'' part of a border.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>shadow_colour</TT></TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>shadow_colour</TT></TD>
-<TD ALIGN="LEFT">Colour for the ''highlight'' part of a border.</TD>
+<TD ALIGN="LEFT">Colour for the ``shadow'' part of a border.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>foreground_colour</TT></TD>
 <TD ALIGN="LEFT">Colour for the normal drawing operations, e.g. text.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>foreground_colour</TT></TD>
 <TD ALIGN="LEFT">Colour for the normal drawing operations, e.g. text.</TD>
@@ -463,7 +475,7 @@ in <SPAN  CLASS="textit">/usr/X11R6/lib/X11/rgb.txt</SPAN> (exact path varying).
        background colour boxes.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>padding_colour</TT></TD>
        background colour boxes.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>padding_colour</TT></TD>
-<TD ALIGN="LEFT">Colour for the ''padding'' part of a border border. Set to 
+<TD ALIGN="LEFT">Colour for the ``padding'' part of a border border. Set to 
        <TT>background_colour</TT> if unset.</TD>
 </TR>
 </TABLE>
        <TT>background_colour</TT> if unset.</TD>
 </TR>
 </TABLE>
@@ -485,14 +497,14 @@ indicating a number of pixels.
 </TR>
 <TR><TD ALIGN="LEFT"><TT>border_style</TT></TD>
 <TD ALIGN="LEFT">A string indicating the style of border; one of
 </TR>
 <TR><TD ALIGN="LEFT"><TT>border_style</TT></TD>
 <TD ALIGN="LEFT">A string indicating the style of border; one of
-                    elevated/inlaid/ridge/groove as seen in the
-                    above sketch.</TD>
+                    `<TT>elevated</TT>'/`<TT>inlaid</TT>'/`<TT>ridge</TT>'/`<TT>groove</TT>'
+                    as seen in the above sketch.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>border_sides</TT></TD>
 <TD ALIGN="LEFT">A string indicating which sides of the border
 </TR>
 <TR><TD ALIGN="LEFT"><TT>border_sides</TT></TD>
 <TD ALIGN="LEFT">A string indicating which sides of the border
-                     to draw: all/tb/lr for all, top and bottom, and
-                     left and right. To control between left/right
-                     and top/bottom, use the pixel options below.</TD>
+                     to draw: `<TT>all</TT>'/`<TT>tb</TT>'/`<TT>lr</TT>' for all, 
+                     top and bottom, and left and right. To control between
+                     left/right and top/bottom, use the pixel options below.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>highlight_pixels</TT></TD>
 <TD ALIGN="LEFT">Width of the highlight part of the border in pixels.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>highlight_pixels</TT></TD>
 <TD ALIGN="LEFT">Width of the highlight part of the border in pixels.</TD>
@@ -525,7 +537,7 @@ indicating a number of pixels.
 </TR>
 <TR><TD ALIGN="LEFT"><TT>text_align</TT></TD>
 <TD ALIGN="LEFT">How text is to be aligned in text boxes/tabs; one of
 </TR>
 <TR><TD ALIGN="LEFT"><TT>text_align</TT></TD>
 <TD ALIGN="LEFT">How text is to be aligned in text boxes/tabs; one of
-                  the strings left/right/center.</TD>
+                  the strings `<TT>left</TT>'/`<TT>right</TT>'/`<TT>center</TT>'.</TD>
 </TR>
 </TABLE>
 
 </TR>
 </TABLE>
 
@@ -558,13 +570,13 @@ indicating a number of pixels.
 
 <P>
 As discussed in previous sections, styles may have substyles to e.g.
 
 <P>
 As discussed in previous sections, styles may have substyles to e.g.
-indicate different states of the object being drawn. The ''de'' engine
+indicate different states of the object being drawn. The ``de'' engine
 limits what can be configured in substyles to the set of colours in the
 first table above, but also specifically interprets for the main style
 limits what can be configured in substyles to the set of colours in the
 first table above, but also specifically interprets for the main style
-<TT>tab-frame</TT> the substyles <TT>*-*-tagged</TT> and <TT>*-*-*-dragged</TT>
+`<TT>tab-frame</TT>' the substyles `<TT>*-*-tagged</TT>' and `<TT>*-*-*-dragged</TT>'
 by, respectively, drawing a right angle shape at the top right corner 
 of a tab and by shading the tab with a stipple pattern. Also for
 by, respectively, drawing a right angle shape at the top right corner 
 of a tab and by shading the tab with a stipple pattern. Also for
-menus the substyles <TT>*-*-submenu</TT> are handled as a special case.
+menus the substyles `<TT>*-*-submenu</TT>' are handled as a special case.
 
 <P>
 Substyles are defined with the function <A HREF="node7.html#fn:de.substyle"><TT>de.substyle</TT></A> within the
 
 <P>
 Substyles are defined with the function <A HREF="node7.html#fn:de.substyle"><TT>de.substyle</TT></A> within the
@@ -629,21 +641,39 @@ de.defstyle("tab-frame", {
 
 <P>
 
 
 <P>
 
-<H2><A NAME="SECTION00530000000000000000">
-<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN> Miscellaneous settings</A>
+<H2><A NAME="SECTION00530000000000000000"></A>
+<A NAME="sec:grmisc"></A>
+<BR>
+<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN> Miscellaneous settings
 </H2>
 
 <P>
 </H2>
 
 <P>
-The following style fields are independent of the drawing engine used,
-but are related to objects' styles and therefore configured in the drawing
-engine configuration file.
+
+<H3><A NAME="SECTION00531000000000000000">
+<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">1</SPAN> Frame user attributes</A>
+</H3>
 
 <P>
 
 <P>
+The function <A HREF="node7.html#fn:WFrame.set_grattr"><TT>WFrame.set_grattr</TT></A> may be used to give frames
+(and their tabs) arbitrary extra attributes to be passed to the
+drawing engine. Hence, by configuring such substyles in the style
+configuration files, and turning on the attribute when needed, 
+scripts may display visual cues related to the frame. There is
+also one extra attribute specially interpreted by the default
+drawing engine: the `<TT>numbered</TT>' attribute, which causes 
+numbers to be displayed on the tabs.
 
 
-<H3><A NAME="SECTION00531000000000000000">
-<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">1</SPAN> Extra fields for style <TT>frame</TT></A>
+<P>
+
+<H3><A NAME="SECTION00532000000000000000">
+<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">2</SPAN> Extra fields for style `<TT>frame</TT>'</A>
 </H3>
 
 </H3>
 
+<P>
+The following style fields are independent of the drawing engine used,
+but are related to objects' styles and therefore configured in the drawing
+engine configuration file.
+
 <P>
 <TABLE CELLPADDING=3 BORDER="1" WIDTH="100%">
 <TR><TD ALIGN="LEFT">Field</TD>
 <P>
 <TABLE CELLPADDING=3 BORDER="1" WIDTH="100%">
 <TR><TD ALIGN="LEFT">Field</TD>
@@ -651,8 +681,8 @@ engine configuration file.
 </TR>
 <TR><TD ALIGN="LEFT"><TT>bar</TT></TD>
 <TD ALIGN="LEFT">Controls the style of the tab-bar. Possible values
 </TR>
 <TR><TD ALIGN="LEFT"><TT>bar</TT></TD>
 <TD ALIGN="LEFT">Controls the style of the tab-bar. Possible values
-        are the strings <TT>"none"</TT>, <TT>"inside"</TT>, <TT>"outside"</TT>
-        and <TT>"shaped"</TT>, with the last providing the PWM-style
+        are the strings `<TT>none</TT>', `<TT>inside</TT>', `<TT>outside</TT>'
+        and `<TT>shaped</TT>', with the last providing the PWM-style
         tab-bars for floating frames.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>floatframe_tab_min_w</TT></TD>
         tab-bars for floating frames.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>floatframe_tab_min_w</TT></TD>
@@ -663,14 +693,17 @@ engine configuration file.
 <TR><TD ALIGN="LEFT"><TT>floatframe_bar_max_w_q</TT></TD>
 <TD ALIGN="LEFT">Maximum tab-bar width quotient of
        frame width for the shaped styles. A number in the 
 <TR><TD ALIGN="LEFT"><TT>floatframe_bar_max_w_q</TT></TD>
 <TD ALIGN="LEFT">Maximum tab-bar width quotient of
        frame width for the shaped styles. A number in the 
-       interval <SPAN CLASS="MATH"></SPAN>.</TD>
+       interval <SPAN CLASS="MATH"><IMG
+ WIDTH="42" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
+ SRC="img3.png"
+ ALT="$(0, 1]$"></SPAN>.</TD>
 </TR>
 </TABLE>
 
 <P>
 
 </TR>
 </TABLE>
 
 <P>
 
-<H3><A NAME="SECTION00532000000000000000">
-<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">2</SPAN> Extra fields for style <TT>dock</TT></A>
+<H3><A NAME="SECTION00533000000000000000">
+<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">3</SPAN> Extra fields for style `<TT>dock</TT>'</A>
 </H3>
 
 <P>
 </H3>
 
 <P>
@@ -680,12 +713,12 @@ engine configuration file.
 </TR>
 <TR><TD ALIGN="LEFT"><TT>outline_style</TT></TD>
 <TD ALIGN="LEFT">How borders are drawn:
 </TR>
 <TR><TD ALIGN="LEFT"><TT>outline_style</TT></TD>
 <TD ALIGN="LEFT">How borders are drawn:
-                       <TT>"none"</TT> - no border,
-                       <TT>"all"</TT> - border around whole dock,
-                       <TT>"each"</TT> - border around each dockapp.</TD>
+                       `<TT>none</TT>' - no border,
+                       `<TT>all</TT>' - border around whole dock,
+                       `<TT>each</TT>' - border around each dockapp.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>tile_size</TT></TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>tile_size</TT></TD>
-<TD ALIGN="LEFT">A table with entries <TT>width</TT> and <TT>height</TT>,
+<TD ALIGN="LEFT">A table with entries `<TT>width</TT>' and `<TT>height</TT>',
        indicating the width and height of tiles in pixels.</TD>
 </TR>
 </TABLE>
        indicating the width and height of tiles in pixels.</TD>
 </TR>
 </TABLE>
@@ -699,31 +732,31 @@ style configuration files.
 
 <DIV CLASS="navigation"><HR>
 <!--Navigation Panel-->
 
 <DIV CLASS="navigation"><HR>
 <!--Navigation Panel-->
-<A NAME="tex2html304"
+<A NAME="tex2html331"
   HREF="node6.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
   HREF="node6.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
-<A NAME="tex2html298"
+<A NAME="tex2html325"
   HREF="ionconf.html">
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
   HREF="ionconf.html">
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
-<A NAME="tex2html292"
+<A NAME="tex2html319"
   HREF="node4.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
   HREF="node4.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
-<A NAME="tex2html300"
+<A NAME="tex2html327"
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
-<A NAME="tex2html302"
+<A NAME="tex2html329"
   HREF="node11.html">
 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
 <BR>
   HREF="node11.html">
 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
 <BR>
-<B> Next:</B> <A NAME="tex2html305"
+<B> Next:</B> <A NAME="tex2html332"
   HREF="node6.html">5. Scripting</A>
   HREF="node6.html">5. Scripting</A>
-<B> Up:</B> <A NAME="tex2html299"
+<B> Up:</B> <A NAME="tex2html326"
   HREF="ionconf.html">Configuring and extending Ion3</A>
   HREF="ionconf.html">Configuring and extending Ion3</A>
-<B> Previous:</B> <A NAME="tex2html293"
+<B> Previous:</B> <A NAME="tex2html320"
   HREF="node4.html">3. Basic configuration</A>
   HREF="node4.html">3. Basic configuration</A>
- &nbsp; <B>  <A NAME="tex2html301"
+ &nbsp; <B>  <A NAME="tex2html328"
   HREF="node1.html">Contents</A></B> 
   HREF="node1.html">Contents</A></B> 
- &nbsp; <B>  <A NAME="tex2html303"
+ &nbsp; <B>  <A NAME="tex2html330"
   HREF="node11.html">Index</A></B> </DIV>
 <!--End of Navigation Panel-->
 
   HREF="node11.html">Index</A></B> </DIV>
 <!--End of Navigation Panel-->