]> git.decadent.org.uk Git - ion3.git/blobdiff - doc/ionconf/node7.html
Merge commit '20070318' into HEAD
[ion3.git] / doc / ionconf / node7.html
index 5a3e390e466263e9701eff33b458d3ec9d14b9f1..9b8b3e3d8db7d7e16466be2f186f92927422364a 100644 (file)
@@ -28,31 +28,31 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <BODY >
 
 <DIV CLASS="navigation"><!--Navigation Panel-->
-<A NAME="tex2html348"
+<A NAME="tex2html355"
   HREF="node8.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
-<A NAME="tex2html342"
+<A NAME="tex2html349"
   HREF="ionconf.html">
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
-<A NAME="tex2html336"
+<A NAME="tex2html343"
   HREF="node6.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
-<A NAME="tex2html344"
+<A NAME="tex2html351"
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
-<A NAME="tex2html346"
+<A NAME="tex2html353"
   HREF="node11.html">
 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
 <BR>
-<B> Next:</B> <A NAME="tex2html349"
+<B> Next:</B> <A NAME="tex2html356"
   HREF="node8.html">A. The GNU General</A>
-<B> Up:</B> <A NAME="tex2html343"
+<B> Up:</B> <A NAME="tex2html350"
   HREF="ionconf.html">Configuring and extending Ion3</A>
-<B> Previous:</B> <A NAME="tex2html337"
+<B> Previous:</B> <A NAME="tex2html344"
   HREF="node6.html">5. Scripting</A>
- &nbsp; <B>  <A NAME="tex2html345"
+ &nbsp; <B>  <A NAME="tex2html352"
   HREF="node1.html">Contents</A></B> 
- &nbsp; <B>  <A NAME="tex2html347"
+ &nbsp; <B>  <A NAME="tex2html354"
   HREF="node11.html">Index</A></B> 
 <BR>
 <BR></DIV>
@@ -61,89 +61,96 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
 
 <UL CLASS="ChildLinks">
-<LI><A NAME="tex2html350"
+<LI><A NAME="tex2html357"
   HREF="node7.html#SECTION00710000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN> Functions defined in <SPAN  CLASS="textit">ioncore</SPAN></A>
 <UL>
-<LI><A NAME="tex2html351"
+<LI><A NAME="tex2html358"
   HREF="node7.html#SECTION00711000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> WClientWin functions</A>
-<LI><A NAME="tex2html352"
+<LI><A NAME="tex2html359"
   HREF="node7.html#SECTION00712000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">2</SPAN> WFrame functions</A>
-<LI><A NAME="tex2html353"
+<LI><A NAME="tex2html360"
   HREF="node7.html#SECTION00713000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">3</SPAN> WGroup functions</A>
-<LI><A NAME="tex2html354"
+<LI><A NAME="tex2html361"
   HREF="node7.html#SECTION00714000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">4</SPAN> WGroupCW functions</A>
-<LI><A NAME="tex2html355"
+<LI><A NAME="tex2html362"
   HREF="node7.html#SECTION00715000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">5</SPAN> WGroupWS functions</A>
-<LI><A NAME="tex2html356"
+<LI><A NAME="tex2html363"
   HREF="node7.html#SECTION00716000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">6</SPAN> WInfoWin functions</A>
-<LI><A NAME="tex2html357"
+<LI><A NAME="tex2html364"
   HREF="node7.html#SECTION00717000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">7</SPAN> WMPlex functions</A>
-<LI><A NAME="tex2html358"
+<LI><A NAME="tex2html365"
   HREF="node7.html#SECTION00718000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">8</SPAN> WMoveresMode functions</A>
-<LI><A NAME="tex2html359"
+<LI><A NAME="tex2html366"
   HREF="node7.html#SECTION00719000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">9</SPAN> WRegion functions</A>
-<LI><A NAME="tex2html360"
+<LI><A NAME="tex2html367"
   HREF="node7.html#SECTION007110000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">10</SPAN> WRootWin functions</A>
-<LI><A NAME="tex2html361"
+<LI><A NAME="tex2html368"
   HREF="node7.html#SECTION007111000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">11</SPAN> WScreen functions</A>
-<LI><A NAME="tex2html362"
+<LI><A NAME="tex2html369"
   HREF="node7.html#SECTION007112000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">12</SPAN> WWindow functions</A>
-<LI><A NAME="tex2html363"
+<LI><A NAME="tex2html370"
   HREF="node7.html#SECTION007113000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">13</SPAN> global functions</A>
-<LI><A NAME="tex2html364"
+<LI><A NAME="tex2html371"
   HREF="node7.html#SECTION007114000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">14</SPAN> gr functions</A>
-<LI><A NAME="tex2html365"
+<LI><A NAME="tex2html372"
   HREF="node7.html#SECTION007115000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">15</SPAN> string functions</A>
-<LI><A NAME="tex2html366"
+<LI><A NAME="tex2html373"
   HREF="node7.html#SECTION007116000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">16</SPAN> table functions</A>
 </UL>
 <BR>
-<LI><A NAME="tex2html367"
+<LI><A NAME="tex2html374"
   HREF="node7.html#SECTION00720000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">2</SPAN> Functions defined in <SPAN  CLASS="textit">mod_tiling</SPAN></A>
 <UL>
-<LI><A NAME="tex2html368"
+<LI><A NAME="tex2html375"
   HREF="node7.html#SECTION00721000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">1</SPAN> WSplit functions</A>
-<LI><A NAME="tex2html369"
+<LI><A NAME="tex2html376"
   HREF="node7.html#SECTION00722000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">2</SPAN> WSplitInner functions</A>
-<LI><A NAME="tex2html370"
+<LI><A NAME="tex2html377"
   HREF="node7.html#SECTION00723000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">3</SPAN> WSplitRegion functions</A>
-<LI><A NAME="tex2html371"
+<LI><A NAME="tex2html378"
   HREF="node7.html#SECTION00724000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">4</SPAN> WSplitSplit functions</A>
-<LI><A NAME="tex2html372"
+<LI><A NAME="tex2html379"
   HREF="node7.html#SECTION00725000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">2</SPAN>.<SPAN CLASS="arabic">5</SPAN> WTiling functions</A>
 </UL>
 <BR>
-<LI><A NAME="tex2html373"
+<LI><A NAME="tex2html380"
   HREF="node7.html#SECTION00730000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">3</SPAN> Functions defined in <SPAN  CLASS="textit">mod_query</SPAN></A>
 <UL>
-<LI><A NAME="tex2html374"
+<LI><A NAME="tex2html381"
   HREF="node7.html#SECTION00731000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">1</SPAN> WComplProxy functions</A>
-<LI><A NAME="tex2html375"
+<LI><A NAME="tex2html382"
   HREF="node7.html#SECTION00732000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">2</SPAN> WEdln functions</A>
-<LI><A NAME="tex2html376"
+<LI><A NAME="tex2html383"
   HREF="node7.html#SECTION00733000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">3</SPAN>.<SPAN CLASS="arabic">3</SPAN> WInput functions</A>
 </UL>
 <BR>
-<LI><A NAME="tex2html377"
+<LI><A NAME="tex2html384"
   HREF="node7.html#SECTION00740000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">4</SPAN> Functions defined in <SPAN  CLASS="textit">mod_menu</SPAN></A>
 <UL>
-<LI><A NAME="tex2html378"
+<LI><A NAME="tex2html385"
   HREF="node7.html#SECTION00741000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">4</SPAN>.<SPAN CLASS="arabic">1</SPAN> WMenu functions</A>
 </UL>
 <BR>
-<LI><A NAME="tex2html379"
+<LI><A NAME="tex2html386"
   HREF="node7.html#SECTION00750000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">5</SPAN> Functions defined in <SPAN  CLASS="textit">mod_dock</SPAN></A>
 <UL>
-<LI><A NAME="tex2html380"
+<LI><A NAME="tex2html387"
   HREF="node7.html#SECTION00751000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">5</SPAN>.<SPAN CLASS="arabic">1</SPAN> WDock functions</A>
 </UL>
 <BR>
-<LI><A NAME="tex2html381"
+<LI><A NAME="tex2html388"
   HREF="node7.html#SECTION00760000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">6</SPAN> Functions defined in <SPAN  CLASS="textit">mod_sp</SPAN></A>
-<LI><A NAME="tex2html382"
-  HREF="node7.html#SECTION00770000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">7</SPAN> Functions defined in <SPAN  CLASS="textit">de</SPAN></A>
-<LI><A NAME="tex2html383"
-  HREF="node7.html#SECTION00780000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">8</SPAN> Hooks</A>
+<LI><A NAME="tex2html389"
+  HREF="node7.html#SECTION00770000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">7</SPAN> Functions defined in <SPAN  CLASS="textit">mod_statusbar</SPAN></A>
+<UL>
+<LI><A NAME="tex2html390"
+  HREF="node7.html#SECTION00771000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">7</SPAN>.<SPAN CLASS="arabic">1</SPAN> WStatusBar functions</A>
+</UL>
+<BR>
+<LI><A NAME="tex2html391"
+  HREF="node7.html#SECTION00780000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">8</SPAN> Functions defined in <SPAN  CLASS="textit">de</SPAN></A>
+<LI><A NAME="tex2html392"
+  HREF="node7.html#SECTION00790000000000000000"><SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">9</SPAN> Hooks</A>
 </UL>
 <!--End of Table of Child-Links-->
 <HR>
@@ -163,8 +170,8 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 </H2>
 
   <DL>
-<DD><A NAME="4188"></A>
-<A NAME="4189"></A>
+<DD><A NAME="4362"></A>
+<A NAME="4363"></A>
 <A NAME="fn:ioncore.TR"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -180,8 +187,8 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <P>
 
   <DL>
-<DD><A NAME="4190"></A>
-<A NAME="4191"></A>
+<DD><A NAME="4364"></A>
+<A NAME="4365"></A>
 <A NAME="fn:ioncore.bdoc"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -198,8 +205,8 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <P>
 
   <DL>
-<DD><A NAME="4192"></A>
-<A NAME="4193"></A>
+<DD><A NAME="4366"></A>
+<A NAME="4367"></A>
 <A NAME="fn:ioncore.chdir_for"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -215,8 +222,8 @@ original version by:  Nikos Drakos, CBLU, University of Leeds
 <P>
 
   <DL>
-<DD><A NAME="4194"></A>
-<A NAME="4195"></A>
+<DD><A NAME="4368"></A>
+<A NAME="4369"></A>
 <A NAME="fn:ioncore.compile_cmd"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -242,18 +249,18 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4196"></A>
-<A NAME="4197"></A>
+<DD><A NAME="4370"></A>
+<A NAME="4371"></A>
 <A NAME="fn:ioncore.create_ws"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>ioncore.create_ws(scr, tmpl, no_default)</TT>
+<DD><TT>ioncore.create_ws(scr, tmpl, layout)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
 <DD>Create new workspace on screen <TT>scr</TT>. The table <TT>tmpl</TT>
- may be used to override parts of <TT>default_ws_params</TT>,
and <TT>no_default</TT> may be set to <TT>true</TT> to complete ignore it.
+ may be used to override parts of the layout named with <TT>layout</TT>.
If no <TT>layout</TT> is given, "default" is used.
   
 </DD>
 </DL>
@@ -261,8 +268,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4198"></A>
-<A NAME="4199"></A>
+<DD><A NAME="4372"></A>
+<A NAME="4373"></A>
 <A NAME="fn:ioncore.defbindings"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -280,8 +287,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4200"></A>
-<A NAME="4201"></A>
+<DD><A NAME="4374"></A>
+<A NAME="4375"></A>
 <A NAME="fn:ioncore.defctxmenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -298,8 +305,27 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4202"></A>
-<A NAME="4203"></A>
+<DD><A NAME="4376"></A>
+<A NAME="4377"></A>
+<A NAME="fn:ioncore.deflayout"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>ioncore.deflayout(name, tab)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Define a new workspace layout with name <TT>name</TT>, and
+ attach/creation parameters given in <TT>tab</TT>. The layout
+ "empty" may not be defined.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4378"></A>
+<A NAME="4379"></A>
 <A NAME="fn:ioncore.defmenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -317,8 +343,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4204"></A>
-<A NAME="4205"></A>
+<DD><A NAME="4380"></A>
+<A NAME="4381"></A>
 <A NAME="fn:ioncore.defwinprop"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -334,8 +360,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4206"></A>
-<A NAME="4207"></A>
+<DD><A NAME="4382"></A>
+<A NAME="4383"></A>
 <A NAME="fn:ioncore.exec_on"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -357,8 +383,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4208"></A>
-<A NAME="4209"></A>
+<DD><A NAME="4384"></A>
+<A NAME="4385"></A>
 <A NAME="fn:ioncore.read_savefile"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -374,8 +400,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4210"></A>
-<A NAME="4211"></A>
+<DD><A NAME="4386"></A>
+<A NAME="4387"></A>
 <A NAME="fn:ioncore.get_savefile"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -392,8 +418,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4212"></A>
-<A NAME="4213"></A>
+<DD><A NAME="4388"></A>
+<A NAME="4389"></A>
 <A NAME="fn:ioncore.lookup_script"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -410,8 +436,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4214"></A>
-<A NAME="4215"></A>
+<DD><A NAME="4390"></A>
+<A NAME="4391"></A>
 <A NAME="fn:ioncore.write_savefile"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -428,8 +454,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4216"></A>
-<A NAME="4217"></A>
+<DD><A NAME="4392"></A>
+<A NAME="4393"></A>
 <A NAME="fn:ioncore.find_manager"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -446,8 +472,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4218"></A>
-<A NAME="4219"></A>
+<DD><A NAME="4394"></A>
+<A NAME="4395"></A>
 <A NAME="fn:ioncore.get_dir_for"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -463,8 +489,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4220"></A>
-<A NAME="4221"></A>
+<DD><A NAME="4396"></A>
+<A NAME="4397"></A>
 <A NAME="fn:ioncore.getbindings"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -480,8 +506,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4222"></A>
-<A NAME="4223"></A>
+<DD><A NAME="4398"></A>
+<A NAME="4399"></A>
 <A NAME="fn:ioncore.getctxmenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -497,16 +523,17 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4224"></A>
-<A NAME="4225"></A>
-<A NAME="fn:ioncore.getmenu"></A>  
+<DD><A NAME="4400"></A>
+<A NAME="4401"></A>
+<A NAME="fn:ioncore.getlayout"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>ioncore.getmenu(name)</TT>
+<DD><TT>ioncore.getlayout(name, all)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a menu defined with <A HREF="#fn:ioncore.defmenu"><TT>ioncore.defmenu</TT></A>.
+<DD>Get named layout (or all of the latter parameter is set,
+ but this is for internal use only).
   
 </DD>
 </DL>
@@ -514,16 +541,16 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4226"></A>
-<A NAME="4227"></A>
-<A NAME="fn:ioncore.getwinprop"></A>  
+<DD><A NAME="4402"></A>
+<A NAME="4403"></A>
+<A NAME="fn:ioncore.getmenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>ioncore.getwinprop(cwin)</TT>
+<DD><TT>ioncore.getmenu(name)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Find winprop table for <TT>cwin</TT>.
+<DD>Returns a menu defined with <A HREF="#fn:ioncore.defmenu"><TT>ioncore.defmenu</TT></A>.
   
 </DD>
 </DL>
@@ -531,16 +558,16 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4228"></A>
-<A NAME="4229"></A>
-<A NAME="fn:ioncore.aboutmsg"></A>  
+<DD><A NAME="4404"></A>
+<A NAME="4405"></A>
+<A NAME="fn:ioncore.getwinprop"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>string ioncore.aboutmsg()</TT>
+<DD><TT>ioncore.getwinprop(cwin)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns an about message (version, author, copyright notice).
+<DD>Find winprop table for <TT>cwin</TT>.
   
 </DD>
 </DL>
@@ -548,16 +575,16 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4230"></A>
-<A NAME="4231"></A>
-<A NAME="fn:ioncore.activity_first"></A>  
+<DD><A NAME="4406"></A>
+<A NAME="4407"></A>
+<A NAME="fn:ioncore.aboutmsg"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>WRegion ioncore.activity_first()</TT>
+<DD><TT>string ioncore.aboutmsg()</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Return first regio non activity list.
+<DD>Returns an about message (version, author, copyright notice).
   
 </DD>
 </DL>
@@ -565,16 +592,16 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4232"></A>
-<A NAME="4233"></A>
-<A NAME="fn:ioncore.activity_list"></A>  
+<DD><A NAME="4408"></A>
+<A NAME="4409"></A>
+<A NAME="fn:ioncore.activity_first"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table ioncore.activity_list()</TT>
+<DD><TT>WRegion ioncore.activity_first()</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Return list of regions with activity/urgency bit set.
+<DD>Return first regio non activity list.
   
 </DD>
 </DL>
@@ -582,16 +609,18 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4234"></A>
-<A NAME="4235"></A>
-<A NAME="fn:ioncore.clear_tags"></A>  
+<DD><A NAME="4410"></A>
+<A NAME="4411"></A>
+<A NAME="fn:ioncore.activity_i"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>void ioncore.clear_tags()</TT>
+<DD><TT>bool ioncore.activity_i(function iterfn)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Untag all regions.
+<DD>Iterate over activity list until <TT>iterfn</TT> returns <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -599,16 +628,18 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4236"></A>
-<A NAME="4237"></A>
-<A NAME="fn:ioncore.clientwin_list"></A>  
+<DD><A NAME="4412"></A>
+<A NAME="4413"></A>
+<A NAME="fn:ioncore.clientwin_i"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table ioncore.clientwin_list()</TT>
+<DD><TT>bool ioncore.clientwin_i(function fn)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Return a list of all client windows.
+<DD>Iterate over client windows until <TT>iterfn</TT> returns <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -616,8 +647,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4238"></A>
-<A NAME="4239"></A>
+<DD><A NAME="4414"></A>
+<A NAME="4415"></A>
 <A NAME="fn:ioncore.current"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -633,8 +664,8 @@ The string <TT>guard</TT>  maybe set to pose limits on <TT>_sub</TT>. Currently
 <P>
 
   <DL>
-<DD><A NAME="4240"></A>
-<A NAME="4241"></A>
+<DD><A NAME="4416"></A>
+<A NAME="4417"></A>
 <A NAME="fn:ioncore.defshortening"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -687,8 +718,32 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4242"></A>
-<A NAME="4243"></A>
+<DD><A NAME="4418"></A>
+<A NAME="4419"></A>
+<A NAME="fn:ioncore.detach"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool ioncore.detach(WRegion reg, string how)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Detach or reattach <TT>reg</TT>, depending on whether <TT>how</TT>
+ is 'set'/'unset'/'toggle'. (Detaching means making <TT>reg</TT> 
+ managed by its nearest ancestor WGroup, framed if <TT>reg</TT> is
+ not itself WFrame. Reattaching means making it managed where
+ it used to be managed, if a return-placeholder exists.)
+ If <TT>reg</TT> is the 'bottom' of some group, the whole group is
+ detached. If <TT>reg</TT> is a WWindow, it is put into a 
+ frame.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4420"></A>
+<A NAME="4421"></A>
 <A NAME="fn:ioncore.exec"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -707,8 +762,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4244"></A>
-<A NAME="4245"></A>
+<DD><A NAME="4422"></A>
+<A NAME="4423"></A>
 <A NAME="fn:ioncore.find_screen_id"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -716,10 +771,26 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Find the screen with numerical id <TT>id</TT>. If Xinerama is
- not present, <TT>id</TT> corresponds to X screen numbers. Otherwise
- the ids are some arbitrary ordering of Xinerama rootwins.
- If <TT>id</TT> is <SPAN CLASS="MATH"></SPAN>, the screen with the highest id is returned.
+<DD>Find the screen with numerical id <TT>id</TT>.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4424"></A>
+<A NAME="4425"></A>
+<A NAME="fn:ioncore.focushistory_i"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool ioncore.focushistory_i(function iterfn)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Iterate over focus history until <TT>iterfn</TT> returns <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -727,8 +798,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4246"></A>
-<A NAME="4247"></A>
+<DD><A NAME="4426"></A>
+<A NAME="4427"></A>
 <A NAME="fn:ioncore.get"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -744,8 +815,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4248"></A>
-<A NAME="4249"></A>
+<DD><A NAME="4428"></A>
+<A NAME="4429"></A>
 <A NAME="fn:ioncore.get_paths"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -761,8 +832,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4250"></A>
-<A NAME="4251"></A>
+<DD><A NAME="4430"></A>
+<A NAME="4431"></A>
 <A NAME="fn:ioncore.goto_activity"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -778,8 +849,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4252"></A>
-<A NAME="4253"></A>
+<DD><A NAME="4432"></A>
+<A NAME="4433"></A>
 <A NAME="fn:ioncore.goto_first"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -799,8 +870,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4254"></A>
-<A NAME="4255"></A>
+<DD><A NAME="4434"></A>
+<A NAME="4435"></A>
 <A NAME="fn:ioncore.goto_next"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -820,8 +891,8 @@ Similarly to sed's 's' command, <TT>rule</TT> may contain characters that are
 <P>
 
   <DL>
-<DD><A NAME="4256"></A>
-<A NAME="4257"></A>
+<DD><A NAME="4436"></A>
+<A NAME="4437"></A>
 <A NAME="fn:ioncore.goto_next_screen"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -841,8 +912,8 @@ Note that this function is asynchronous; the screen will not
 <P>
 
   <DL>
-<DD><A NAME="4258"></A>
-<A NAME="4259"></A>
+<DD><A NAME="4438"></A>
+<A NAME="4439"></A>
 <A NAME="fn:ioncore.goto_nth_screen"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -862,8 +933,8 @@ Note that this function is asynchronous; the screen will not
 <P>
 
   <DL>
-<DD><A NAME="4260"></A>
-<A NAME="4261"></A>
+<DD><A NAME="4440"></A>
+<A NAME="4441"></A>
 <A NAME="fn:ioncore.goto_prev_screen"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -883,8 +954,8 @@ Note that this function is asynchronous; the screen will not
 <P>
 
   <DL>
-<DD><A NAME="4262"></A>
-<A NAME="4263"></A>
+<DD><A NAME="4442"></A>
+<A NAME="4443"></A>
 <A NAME="fn:ioncore.goto_previous"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -904,8 +975,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4264"></A>
-<A NAME="4265"></A>
+<DD><A NAME="4444"></A>
+<A NAME="4445"></A>
 <A NAME="fn:ioncore.is_i18n"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -921,8 +992,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4266"></A>
-<A NAME="4267"></A>
+<DD><A NAME="4446"></A>
+<A NAME="4447"></A>
 <A NAME="fn:ioncore.load_module"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -938,8 +1009,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4268"></A>
-<A NAME="4269"></A>
+<DD><A NAME="4448"></A>
+<A NAME="4449"></A>
 <A NAME="fn:ioncore.lookup_clientwin"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -955,8 +1026,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4270"></A>
-<A NAME="4271"></A>
+<DD><A NAME="4450"></A>
+<A NAME="4451"></A>
 <A NAME="fn:ioncore.lookup_region"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -973,8 +1044,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4272"></A>
-<A NAME="4273"></A>
+<DD><A NAME="4452"></A>
+<A NAME="4453"></A>
 <A NAME="fn:ioncore.navi_first"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -992,8 +1063,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4274"></A>
-<A NAME="4275"></A>
+<DD><A NAME="4454"></A>
+<A NAME="4455"></A>
 <A NAME="fn:ioncore.navi_next"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1002,12 +1073,12 @@ Note that this function is asynchronous; the region will not
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
 <DD>Find region next from <TT>reg</TT> in direction <TT>dirstr</TT>
- (up/down/left/right/next/prev/any). The table param may
+ (up/down/left/right/next/prev/any). The table <TT>param</TT> may
  contain the boolean field <TT>nowrap</TT>, instructing not to wrap 
  around, and the WRegions <TT>no_ascend</TT> and <TT>no_descend</TT>,
- and functions <TT>ascend_filter</TT> and <TT>descend_filter</TT> from
- <TT>WRegion</TT>s (<TT>to</TT>, <TT>from</TT>), used to decide when to descend
- or ascend into another region. (TODO: more detailed explanation.)
+ and boolean functions <TT>ascend_filter</TT> and <TT>descend_filter</TT> 
+ on <TT>WRegion</TT> pairs (<TT>to</TT>, <TT>from</TT>), are used to decide when
+ to descend or ascend into another region.
   
 </DD>
 </DL>
@@ -1015,8 +1086,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4276"></A>
-<A NAME="4277"></A>
+<DD><A NAME="4456"></A>
+<A NAME="4457"></A>
 <A NAME="fn:ioncore.popen_bgread"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1034,8 +1105,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4278"></A>
-<A NAME="4279"></A>
+<DD><A NAME="4458"></A>
+<A NAME="4459"></A>
 <A NAME="fn:ioncore.progname"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1051,16 +1122,19 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4280"></A>
-<A NAME="4281"></A>
-<A NAME="fn:ioncore.region_list"></A>  
+<DD><A NAME="4460"></A>
+<A NAME="4461"></A>
+<A NAME="fn:ioncore.region_i"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table ioncore.region_list(string typenam)</TT>
+<DD><TT>bool ioncore.region_i(function fn, string typenam)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Find all non-client window regions inheriting <TT>typenam</TT>.
+<DD>Iterate over all non-client window regions with (inherited) class
+ <TT>typenam</TT> until <TT>iterfn</TT> returns <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -1068,8 +1142,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4282"></A>
-<A NAME="4283"></A>
+<DD><A NAME="4462"></A>
+<A NAME="4463"></A>
 <A NAME="fn:ioncore.request_selection"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1086,8 +1160,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4284"></A>
-<A NAME="4285"></A>
+<DD><A NAME="4464"></A>
+<A NAME="4465"></A>
 <A NAME="fn:ioncore.resign"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1104,8 +1178,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4286"></A>
-<A NAME="4287"></A>
+<DD><A NAME="4466"></A>
+<A NAME="4467"></A>
 <A NAME="fn:ioncore.restart"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1121,8 +1195,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4288"></A>
-<A NAME="4289"></A>
+<DD><A NAME="4468"></A>
+<A NAME="4469"></A>
 <A NAME="fn:ioncore.restart_other"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1138,8 +1212,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4290"></A>
-<A NAME="4291"></A>
+<DD><A NAME="4470"></A>
+<A NAME="4471"></A>
 <A NAME="fn:ioncore.set"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1208,9 +1282,14 @@ Note that this function is asynchronous; the region will not
                           One of ''udlr'' (up-down, then left-right), 
                           ''lrud'' (left-right, then up-down) or ''random''.</TD>
 </TR>
-<TR><TD ALIGN="LEFT"><TT>default_ws_params</TT></TD>
-<TD ALIGN="LEFT">(table) Default workspace layout; the 
-                          attach/creation parameters for a WGroup.</TD>
+<TR><TD ALIGN="LEFT"><TT>mousefocus</TT></TD>
+<TD ALIGN="LEFT">String: ''disable'' or ''sloppy''.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>unsqueeze</TT></TD>
+<TD ALIGN="LEFT">(boolean) Auto-unsqueeze transients/menus/queries/etc.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>autoraise</TT></TD>
+<TD ALIGN="LEFT">(boolean) Autoraise regions in groups on goto.</TD>
 </TR>
 </TABLE>
 
@@ -1229,25 +1308,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4292"></A>
-<A NAME="4293"></A>
-<A NAME="fn:ioncore.set_get_winprop_fn"></A>  
-</DD>
-<DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>void ioncore.set_get_winprop_fn(function fn)</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Set function used to look up winprops.
-  
-</DD>
-</DL>
-
-<P>
-
-  <DL>
-<DD><A NAME="4294"></A>
-<A NAME="4295"></A>
+<DD><A NAME="4472"></A>
+<A NAME="4473"></A>
 <A NAME="fn:ioncore.set_paths"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1263,8 +1325,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4296"></A>
-<A NAME="4297"></A>
+<DD><A NAME="4474"></A>
+<A NAME="4475"></A>
 <A NAME="fn:ioncore.set_selection"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1280,8 +1342,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4298"></A>
-<A NAME="4299"></A>
+<DD><A NAME="4476"></A>
+<A NAME="4477"></A>
 <A NAME="fn:ioncore.shutdown"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1297,8 +1359,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4300"></A>
-<A NAME="4301"></A>
+<DD><A NAME="4478"></A>
+<A NAME="4479"></A>
 <A NAME="fn:ioncore.snapshot"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1314,16 +1376,52 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4302"></A>
-<A NAME="4303"></A>
-<A NAME="fn:ioncore.tagged_list"></A>  
+<DD><A NAME="4480"></A>
+<A NAME="4481"></A>
+<A NAME="fn:ioncore.tagged_clear"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table ioncore.tagged_list()</TT>
+<DD><TT>void ioncore.tagged_clear()</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a list of tagged regions.
+<DD>Untag all regions.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4482"></A>
+<A NAME="4483"></A>
+<A NAME="fn:ioncore.tagged_first"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>WRegion ioncore.tagged_first(bool untag)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Returns first tagged object, untagging it as well if <TT>untag</TT>is set.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4484"></A>
+<A NAME="4485"></A>
+<A NAME="fn:ioncore.tagged_i"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool ioncore.tagged_i(function iterfn)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Iterate over tagged regions until <TT>iterfn</TT> returns <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -1331,16 +1429,19 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4304"></A>
-<A NAME="4305"></A>
-<A NAME="fn:ioncore.tags_first"></A>  
+<DD><A NAME="4486"></A>
+<A NAME="4487"></A>
+<A NAME="fn:ioncore.unsqueeze"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>WRegion ioncore.tags_first()</TT>
+<DD><TT>void ioncore.unsqueeze(WRegion reg, bool override)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns first tagged object.
+<DD>Try to detach <TT>reg</TT> if it fits poorly in its 
+ current location. This function does not do anything,
+ unless <TT>override</TT> is set or the <TT>unsqueeze</TT> option
+ of <A HREF="#fn:ioncore.set"><TT>ioncore.set</TT></A> is set.
   
 </DD>
 </DL>
@@ -1348,8 +1449,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4306"></A>
-<A NAME="4307"></A>
+<DD><A NAME="4488"></A>
+<A NAME="4489"></A>
 <A NAME="fn:ioncore.version"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1365,8 +1466,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4308"></A>
-<A NAME="4309"></A>
+<DD><A NAME="4490"></A>
+<A NAME="4491"></A>
 <A NAME="fn:ioncore.warn"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1383,8 +1484,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4310"></A>
-<A NAME="4311"></A>
+<DD><A NAME="4492"></A>
+<A NAME="4493"></A>
 <A NAME="fn:ioncore.warn_traced"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1400,8 +1501,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4312"></A>
-<A NAME="4313"></A>
+<DD><A NAME="4494"></A>
+<A NAME="4495"></A>
 <A NAME="fn:ioncore.x_change_property"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1420,8 +1521,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4314"></A>
-<A NAME="4315"></A>
+<DD><A NAME="4496"></A>
+<A NAME="4497"></A>
 <A NAME="fn:ioncore.x_delete_property"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1437,8 +1538,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4316"></A>
-<A NAME="4317"></A>
+<DD><A NAME="4498"></A>
+<A NAME="4499"></A>
 <A NAME="fn:ioncore.x_get_atom_name"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1455,8 +1556,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4318"></A>
-<A NAME="4319"></A>
+<DD><A NAME="4500"></A>
+<A NAME="4501"></A>
 <A NAME="fn:ioncore.x_get_text_property"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1475,8 +1576,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4320"></A>
-<A NAME="4321"></A>
+<DD><A NAME="4502"></A>
+<A NAME="4503"></A>
 <A NAME="fn:ioncore.x_get_window_property"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1497,8 +1598,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4322"></A>
-<A NAME="4323"></A>
+<DD><A NAME="4504"></A>
+<A NAME="4505"></A>
 <A NAME="fn:ioncore.x_intern_atom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1514,8 +1615,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4324"></A>
-<A NAME="4325"></A>
+<DD><A NAME="4506"></A>
+<A NAME="4507"></A>
 <A NAME="fn:ioncore.x_set_text_property"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1533,8 +1634,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4326"></A>
-<A NAME="4327"></A>
+<DD><A NAME="4508"></A>
+<A NAME="4509"></A>
 <A NAME="fn:ioncore.kpress"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1552,8 +1653,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4328"></A>
-<A NAME="4329"></A>
+<DD><A NAME="4510"></A>
+<A NAME="4511"></A>
 <A NAME="fn:ioncore.kpress_wait"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1572,8 +1673,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4330"></A>
-<A NAME="4331"></A>
+<DD><A NAME="4512"></A>
+<A NAME="4513"></A>
 <A NAME="fn:ioncore.match_winprop_name"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1589,8 +1690,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4332"></A>
-<A NAME="4333"></A>
+<DD><A NAME="4514"></A>
+<A NAME="4515"></A>
 <A NAME="fn:ioncore.mclick"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1609,8 +1710,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4334"></A>
-<A NAME="4335"></A>
+<DD><A NAME="4516"></A>
+<A NAME="4517"></A>
 <A NAME="fn:ioncore.mdblclick"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1627,8 +1728,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4336"></A>
-<A NAME="4337"></A>
+<DD><A NAME="4518"></A>
+<A NAME="4519"></A>
 <A NAME="fn:ioncore.mdrag"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1648,19 +1749,23 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4338"></A>
-<A NAME="4339"></A>
+<DD><A NAME="4520"></A>
+<A NAME="4521"></A>
 <A NAME="fn:ioncore.menuentry"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>ioncore.menuentry(name, cmd, guard)</TT>
+<DD><TT>ioncore.menuentry(name, cmd, guard_or_opts)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
 <DD>Use this function to define normal menu entries. The string <TT>name</TT> 
- is the string shown in the visual representation of menu, and the
- parameter <TT>cmd</TT> and <TT>guard</TT> are similar to those of
- <A HREF="#fn:ioncore.defbindings"><TT>ioncore.defbindings</TT></A>.
+ is the string shown in the visual representation of menu. The
+ parameter <TT>cmd</TT> and <TT>guard_or_opts</TT> (when string) are similar
+ to those of <A HREF="#fn:ioncore.defbindings"><TT>ioncore.defbindings</TT></A>.  If <TT>guard_or_opts</TT> is
+ a table, it may contains the <TT>guard</TT> field, and the <TT>priority</TT>
+ field, for controlling positioning of entries in context menus.
+ (The default priority is 1 for most entries, and -1 for auto-generated
+ submenus.)
   
 </DD>
 </DL>
@@ -1668,8 +1773,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4340"></A>
-<A NAME="4341"></A>
+<DD><A NAME="4522"></A>
+<A NAME="4523"></A>
 <A NAME="fn:ioncore.mpress"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1686,8 +1791,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4342"></A>
-<A NAME="4343"></A>
+<DD><A NAME="4524"></A>
+<A NAME="4525"></A>
 <A NAME="fn:ioncore.refresh_stylelist"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1703,8 +1808,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4344"></A>
-<A NAME="4345"></A>
+<DD><A NAME="4526"></A>
+<A NAME="4527"></A>
 <A NAME="fn:ioncore.submap"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1723,8 +1828,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4346"></A>
-<A NAME="4347"></A>
+<DD><A NAME="4528"></A>
+<A NAME="4529"></A>
 <A NAME="fn:ioncore.submenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1743,45 +1848,48 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 </DD>
 </DL>
 
-<P>
-
-<H3><A NAME="SECTION00711000000000000000">
-<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> WClientWin functions</A>
-</H3>
-
 <P>
 
   <DL>
-<DD><A NAME="4349"></A>
-<A NAME="4350"></A>
-<A NAME="fn:WClientWin.get_ident"></A>  
+<DD><A NAME="4530"></A>
+<A NAME="4531"></A>
+<A NAME="fn:ioncore.tagged_attach"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table WClientWin.get_ident(WClientWin cwin)</TT>
+<DD><TT>ioncore.tagged_attach(reg, param)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a table containing the properties <TT>WM_CLASS</TT> (table entries
- <TT>instance</TT> and <TT>class</TT>) and  <TT>WM_WINDOW_ROLE</TT> (<TT>role</TT>)
- properties for <TT>cwin</TT>. If a property is not set, the corresponding 
field(s) are unset in the  table.
+<DD>Attach tagged regions to <TT>reg</TT>. The method of attach
+ depends on the types of attached regions and whether <TT>reg</TT> 
+ implements <TT>attach_framed</TT> and <TT>attach</TT>. If <TT>param</TT>
is not set, the default of <code>{switchto=true}</code> is used.
   
 </DD>
 </DL>
 
+<P>
+
+<H3><A NAME="SECTION00711000000000000000">
+<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">1</SPAN> WClientWin functions</A>
+</H3>
+
 <P>
 
   <DL>
-<DD><A NAME="4351"></A>
-<A NAME="4352"></A>
-<A NAME="fn:WClientWin.is_fullscreen"></A>  
+<DD><A NAME="4533"></A>
+<A NAME="4534"></A>
+<A NAME="fn:WClientWin.get_ident"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>bool WClientWin.is_fullscreen(WClientWin cwin)</TT>
+<DD><TT>table WClientWin.get_ident(WClientWin cwin)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Is <TT>cwin</TT> in full screen mode?
+<DD>Returns a table containing the properties <TT>WM_CLASS</TT> (table entries
+ <TT>instance</TT> and <TT>class</TT>) and  <TT>WM_WINDOW_ROLE</TT> (<TT>role</TT>)
+ properties for <TT>cwin</TT>. If a property is not set, the corresponding 
+ field(s) are unset in the  table.
   
 </DD>
 </DL>
@@ -1789,8 +1897,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4353"></A>
-<A NAME="4354"></A>
+<DD><A NAME="4535"></A>
+<A NAME="4536"></A>
 <A NAME="fn:WClientWin.kill"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1807,8 +1915,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4355"></A>
-<A NAME="4356"></A>
+<DD><A NAME="4537"></A>
+<A NAME="4538"></A>
 <A NAME="fn:WClientWin.nudge"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1825,8 +1933,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4357"></A>
-<A NAME="4358"></A>
+<DD><A NAME="4539"></A>
+<A NAME="4540"></A>
 <A NAME="fn:WClientWin.quote_next"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1842,27 +1950,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4359"></A>
-<A NAME="4360"></A>
-<A NAME="fn:WClientWin.set_fullscreen"></A>  
-</DD>
-<DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>bool WClientWin.set_fullscreen(WClientWin cwin, string how)</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Set client window <TT>cwin</TT> full screen state according to the 
- parameter <TT>how</TT> (set/unset/toggle). Resulting state is returned,
- which may not be what was requested.
-  
-</DD>
-</DL>
-
-<P>
-
-  <DL>
-<DD><A NAME="4361"></A>
-<A NAME="4362"></A>
+<DD><A NAME="4541"></A>
+<A NAME="4542"></A>
 <A NAME="fn:WClientWin.xid"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1884,8 +1973,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4364"></A>
-<A NAME="4365"></A>
+<DD><A NAME="4544"></A>
+<A NAME="4545"></A>
 <A NAME="fn:WFrame.is_shaded"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1901,8 +1990,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4366"></A>
-<A NAME="4367"></A>
+<DD><A NAME="4546"></A>
+<A NAME="4547"></A>
 <A NAME="fn:WFrame.maximize_horiz"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1918,8 +2007,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4368"></A>
-<A NAME="4369"></A>
+<DD><A NAME="4548"></A>
+<A NAME="4549"></A>
 <A NAME="fn:WFrame.maximize_vert"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1935,8 +2024,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4370"></A>
-<A NAME="4371"></A>
+<DD><A NAME="4550"></A>
+<A NAME="4551"></A>
 <A NAME="fn:WFrame.mode"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1952,8 +2041,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4372"></A>
-<A NAME="4373"></A>
+<DD><A NAME="4552"></A>
+<A NAME="4553"></A>
 <A NAME="fn:WFrame.p_switch_tab"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1970,8 +2059,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4374"></A>
-<A NAME="4375"></A>
+<DD><A NAME="4554"></A>
+<A NAME="4555"></A>
 <A NAME="fn:WFrame.p_tabdrag"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -1989,8 +2078,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4376"></A>
-<A NAME="4377"></A>
+<DD><A NAME="4556"></A>
+<A NAME="4557"></A>
 <A NAME="fn:WFrame.set_mode"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2006,8 +2095,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4378"></A>
-<A NAME="4379"></A>
+<DD><A NAME="4558"></A>
+<A NAME="4559"></A>
 <A NAME="fn:WFrame.set_numbers"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2025,8 +2114,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4380"></A>
-<A NAME="4381"></A>
+<DD><A NAME="4560"></A>
+<A NAME="4561"></A>
 <A NAME="fn:WFrame.set_shaded"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2050,8 +2139,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4383"></A>
-<A NAME="4384"></A>
+<DD><A NAME="4563"></A>
+<A NAME="4564"></A>
 <A NAME="fn:WGroup.attach"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2069,8 +2158,8 @@ When a keyboard resize function is called, and at most <TT>kbresize_t_max</TT>
 <P>
 
   <DL>
-<DD><A NAME="4385"></A>
-<A NAME="4386"></A>
+<DD><A NAME="4565"></A>
+<A NAME="4566"></A>
 <A NAME="fn:WGroup.attach_new"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2116,8 +2205,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4387"></A>
-<A NAME="4388"></A>
+<DD><A NAME="4567"></A>
+<A NAME="4568"></A>
 <A NAME="fn:WGroup.bottom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2133,27 +2222,84 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4389"></A>
-<A NAME="4390"></A>
-<A NAME="fn:WGroup.managed_list"></A>  
+<DD><A NAME="4569"></A>
+<A NAME="4570"></A>
+<A NAME="fn:WGroup.is_fullscreen"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table WGroup.managed_list(WGroup ws)</TT>
+<DD><TT>bool WGroup.is_fullscreen(WGroup grp)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a list of regions managed by the workspace (frames, mostly).
+<DD>Is <TT>reg</TT> in full screen mode?
   
 </DD>
 </DL>
 
 <P>
 
-<H3><A NAME="SECTION00714000000000000000">
-<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">4</SPAN> WGroupCW functions</A>
-</H3>
-
-<P>
+  <DL>
+<DD><A NAME="4571"></A>
+<A NAME="4572"></A>
+<A NAME="fn:WGroup.managed_i"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool WGroup.managed_i(WGroup ws, function iterfn)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Iterate over managed regions of <TT>ws</TT> until <TT>iterfn</TT> returns
+ <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4573"></A>
+<A NAME="4574"></A>
+<A NAME="fn:WGroup.set_bottom"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool WGroup.set_bottom(WGroup ws, WRegion reg)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Sets the 'bottom' of <TT>ws</TT>. The region <TT>reg</TT> must already
+ be managed by <TT>ws</TT>, unless <TT>nil</TT>.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4575"></A>
+<A NAME="4576"></A>
+<A NAME="fn:WGroup.set_fullscreen"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool WGroup.set_fullscreen(WGroup grp, string how)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Set client window <TT>reg</TT> full screen state according to the 
+ parameter <TT>how</TT> (set/unset/toggle). Resulting state is returned,
+ which may not be what was requested.
+  
+</DD>
+</DL>
+
+<P>
+
+<H3><A NAME="SECTION00714000000000000000">
+<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">4</SPAN> WGroupCW functions</A>
+</H3>
+
+<P>
 
 <H3><A NAME="SECTION00715000000000000000">
 <SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">1</SPAN>.<SPAN CLASS="arabic">5</SPAN> WGroupWS functions</A>
@@ -2162,8 +2308,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4393"></A>
-<A NAME="4394"></A>
+<DD><A NAME="4579"></A>
+<A NAME="4580"></A>
 <A NAME="fn:WGroupWS.attach_framed"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2201,12 +2347,12 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4396"></A>
-<A NAME="4397"></A>
+<DD><A NAME="4582"></A>
+<A NAME="4583"></A>
 <A NAME="fn:WInfoWin.set_text"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>void WInfoWin.set_text(WInfoWin p, string str)</TT>
+<DD><TT>void WInfoWin.set_text(WInfoWin p, string str, integer maxw)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
@@ -2224,8 +2370,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4399"></A>
-<A NAME="4400"></A>
+<DD><A NAME="4585"></A>
+<A NAME="4586"></A>
 <A NAME="fn:WMPlex.attach"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2243,8 +2389,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4401"></A>
-<A NAME="4402"></A>
+<DD><A NAME="4587"></A>
+<A NAME="4588"></A>
 <A NAME="fn:WMPlex.attach_new"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2289,8 +2435,7 @@ In addition parameters to the region to be created are passed in this
                   This option overrides <TT>switchto</TT>.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>sizepolicy</TT></TD>
-<TD ALIGN="LEFT">(integer) Size policy.
-                     (TODO: document them somewhere.)</TD>
+<TD ALIGN="LEFT">(integer) Size policy.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><TT>geom</TT></TD>
 <TD ALIGN="LEFT">(table) Geometry specification.</TD>
@@ -2307,25 +2452,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4403"></A>
-<A NAME="4404"></A>
-<A NAME="fn:WMPlex.attach_tagged"></A>  
-</DD>
-<DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>void WMPlex.attach_tagged(WMPlex mplex)</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Attach all tagged regions to <TT>mplex</TT>.
-  
-</DD>
-</DL>
-
-<P>
-
-  <DL>
-<DD><A NAME="4405"></A>
-<A NAME="4406"></A>
+<DD><A NAME="4589"></A>
+<A NAME="4590"></A>
 <A NAME="fn:WMPlex.dec_index"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2341,8 +2469,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4407"></A>
-<A NAME="4408"></A>
+<DD><A NAME="4591"></A>
+<A NAME="4592"></A>
 <A NAME="fn:WMPlex.get_index"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2350,9 +2478,9 @@ In addition parameters to the region to be created are passed in this
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Get index of <TT>reg</TT> within the multiplexer on list 1. The first region 
- managed by <TT>mplex</TT> has index zero. If <TT>reg</TT> is not managed by 
<TT>mplex</TT>, -1 is returned.
+<DD>Get index of <TT>reg</TT> on the mutually exclusive list of <TT>mplex</TT>.
+ The indices begin from zero.. If <TT>reg</TT> is not on the list,
+ -1 is returned.
   
 </DD>
 </DL>
@@ -2360,8 +2488,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4409"></A>
-<A NAME="4410"></A>
+<DD><A NAME="4593"></A>
+<A NAME="4594"></A>
 <A NAME="fn:WMPlex.get_stdisp"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2378,8 +2506,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4411"></A>
-<A NAME="4412"></A>
+<DD><A NAME="4595"></A>
+<A NAME="4596"></A>
 <A NAME="fn:WMPlex.inc_index"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2395,8 +2523,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4413"></A>
-<A NAME="4414"></A>
+<DD><A NAME="4597"></A>
+<A NAME="4598"></A>
 <A NAME="fn:WMPlex.is_hidden"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2412,16 +2540,19 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4415"></A>
-<A NAME="4416"></A>
-<A NAME="fn:WMPlex.managed_list"></A>  
+<DD><A NAME="4599"></A>
+<A NAME="4600"></A>
+<A NAME="fn:WMPlex.managed_i"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table WMPlex.managed_list(WMPlex mplex)</TT>
+<DD><TT>bool WMPlex.managed_i(WMPlex mplex, function iterfn)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a list of all regions managed by <TT>mplex</TT>.
+<DD>Iterate over managed regions of <TT>mplex</TT> until <TT>iterfn</TT> returns
+ <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -2429,8 +2560,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4417"></A>
-<A NAME="4418"></A>
+<DD><A NAME="4601"></A>
+<A NAME="4602"></A>
 <A NAME="fn:WMPlex.mx_count"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2446,8 +2577,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4419"></A>
-<A NAME="4420"></A>
+<DD><A NAME="4603"></A>
+<A NAME="4604"></A>
 <A NAME="fn:WMPlex.mx_current"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2464,17 +2595,19 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4421"></A>
-<A NAME="4422"></A>
-<A NAME="fn:WMPlex.mx_list"></A>  
+<DD><A NAME="4605"></A>
+<A NAME="4606"></A>
+<A NAME="fn:WMPlex.mx_i"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table WMPlex.mx_list(WMPlex mplex)</TT>
+<DD><TT>bool WMPlex.mx_i(WMPlex mplex, function iterfn)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a list of regions on the numbered/mutually exclusive list of 
- <TT>mplex</TT>.
+<DD>Iterate over numbered/mutually exclusive region list of <TT>mplex</TT> 
+ until <TT>iterfn</TT> returns <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -2482,8 +2615,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4423"></A>
-<A NAME="4424"></A>
+<DD><A NAME="4607"></A>
+<A NAME="4608"></A>
 <A NAME="fn:WMPlex.mx_nth"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2500,8 +2633,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4425"></A>
-<A NAME="4426"></A>
+<DD><A NAME="4609"></A>
+<A NAME="4610"></A>
 <A NAME="fn:WMPlex.set_hidden"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2519,8 +2652,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4427"></A>
-<A NAME="4428"></A>
+<DD><A NAME="4611"></A>
+<A NAME="4612"></A>
 <A NAME="fn:WMPlex.set_index"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2528,14 +2661,14 @@ In addition parameters to the region to be created are passed in this
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Set index of <TT>reg</TT> within the multiplexer to <TT>index</TT> within 
the mutually exclusive list. Special values for <TT>index</TT> are:
+<DD>Set index of <TT>reg</TT> to <TT>index</TT> within the mutually exclusive 
list of <TT>mplex</TT>. Special values for <TT>index</TT> are:
  <TABLE CELLPADDING=3 WIDTH="100%">
 <TR><TD ALIGN="LEFT"><SPAN CLASS="MATH"></SPAN></TD>
-<TD ALIGN="LEFT">After <A HREF="#fn:WMPlex.mx_current"><TT>WMPlex.mx_current</TT></A>.</TD>
+<TD ALIGN="LEFT">Last.</TD>
 </TR>
 <TR><TD ALIGN="LEFT"><SPAN CLASS="MATH"></SPAN></TD>
-<TD ALIGN="LEFT">Last.</TD>
+<TD ALIGN="LEFT">After <A HREF="#fn:WMPlex.mx_current"><TT>WMPlex.mx_current</TT></A>.</TD>
 </TR>
 </TABLE>
   
@@ -2545,8 +2678,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4429"></A>
-<A NAME="4430"></A>
+<DD><A NAME="4613"></A>
+<A NAME="4614"></A>
 <A NAME="fn:WMPlex.set_stdisp"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2585,8 +2718,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4431"></A>
-<A NAME="4432"></A>
+<DD><A NAME="4615"></A>
+<A NAME="4616"></A>
 <A NAME="fn:WMPlex.switch_next"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2603,8 +2736,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4433"></A>
-<A NAME="4434"></A>
+<DD><A NAME="4617"></A>
+<A NAME="4618"></A>
 <A NAME="fn:WMPlex.switch_nth"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2620,8 +2753,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4435"></A>
-<A NAME="4436"></A>
+<DD><A NAME="4619"></A>
+<A NAME="4620"></A>
 <A NAME="fn:WMPlex.switch_prev"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2644,8 +2777,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4438"></A>
-<A NAME="4439"></A>
+<DD><A NAME="4622"></A>
+<A NAME="4623"></A>
 <A NAME="fn:WMoveresMode.cancel"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2662,8 +2795,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4440"></A>
-<A NAME="4441"></A>
+<DD><A NAME="4624"></A>
+<A NAME="4625"></A>
 <A NAME="fn:WMoveresMode.finish"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2680,8 +2813,25 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4442"></A>
-<A NAME="4443"></A>
+<DD><A NAME="4626"></A>
+<A NAME="4627"></A>
+<A NAME="fn:WMoveresMode.geom"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>table WMoveresMode.geom(WMoveresMode mode)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Returns current geometry.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4628"></A>
+<A NAME="4629"></A>
 <A NAME="fn:WMoveresMode.move"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2713,8 +2863,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4444"></A>
-<A NAME="4445"></A>
+<DD><A NAME="4630"></A>
+<A NAME="4631"></A>
 <A NAME="fn:WMoveresMode.resize"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2730,6 +2880,24 @@ In addition parameters to the region to be created are passed in this
 </DD>
 </DL>
 
+<P>
+
+  <DL>
+<DD><A NAME="4632"></A>
+<A NAME="4633"></A>
+<A NAME="fn:WMoveresMode.rqgeom"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>table WMoveresMode.rqgeom(WMoveresMode mode, table g)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Request exact geometry in move/resize mode. For details on parameters,
+ see <A HREF="#fn:WRegion.rqgeom"><TT>WRegion.rqgeom</TT></A>.
+  
+</DD>
+</DL>
+
 <P>
 
 <H3><A NAME="SECTION00719000000000000000">
@@ -2739,8 +2907,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4447"></A>
-<A NAME="4448"></A>
+<DD><A NAME="4635"></A>
+<A NAME="4636"></A>
 <A NAME="fn:WRegion.begin_kbresize"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2761,8 +2929,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4449"></A>
-<A NAME="4450"></A>
+<DD><A NAME="4637"></A>
+<A NAME="4638"></A>
 <A NAME="fn:WRegion.current"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2779,8 +2947,8 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4451"></A>
-<A NAME="4452"></A>
+<DD><A NAME="4639"></A>
+<A NAME="4640"></A>
 <A NAME="fn:WRegion.geom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2797,8 +2965,26 @@ In addition parameters to the region to be created are passed in this
 <P>
 
   <DL>
-<DD><A NAME="4453"></A>
-<A NAME="4454"></A>
+<DD><A NAME="4641"></A>
+<A NAME="4642"></A>
+<A NAME="fn:WRegion.get_configuration"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>table WRegion.get_configuration(WRegion reg, bool clientwins)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Get configuration tree. If <TT>clientwins</TT> is unset, client windows
+ are filtered out.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4643"></A>
+<A NAME="4644"></A>
 <A NAME="fn:WRegion.goto"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2819,8 +3005,26 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4455"></A>
-<A NAME="4456"></A>
+<DD><A NAME="4645"></A>
+<A NAME="4646"></A>
+<A NAME="fn:WRegion.groupleader_of"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>WRegion WRegion.groupleader_of(WRegion reg)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Returns the group of <TT>reg</TT>, if <TT>reg</TT> is its bottom,
+ and <TT>reg</TT> itself otherwise.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="4647"></A>
+<A NAME="4648"></A>
 <A NAME="fn:WRegion.is_active"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2836,8 +3040,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4457"></A>
-<A NAME="4458"></A>
+<DD><A NAME="4649"></A>
+<A NAME="4650"></A>
 <A NAME="fn:WRegion.is_activity"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2853,8 +3057,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4459"></A>
-<A NAME="4460"></A>
+<DD><A NAME="4651"></A>
+<A NAME="4652"></A>
 <A NAME="fn:WRegion.is_mapped"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2870,8 +3074,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4461"></A>
-<A NAME="4462"></A>
+<DD><A NAME="4653"></A>
+<A NAME="4654"></A>
 <A NAME="fn:WRegion.is_tagged"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2887,8 +3091,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4463"></A>
-<A NAME="4464"></A>
+<DD><A NAME="4655"></A>
+<A NAME="4656"></A>
 <A NAME="fn:WRegion.manager"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2904,8 +3108,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4465"></A>
-<A NAME="4466"></A>
+<DD><A NAME="4657"></A>
+<A NAME="4658"></A>
 <A NAME="fn:WRegion.name"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2921,8 +3125,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4467"></A>
-<A NAME="4468"></A>
+<DD><A NAME="4659"></A>
+<A NAME="4660"></A>
 <A NAME="fn:WRegion.parent"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2938,8 +3142,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4469"></A>
-<A NAME="4470"></A>
+<DD><A NAME="4661"></A>
+<A NAME="4662"></A>
 <A NAME="fn:WRegion.rootwin_of"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2955,12 +3159,12 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4471"></A>
-<A NAME="4472"></A>
+<DD><A NAME="4663"></A>
+<A NAME="4664"></A>
 <A NAME="fn:WRegion.rqclose"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>bool WRegion.rqclose(WRegion reg, bool relocate)</TT>
+<DD><TT>void WRegion.rqclose(WRegion reg, bool relocate)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
@@ -2968,12 +3172,11 @@ Note that this function is asynchronous; the region will not
  depends on whether the particular type of region in question has
  implemented the feature and, in case of client windows, whether
  the client supports the <TT>WM_DELETE</TT> protocol (see also
- <A HREF="#fn:WClientWin.kill"><TT>WClientWin.kill</TT></A>). If the operation is likely to succeed,
- <TT>true</TT> is returned, otherwise <TT>false</TT>. In most cases the
- region will not have been actually destroyed when this function returns.
- If <TT>relocate</TT> is not set, and <TT>reg</TT> manages other regions, it
- will not be closed. Otherwise the managed regions will be attempted
- to be relocated.
+ <A HREF="#fn:WClientWin.kill"><TT>WClientWin.kill</TT></A>). The region will not be destroyed when
+ this function returns. To find out if and when it is destroyed,
+ use the "deinit" notification. If <TT>relocate</TT> is not set, and
+ <TT>reg</TT> manages other regions, it will not be closed. Otherwise
+ the managed regions will be attempted to be relocated.
   
 </DD>
 </DL>
@@ -2981,8 +3184,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4473"></A>
-<A NAME="4474"></A>
+<DD><A NAME="4665"></A>
+<A NAME="4666"></A>
 <A NAME="fn:WRegion.rqclose_propagate"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -2993,8 +3196,8 @@ Note that this function is asynchronous; the region will not
 <DD>Recursively attempt to close a region or one of the regions managed by 
  it. If <TT>sub</TT> is set, it will be used as the managed region, otherwise
  <A HREF="#fn:WRegion.current"><TT>WRegion.current</TT></A><TT>(reg)</TT>. The object to be closed is
- returned or NULL if nothing can be closed. Also see notes for
- <A HREF="#fn:WRegion.rqclose"><TT>WRegion.rqclose</TT></A>.
+ returned, or NULL if nothing can be closed. For further details, see
notes for <A HREF="#fn:WRegion.rqclose"><TT>WRegion.rqclose</TT></A>.
   
 </DD>
 </DL>
@@ -3002,8 +3205,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4475"></A>
-<A NAME="4476"></A>
+<DD><A NAME="4667"></A>
+<A NAME="4668"></A>
 <A NAME="fn:WRegion.rqgeom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3022,8 +3225,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4477"></A>
-<A NAME="4478"></A>
+<DD><A NAME="4669"></A>
+<A NAME="4670"></A>
 <A NAME="fn:WRegion.rqorder"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3040,8 +3243,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4479"></A>
-<A NAME="4480"></A>
+<DD><A NAME="4671"></A>
+<A NAME="4672"></A>
 <A NAME="fn:WRegion.screen_of"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3057,8 +3260,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4481"></A>
-<A NAME="4482"></A>
+<DD><A NAME="4673"></A>
+<A NAME="4674"></A>
 <A NAME="fn:WRegion.set_activity"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3075,8 +3278,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4483"></A>
-<A NAME="4484"></A>
+<DD><A NAME="4675"></A>
+<A NAME="4676"></A>
 <A NAME="fn:WRegion.set_name"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3095,8 +3298,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4485"></A>
-<A NAME="4486"></A>
+<DD><A NAME="4677"></A>
+<A NAME="4678"></A>
 <A NAME="fn:WRegion.set_name_exact"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3114,8 +3317,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4487"></A>
-<A NAME="4488"></A>
+<DD><A NAME="4679"></A>
+<A NAME="4680"></A>
 <A NAME="fn:WRegion.set_tagged"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3132,8 +3335,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4489"></A>
-<A NAME="4490"></A>
+<DD><A NAME="4681"></A>
+<A NAME="4682"></A>
 <A NAME="fn:WRegion.size_hints"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3157,8 +3360,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4492"></A>
-<A NAME="4493"></A>
+<DD><A NAME="4684"></A>
+<A NAME="4685"></A>
 <A NAME="fn:WRootWin.current_scr"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3180,8 +3383,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4495"></A>
-<A NAME="4496"></A>
+<DD><A NAME="4687"></A>
+<A NAME="4688"></A>
 <A NAME="fn:WScreen.id"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3197,8 +3400,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4497"></A>
-<A NAME="4498"></A>
+<DD><A NAME="4689"></A>
+<A NAME="4690"></A>
 <A NAME="fn:WScreen.set_managed_offset"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3223,8 +3426,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4500"></A>
-<A NAME="4501"></A>
+<DD><A NAME="4692"></A>
+<A NAME="4693"></A>
 <A NAME="fn:WWindow.p_move"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3242,8 +3445,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4502"></A>
-<A NAME="4503"></A>
+<DD><A NAME="4694"></A>
+<A NAME="4695"></A>
 <A NAME="fn:WWindow.p_resize"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3261,8 +3464,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4504"></A>
-<A NAME="4505"></A>
+<DD><A NAME="4696"></A>
+<A NAME="4697"></A>
 <A NAME="fn:WWindow.xid"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3284,7 +3487,7 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4507"></A>
+<DD><A NAME="4699"></A>
 <A NAME="fn:export"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3306,8 +3509,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4509"></A>
-<A NAME="4510"></A>
+<DD><A NAME="4701"></A>
+<A NAME="4702"></A>
 <A NAME="fn:gr.read_config"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3323,8 +3526,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4511"></A>
-<A NAME="4512"></A>
+<DD><A NAME="4703"></A>
+<A NAME="4704"></A>
 <A NAME="fn:gr.refresh"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3340,8 +3543,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4513"></A>
-<A NAME="4514"></A>
+<DD><A NAME="4705"></A>
+<A NAME="4706"></A>
 <A NAME="fn:gr.select_engine"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3367,8 +3570,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4516"></A>
-<A NAME="4517"></A>
+<DD><A NAME="4708"></A>
+<A NAME="4709"></A>
 <A NAME="fn:string.shell_safe"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3390,8 +3593,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4519"></A>
-<A NAME="4520"></A>
+<DD><A NAME="4711"></A>
+<A NAME="4712"></A>
 <A NAME="fn:table.append"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3407,8 +3610,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4521"></A>
-<A NAME="4522"></A>
+<DD><A NAME="4713"></A>
+<A NAME="4714"></A>
 <A NAME="fn:table.copy"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3425,8 +3628,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4523"></A>
-<A NAME="4524"></A>
+<DD><A NAME="4715"></A>
+<A NAME="4716"></A>
 <A NAME="fn:table.icat"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3442,8 +3645,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4525"></A>
-<A NAME="4526"></A>
+<DD><A NAME="4717"></A>
+<A NAME="4718"></A>
 <A NAME="fn:table.join"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3460,8 +3663,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="4527"></A>
-<A NAME="4528"></A>
+<DD><A NAME="4719"></A>
+<A NAME="4720"></A>
 <A NAME="fn:table.map"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3483,17 +3686,16 @@ Note that this function is asynchronous; the region will not
 </H2>
 
   <DL>
-<DD><A NAME="6781"></A>
-<A NAME="6782"></A>
-<A NAME="fn:mod_tiling.detach"></A>  
+<DD><A NAME="7110"></A>
+<A NAME="7111"></A>
+<A NAME="fn:mod_tiling.get"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>bool mod_tiling.detach(WRegion reg)</TT>
+<DD><TT>table mod_tiling.get()</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Detach <TT>reg</TT>, i.e. make it managed by its nearest ancestor
- WGroup, framed if <TT>reg</TT> is not itself WFrame.
+<DD>Get parameters. For details see <A HREF="#fn:mod_tiling.set"><TT>mod_tiling.set</TT></A>.
   
 </DD>
 </DL>
@@ -3501,16 +3703,17 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6783"></A>
-<A NAME="6784"></A>
-<A NAME="fn:mod_tiling.get"></A>  
+<DD><A NAME="7112"></A>
+<A NAME="7113"></A>
+<A NAME="fn:mod_tiling.mkbottom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table mod_tiling.get()</TT>
+<DD><TT>bool mod_tiling.mkbottom(WRegion reg)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Get parameters. For details see <A HREF="#fn:mod_tiling.set"><TT>mod_tiling.set</TT></A>.
+<DD>Create a new WTiling 'bottom' for the group of <TT>reg</TT>,
+ consisting of <TT>reg</TT>.
   
 </DD>
 </DL>
@@ -3518,17 +3721,17 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6785"></A>
-<A NAME="6786"></A>
-<A NAME="fn:mod_tiling.mkbottom"></A>  
+<DD><A NAME="7114"></A>
+<A NAME="7115"></A>
+<A NAME="fn:mod_tiling.set"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>bool mod_tiling.mkbottom(WRegion reg)</TT>
+<DD><TT>void mod_tiling.set(table tab)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Create a new WTiling 'bottom' for the group of <TT>reg</TT>,
consisting of <TT>reg</TT>.
+<DD>Set parameters. Currently only <TT>raise_delay</TT> (in milliseconds)
is supported.
   
 </DD>
 </DL>
@@ -3536,17 +3739,17 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6787"></A>
-<A NAME="6788"></A>
-<A NAME="fn:mod_tiling.set"></A>  
+<DD><A NAME="7116"></A>
+<A NAME="7117"></A>
+<A NAME="fn:mod_tiling.untile"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>void mod_tiling.set(table tab)</TT>
+<DD><TT>bool mod_tiling.untile(WTiling tiling)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Set parameters. Currently only <TT>raise_delay</TT> (in milliseconds)
is supported.
+<DD>If <TT>tiling</TT> is managed by some group, float the frames in
the tiling in that group, and dispose of <TT>tiling</TT>.
   
 </DD>
 </DL>
@@ -3560,8 +3763,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6790"></A>
-<A NAME="6791"></A>
+<DD><A NAME="7119"></A>
+<A NAME="7120"></A>
 <A NAME="fn:WSplit.geom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3577,8 +3780,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6792"></A>
-<A NAME="6793"></A>
+<DD><A NAME="7121"></A>
+<A NAME="7122"></A>
 <A NAME="fn:WSplit.parent"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3594,8 +3797,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6794"></A>
-<A NAME="6795"></A>
+<DD><A NAME="7123"></A>
+<A NAME="7124"></A>
 <A NAME="fn:WSplit.rqgeom"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3613,8 +3816,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6796"></A>
-<A NAME="6797"></A>
+<DD><A NAME="7125"></A>
+<A NAME="7126"></A>
 <A NAME="fn:WSplit.transpose"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3636,8 +3839,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6799"></A>
-<A NAME="6800"></A>
+<DD><A NAME="7128"></A>
+<A NAME="7129"></A>
 <A NAME="fn:WSplitInner.current"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3659,8 +3862,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6802"></A>
-<A NAME="6803"></A>
+<DD><A NAME="7131"></A>
+<A NAME="7132"></A>
 <A NAME="fn:WSplitRegion.reg"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3682,8 +3885,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6805"></A>
-<A NAME="6806"></A>
+<DD><A NAME="7134"></A>
+<A NAME="7135"></A>
 <A NAME="fn:WSplitSplit.br"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3700,8 +3903,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6807"></A>
-<A NAME="6808"></A>
+<DD><A NAME="7136"></A>
+<A NAME="7137"></A>
 <A NAME="fn:WSplitSplit.dir"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3718,8 +3921,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6809"></A>
-<A NAME="6810"></A>
+<DD><A NAME="7138"></A>
+<A NAME="7139"></A>
 <A NAME="fn:WSplitSplit.flip"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3735,8 +3938,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6811"></A>
-<A NAME="6812"></A>
+<DD><A NAME="7140"></A>
+<A NAME="7141"></A>
 <A NAME="fn:WSplitSplit.tl"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3759,8 +3962,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6814"></A>
-<A NAME="6815"></A>
+<DD><A NAME="7143"></A>
+<A NAME="7144"></A>
 <A NAME="fn:WTiling.flip_at"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3776,8 +3979,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6816"></A>
-<A NAME="6817"></A>
+<DD><A NAME="7145"></A>
+<A NAME="7146"></A>
 <A NAME="fn:WTiling.transpose_at"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3793,8 +3996,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6818"></A>
-<A NAME="6819"></A>
+<DD><A NAME="7147"></A>
+<A NAME="7148"></A>
 <A NAME="fn:WTiling.farthest"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3813,16 +4016,19 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6820"></A>
-<A NAME="6821"></A>
-<A NAME="fn:WTiling.managed_list"></A>  
+<DD><A NAME="7149"></A>
+<A NAME="7150"></A>
+<A NAME="fn:WTiling.managed_i"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>table WTiling.managed_list(WTiling ws)</TT>
+<DD><TT>bool WTiling.managed_i(WTiling ws, function iterfn)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Returns a list of regions managed by the workspace (frames, mostly).
+<DD>Iterate over managed regions of <TT>ws</TT> until <TT>iterfn</TT> returns
+ <TT>false</TT>.
+ The function itself returns <TT>true</TT> if it reaches the end of list
+ without this happening.
   
 </DD>
 </DL>
@@ -3830,8 +4036,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6822"></A>
-<A NAME="6823"></A>
+<DD><A NAME="7151"></A>
+<A NAME="7152"></A>
 <A NAME="fn:WTiling.nextto"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3850,8 +4056,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6824"></A>
-<A NAME="6825"></A>
+<DD><A NAME="7153"></A>
+<A NAME="7154"></A>
 <A NAME="fn:WTiling.node_of"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3868,8 +4074,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6826"></A>
-<A NAME="6827"></A>
+<DD><A NAME="7155"></A>
+<A NAME="7156"></A>
 <A NAME="fn:WTiling.set_floating_at"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3888,8 +4094,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6828"></A>
-<A NAME="6829"></A>
+<DD><A NAME="7157"></A>
+<A NAME="7158"></A>
 <A NAME="fn:WTiling.set_floating"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3907,8 +4113,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6830"></A>
-<A NAME="6831"></A>
+<DD><A NAME="7159"></A>
+<A NAME="7160"></A>
 <A NAME="fn:WTiling.split"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3926,8 +4132,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6832"></A>
-<A NAME="6833"></A>
+<DD><A NAME="7161"></A>
+<A NAME="7162"></A>
 <A NAME="fn:WTiling.split_at"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3948,8 +4154,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6834"></A>
-<A NAME="6835"></A>
+<DD><A NAME="7163"></A>
+<A NAME="7164"></A>
 <A NAME="fn:WTiling.split_top"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3965,8 +4171,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6836"></A>
-<A NAME="6837"></A>
+<DD><A NAME="7165"></A>
+<A NAME="7166"></A>
 <A NAME="fn:WTiling.split_tree"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -3982,17 +4188,17 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="6838"></A>
-<A NAME="6839"></A>
+<DD><A NAME="7167"></A>
+<A NAME="7168"></A>
 <A NAME="fn:WTiling.unsplit_at"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>bool WTiling.unsplit_at(WTiling ws, WFrame frame)</TT>
+<DD><TT>void WTiling.unsplit_at(WTiling ws, WRegion reg)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Try to relocate regions managed by <TT>frame</TT> to another frame
- and, if possible, destroy the frame.
+<DD>Try to relocate regions managed by <TT>reg</TT> to another frame
+ and, if possible, destroy it.
   
 </DD>
 </DL>
@@ -4006,8 +4212,8 @@ Note that this function is asynchronous; the region will not
 </H2>
 
   <DL>
-<DD><A NAME="7832"></A>
-<A NAME="7833"></A>
+<DD><A NAME="8171"></A>
+<A NAME="8172"></A>
 <A NAME="fn:mod_query.defcmd"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4023,8 +4229,25 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7834"></A>
-<A NAME="7835"></A>
+<DD><A NAME="8173"></A>
+<A NAME="8174"></A>
+<A NAME="fn:mod_query.message"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>mod_query.message(mplex, str)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Display a message in <TT>mplex</TT>.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="8175"></A>
+<A NAME="8176"></A>
 <A NAME="fn:mod_query.get"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4041,8 +4264,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7836"></A>
-<A NAME="7837"></A>
+<DD><A NAME="8177"></A>
+<A NAME="8178"></A>
 <A NAME="fn:mod_query.history_clear"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4058,8 +4281,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7838"></A>
-<A NAME="7839"></A>
+<DD><A NAME="8179"></A>
+<A NAME="8180"></A>
 <A NAME="fn:mod_query.history_get"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4075,8 +4298,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7840"></A>
-<A NAME="7841"></A>
+<DD><A NAME="8181"></A>
+<A NAME="8182"></A>
 <A NAME="fn:mod_query.history_push"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4092,19 +4315,20 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7842"></A>
-<A NAME="7843"></A>
+<DD><A NAME="8183"></A>
+<A NAME="8184"></A>
 <A NAME="fn:mod_query.history_search"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>integer mod_query.history_search(string s, integer from, bool bwd)</TT>
+<DD><TT>integer mod_query.history_search(string s, integer from, bool bwd, bool exact)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
 <DD>Try to find matching history entry. Returns -1 if none was
  found. The parameter <TT>from</TT> specifies where to start 
  searching from, and <TT>bwd</TT> causes backward search from
- that point.
+ that point. If <TT>exact</TT> is not set, <TT>s</TT> only required
+ to be a prefix of the match.
   
 </DD>
 </DL>
@@ -4112,8 +4336,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7844"></A>
-<A NAME="7845"></A>
+<DD><A NAME="8185"></A>
+<A NAME="8186"></A>
 <A NAME="fn:mod_query.history_table"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4129,25 +4353,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7846"></A>
-<A NAME="7847"></A>
-<A NAME="fn:mod_query.message"></A>  
-</DD>
-<DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>WMessage mod_query.message(WMPlex mplex, string p)</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Display a message in the <TT>mplex</TT>.
-  
-</DD>
-</DL>
-
-<P>
-
-  <DL>
-<DD><A NAME="7848"></A>
-<A NAME="7849"></A>
+<DD><A NAME="8187"></A>
+<A NAME="8188"></A>
 <A NAME="fn:mod_query.set"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4170,6 +4377,10 @@ Note that this function is asynchronous; the region will not
 <TD ALIGN="LEFT">(integer) auto-show-completions delay
       in milliseconds (default: 250).</TD>
 </TR>
+<TR><TD ALIGN="LEFT"><TT>caseicompl</TT></TD>
+<TD ALIGN="LEFT">(boolean) Turn some completions case-insensitive
+      (default: false).</TD>
+</TR>
 </TABLE>
   
 </DD>
@@ -4178,25 +4389,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7850"></A>
-<A NAME="7851"></A>
-<A NAME="fn:mod_query.warn"></A>  
-</DD>
-<DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>WMessage mod_query.warn(WMPlex mplex, string p)</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Display an error message box in the multiplexer <TT>mplex</TT>.
-  
-</DD>
-</DL>
-
-<P>
-
-  <DL>
-<DD><A NAME="7852"></A>
-<A NAME="7853"></A>
+<DD><A NAME="8189"></A>
+<A NAME="8190"></A>
 <A NAME="fn:mod_query.popen_completions"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4219,8 +4413,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7854"></A>
-<A NAME="7855"></A>
+<DD><A NAME="8191"></A>
+<A NAME="8192"></A>
 <A NAME="fn:mod_query.query"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4246,8 +4440,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7856"></A>
-<A NAME="7857"></A>
+<DD><A NAME="8193"></A>
+<A NAME="8194"></A>
 <A NAME="fn:mod_query.query_attachclient"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4265,8 +4459,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7858"></A>
-<A NAME="7859"></A>
+<DD><A NAME="8195"></A>
+<A NAME="8196"></A>
 <A NAME="fn:mod_query.query_editfile"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4284,8 +4478,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7860"></A>
-<A NAME="7861"></A>
+<DD><A NAME="8197"></A>
+<A NAME="8198"></A>
 <A NAME="fn:mod_query.query_exec"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4305,8 +4499,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7862"></A>
-<A NAME="7863"></A>
+<DD><A NAME="8199"></A>
+<A NAME="8200"></A>
 <A NAME="fn:mod_query.query_gotoclient"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4324,8 +4518,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7864"></A>
-<A NAME="7865"></A>
+<DD><A NAME="8201"></A>
+<A NAME="8202"></A>
 <A NAME="fn:mod_query.query_lua"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4344,8 +4538,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7866"></A>
-<A NAME="7867"></A>
+<DD><A NAME="8203"></A>
+<A NAME="8204"></A>
 <A NAME="fn:mod_query.query_man"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4363,12 +4557,12 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7868"></A>
-<A NAME="7869"></A>
+<DD><A NAME="8205"></A>
+<A NAME="8206"></A>
 <A NAME="fn:mod_query.query_menu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>mod_query.query_menu(mplex, themenu, prompt)</TT>
+<DD><TT>mod_query.query_menu(mplex, sub, themenu, prompt)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
@@ -4380,8 +4574,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7870"></A>
-<A NAME="7871"></A>
+<DD><A NAME="8207"></A>
+<A NAME="8208"></A>
 <A NAME="fn:mod_query.query_renameframe"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4398,17 +4592,18 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7872"></A>
-<A NAME="7873"></A>
+<DD><A NAME="8209"></A>
+<A NAME="8210"></A>
 <A NAME="fn:mod_query.query_renameworkspace"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
-<DD><TT>mod_query.query_renameworkspace(mplex)</TT>
+<DD><TT>mod_query.query_renameworkspace(mplex, ws)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>This function asks for a name new for the workspace on which the
- query resides.
+<DD>This function asks for a name new for the workspace <TT>ws</TT>,
+ or the one on which <TT>mplex</TT> resides, if it is not set.
+ If <TT>mplex</TT> is not set, one is looked for.
   
 </DD>
 </DL>
@@ -4416,8 +4611,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7874"></A>
-<A NAME="7875"></A>
+<DD><A NAME="8211"></A>
+<A NAME="8212"></A>
 <A NAME="fn:mod_query.query_restart"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4434,8 +4629,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7876"></A>
-<A NAME="7877"></A>
+<DD><A NAME="8213"></A>
+<A NAME="8214"></A>
 <A NAME="fn:mod_query.query_runfile"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4453,8 +4648,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7878"></A>
-<A NAME="7879"></A>
+<DD><A NAME="8215"></A>
+<A NAME="8216"></A>
 <A NAME="fn:mod_query.query_shutdown"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4472,8 +4667,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7880"></A>
-<A NAME="7881"></A>
+<DD><A NAME="8217"></A>
+<A NAME="8218"></A>
 <A NAME="fn:mod_query.query_ssh"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4490,8 +4685,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7883"></A>
-<A NAME="7884"></A>
+<DD><A NAME="8220"></A>
+<A NAME="8221"></A>
 <A NAME="fn:mod_query.query_workspace"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4511,8 +4706,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7885"></A>
-<A NAME="7886"></A>
+<DD><A NAME="8222"></A>
+<A NAME="8223"></A>
 <A NAME="fn:mod_query.query_yesno"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4530,8 +4725,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7887"></A>
-<A NAME="7888"></A>
+<DD><A NAME="8224"></A>
+<A NAME="8225"></A>
 <A NAME="fn:mod_query.show_about_ion"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4547,8 +4742,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7889"></A>
-<A NAME="7890"></A>
+<DD><A NAME="8226"></A>
+<A NAME="8227"></A>
 <A NAME="fn:mod_query.show_tree"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4561,6 +4756,23 @@ Note that this function is asynchronous; the region will not
 </DD>
 </DL>
 
+<P>
+
+  <DL>
+<DD><A NAME="8228"></A>
+<A NAME="8229"></A>
+<A NAME="fn:mod_query.warn"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>mod_query.warn(mplex, str)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Display an error message box in the multiplexer <TT>mplex</TT>.
+  
+</DD>
+</DL>
+
 <P>
 
 <H3><A NAME="SECTION00731000000000000000">
@@ -4570,8 +4782,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7892"></A>
-<A NAME="7893"></A>
+<DD><A NAME="8231"></A>
+<A NAME="8232"></A>
 <A NAME="fn:WComplProxy.set_completions"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4597,8 +4809,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7895"></A>
-<A NAME="7896"></A>
+<DD><A NAME="8234"></A>
+<A NAME="8235"></A>
 <A NAME="fn:WEdln.back"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4614,8 +4826,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7897"></A>
-<A NAME="7898"></A>
+<DD><A NAME="8236"></A>
+<A NAME="8237"></A>
 <A NAME="fn:WEdln.backspace"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4631,8 +4843,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7899"></A>
-<A NAME="7900"></A>
+<DD><A NAME="8238"></A>
+<A NAME="8239"></A>
 <A NAME="fn:WEdln.bkill_word"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4649,8 +4861,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7901"></A>
-<A NAME="7902"></A>
+<DD><A NAME="8240"></A>
+<A NAME="8241"></A>
 <A NAME="fn:WEdln.bol"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4666,8 +4878,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7903"></A>
-<A NAME="7904"></A>
+<DD><A NAME="8242"></A>
+<A NAME="8243"></A>
 <A NAME="fn:WEdln.bskip_word"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4684,8 +4896,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7905"></A>
-<A NAME="7906"></A>
+<DD><A NAME="8244"></A>
+<A NAME="8245"></A>
 <A NAME="fn:WEdln.clear_mark"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4701,8 +4913,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7907"></A>
-<A NAME="7908"></A>
+<DD><A NAME="8246"></A>
+<A NAME="8247"></A>
 <A NAME="fn:WEdln.complete"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4724,8 +4936,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7909"></A>
-<A NAME="7910"></A>
+<DD><A NAME="8248"></A>
+<A NAME="8249"></A>
 <A NAME="fn:WEdln.contents"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4741,8 +4953,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7911"></A>
-<A NAME="7912"></A>
+<DD><A NAME="8250"></A>
+<A NAME="8251"></A>
 <A NAME="fn:WEdln.context"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4758,8 +4970,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7913"></A>
-<A NAME="7914"></A>
+<DD><A NAME="8252"></A>
+<A NAME="8253"></A>
 <A NAME="fn:WEdln.copy"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4775,8 +4987,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7915"></A>
-<A NAME="7916"></A>
+<DD><A NAME="8254"></A>
+<A NAME="8255"></A>
 <A NAME="fn:WEdln.cut"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4793,8 +5005,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7917"></A>
-<A NAME="7918"></A>
+<DD><A NAME="8256"></A>
+<A NAME="8257"></A>
 <A NAME="fn:WEdln.delete"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4810,8 +5022,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7919"></A>
-<A NAME="7920"></A>
+<DD><A NAME="8258"></A>
+<A NAME="8259"></A>
 <A NAME="fn:WEdln.eol"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4827,8 +5039,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7921"></A>
-<A NAME="7922"></A>
+<DD><A NAME="8260"></A>
+<A NAME="8261"></A>
 <A NAME="fn:WEdln.finish"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4844,8 +5056,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7923"></A>
-<A NAME="7924"></A>
+<DD><A NAME="8262"></A>
+<A NAME="8263"></A>
 <A NAME="fn:WEdln.forward"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4861,8 +5073,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7925"></A>
-<A NAME="7926"></A>
+<DD><A NAME="8264"></A>
+<A NAME="8265"></A>
 <A NAME="fn:WEdln.history_next"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4880,8 +5092,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7927"></A>
-<A NAME="7928"></A>
+<DD><A NAME="8266"></A>
+<A NAME="8267"></A>
 <A NAME="fn:WEdln.history_prev"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4899,8 +5111,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7929"></A>
-<A NAME="7930"></A>
+<DD><A NAME="8268"></A>
+<A NAME="8269"></A>
 <A NAME="fn:WEdln.insstr"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4916,8 +5128,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7931"></A>
-<A NAME="7932"></A>
+<DD><A NAME="8270"></A>
+<A NAME="8271"></A>
 <A NAME="fn:WEdln.is_histcompl"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4933,8 +5145,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7933"></A>
-<A NAME="7934"></A>
+<DD><A NAME="8272"></A>
+<A NAME="8273"></A>
 <A NAME="fn:WEdln.kill_line"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4950,8 +5162,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7935"></A>
-<A NAME="7936"></A>
+<DD><A NAME="8274"></A>
+<A NAME="8275"></A>
 <A NAME="fn:WEdln.kill_to_bol"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4967,8 +5179,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7937"></A>
-<A NAME="7938"></A>
+<DD><A NAME="8276"></A>
+<A NAME="8277"></A>
 <A NAME="fn:WEdln.kill_to_eol"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -4984,8 +5196,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7939"></A>
-<A NAME="7940"></A>
+<DD><A NAME="8278"></A>
+<A NAME="8279"></A>
 <A NAME="fn:WEdln.kill_word"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5002,8 +5214,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7941"></A>
-<A NAME="7942"></A>
+<DD><A NAME="8280"></A>
+<A NAME="8281"></A>
 <A NAME="fn:WEdln.mark"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5021,8 +5233,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7943"></A>
-<A NAME="7944"></A>
+<DD><A NAME="8282"></A>
+<A NAME="8283"></A>
 <A NAME="fn:WEdln.next_completion"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5038,8 +5250,8 @@ Note that this function is asynchronous; the region will not
 <P>
 
   <DL>
-<DD><A NAME="7945"></A>
-<A NAME="7946"></A>
+<DD><A NAME="8284"></A>
+<A NAME="8285"></A>
 <A NAME="fn:WEdln.paste"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5060,8 +5272,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7947"></A>
-<A NAME="7948"></A>
+<DD><A NAME="8286"></A>
+<A NAME="8287"></A>
 <A NAME="fn:WEdln.point"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5078,8 +5290,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7949"></A>
-<A NAME="7950"></A>
+<DD><A NAME="8288"></A>
+<A NAME="8289"></A>
 <A NAME="fn:WEdln.prev_completion"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5095,8 +5307,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7951"></A>
-<A NAME="7952"></A>
+<DD><A NAME="8290"></A>
+<A NAME="8291"></A>
 <A NAME="fn:WEdln.set_context"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5112,8 +5324,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7953"></A>
-<A NAME="7954"></A>
+<DD><A NAME="8292"></A>
+<A NAME="8293"></A>
 <A NAME="fn:WEdln.set_mark"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5129,8 +5341,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7955"></A>
-<A NAME="7956"></A>
+<DD><A NAME="8294"></A>
+<A NAME="8295"></A>
 <A NAME="fn:WEdln.skip_word"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5147,8 +5359,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7957"></A>
-<A NAME="7958"></A>
+<DD><A NAME="8296"></A>
+<A NAME="8297"></A>
 <A NAME="fn:WEdln.transpose_chars"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5164,8 +5376,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7959"></A>
-<A NAME="7960"></A>
+<DD><A NAME="8298"></A>
+<A NAME="8299"></A>
 <A NAME="fn:WEdln.transpose_words"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5187,8 +5399,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7962"></A>
-<A NAME="7963"></A>
+<DD><A NAME="8301"></A>
+<A NAME="8302"></A>
 <A NAME="fn:WInput.cancel"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5204,8 +5416,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7964"></A>
-<A NAME="7965"></A>
+<DD><A NAME="8303"></A>
+<A NAME="8304"></A>
 <A NAME="fn:WInput.scrolldown"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5221,8 +5433,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="7966"></A>
-<A NAME="7967"></A>
+<DD><A NAME="8305"></A>
+<A NAME="8306"></A>
 <A NAME="fn:WInput.scrollup"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5244,8 +5456,8 @@ Note that this function is asynchronous; the selection will not
 </H2>
 
   <DL>
-<DD><A NAME="8777"></A>
-<A NAME="8778"></A>
+<DD><A NAME="9122"></A>
+<A NAME="9123"></A>
 <A NAME="fn:mod_menu.grabmenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5263,8 +5475,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8779"></A>
-<A NAME="8780"></A>
+<DD><A NAME="9124"></A>
+<A NAME="9125"></A>
 <A NAME="fn:mod_menu.menu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5290,8 +5502,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8781"></A>
-<A NAME="8782"></A>
+<DD><A NAME="9126"></A>
+<A NAME="9127"></A>
 <A NAME="fn:mod_menu.get"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5307,8 +5519,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8783"></A>
-<A NAME="8784"></A>
+<DD><A NAME="9128"></A>
+<A NAME="9129"></A>
 <A NAME="fn:mod_menu.set"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5342,8 +5554,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8785"></A>
-<A NAME="8786"></A>
+<DD><A NAME="9130"></A>
+<A NAME="9131"></A>
 <A NAME="fn:mod_menu.pmenu"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5367,8 +5579,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8788"></A>
-<A NAME="8789"></A>
+<DD><A NAME="9133"></A>
+<A NAME="9134"></A>
 <A NAME="fn:WMenu.cancel"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5384,8 +5596,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8790"></A>
-<A NAME="8791"></A>
+<DD><A NAME="9135"></A>
+<A NAME="9136"></A>
 <A NAME="fn:WMenu.finish"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5402,8 +5614,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8792"></A>
-<A NAME="8793"></A>
+<DD><A NAME="9137"></A>
+<A NAME="9138"></A>
 <A NAME="fn:WMenu.select_next"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5419,8 +5631,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8794"></A>
-<A NAME="8795"></A>
+<DD><A NAME="9139"></A>
+<A NAME="9140"></A>
 <A NAME="fn:WMenu.select_nth"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5436,8 +5648,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8796"></A>
-<A NAME="8797"></A>
+<DD><A NAME="9141"></A>
+<A NAME="9142"></A>
 <A NAME="fn:WMenu.select_prev"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5453,8 +5665,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="8798"></A>
-<A NAME="8799"></A>
+<DD><A NAME="9143"></A>
+<A NAME="9144"></A>
 <A NAME="fn:WMenu.typeahead_clear"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5476,8 +5688,8 @@ Note that this function is asynchronous; the selection will not
 </H2>
 
   <DL>
-<DD><A NAME="8997"></A>
-<A NAME="8998"></A>
+<DD><A NAME="9342"></A>
+<A NAME="9343"></A>
 <A NAME="fn:mod_dock.set_floating_shown_on"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5499,8 +5711,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="9000"></A>
-<A NAME="9001"></A>
+<DD><A NAME="9345"></A>
+<A NAME="9346"></A>
 <A NAME="fn:WDock.attach"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5516,8 +5728,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="9002"></A>
-<A NAME="9003"></A>
+<DD><A NAME="9347"></A>
+<A NAME="9348"></A>
 <A NAME="fn:WDock.get"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5534,8 +5746,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="9004"></A>
-<A NAME="9005"></A>
+<DD><A NAME="9349"></A>
+<A NAME="9350"></A>
 <A NAME="fn:WDock.resize"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5551,8 +5763,8 @@ Note that this function is asynchronous; the selection will not
 <P>
 
   <DL>
-<DD><A NAME="9006"></A>
-<A NAME="9007"></A>
+<DD><A NAME="9351"></A>
+<A NAME="9352"></A>
 <A NAME="fn:WDock.set"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5607,8 +5819,8 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 </H2>
 
   <DL>
-<DD><A NAME="9106"></A>
-<A NAME="9107"></A>
+<DD><A NAME="9451"></A>
+<A NAME="9452"></A>
 <A NAME="fn:mod_sp.set_shown"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5625,8 +5837,8 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 <P>
 
   <DL>
-<DD><A NAME="9108"></A>
-<A NAME="9109"></A>
+<DD><A NAME="9453"></A>
+<A NAME="9454"></A>
 <A NAME="fn:mod_sp.set_shown_on"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5643,14 +5855,147 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 <P>
 
 <H2><A NAME="SECTION00770000000000000000"></A>
+<A NAME="sec:statusbarref"></A>
+<BR>
+<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">7</SPAN> Functions defined in <SPAN  CLASS="textit">mod_statusbar</SPAN>
+</H2>
+
+  <DL>
+<DD><A NAME="9548"></A>
+<A NAME="9549"></A>
+<A NAME="fn:mod_statusbar.statusbars"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>table mod_statusbar.statusbars()</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Returns a list of all statusbars.
+  
+</DD>
+</DL>
+
+<P>
+
+<H3><A NAME="SECTION00771000000000000000">
+<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">7</SPAN>.<SPAN CLASS="arabic">1</SPAN> WStatusBar functions</A>
+</H3>
+
+<P>
+
+  <DL>
+<DD><A NAME="9551"></A>
+<A NAME="9552"></A>
+<A NAME="fn:WStatusBar.get_template_table"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>table WStatusBar.get_template_table(WStatusBar sb)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Get statusbar template as table.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="9553"></A>
+<A NAME="9554"></A>
+<A NAME="fn:WStatusBar.is_systray_extl"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool WStatusBar.is_systray_extl(WStatusBar sb)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Is <TT>sb</TT> used as a systray?
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="9555"></A>
+<A NAME="9556"></A>
+<A NAME="fn:WStatusBar.set_systray"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>bool WStatusBar.set_systray(WStatusBar sb, string how)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Enable or disable use of <TT>sb</TT> as systray.
+ The parameter <TT>how</TT> can be one of (set/unset/toggle). 
+ Resulting state is returned.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="9557"></A>
+<A NAME="9558"></A>
+<A NAME="fn:WStatusBar.set_template"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>void WStatusBar.set_template(WStatusBar sb, string tmpl)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Set statusbar template.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="9559"></A>
+<A NAME="9560"></A>
+<A NAME="fn:WStatusBar.set_template_table"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>void WStatusBar.set_template_table(WStatusBar sb, table t)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Set statusbar template as table.
+  
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="9561"></A>
+<A NAME="9562"></A>
+<A NAME="fn:WStatusBar.update"></A>  
+</DD>
+<DT><STRONG>Synopsis:</STRONG></DT>
+<DD><TT>void WStatusBar.update(WStatusBar sb, table t)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Set statusbar template.
+  
+</DD>
+</DL>
+
+<P>
+
+<H2><A NAME="SECTION00780000000000000000"></A>
 <A NAME="sec:deref"></A>
 <BR>
-<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">7</SPAN> Functions defined in <SPAN  CLASS="textit">de</SPAN>
+<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">8</SPAN> Functions defined in <SPAN  CLASS="textit">de</SPAN>
 </H2>
 
   <DL>
-<DD><A NAME="9173"></A>
-<A NAME="9174"></A>
+<DD><A NAME="9672"></A>
+<A NAME="9673"></A>
 <A NAME="fn:de.defstyle"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5666,8 +6011,8 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 <P>
 
   <DL>
-<DD><A NAME="9175"></A>
-<A NAME="9176"></A>
+<DD><A NAME="9674"></A>
+<A NAME="9675"></A>
 <A NAME="fn:de.defstyle_rootwin"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5683,8 +6028,8 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 <P>
 
   <DL>
-<DD><A NAME="9177"></A>
-<A NAME="9178"></A>
+<DD><A NAME="9676"></A>
+<A NAME="9677"></A>
 <A NAME="fn:de.reset"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5700,8 +6045,8 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 <P>
 
   <DL>
-<DD><A NAME="9179"></A>
-<A NAME="9180"></A>
+<DD><A NAME="9678"></A>
+<A NAME="9679"></A>
 <A NAME="fn:de.substyle"></A>  
 </DD>
 <DT><STRONG>Synopsis:</STRONG></DT>
@@ -5716,16 +6061,16 @@ Any parameters not explicitly set in <TT>conftab</TT> will be left unchanged.
 
 <P>
 
-<H2><A NAME="SECTION00780000000000000000"></A>
+<H2><A NAME="SECTION00790000000000000000"></A>
 <A NAME="sec:hookref"></A>
 <BR>
-<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">8</SPAN> Hooks
+<SPAN CLASS="arabic">6</SPAN>.<SPAN CLASS="arabic">9</SPAN> Hooks
 </H2>
 
 <P>
 
   <DL>
-<DD><A NAME="9401"></A>
+<DD><A NAME="9877"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5797,7 +6142,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9402"></A>
+<DD><A NAME="9878"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5817,7 +6162,28 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9403"></A>
+<DD><A NAME="9879"></A>
+
+</DD>
+<DT><STRONG>Hook name:</STRONG></DT>
+<DD><A NAME="clientwin_property_change_hook"></A><TT>clientwin_property_change_hook</TT>
+
+</DD>
+<DT><STRONG>Parameters:</STRONG></DT>
+<DD><TT>(WClientWin, integer)</TT>
+
+</DD>
+<DT><STRONG>Description:</STRONG></DT>
+<DD>Called when the property identified by the parameter atom id
+      (integer) has changed on a client window.
+      
+</DD>
+</DL>
+
+<P>
+
+  <DL>
+<DD><A NAME="9880"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5838,7 +6204,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9404"></A>
+<DD><A NAME="9881"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5884,7 +6250,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9405"></A>
+<DD><A NAME="9882"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5905,7 +6271,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9406"></A>
+<DD><A NAME="9883"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5925,7 +6291,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9407"></A>
+<DD><A NAME="9884"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5946,7 +6312,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9408"></A>
+<DD><A NAME="9885"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -5966,7 +6332,7 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9409"></A>
+<DD><A NAME="9886"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
@@ -6018,85 +6384,11 @@ reg:attach(cwin)
 <P>
 
   <DL>
-<DD><A NAME="9410"></A>
-
-</DD>
-<DT><STRONG>Hook name:</STRONG></DT>
-<DD><A NAME="panews_make_placement_alt"></A><TT>panews_make_placement_alt</TT>
-
-</DD>
-<DT><STRONG>Parameters:</STRONG></DT>
-<DD><TT>table</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Called to make a placement on panews. The parameter table has
-      the following fields:
-
-<P>
-<TABLE CELLPADDING=3 BORDER="1" WIDTH="100%">
-<TR><TD ALIGN="LEFT">Field</TD>
-<TD ALIGN="LEFT">Type</TD>
-<TD ALIGN="LEFT">Description</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>ws</TT></TD>
-<TD ALIGN="LEFT">WPaneWS</TD>
-<TD ALIGN="LEFT">The workspace</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>frame</TT></TD>
-<TD ALIGN="LEFT">WFrame</TD>
-<TD ALIGN="LEFT">A frame initially allocated for the
-              region to be placed</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>reg</TT></TD>
-<TD ALIGN="LEFT">WRegion</TD>
-<TD ALIGN="LEFT">The region to be placed</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>specifier</TT></TD>
-<TD ALIGN="LEFT">WRegion</TD>
-<TD ALIGN="LEFT">For drag&amp;drop on handling empty areas</TD>
-</TR>
-</TABLE>
-
-<P>
-The handler should set some of these fields on success:
-
-<P>
-<TABLE CELLPADDING=3 BORDER="1" WIDTH="100%">
-<TR><TD ALIGN="LEFT">Field</TD>
-<TD ALIGN="LEFT">Type</TD>
-<TD ALIGN="LEFT">Description</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>res_node</TT></TD>
-<TD ALIGN="LEFT">WSplit</TD>
-<TD ALIGN="LEFT">Target split</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>res_config</TT></TD>
-<TD ALIGN="LEFT">WFrame</TD>
-<TD ALIGN="LEFT">New configuration for it, unless
-              WSplitRegion</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>res_w</TT></TD>
-<TD ALIGN="LEFT">integer</TD>
-<TD ALIGN="LEFT">New width for target split (optional)</TD>
-</TR>
-<TR><TD ALIGN="LEFT"><TT>res_h</TT></TD>
-<TD ALIGN="LEFT">integer</TD>
-<TD ALIGN="LEFT">New height for target split (optional)</TD>
-</TR>
-</TABLE>
-      
-</DD>
-</DL>
-
-<P>
-
-  <DL>
-<DD><A NAME="9411"></A>
+<DD><A NAME="9887"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
-<DD><A NAME="region_activated_hook"></A><TT>region_activated_hook</TT>
+<DD><A NAME="region_do_warp_alt"></A><TT>region_do_warp_alt</TT>
 
 </DD>
 <DT><STRONG>Parameters:</STRONG></DT>
@@ -6104,7 +6396,8 @@ The handler should set some of these fields on success:
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>Signalled when a region or one of its children has received the focus.
+<DD>This alt-hook exist to allow for alternative pointer warping
+      implementations.
       
 </DD>
 </DL>
@@ -6112,20 +6405,21 @@ The handler should set some of these fields on success:
 <P>
 
   <DL>
-<DD><A NAME="9412"></A>
+<DD><A NAME="9888"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
-<DD><A NAME="region_activity_hook"></A><TT>region_activity_hook</TT>
+<DD><A NAME="screen_managed_changed_hook"></A><TT>screen_managed_changed_hook</TT>
 
 </DD>
 <DT><STRONG>Parameters:</STRONG></DT>
-<DD><TT>WRegion</TT>
+<DD><TT>table</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>This hook is triggered when the activity flag of the parameter 
-      region has been changed.
+<DD>Called when there are changes in the objects managed by a screen
+      or their order. The table parameter is similar to that of
+      <A HREF="#fn:frame_managed_changed_hook"><TT>frame_managed_changed_hook</TT></A>.
       
 </DD>
 </DL>
@@ -6133,98 +6427,104 @@ The handler should set some of these fields on success:
 <P>
 
   <DL>
-<DD><A NAME="9413"></A>
+<DD><A NAME="9889"></A>
 
 </DD>
 <DT><STRONG>Hook name:</STRONG></DT>
-<DD><A NAME="region_do_warp_alt"></A><TT>region_do_warp_alt</TT>
+<DD><A NAME="region_notify_hook"></A><TT>region_notify_hook</TT>
 
 </DD>
 <DT><STRONG>Parameters:</STRONG></DT>
-<DD><TT>WRegion</TT>
+<DD><TT>(WRegion, string)</TT>
 
 </DD>
 <DT><STRONG>Description:</STRONG></DT>
-<DD>This alt-hook exist to allow for alternative pointer warping
-      implementations.
-      
-</DD>
-</DL>
+<DD>Signalled when something (minor) has changed in relation to 
+      the first parameter region. The string argument gives the
+      change:
 
 <P>
+<TABLE CELLPADDING=3 BORDER="1" WIDTH="100%">
+<TR><TD ALIGN="LEFT">String</TD>
+<TD ALIGN="LEFT">Description</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>deinit</TT></TD>
+<TD ALIGN="LEFT">The region is about to be deinitialised.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>activated</TT></TD>
+<TD ALIGN="LEFT">The region has received focus.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>inactivated</TT></TD>
+<TD ALIGN="LEFT">The region has lost focus.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>activity</TT></TD>
+<TD ALIGN="LEFT">There's been activity in the region itself.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>sub_activity</TT></TD>
+<TD ALIGN="LEFT">There's been activity in some sub-region.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>name</TT></TD>
+<TD ALIGN="LEFT">The name of the region has changed.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>unset_manager</TT></TD>
+<TD ALIGN="LEFT">The region no longer has a manager.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>set_manager</TT></TD>
+<TD ALIGN="LEFT">The region now has a manager.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>tag</TT></TD>
+<TD ALIGN="LEFT">Tagging state has changed.</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>pseudoactivated</TT></TD>
+<TD ALIGN="LEFT">The region has become pseudoactive
+                      (see below).</TD>
+</TR>
+<TR><TD ALIGN="LEFT"><TT>pseudoinactivated</TT></TD>
+<TD ALIGN="LEFT">The region is no longer pseudoactive.</TD>
+</TR>
+</TABLE>
 
-  <DL>
-<DD><A NAME="9414"></A>
-
-</DD>
-<DT><STRONG>Hook name:</STRONG></DT>
-<DD><A NAME="region_inactivated_hook"></A><TT>region_inactivated_hook</TT>
-
-</DD>
-<DT><STRONG>Parameters:</STRONG></DT>
-<DD><TT>WRegion</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Signalled when the focus has moved from the parameter region or
-      one of its children to a non-child region of the parameter region.
+<P>
+A region is pseudoactive, when a) it is itself not active (does
+      not not have the focus, and may not even have a window that could
+      have it), but b) some region managed by it is active.
       
 </DD>
 </DL>
 
 <P>
 
-  <DL>
-<DD><A NAME="9415"></A>
-
-</DD>
-<DT><STRONG>Hook name:</STRONG></DT>
-<DD><A NAME="screen_managed_changed_hook"></A><TT>screen_managed_changed_hook</TT>
-
-</DD>
-<DT><STRONG>Parameters:</STRONG></DT>
-<DD><TT>table</TT>
-
-</DD>
-<DT><STRONG>Description:</STRONG></DT>
-<DD>Called when there are changes in the objects managed by a screen
-      or their order. The table parameter is similar to that of
-      <A HREF="#fn:frame_managed_changed_hook"><TT>frame_managed_changed_hook</TT></A>.
-      
-</DD>
-</DL>
-
 <P>
 
 <P>
 
 <DIV CLASS="navigation"><HR>
 <!--Navigation Panel-->
-<A NAME="tex2html348"
+<A NAME="tex2html355"
   HREF="node8.html">
 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
-<A NAME="tex2html342"
+<A NAME="tex2html349"
   HREF="ionconf.html">
 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
-<A NAME="tex2html336"
+<A NAME="tex2html343"
   HREF="node6.html">
 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
-<A NAME="tex2html344"
+<A NAME="tex2html351"
   HREF="node1.html">
 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
-<A NAME="tex2html346"
+<A NAME="tex2html353"
   HREF="node11.html">
 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
 <BR>
-<B> Next:</B> <A NAME="tex2html349"
+<B> Next:</B> <A NAME="tex2html356"
   HREF="node8.html">A. The GNU General</A>
-<B> Up:</B> <A NAME="tex2html343"
+<B> Up:</B> <A NAME="tex2html350"
   HREF="ionconf.html">Configuring and extending Ion3</A>
-<B> Previous:</B> <A NAME="tex2html337"
+<B> Previous:</B> <A NAME="tex2html344"
   HREF="node6.html">5. Scripting</A>
- &nbsp; <B>  <A NAME="tex2html345"
+ &nbsp; <B>  <A NAME="tex2html352"
   HREF="node1.html">Contents</A></B> 
- &nbsp; <B>  <A NAME="tex2html347"
+ &nbsp; <B>  <A NAME="tex2html354"
   HREF="node11.html">Index</A></B> </DIV>
 <!--End of Navigation Panel-->