summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/treectrl.html467
-rw-r--r--doc/treectrl.man115
-rw-r--r--doc/treectrl.n126
3 files changed, 444 insertions, 264 deletions
diff --git a/doc/treectrl.html b/doc/treectrl.html
index 7a36cb8..a33fb85 100644
--- a/doc/treectrl.html
+++ b/doc/treectrl.html
@@ -1,10 +1,10 @@
-<! -- Copyright (c) 2002-2003 Christian Krone. -- -- See the file &quot;license.terms&quot; for information on usage and redistribution -- of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- -- $Id: treectrl.html,v 1.33 2006/09/08 22:10:04 treectrl Exp $
+<! -- Copyright (c) 2002-2003 Christian Krone. -- -- See the file &quot;license.terms&quot; for information on usage and redistribution -- of this file, and for a DISCLAIMER OF ALL WARRANTIES. -- -- $Id: treectrl.html,v 1.34 2006/09/16 20:04:52 treectrl Exp $
--><html><head>
<title>treectrl - Tk Commands </title>
</head>
<! -- Generated from file 'doc/treectrl.man' by tcllib/doctools with format 'html'
-->
-<! -- CVS: $Id: treectrl.html,v 1.33 2006/09/08 22:10:04 treectrl Exp $ treectrl.n
+<! -- CVS: $Id: treectrl.html,v 1.34 2006/09/16 20:04:52 treectrl Exp $ treectrl.n
-->
<body>
@@ -111,90 +111,94 @@ package require <b>treectrl 2.1.1</b><br>
<tr valign=top ><td ><a href="#65"><i class='arg'>pathName</i> <b class='cmd'>item element cget</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> <i class='arg'>option</i></a></td></tr>
<tr valign=top ><td ><a href="#66"><i class='arg'>pathName</i> <b class='cmd'>item element configure</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
<tr valign=top ><td ><a href="#67"><i class='arg'>pathName</i> <b class='cmd'>item element perstate</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> <i class='arg'>option</i> ?<i class='arg'>stateList</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#68"><i class='arg'>pathName</i> <b class='cmd'>item expand</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a></td></tr>
-<tr valign=top ><td ><a href="#69"><i class='arg'>pathName</i> <b class='cmd'>item firstchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#70"><i class='arg'>pathName</i> <b class='cmd'>item id</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#71"><i class='arg'>pathName</i> <b class='cmd'>item image</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>image</i>? ?<i class='arg'>column image ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#72"><i class='arg'>pathName</i> <b class='cmd'>item isancestor</b> <i class='arg'>itemDesc</i> <i class='arg'>descendant</i></a></td></tr>
-<tr valign=top ><td ><a href="#73"><i class='arg'>pathName</i> <b class='cmd'>item isopen</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#74"><i class='arg'>pathName</i> <b class='cmd'>item lastchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#75"><i class='arg'>pathName</i> <b class='cmd'>item nextsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>next</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#76"><i class='arg'>pathName</i> <b class='cmd'>item numchildren</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#77"><i class='arg'>pathName</i> <b class='cmd'>item order</b> <i class='arg'>itemDesc</i> ?<i class='arg'>-visible</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#78"><i class='arg'>pathName</i> <b class='cmd'>item parent</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#79"><i class='arg'>pathName</i> <b class='cmd'>item prevsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>prev</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#80"><i class='arg'>pathName</i> <b class='cmd'>item range</b> <i class='arg'>first</i> <i class='arg'>last</i></a></td></tr>
-<tr valign=top ><td ><a href="#81"><i class='arg'>pathName</i> <b class='cmd'>item remove</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#82"><i class='arg'>pathName</i> <b class='cmd'>item rnc</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#83"><i class='arg'>pathName</i> <b class='cmd'>item sort</b> <i class='arg'>itemDesc</i> ?<i class='arg'>option ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#84"><i class='arg'>pathName</i> <b class='cmd'>item span</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>numColumns</i>? ?<i class='arg'>column numColumns ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#85"><i class='arg'>pathName</i> <b class='cmd'>item state</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#86"><i class='arg'>pathName</i> <b class='cmd'>item state forcolumn</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> ?<i class='arg'>stateDescList</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#87"><i class='arg'>pathName</i> <b class='cmd'>item state get</b> <i class='arg'>itemDesc</i> ?<i class='arg'>stateName</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#88"><i class='arg'>pathName</i> <b class='cmd'>item state set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>lastItem</i>? <i class='arg'>stateDescList</i></a></td></tr>
-<tr valign=top ><td ><a href="#89"><i class='arg'>pathName</i> <b class='cmd'>item style</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#90"><i class='arg'>pathName</i> <b class='cmd'>item style elements</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i></a></td></tr>
-<tr valign=top ><td ><a href="#91"><i class='arg'>pathName</i> <b class='cmd'>item style map</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>style</i> <i class='arg'>map</i></a></td></tr>
-<tr valign=top ><td ><a href="#92"><i class='arg'>pathName</i> <b class='cmd'>item style set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>style</i>? ?<i class='arg'>column style ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#93"><i class='arg'>pathName</i> <b class='cmd'>item text</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>text</i>? ?<i class='arg'>column text ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#94"><i class='arg'>pathName</i> <b class='cmd'>item toggle</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a></td></tr>
-<tr valign=top ><td ><a href="#95"><i class='arg'>pathName</i> <b class='cmd'>marquee</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#96"><i class='arg'>pathName</i> <b class='cmd'>marquee anchor</b> ?<i class='arg'>x y</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#97"><i class='arg'>pathName</i> <b class='cmd'>marquee cget</b> <i class='arg'>option</i></a></td></tr>
-<tr valign=top ><td ><a href="#98"><i class='arg'>pathName</i> <b class='cmd'>marquee configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#99"><i class='arg'>pathName</i> <b class='cmd'>marquee coords</b> ?<i class='arg'>x1 y1 x2 y2</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#100"><i class='arg'>pathName</i> <b class='cmd'>marquee corner</b> ?<i class='arg'>x y</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#101"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a></td></tr>
-<tr valign=top ><td ><a href="#102"><i class='arg'>pathName</i> <b class='cmd'>notify</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#103"><i class='arg'>pathName</i> <b class='cmd'>notify bind</b> ?<i class='arg'>object</i>? ?<i class='arg'>pattern</i>? ?+??<i class='arg'>script</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#104"><i class='arg'>pathName</i> <b class='cmd'>notify configure</b> <i class='arg'>object</i> <i class='arg'>pattern</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#105"><i class='arg'>pathName</i> <b class='cmd'>notify detailnames</b> <i class='arg'>eventName</i></a></td></tr>
-<tr valign=top ><td ><a href="#106"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a></td></tr>
-<tr valign=top ><td ><a href="#107"><i class='arg'>pathName</i> <b class='cmd'>notify generate</b> <i class='arg'>pattern</i> ?<i class='arg'>charMap</i>? ?<i class='arg'>percentsCommand</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#108"><i class='arg'>pathName</i> <b class='cmd'>notify install</b> <i class='arg'>pattern</i> ?<i class='arg'>percentsCommand</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#109"><i class='arg'>pathName</i> <b class='cmd'>notify install detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i> ?<i class='arg'>percentsCommand</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#110"><i class='arg'>pathName</i> <b class='cmd'>notify install event</b> <i class='arg'>eventName</i> ?<i class='arg'>percentsCommand</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#111"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>pattern</i></a></td></tr>
-<tr valign=top ><td ><a href="#112"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>eventName</i> ?<i class='arg'>detail</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#113"><i class='arg'>pathName</i> <b class='cmd'>notify unbind</b> <i class='arg'>object</i> ?<i class='arg'>pattern</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#114"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall</b> <i class='arg'>pattern</i></a></td></tr>
-<tr valign=top ><td ><a href="#115"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i></a></td></tr>
-<tr valign=top ><td ><a href="#116"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall event</b> <i class='arg'>eventName</i></a></td></tr>
-<tr valign=top ><td ><a href="#117"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a></td></tr>
-<tr valign=top ><td ><a href="#118"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a></td></tr>
-<tr valign=top ><td ><a href="#119"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a></td></tr>
-<tr valign=top ><td ><a href="#120"><i class='arg'>pathName</i> <b class='cmd'>range</b> <i class='arg'>first</i> <i class='arg'>last</i></a></td></tr>
-<tr valign=top ><td ><a href="#121"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> ?<i class='arg'>stateName</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#122"><i class='arg'>pathName</i> <b class='cmd'>state define</b> <i class='arg'>stateName</i></a></td></tr>
-<tr valign=top ><td ><a href="#123"><i class='arg'>pathName</i> <b class='cmd'>state linkage</b> <i class='arg'>stateName</i></a></td></tr>
-<tr valign=top ><td ><a href="#124"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a></td></tr>
-<tr valign=top ><td ><a href="#125"><i class='arg'>pathName</i> <b class='cmd'>state undefine</b> ?<i class='arg'>stateName ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#126"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#127"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>arg</i></a></td></tr>
-<tr valign=top ><td ><a href="#128"><i class='arg'>pathName</i> <b class='cmd'>selection add</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#129"><i class='arg'>pathName</i> <b class='cmd'>selection anchor</b> ?<i class='arg'>itemDesc</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#130"><i class='arg'>pathName</i> <b class='cmd'>selection clear</b> ?<i class='arg'>first</i>? ?<i class='arg'>last</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#131"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a></td></tr>
-<tr valign=top ><td ><a href="#132"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a></td></tr>
-<tr valign=top ><td ><a href="#133"><i class='arg'>pathName</i> <b class='cmd'>selection includes</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#134"><i class='arg'>pathName</i> <b class='cmd'>selection modify</b> <i class='arg'>select</i> <i class='arg'>deselect</i></a></td></tr>
-<tr valign=top ><td ><a href="#135"><i class='arg'>pathName</i> <b class='cmd'>style</b> <i class='arg'>option</i> ?<i class='arg'>element</i>? ?<i class='arg'>arg arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#136"><i class='arg'>pathName</i> <b class='cmd'>style cget</b> <i class='arg'>style</i> <i class='arg'>option</i></a></td></tr>
-<tr valign=top ><td ><a href="#137"><i class='arg'>pathName</i> <b class='cmd'>style configure</b> <i class='arg'>style</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#138"><i class='arg'>pathName</i> <b class='cmd'>style create</b> <i class='arg'>style</i> ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#139"><i class='arg'>pathName</i> <b class='cmd'>style delete</b> ?<i class='arg'>style ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#140"><i class='arg'>pathName</i> <b class='cmd'>style elements</b> <i class='arg'>style</i> ?<i class='arg'>elementList</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#141"><i class='arg'>pathName</i> <b class='cmd'>style layout</b> <i class='arg'>style</i> <i class='arg'>element</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#142"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a></td></tr>
-<tr valign=top ><td ><a href="#143"><i class='arg'>pathName</i> <b class='cmd'>toggle</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#144"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#145"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a></td></tr>
-<tr valign=top ><td ><a href="#146"><i class='arg'>pathName</i> <b class='cmd'>xview moveto</b> <i class='arg'>fraction</i></a></td></tr>
-<tr valign=top ><td ><a href="#147"><i class='arg'>pathName</i> <b class='cmd'>xview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a></td></tr>
-<tr valign=top ><td ><a href="#148"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#149"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a></td></tr>
-<tr valign=top ><td ><a href="#150"><i class='arg'>pathName</i> <b class='cmd'>yview moveto</b> <i class='arg'>fraction</i></a></td></tr>
-<tr valign=top ><td ><a href="#151"><i class='arg'>pathName</i> <b class='cmd'>yview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a></td></tr>
+<tr valign=top ><td ><a href="#68"><i class='arg'>pathName</i> <b class='cmd'>item enabled</b> <i class='arg'>itemDesc</i> ?<i class='arg'>boolean</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#69"><i class='arg'>pathName</i> <b class='cmd'>item expand</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a></td></tr>
+<tr valign=top ><td ><a href="#70"><i class='arg'>pathName</i> <b class='cmd'>item firstchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#71"><i class='arg'>pathName</i> <b class='cmd'>item id</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#72"><i class='arg'>pathName</i> <b class='cmd'>item image</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>image</i>? ?<i class='arg'>column image ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#73"><i class='arg'>pathName</i> <b class='cmd'>item isancestor</b> <i class='arg'>itemDesc</i> <i class='arg'>descendant</i></a></td></tr>
+<tr valign=top ><td ><a href="#74"><i class='arg'>pathName</i> <b class='cmd'>item isopen</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#75"><i class='arg'>pathName</i> <b class='cmd'>item lastchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#76"><i class='arg'>pathName</i> <b class='cmd'>item nextsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>next</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#77"><i class='arg'>pathName</i> <b class='cmd'>item numchildren</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#78"><i class='arg'>pathName</i> <b class='cmd'>item order</b> <i class='arg'>itemDesc</i> ?<i class='arg'>-visible</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#79"><i class='arg'>pathName</i> <b class='cmd'>item parent</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#80"><i class='arg'>pathName</i> <b class='cmd'>item prevsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>prev</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#81"><i class='arg'>pathName</i> <b class='cmd'>item range</b> <i class='arg'>first</i> <i class='arg'>last</i></a></td></tr>
+<tr valign=top ><td ><a href="#82"><i class='arg'>pathName</i> <b class='cmd'>item remove</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#83"><i class='arg'>pathName</i> <b class='cmd'>item rnc</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#84"><i class='arg'>pathName</i> <b class='cmd'>item sort</b> <i class='arg'>itemDesc</i> ?<i class='arg'>option ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#85"><i class='arg'>pathName</i> <b class='cmd'>item span</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>numColumns</i>? ?<i class='arg'>column numColumns ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#86"><i class='arg'>pathName</i> <b class='cmd'>item state</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#87"><i class='arg'>pathName</i> <b class='cmd'>item state forcolumn</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> ?<i class='arg'>stateDescList</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#88"><i class='arg'>pathName</i> <b class='cmd'>item state get</b> <i class='arg'>itemDesc</i> ?<i class='arg'>stateName</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#89"><i class='arg'>pathName</i> <b class='cmd'>item state set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>lastItem</i>? <i class='arg'>stateDescList</i></a></td></tr>
+<tr valign=top ><td ><a href="#90"><i class='arg'>pathName</i> <b class='cmd'>item style</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#91"><i class='arg'>pathName</i> <b class='cmd'>item style elements</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i></a></td></tr>
+<tr valign=top ><td ><a href="#92"><i class='arg'>pathName</i> <b class='cmd'>item style map</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>style</i> <i class='arg'>map</i></a></td></tr>
+<tr valign=top ><td ><a href="#93"><i class='arg'>pathName</i> <b class='cmd'>item style set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>style</i>? ?<i class='arg'>column style ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#94"><i class='arg'>pathName</i> <b class='cmd'>item text</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>text</i>? ?<i class='arg'>column text ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#95"><i class='arg'>pathName</i> <b class='cmd'>item toggle</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a></td></tr>
+<tr valign=top ><td ><a href="#96"><i class='arg'>pathName</i> <b class='cmd'>marquee</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#97"><i class='arg'>pathName</i> <b class='cmd'>marquee anchor</b> ?<i class='arg'>x y</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#98"><i class='arg'>pathName</i> <b class='cmd'>marquee cget</b> <i class='arg'>option</i></a></td></tr>
+<tr valign=top ><td ><a href="#99"><i class='arg'>pathName</i> <b class='cmd'>marquee configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#100"><i class='arg'>pathName</i> <b class='cmd'>marquee coords</b> ?<i class='arg'>x1 y1 x2 y2</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#101"><i class='arg'>pathName</i> <b class='cmd'>marquee corner</b> ?<i class='arg'>x y</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#102"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a></td></tr>
+<tr valign=top ><td ><a href="#103"><i class='arg'>pathName</i> <b class='cmd'>notify</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#104"><i class='arg'>pathName</i> <b class='cmd'>notify bind</b> ?<i class='arg'>object</i>? ?<i class='arg'>pattern</i>? ?+??<i class='arg'>script</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#105"><i class='arg'>pathName</i> <b class='cmd'>notify configure</b> <i class='arg'>object</i> <i class='arg'>pattern</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#106"><i class='arg'>pathName</i> <b class='cmd'>notify detailnames</b> <i class='arg'>eventName</i></a></td></tr>
+<tr valign=top ><td ><a href="#107"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a></td></tr>
+<tr valign=top ><td ><a href="#108"><i class='arg'>pathName</i> <b class='cmd'>notify generate</b> <i class='arg'>pattern</i> ?<i class='arg'>charMap</i>? ?<i class='arg'>percentsCommand</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#109"><i class='arg'>pathName</i> <b class='cmd'>notify install</b> <i class='arg'>pattern</i> ?<i class='arg'>percentsCommand</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#110"><i class='arg'>pathName</i> <b class='cmd'>notify install detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i> ?<i class='arg'>percentsCommand</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#111"><i class='arg'>pathName</i> <b class='cmd'>notify install event</b> <i class='arg'>eventName</i> ?<i class='arg'>percentsCommand</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#112"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>pattern</i></a></td></tr>
+<tr valign=top ><td ><a href="#113"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>eventName</i> ?<i class='arg'>detail</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#114"><i class='arg'>pathName</i> <b class='cmd'>notify unbind</b> <i class='arg'>object</i> ?<i class='arg'>pattern</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#115"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall</b> <i class='arg'>pattern</i></a></td></tr>
+<tr valign=top ><td ><a href="#116"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i></a></td></tr>
+<tr valign=top ><td ><a href="#117"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall event</b> <i class='arg'>eventName</i></a></td></tr>
+<tr valign=top ><td ><a href="#118"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a></td></tr>
+<tr valign=top ><td ><a href="#119"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a></td></tr>
+<tr valign=top ><td ><a href="#120"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a></td></tr>
+<tr valign=top ><td ><a href="#121"><i class='arg'>pathName</i> <b class='cmd'>range</b> <i class='arg'>first</i> <i class='arg'>last</i></a></td></tr>
+<tr valign=top ><td ><a href="#122"><i class='arg'>pathName</i> <b class='cmd'>scan</b> <i class='arg'>option</i> <i class='arg'>args</i></a></td></tr>
+<tr valign=top ><td ><a href="#123"><i class='arg'>pathName</i> <b class='cmd'>scan mark</b> <i class='arg'>x</i> <i class='arg'>y</i></a></td></tr>
+<tr valign=top ><td ><a href="#124"><i class='arg'>pathName</i> <b class='cmd'>scan dragto</b> <i class='arg'>x</i> <i class='arg'>y</i> ?<i class='arg'>gain</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#125"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> ?<i class='arg'>stateName</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#126"><i class='arg'>pathName</i> <b class='cmd'>state define</b> <i class='arg'>stateName</i></a></td></tr>
+<tr valign=top ><td ><a href="#127"><i class='arg'>pathName</i> <b class='cmd'>state linkage</b> <i class='arg'>stateName</i></a></td></tr>
+<tr valign=top ><td ><a href="#128"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a></td></tr>
+<tr valign=top ><td ><a href="#129"><i class='arg'>pathName</i> <b class='cmd'>state undefine</b> ?<i class='arg'>stateName ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#130"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#131"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>arg</i></a></td></tr>
+<tr valign=top ><td ><a href="#132"><i class='arg'>pathName</i> <b class='cmd'>selection add</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#133"><i class='arg'>pathName</i> <b class='cmd'>selection anchor</b> ?<i class='arg'>itemDesc</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#134"><i class='arg'>pathName</i> <b class='cmd'>selection clear</b> ?<i class='arg'>first</i>? ?<i class='arg'>last</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#135"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a></td></tr>
+<tr valign=top ><td ><a href="#136"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a></td></tr>
+<tr valign=top ><td ><a href="#137"><i class='arg'>pathName</i> <b class='cmd'>selection includes</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#138"><i class='arg'>pathName</i> <b class='cmd'>selection modify</b> <i class='arg'>select</i> <i class='arg'>deselect</i></a></td></tr>
+<tr valign=top ><td ><a href="#139"><i class='arg'>pathName</i> <b class='cmd'>style</b> <i class='arg'>option</i> ?<i class='arg'>element</i>? ?<i class='arg'>arg arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#140"><i class='arg'>pathName</i> <b class='cmd'>style cget</b> <i class='arg'>style</i> <i class='arg'>option</i></a></td></tr>
+<tr valign=top ><td ><a href="#141"><i class='arg'>pathName</i> <b class='cmd'>style configure</b> <i class='arg'>style</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#142"><i class='arg'>pathName</i> <b class='cmd'>style create</b> <i class='arg'>style</i> ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#143"><i class='arg'>pathName</i> <b class='cmd'>style delete</b> ?<i class='arg'>style ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#144"><i class='arg'>pathName</i> <b class='cmd'>style elements</b> <i class='arg'>style</i> ?<i class='arg'>elementList</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#145"><i class='arg'>pathName</i> <b class='cmd'>style layout</b> <i class='arg'>style</i> <i class='arg'>element</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#146"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a></td></tr>
+<tr valign=top ><td ><a href="#147"><i class='arg'>pathName</i> <b class='cmd'>toggle</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#148"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#149"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a></td></tr>
+<tr valign=top ><td ><a href="#150"><i class='arg'>pathName</i> <b class='cmd'>xview moveto</b> <i class='arg'>fraction</i></a></td></tr>
+<tr valign=top ><td ><a href="#151"><i class='arg'>pathName</i> <b class='cmd'>xview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a></td></tr>
+<tr valign=top ><td ><a href="#152"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#153"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a></td></tr>
+<tr valign=top ><td ><a href="#154"><i class='arg'>pathName</i> <b class='cmd'>yview moveto</b> <i class='arg'>fraction</i></a></td></tr>
+<tr valign=top ><td ><a href="#155"><i class='arg'>pathName</i> <b class='cmd'>yview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a></td></tr>
</table></td></tr></table>
<h2><a name="description">DESCRIPTION</a></h2>
<p>
@@ -539,11 +543,10 @@ Database Name: <strong>showButtons</strong><br>
Database Class: <strong>ShowButtons</strong><br>
<dd>
Specifies a boolean value that determines whether this widget
-displays a button to the left of any item.
-If the button is actually drawn can be configured for every item
-with the <b class='cmd'>item hasbutton</b> widget command, but if this option is
-set to false, the configuration of an item has no effect.
+leaves indentation space to display the expand/collapse buttons next to items.
The default value is true.
+The item option <strong>-button</strong> determines whether any item has a button.
+See also the treectrl option <strong>-showrootbutton</strong>.
<br><br>
<dt>Command-Line Switch: <strong>-showheader</strong><br>
@@ -580,8 +583,9 @@ Database Name: <strong>showRootButton</strong><br>
Database Class: <strong>ShowRootButton</strong><br>
<dd>
Specifies a boolean value that determines whether this widget
-should draw a button before the root item.
-The default value is false.
+leaves indentation space to display the expand/collapse button next to the
+root item. The default value is false.
+The item option <strong>-button</strong> determines whether the root item has a button.
<br><br>
<dt>Command-Line Switch: <strong>-showrootlines</strong><br>
@@ -1561,7 +1565,14 @@ and dynamic, see <a href="#states">STATES</a>) is used in place of the current s
</dl>
-<dt><a name="68"><i class='arg'>pathName</i> <b class='cmd'>item expand</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
+<dt><a name="68"><i class='arg'>pathName</i> <b class='cmd'>item enabled</b> <i class='arg'>itemDesc</i> ?<i class='arg'>boolean</i>?</a><dd>
+
+Returns 1 if the item described by <i class='arg'>itemDesc</i> has the
+state <strong>enabled</strong> switched on, 0 otherwise. If <i class='arg'>boolean</i> is specified,
+the <strong>enabled</strong> state is set accordingly.
+
+<br><br>
+<dt><a name="69"><i class='arg'>pathName</i> <b class='cmd'>item expand</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
Switches on the <strong>open</strong> state of the item(s) described by <i class='arg'>itemDesc</i>.
If the item has descendants, they are now displayed.
@@ -1580,7 +1591,7 @@ an <strong>&lt;Expand-before&gt;</strong> event before the item state is changed
and an <strong>&lt;Expand-after&gt;</strong> event after the item state was changed.
<br><br>
-<dt><a name="69"><i class='arg'>pathName</i> <b class='cmd'>item firstchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a><dd>
+<dt><a name="70"><i class='arg'>pathName</i> <b class='cmd'>item firstchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a><dd>
If <i class='arg'>child</i> is not specified, returns the item id of the first
child of the item described by <i class='arg'>parent</i>.
@@ -1589,14 +1600,14 @@ that is not an ancestor of <i class='arg'>parent</i>.
Then it will become the new first child of <i class='arg'>parent</i>.
<br><br>
-<dt><a name="70"><i class='arg'>pathName</i> <b class='cmd'>item id</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="71"><i class='arg'>pathName</i> <b class='cmd'>item id</b> <i class='arg'>itemDesc</i></a><dd>
This command resolves the <a href="#item_description">item description</a> <i class='arg'>itemDesc</i> into a unique item
identifier. If the item described by
<i class='arg'>itemDesc</i> doesn't exist, this command returns an empty string.
<br><br>
-<dt><a name="71"><i class='arg'>pathName</i> <b class='cmd'>item image</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>image</i>? ?<i class='arg'>column image ...</i>?</a><dd>
+<dt><a name="72"><i class='arg'>pathName</i> <b class='cmd'>item image</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>image</i>? ?<i class='arg'>column image ...</i>?</a><dd>
This command sets or retrieves the value of the <a href="#per-state_options">per-state</a>
-image option for the first image element in one or more columns.
@@ -1614,19 +1625,19 @@ Note that this command is provided as a convenience. Use the
to set or retrieve the value of the -image option for a specific image element.
<br><br>
-<dt><a name="72"><i class='arg'>pathName</i> <b class='cmd'>item isancestor</b> <i class='arg'>itemDesc</i> <i class='arg'>descendant</i></a><dd>
+<dt><a name="73"><i class='arg'>pathName</i> <b class='cmd'>item isancestor</b> <i class='arg'>itemDesc</i> <i class='arg'>descendant</i></a><dd>
Returns 1 if the item described by <i class='arg'>itemDesc</i> is a direct or indirect
parent of the item decribed by <i class='arg'>descendant</i>, 0 otherwise.
<br><br>
-<dt><a name="73"><i class='arg'>pathName</i> <b class='cmd'>item isopen</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="74"><i class='arg'>pathName</i> <b class='cmd'>item isopen</b> <i class='arg'>itemDesc</i></a><dd>
Returns 1 if the item described by <i class='arg'>itemDesc</i> has the
state <strong>open</strong> switched on, 0 otherwise.
<br><br>
-<dt><a name="74"><i class='arg'>pathName</i> <b class='cmd'>item lastchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a><dd>
+<dt><a name="75"><i class='arg'>pathName</i> <b class='cmd'>item lastchild</b> <i class='arg'>parent</i> ?<i class='arg'>child</i>?</a><dd>
If <i class='arg'>child</i> is not specified, returns the item id of the last
child of the item described by <i class='arg'>parent</i>.
@@ -1635,7 +1646,7 @@ that is not an ancestor of <i class='arg'>parent</i>.
Then it will become the new last child of <i class='arg'>parent</i>.
<br><br>
-<dt><a name="75"><i class='arg'>pathName</i> <b class='cmd'>item nextsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>next</i>?</a><dd>
+<dt><a name="76"><i class='arg'>pathName</i> <b class='cmd'>item nextsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>next</i>?</a><dd>
If <i class='arg'>next</i> is not specified, returns the item id of the next
sibling of the item described by <i class='arg'>sibling</i>.
@@ -1644,12 +1655,12 @@ that is not an ancestor of <i class='arg'>sibling</i>.
Then it will become the new next sibling of <i class='arg'>sibling</i>.
<br><br>
-<dt><a name="76"><i class='arg'>pathName</i> <b class='cmd'>item numchildren</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="77"><i class='arg'>pathName</i> <b class='cmd'>item numchildren</b> <i class='arg'>itemDesc</i></a><dd>
Returns the number of children of the item described by <i class='arg'>itemDesc</i>.
<br><br>
-<dt><a name="77"><i class='arg'>pathName</i> <b class='cmd'>item order</b> <i class='arg'>itemDesc</i> ?<i class='arg'>-visible</i>?</a><dd>
+<dt><a name="78"><i class='arg'>pathName</i> <b class='cmd'>item order</b> <i class='arg'>itemDesc</i> ?<i class='arg'>-visible</i>?</a><dd>
This command returns the position of the item <i class='arg'>itemDesc</i> relative to
its toplevel ancestor (usually the root item, unless the ancestor is an
@@ -1660,13 +1671,13 @@ result of this command is the row the item falls in. If the optional argument
is not visible.
<br><br>
-<dt><a name="78"><i class='arg'>pathName</i> <b class='cmd'>item parent</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="79"><i class='arg'>pathName</i> <b class='cmd'>item parent</b> <i class='arg'>itemDesc</i></a><dd>
Returns the item id of the parent of the item
described by <i class='arg'>itemDesc</i>.
<br><br>
-<dt><a name="79"><i class='arg'>pathName</i> <b class='cmd'>item prevsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>prev</i>?</a><dd>
+<dt><a name="80"><i class='arg'>pathName</i> <b class='cmd'>item prevsibling</b> <i class='arg'>sibling</i> ?<i class='arg'>prev</i>?</a><dd>
If <i class='arg'>prev</i> is not specified, returns the item id of the previous
sibling of the item described by <i class='arg'>sibling</i>.
@@ -1675,7 +1686,7 @@ that is not an ancestor of <i class='arg'>sibling</i>.
Then it will become the new previous sibling of <i class='arg'>sibling</i>.
<br><br>
-<dt><a name="80"><i class='arg'>pathName</i> <b class='cmd'>item range</b> <i class='arg'>first</i> <i class='arg'>last</i></a><dd>
+<dt><a name="81"><i class='arg'>pathName</i> <b class='cmd'>item range</b> <i class='arg'>first</i> <i class='arg'>last</i></a><dd>
Returns a list containing the item ids of all items
in the range between <i class='arg'>first</i> and <i class='arg'>last</i>, inclusive.
@@ -1686,13 +1697,13 @@ The items specified by <i class='arg'>first</i> and <i class='arg'>last</i> must
ancestor.
<br><br>
-<dt><a name="81"><i class='arg'>pathName</i> <b class='cmd'>item remove</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="82"><i class='arg'>pathName</i> <b class='cmd'>item remove</b> <i class='arg'>itemDesc</i></a><dd>
Removes the item described by <i class='arg'>itemDesc</i>
from the list of children of its parent, so that it will become an orphan.
<br><br>
-<dt><a name="82"><i class='arg'>pathName</i> <b class='cmd'>item rnc</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="83"><i class='arg'>pathName</i> <b class='cmd'>item rnc</b> <i class='arg'>itemDesc</i></a><dd>
Returns a list of two integers, which corresponds to the row and column
of the item described by <i class='arg'>itemDesc</i>. The row and column corresponds to
@@ -1700,7 +1711,7 @@ the on-screen arrangement of items as determined by the -orient and -wrap
options. If the item is not displayed, this command returns an empty string.
<br><br>
-<dt><a name="83"><i class='arg'>pathName</i> <b class='cmd'>item sort</b> <i class='arg'>itemDesc</i> ?<i class='arg'>option ...</i>?</a><dd>
+<dt><a name="84"><i class='arg'>pathName</i> <b class='cmd'>item sort</b> <i class='arg'>itemDesc</i> ?<i class='arg'>option ...</i>?</a><dd>
Sorts the children of the item described by <i class='arg'>itemDesc</i>,
and redisplays the tree with the items in the new order.
@@ -1771,7 +1782,7 @@ Convert to integers and use integer comparison.
Convert to floating-point values and use floating comparison.
</dl>
-<dt><a name="84"><i class='arg'>pathName</i> <b class='cmd'>item span</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>numColumns</i>? ?<i class='arg'>column numColumns ...</i>?</a><dd>
+<dt><a name="85"><i class='arg'>pathName</i> <b class='cmd'>item span</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>numColumns</i>? ?<i class='arg'>column numColumns ...</i>?</a><dd>
This command sets or retrieves the number of columns that a style covers.
If no <i class='arg'>column</i> is specified, the return value is a list of spans, one per column.
@@ -1780,7 +1791,7 @@ If one or more <i class='arg'>column</i>-<i class='arg'>numColumns</i> pairs is
span for each <i class='arg'>column</i> is set to <i class='arg'>numColumns</i>.
<br><br>
-<dt><a name="85"><i class='arg'>pathName</i> <b class='cmd'>item state</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="86"><i class='arg'>pathName</i> <b class='cmd'>item state</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a><dd>
This command is used to manipulate the states of an item.
The exact behavior of the command depends on the <i class='arg'>command</i> argument
@@ -1790,7 +1801,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="86"><i class='arg'>pathName</i> <b class='cmd'>item state forcolumn</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> ?<i class='arg'>stateDescList</i>?</a><dd>
+<dt><a name="87"><i class='arg'>pathName</i> <b class='cmd'>item state forcolumn</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> ?<i class='arg'>stateDescList</i>?</a><dd>
Just like <b class='cmd'>item state set</b> but manipulates dynamic states for a single
item column, not the item as a whole. If <i class='arg'>stateDescList</i> is unspecified,
@@ -1798,7 +1809,7 @@ this command returns a list containing the names of all the dynamic states
which are switched on in <i class='arg'>column</i>.
<br><br>
-<dt><a name="87"><i class='arg'>pathName</i> <b class='cmd'>item state get</b> <i class='arg'>itemDesc</i> ?<i class='arg'>stateName</i>?</a><dd>
+<dt><a name="88"><i class='arg'>pathName</i> <b class='cmd'>item state get</b> <i class='arg'>itemDesc</i> ?<i class='arg'>stateName</i>?</a><dd>
If no <i class='arg'>stateName</i> is specified, returns a list containing
the names of all (static and dynamic) states
@@ -1808,7 +1819,7 @@ If a <i class='arg'>stateName</i> is specified,
0 otherwise.
<br><br>
-<dt><a name="88"><i class='arg'>pathName</i> <b class='cmd'>item state set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>lastItem</i>? <i class='arg'>stateDescList</i></a><dd>
+<dt><a name="89"><i class='arg'>pathName</i> <b class='cmd'>item state set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>lastItem</i>? <i class='arg'>stateDescList</i></a><dd>
Every element of <i class='arg'>stateDescList</i>
must be the name of a dynamic state (see <a href="#states">STATES</a> below),
@@ -1824,7 +1835,7 @@ then the state changes are made for all items of the treectrl widget.
</dl>
-<dt><a name="89"><i class='arg'>pathName</i> <b class='cmd'>item style</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="90"><i class='arg'>pathName</i> <b class='cmd'>item style</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> ?<i class='arg'>arg ...</i>?</a><dd>
This command is used to manipulate the styles of an item.
The exact behavior of the command depends on the <i class='arg'>command</i> argument
@@ -1833,7 +1844,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="90"><i class='arg'>pathName</i> <b class='cmd'>item style elements</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i></a><dd>
+<dt><a name="91"><i class='arg'>pathName</i> <b class='cmd'>item style elements</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i></a><dd>
This command returns a list containing the names of elements which were
configured by the <b class='cmd'>item element configure</b> command for the item
@@ -1841,7 +1852,7 @@ described by <i class='arg'>itemDesc</i> in <i class='arg'>column</i>. If there
to <i class='arg'>column</i> an error is returned.
<br><br>
-<dt><a name="91"><i class='arg'>pathName</i> <b class='cmd'>item style map</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>style</i> <i class='arg'>map</i></a><dd>
+<dt><a name="92"><i class='arg'>pathName</i> <b class='cmd'>item style map</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>style</i> <i class='arg'>map</i></a><dd>
Like the <b class='cmd'>item style set</b> command, this command may be used to assign a
style to a specific column of an item. Unlike <b class='cmd'>item style set</b>, this
@@ -1854,7 +1865,7 @@ an element in the style specified by <i class='arg'>style</i>. Both <i class='ar
<i class='arg'>elementNew</i> must be of the same type (<strong>bitmap</strong>, <strong>text</strong> etc).
<br><br>
-<dt><a name="92"><i class='arg'>pathName</i> <b class='cmd'>item style set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>style</i>? ?<i class='arg'>column style ...</i>?</a><dd>
+<dt><a name="93"><i class='arg'>pathName</i> <b class='cmd'>item style set</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>style</i>? ?<i class='arg'>column style ...</i>?</a><dd>
This command sets or retrieves the style assigned to one or more columns.
@@ -1869,7 +1880,7 @@ If one or more <i class='arg'>column</i>-<i class='arg'>style</i> pairs is speci
then the style in each <i class='arg'>column</i> is set to <i class='arg'>style</i>.
</dl>
-<dt><a name="93"><i class='arg'>pathName</i> <b class='cmd'>item text</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>text</i>? ?<i class='arg'>column text ...</i>?</a><dd>
+<dt><a name="94"><i class='arg'>pathName</i> <b class='cmd'>item text</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>text</i>? ?<i class='arg'>column text ...</i>?</a><dd>
This command sets or retrieves the value of the -text option for the first
text element in one or more columns.
@@ -1887,7 +1898,7 @@ Note that this command is provided as a convenience. Use the
want to set or retrieve the value of the -text option for a specific text element.
<br><br>
-<dt><a name="94"><i class='arg'>pathName</i> <b class='cmd'>item toggle</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
+<dt><a name="95"><i class='arg'>pathName</i> <b class='cmd'>item toggle</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
Changes the <strong>open</strong> state of the item(s) described by <i class='arg'>itemDesc</i>.
If the state is currently switched off,
@@ -1900,7 +1911,7 @@ If <strong>-recurse</strong> is specified, the state of all descendants of
</dl>
-<dt><a name="95"><i class='arg'>pathName</i> <b class='cmd'>marquee</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="96"><i class='arg'>pathName</i> <b class='cmd'>marquee</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
This command is used to manipulate the marquee,
a rectangular region of the treectrl widget
@@ -1917,7 +1928,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="96"><i class='arg'>pathName</i> <b class='cmd'>marquee anchor</b> ?<i class='arg'>x y</i>?</a><dd>
+<dt><a name="97"><i class='arg'>pathName</i> <b class='cmd'>marquee anchor</b> ?<i class='arg'>x y</i>?</a><dd>
Returns a list containing the x and y coordinates of the anchor,
if no additional arguments are specified.
@@ -1925,7 +1936,7 @@ If two coordinates are specified,
sets the anchor to the given coordinates <i class='arg'>x</i> and <i class='arg'>y</i>.
<br><br>
-<dt><a name="97"><i class='arg'>pathName</i> <b class='cmd'>marquee cget</b> <i class='arg'>option</i></a><dd>
+<dt><a name="98"><i class='arg'>pathName</i> <b class='cmd'>marquee cget</b> <i class='arg'>option</i></a><dd>
This command returns the current value of the marquee option
named <i class='arg'>option</i>.
@@ -1933,7 +1944,7 @@ named <i class='arg'>option</i>.
<b class='cmd'>marquee configure</b> widget command.
<br><br>
-<dt><a name="98"><i class='arg'>pathName</i> <b class='cmd'>marquee configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="99"><i class='arg'>pathName</i> <b class='cmd'>marquee configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
This command is similar to the <b class='cmd'>configure</b> widget command except
that it modifies the marquee options
@@ -1960,7 +1971,7 @@ whether the dotted line surrounding the region of the marquee
should currently be visible.
</dl>
-<dt><a name="99"><i class='arg'>pathName</i> <b class='cmd'>marquee coords</b> ?<i class='arg'>x1 y1 x2 y2</i>?</a><dd>
+<dt><a name="100"><i class='arg'>pathName</i> <b class='cmd'>marquee coords</b> ?<i class='arg'>x1 y1 x2 y2</i>?</a><dd>
Returns a list containing the x and y coordinates of the anchor
followed by the x and y coordinates of the corner,
@@ -1970,7 +1981,7 @@ sets the anchor to the given coordinates <i class='arg'>x1</i> and <i class='arg
and the corner to the coordinates <i class='arg'>x2</i> and <i class='arg'>y2</i>.
<br><br>
-<dt><a name="100"><i class='arg'>pathName</i> <b class='cmd'>marquee corner</b> ?<i class='arg'>x y</i>?</a><dd>
+<dt><a name="101"><i class='arg'>pathName</i> <b class='cmd'>marquee corner</b> ?<i class='arg'>x y</i>?</a><dd>
Returns a list containing the x and y coordinates of the corner,
if no additional arguments are specified.
@@ -1978,7 +1989,7 @@ If two coordinates are specified,
sets the corner to the given coordinates <i class='arg'>x</i> and <i class='arg'>y</i>.
<br><br>
-<dt><a name="101"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a><dd>
+<dt><a name="102"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a><dd>
Returns a list with information about the items inside the marquee.
The list has as elements a list itself
@@ -1992,7 +2003,7 @@ if there are any.
</dl>
-<dt><a name="102"><i class='arg'>pathName</i> <b class='cmd'>notify</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="103"><i class='arg'>pathName</i> <b class='cmd'>notify</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
Many Tk widgets communicate with the outside world via <strong>-command</strong>
callbacks and/or virtual events. For example, the Text widget
@@ -2008,7 +2019,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="103"><i class='arg'>pathName</i> <b class='cmd'>notify bind</b> ?<i class='arg'>object</i>? ?<i class='arg'>pattern</i>? ?+??<i class='arg'>script</i>?</a><dd>
+<dt><a name="104"><i class='arg'>pathName</i> <b class='cmd'>notify bind</b> ?<i class='arg'>object</i>? ?<i class='arg'>pattern</i>? ?+??<i class='arg'>script</i>?</a><dd>
This command associates Tcl scripts with events generated by a
treectrl widget.
@@ -2037,7 +2048,7 @@ for a window; otherwise it may be an arbitrary string. Like the regular
that window is destroyed.
<br><br>
-<dt><a name="104"><i class='arg'>pathName</i> <b class='cmd'>notify configure</b> <i class='arg'>object</i> <i class='arg'>pattern</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="105"><i class='arg'>pathName</i> <b class='cmd'>notify configure</b> <i class='arg'>object</i> <i class='arg'>pattern</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
This command sets and retrieves options for bindings created by the
<b class='cmd'>notify bind</b> command.
@@ -2062,7 +2073,7 @@ a binding script will not be evaluated when the corresponding event is
generated.
</dl>
-<dt><a name="105"><i class='arg'>pathName</i> <b class='cmd'>notify detailnames</b> <i class='arg'>eventName</i></a><dd>
+<dt><a name="106"><i class='arg'>pathName</i> <b class='cmd'>notify detailnames</b> <i class='arg'>eventName</i></a><dd>
Returns a list containing the names of all details,
which are installed for the event with the name <i class='arg'>eventName</i>
@@ -2070,14 +2081,14 @@ by means of the <b class='cmd'>notify install</b> widget command
or by the treectrl widget itself.
<br><br>
-<dt><a name="106"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a><dd>
+<dt><a name="107"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a><dd>
Returns a list containing the names of all events,
which are installed by means of the <b class='cmd'>notify install</b> widget command
or by the treectrl widget itself.
<br><br>
-<dt><a name="107"><i class='arg'>pathName</i> <b class='cmd'>notify generate</b> <i class='arg'>pattern</i> ?<i class='arg'>charMap</i>? ?<i class='arg'>percentsCommand</i>?</a><dd>
+<dt><a name="108"><i class='arg'>pathName</i> <b class='cmd'>notify generate</b> <i class='arg'>pattern</i> ?<i class='arg'>charMap</i>? ?<i class='arg'>percentsCommand</i>?</a><dd>
This command causes the treectrl widget to generate an event. This command is
typically used to generate dynamic events created by the <b class='cmd'>notify install</b>
@@ -2103,7 +2114,7 @@ command is available, then all %-substitution is done using <i class='arg'>charM
See <b class='cmd'>notify install</b> for a description of <i class='arg'>percentsCommand</i>.
<br><br>
-<dt><a name="108"><i class='arg'>pathName</i> <b class='cmd'>notify install</b> <i class='arg'>pattern</i> ?<i class='arg'>percentsCommand</i>?</a><dd>
+<dt><a name="109"><i class='arg'>pathName</i> <b class='cmd'>notify install</b> <i class='arg'>pattern</i> ?<i class='arg'>percentsCommand</i>?</a><dd>
This command installs a new event or detail specified by <i class='arg'>pattern</i>.
Events created by this command are called dynamic,
@@ -2138,19 +2149,19 @@ by itself.
or an error if the event is not dynamic.
<br><br>
-<dt><a name="109"><i class='arg'>pathName</i> <b class='cmd'>notify install detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i> ?<i class='arg'>percentsCommand</i>?</a><dd>
+<dt><a name="110"><i class='arg'>pathName</i> <b class='cmd'>notify install detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i> ?<i class='arg'>percentsCommand</i>?</a><dd>
Deprecated.
Use <b class='cmd'>notify install</b> with a <i class='arg'>pattern</i> of &lt;<i class='arg'>eventName</i>-<i class='arg'>detail</i>&gt; instead.
<br><br>
-<dt><a name="110"><i class='arg'>pathName</i> <b class='cmd'>notify install event</b> <i class='arg'>eventName</i> ?<i class='arg'>percentsCommand</i>?</a><dd>
+<dt><a name="111"><i class='arg'>pathName</i> <b class='cmd'>notify install event</b> <i class='arg'>eventName</i> ?<i class='arg'>percentsCommand</i>?</a><dd>
Deprecated.
Use <b class='cmd'>notify install</b> with a <i class='arg'>pattern</i> of &lt;<i class='arg'>eventName</i>&gt; instead.
<br><br>
-<dt><a name="111"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>pattern</i></a><dd>
+<dt><a name="112"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>pattern</i></a><dd>
Returns a string indicating
whether the specified event or detail is created
@@ -2158,21 +2169,21 @@ by means of the <b class='cmd'>notify install</b> widget command (<strong>dynami
or by the treectrl widget itself (<strong>static</strong>).
<br><br>
-<dt><a name="112"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>eventName</i> ?<i class='arg'>detail</i>?</a><dd>
+<dt><a name="113"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>eventName</i> ?<i class='arg'>detail</i>?</a><dd>
Deprecated.
Use <b class='cmd'>notify linkage</b> with a <i class='arg'>pattern</i> of &lt;<i class='arg'>eventName</i>&gt; or
&lt;<i class='arg'>eventName</i>-<i class='arg'>detail</i>&gt; instead.
<br><br>
-<dt><a name="113"><i class='arg'>pathName</i> <b class='cmd'>notify unbind</b> <i class='arg'>object</i> ?<i class='arg'>pattern</i>?</a><dd>
+<dt><a name="114"><i class='arg'>pathName</i> <b class='cmd'>notify unbind</b> <i class='arg'>object</i> ?<i class='arg'>pattern</i>?</a><dd>
If no <i class='arg'>pattern</i> is specified, all bindings on <i class='arg'>object</i> are removed.
If <i class='arg'>pattern</i> is specified, then the current binding for <i class='arg'>pattern</i>
is destroyed, leaving <i class='arg'>pattern</i> unbound.
<br><br>
-<dt><a name="114"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall</b> <i class='arg'>pattern</i></a><dd>
+<dt><a name="115"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall</b> <i class='arg'>pattern</i></a><dd>
If the event or detail specified by <i class='arg'>pattern</i> is static
(i.e. created by the treectrl widget itself), an error is generated.
@@ -2180,29 +2191,29 @@ Otherwise the dynamic event or detail is removed. If an event name is specified
without a detail, all details for that event are also removed.
<br><br>
-<dt><a name="115"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i></a><dd>
+<dt><a name="116"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall detail</b> <i class='arg'>eventName</i> <i class='arg'>detail</i></a><dd>
Deprecated.
Use <b class='cmd'>notify uninstall</b> with a <i class='arg'>pattern</i> of &lt;<i class='arg'>eventName</i>-<i class='arg'>detail</i>&gt; instead.
<br><br>
-<dt><a name="116"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall event</b> <i class='arg'>eventName</i></a><dd>
+<dt><a name="117"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall event</b> <i class='arg'>eventName</i></a><dd>
Deprecated.
Use <b class='cmd'>notify uninstall</b> with a <i class='arg'>pattern</i> of &lt;<i class='arg'>eventName</i>&gt; instead.
</dl>
-<dt><a name="117"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a><dd>
+<dt><a name="118"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a><dd>
Deprecated. Use the <b class='cmd'>column count</b> command instead.
<br><br>
-<dt><a name="118"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a><dd>
+<dt><a name="119"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a><dd>
Deprecated. Use the <b class='cmd'>item count</b> command instead.
<br><br>
-<dt><a name="119"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a><dd>
+<dt><a name="120"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a><dd>
Returns a list containing the item ids of all items
which have no parent.
@@ -2211,12 +2222,40 @@ and can later become an orphan
by means of the <b class='cmd'>item remove</b> widget command. The root item is not returned.
<br><br>
-<dt><a name="120"><i class='arg'>pathName</i> <b class='cmd'>range</b> <i class='arg'>first</i> <i class='arg'>last</i></a><dd>
+<dt><a name="121"><i class='arg'>pathName</i> <b class='cmd'>range</b> <i class='arg'>first</i> <i class='arg'>last</i></a><dd>
Deprecated. Use the <b class='cmd'>item range</b> command instead.
<br><br>
-<dt><a name="121"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> ?<i class='arg'>stateName</i>?</a><dd>
+<dt><a name="122"><i class='arg'>pathName</i> <b class='cmd'>scan</b> <i class='arg'>option</i> <i class='arg'>args</i></a><dd>
+
+This command is used to implement scanning on treectrls. It has two forms,
+depending on <i class='arg'>option</i>:
+<br><br>
+<dl>
+
+<dt><a name="123"><i class='arg'>pathName</i> <b class='cmd'>scan mark</b> <i class='arg'>x</i> <i class='arg'>y</i></a><dd>
+
+Records <i class='arg'>x</i> and <i class='arg'>y</i> and the treectrl's current view; used in conjunction with
+later <b class='cmd'>scan dragto</b> commands. Typically this command is associated with a
+mouse button press in the widget and <i class='arg'>x</i> and <i class='arg'>y</i> are the coordinates of the
+mouse. It returns an empty string.
+
+<br><br>
+<dt><a name="124"><i class='arg'>pathName</i> <b class='cmd'>scan dragto</b> <i class='arg'>x</i> <i class='arg'>y</i> ?<i class='arg'>gain</i>?</a><dd>
+
+This command computes the difference between its <i class='arg'>x</i> and <i class='arg'>y</i> arguments (which
+are typically mouse coordinates) and the <i class='arg'>x</i> and <i class='arg'>y</i> arguments to the last
+<b class='cmd'>scan mark</b> command for the widget. It then adjusts the view by <i class='arg'>gain</i>
+times the difference in coordinates, where <i class='arg'>gain</i> defaults to 10. This
+command is typically associated with mouse motion events in the widget,
+to produce the effect of dragging the treectrl at high speed through its window.
+The return value is an empty string.
+</dl>
+
+
+
+<dt><a name="125"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> ?<i class='arg'>stateName</i>?</a><dd>
This command is used to manipulate the list of user-defined states,
see section <a href="#states">STATES</a> below.
@@ -2226,13 +2265,13 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="122"><i class='arg'>pathName</i> <b class='cmd'>state define</b> <i class='arg'>stateName</i></a><dd>
+<dt><a name="126"><i class='arg'>pathName</i> <b class='cmd'>state define</b> <i class='arg'>stateName</i></a><dd>
Defines a new state with the name <i class='arg'>stateName</i>,
which must not be the name of an existing state.
<br><br>
-<dt><a name="123"><i class='arg'>pathName</i> <b class='cmd'>state linkage</b> <i class='arg'>stateName</i></a><dd>
+<dt><a name="127"><i class='arg'>pathName</i> <b class='cmd'>state linkage</b> <i class='arg'>stateName</i></a><dd>
Returns a string indicating
whether the specified state is user-defined
@@ -2240,18 +2279,18 @@ by means of the <b class='cmd'>state define</b> widget command (<strong>dynamic<
or predefined by the treectrl widget itself (<strong>static</strong>).
<br><br>
-<dt><a name="124"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a><dd>
+<dt><a name="128"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a><dd>
Returns a list containing the names of all user-defined states.
<br><br>
-<dt><a name="125"><i class='arg'>pathName</i> <b class='cmd'>state undefine</b> ?<i class='arg'>stateName ...</i>?</a><dd>
+<dt><a name="129"><i class='arg'>pathName</i> <b class='cmd'>state undefine</b> ?<i class='arg'>stateName ...</i>?</a><dd>
Every <i class='arg'>stateName</i> must be the name of a user-defined state.
Removes this state from the list of user-defined states.
</dl>
-<dt><a name="126"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="130"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a><dd>
Adjust the view in the treectrl so that the item
described by <i class='arg'>itemDesc</i> is visible.
@@ -2261,14 +2300,14 @@ and the corresponding <strong>&lt;Scroll-x&gt;</strong> and/or <strong>&lt;Scrol
events are generated.
<br><br>
-<dt><a name="127"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>arg</i></a><dd>
+<dt><a name="131"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>arg</i></a><dd>
This command is used to adjust the selection within a treectrl.
It has several forms, depending on <i class='arg'>option</i>:
<br><br>
<dl>
-<dt><a name="128"><i class='arg'>pathName</i> <b class='cmd'>selection add</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a><dd>
+<dt><a name="132"><i class='arg'>pathName</i> <b class='cmd'>selection add</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a><dd>
<i class='arg'>First</i> and <i class='arg'>last</i> (if specified)
must be the string <strong>all</strong> or a valid <a href="#item_description">item description</a>.
@@ -2281,7 +2320,7 @@ A <strong>&lt;Selection&gt;</strong> event is generated if any items were added
selection.
<br><br>
-<dt><a name="129"><i class='arg'>pathName</i> <b class='cmd'>selection anchor</b> ?<i class='arg'>itemDesc</i>?</a><dd>
+<dt><a name="133"><i class='arg'>pathName</i> <b class='cmd'>selection anchor</b> ?<i class='arg'>itemDesc</i>?</a><dd>
If <i class='arg'>itemDesc</i> is specified,
the selection anchor is set to the described item.
@@ -2292,7 +2331,7 @@ This command doesn't modify the selection state of any item.
Returns the numerical id of the selection anchor item.
<br><br>
-<dt><a name="130"><i class='arg'>pathName</i> <b class='cmd'>selection clear</b> ?<i class='arg'>first</i>? ?<i class='arg'>last</i>?</a><dd>
+<dt><a name="134"><i class='arg'>pathName</i> <b class='cmd'>selection clear</b> ?<i class='arg'>first</i>? ?<i class='arg'>last</i>?</a><dd>
<i class='arg'>First</i> and <i class='arg'>last</i> (if specified)
must be the string <strong>all</strong> or a valid <a href="#item_description">item description</a>.
@@ -2306,13 +2345,13 @@ A <strong>&lt;Selection&gt;</strong> event is generated if any items were remove
selection.
<br><br>
-<dt><a name="131"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a><dd>
+<dt><a name="135"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a><dd>
Returns an integer indicating the number
of items in the treectrl that are currently selected.
<br><br>
-<dt><a name="132"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a><dd>
+<dt><a name="136"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a><dd>
Returns a list containing the item ids of
all of the items in the treectrl that are currently selected.
@@ -2320,13 +2359,13 @@ If there are no items selected in the treectrl then an empty
string is returned.
<br><br>
-<dt><a name="133"><i class='arg'>pathName</i> <b class='cmd'>selection includes</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="137"><i class='arg'>pathName</i> <b class='cmd'>selection includes</b> <i class='arg'>itemDesc</i></a><dd>
Returns 1 if the item described by <i class='arg'>itemDesc</i> is currently
selected, 0 if it isn't.
<br><br>
-<dt><a name="134"><i class='arg'>pathName</i> <b class='cmd'>selection modify</b> <i class='arg'>select</i> <i class='arg'>deselect</i></a><dd>
+<dt><a name="138"><i class='arg'>pathName</i> <b class='cmd'>selection modify</b> <i class='arg'>select</i> <i class='arg'>deselect</i></a><dd>
Both arguments <i class='arg'>select</i> and <i class='arg'>deselect</i> must be
the string <strong>all</strong> or a possibly-empty list of <a href="#item_description">item descriptions</a>.
@@ -2336,7 +2375,7 @@ for those items which are also in <i class='arg'>select</i>).
A <strong>&lt;Selection&gt;</strong> event is generated if any items were selected or deselected.
</dl>
-<dt><a name="135"><i class='arg'>pathName</i> <b class='cmd'>style</b> <i class='arg'>option</i> ?<i class='arg'>element</i>? ?<i class='arg'>arg arg ...</i>?</a><dd>
+<dt><a name="139"><i class='arg'>pathName</i> <b class='cmd'>style</b> <i class='arg'>option</i> ?<i class='arg'>element</i>? ?<i class='arg'>arg arg ...</i>?</a><dd>
This command is used to manipulate styles, which can be thought of
as a geometry manager for elements.
@@ -2346,7 +2385,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="136"><i class='arg'>pathName</i> <b class='cmd'>style cget</b> <i class='arg'>style</i> <i class='arg'>option</i></a><dd>
+<dt><a name="140"><i class='arg'>pathName</i> <b class='cmd'>style cget</b> <i class='arg'>style</i> <i class='arg'>option</i></a><dd>
This command returns the current value of the option named <i class='arg'>option</i>
associated with the style given by <i class='arg'>style</i>.
@@ -2354,7 +2393,7 @@ associated with the style given by <i class='arg'>style</i>.
<b class='cmd'>style configure</b> widget command.
<br><br>
-<dt><a name="137"><i class='arg'>pathName</i> <b class='cmd'>style configure</b> <i class='arg'>style</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="141"><i class='arg'>pathName</i> <b class='cmd'>style configure</b> <i class='arg'>style</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
This command is similar to the <b class='cmd'>configure</b> widget command except
that it modifies options associated with the style given by <i class='arg'>style</i>
@@ -2383,7 +2422,7 @@ Must be either <strong>horizontal</strong> (the default)
or <strong>vertical</strong> or an abbreviation of one of these.
</dl>
-<dt><a name="138"><i class='arg'>pathName</i> <b class='cmd'>style create</b> <i class='arg'>style</i> ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="142"><i class='arg'>pathName</i> <b class='cmd'>style create</b> <i class='arg'>style</i> ?<i class='arg'>option value ...</i>?</a><dd>
Create a new style in <i class='arg'>pathName</i> with name <i class='arg'>style</i>.
After <i class='arg'>style</i> there may be any number of <i class='arg'>option</i>-<i class='arg'>value</i>
@@ -2394,7 +2433,7 @@ configuration.
Returns the name of the new style.
<br><br>
-<dt><a name="139"><i class='arg'>pathName</i> <b class='cmd'>style delete</b> ?<i class='arg'>style ...</i>?</a><dd>
+<dt><a name="143"><i class='arg'>pathName</i> <b class='cmd'>style delete</b> ?<i class='arg'>style ...</i>?</a><dd>
Deletes each of the named styles and returns an empty string.
If a style is deleted while it is still used to display
@@ -2402,7 +2441,7 @@ one or more items,
it is also removed from the style list of these items.
<br><br>
-<dt><a name="140"><i class='arg'>pathName</i> <b class='cmd'>style elements</b> <i class='arg'>style</i> ?<i class='arg'>elementList</i>?</a><dd>
+<dt><a name="144"><i class='arg'>pathName</i> <b class='cmd'>style elements</b> <i class='arg'>style</i> ?<i class='arg'>elementList</i>?</a><dd>
Specifies the elements which should be layed out by this style.
Each element of <i class='arg'>elementList</i> must be the name of an element
@@ -2417,7 +2456,7 @@ If the <i class='arg'>elementList</i> argument is not specified, a list is retur
containing the currently defined elements of <i class='arg'>style</i>.
<br><br>
-<dt><a name="141"><i class='arg'>pathName</i> <b class='cmd'>style layout</b> <i class='arg'>style</i> <i class='arg'>element</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="145"><i class='arg'>pathName</i> <b class='cmd'>style layout</b> <i class='arg'>style</i> <i class='arg'>element</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
This command is similar to the <b class='cmd'>configure</b> widget command except
that it modifies options used by <i class='arg'>style</i> for laying out <i class='arg'>element</i>
@@ -2538,17 +2577,17 @@ around a piece of text.
</dl>
-<dt><a name="142"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a><dd>
+<dt><a name="146"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a><dd>
Returns a list containing the names of all existing styles.
</dl>
-<dt><a name="143"><i class='arg'>pathName</i> <b class='cmd'>toggle</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a><dd>
+<dt><a name="147"><i class='arg'>pathName</i> <b class='cmd'>toggle</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a><dd>
Use <b class='cmd'>item toggle</b> instead.
<br><br>
-<dt><a name="144"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a><dd>
+<dt><a name="148"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a><dd>
This command is used to query and change the horizontal position of the
information displayed in the treectrl's window.
@@ -2556,7 +2595,7 @@ It can take any of the following forms:
<br><br>
<dl>
-<dt><a name="145"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a><dd>
+<dt><a name="149"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a><dd>
Returns a list containing two elements.
Each element is a real fraction between 0 and 1; together they describe
@@ -2569,7 +2608,7 @@ These are the same values passed to scrollbars via the <strong>-xscrollcommand</
option.
<br><br>
-<dt><a name="146"><i class='arg'>pathName</i> <b class='cmd'>xview moveto</b> <i class='arg'>fraction</i></a><dd>
+<dt><a name="150"><i class='arg'>pathName</i> <b class='cmd'>xview moveto</b> <i class='arg'>fraction</i></a><dd>
Adjusts the view in the window so that <i class='arg'>fraction</i> of the
total width of the tree is off-screen to the left.
@@ -2577,7 +2616,7 @@ total width of the tree is off-screen to the left.
A <strong>&lt;Scroll-x&gt;</strong> event is generated.
<br><br>
-<dt><a name="147"><i class='arg'>pathName</i> <b class='cmd'>xview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a><dd>
+<dt><a name="151"><i class='arg'>pathName</i> <b class='cmd'>xview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a><dd>
This command shifts the view in the window left or right according to
<i class='arg'>number</i> and <i class='arg'>what</i>.
@@ -2595,7 +2634,7 @@ becomes visible.
A <strong>&lt;Scroll-x&gt;</strong> event is generated.
</dl>
-<dt><a name="148"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a><dd>
+<dt><a name="152"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a><dd>
This command is used to query and change the vertical position of the
information displayed in the treectrl's window.
@@ -2603,7 +2642,7 @@ It can take any of the following forms:
<br><br>
<dl>
-<dt><a name="149"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a><dd>
+<dt><a name="153"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a><dd>
Returns a list containing two elements.
Each element is a real fraction between 0 and 1; together they describe
@@ -2614,7 +2653,7 @@ These are the same values passed to scrollbars via the <strong>-yscrollcommand</
option.
<br><br>
-<dt><a name="150"><i class='arg'>pathName</i> <b class='cmd'>yview moveto</b> <i class='arg'>fraction</i></a><dd>
+<dt><a name="154"><i class='arg'>pathName</i> <b class='cmd'>yview moveto</b> <i class='arg'>fraction</i></a><dd>
Adjusts the view in the window so that <i class='arg'>fraction</i> of the tree's
area is off-screen to the top.
@@ -2622,7 +2661,7 @@ area is off-screen to the top.
A <strong>&lt;Scroll-y&gt;</strong> event is generated.
<br><br>
-<dt><a name="151"><i class='arg'>pathName</i> <b class='cmd'>yview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a><dd>
+<dt><a name="155"><i class='arg'>pathName</i> <b class='cmd'>yview scroll</b> <i class='arg'>number</i> <i class='arg'>what</i></a><dd>
This command adjusts the view in the window up or down according to
<i class='arg'>number</i> and <i class='arg'>what</i>.
@@ -2955,8 +2994,10 @@ This state can be modified by means of the widget command <b class='cmd'>activat
<br><br>
<dt><strong>enabled</strong><dd>
-This state is set for every item, when it is created.
-It cannot be modified.
+This state is set for every item when it is created.
+Disabled items can not be selected and are ignored by the default bindings
+when navigating via the keyboard.
+This state can be modified by means of the widget command <b class='cmd'>item enabled</b>.
<br><br>
<dt><strong>focus</strong><dd>
@@ -3379,19 +3420,15 @@ the item specified as argument of the last successful <b class='cmd'>selection a
widget command, or the root item if no such call happened yet.
<br><br>
-<dt><strong>first</strong> ?<strong>visible</strong>?<dd>
-Indicates the first item of the treectrl, i.e. the root item.
-If <strong>visible</strong> is specified and the widget is configured with
-<strong>-showroot</strong> <strong>no</strong>, the first visible child of the root node
-is specified instead.
+<dt><strong>first</strong> <i class='arg'>QUALIFIERS</i><dd>
+Indicates the first item of the treectrl (the root item),
+or the first item matching <i class='arg'>QUALIFIERS</i>.
<br><br>
-<dt><strong>end</strong> ?<strong>visible</strong>?<dd>
-<dt><strong>last</strong> ?<strong>visible</strong>?<dd>
-Indicates the last item of the treectrl.
-If <strong>visible</strong> is specified and the last item is currently not visible,
-i.e. one of its father nodes is collapsed,
-the last visible item is specified instead.
+<dt><strong>end</strong> <i class='arg'>QUALIFIERS</i><dd>
+<dt><strong>last</strong> <i class='arg'>QUALIFIERS</i><dd>
+Indicates the last item of the treectrl,
+or the last item matching <i class='arg'>QUALIFIERS</i>.
<br><br>
<dt><strong>nearest</strong> <i class='arg'>x y</i><dd>
@@ -3403,7 +3440,7 @@ Indicates the item in the given <i class='arg'>row</i> and <i class='arg'>column
The row and column corresponds to
the on-screen arrangement of items as determined by the -orient and -wrap
options.
-You can memorize <strong>rnc</strong> as abbreviation of &quot;row 'n' column&quot;.
+You can memorize <strong>rnc</strong> as an abbreviation of &quot;row 'n' column&quot;.
<br><br>
<dt><strong>root</strong><dd>
@@ -3430,15 +3467,15 @@ Use the item one row below in this column.
Use the item in the last row of this column.
<br><br>
-<dt><strong>child</strong> <i class='arg'>n</i> ?<strong>visible</strong>?<dd>
+<dt><strong>child</strong> <i class='arg'>n</i> <i class='arg'>QUALIFIERS</i><dd>
Use the <i class='arg'>n</i>th child of the item.
<br><br>
-<dt><strong>firstchild</strong> ?<strong>visible</strong>?<dd>
+<dt><strong>firstchild</strong> <i class='arg'>QUALIFIERS</i><dd>
Use the first child of the item.
<br><br>
-<dt><strong>lastchild</strong> ?<strong>visible</strong>?<dd>
+<dt><strong>lastchild</strong> <i class='arg'>QUALIFIERS</i><dd>
Use the last child of the item.
<br><br>
@@ -3450,13 +3487,13 @@ Use the item one column to the left in the same row.
Use the item of the first column in the same row.
<br><br>
-<dt><strong>next</strong> ?<strong>visible</strong>?<dd>
-Use the next item, which is the first existant (or visible) item of the
+<dt><strong>next</strong> <i class='arg'>QUALIFIERS</i><dd>
+Use the next item, which is the first item from the
following list: the first child, the next sibling or the next sibling of
-the nearest parent which has one.
+the nearest ancestor which has one.
<br><br>
-<dt><strong>nextsibling</strong> ?<strong>visible</strong>?<dd>
+<dt><strong>nextsibling</strong> <i class='arg'>QUALIFIERS</i><dd>
Use the next sibling of the item.
<br><br>
@@ -3464,12 +3501,12 @@ Use the next sibling of the item.
Use the parent of the item.
<br><br>
-<dt><strong>prev</strong> ?<strong>visible</strong>?<dd>
+<dt><strong>prev</strong> <i class='arg'>QUALIFIERS</i><dd>
Use the last child of the previous sibling,
-or the parent if there is no previos sibling.
+or the parent if there is no previous sibling.
<br><br>
-<dt><strong>prevsibling</strong> ?<strong>visible</strong>?<dd>
+<dt><strong>prevsibling</strong> <i class='arg'>QUALIFIERS</i><dd>
Use the previous sibling of the item.
<br><br>
@@ -3481,7 +3518,7 @@ Use the item one column to the right in the same row.
Use the item of the last column in the same row.
<br><br>
-<dt><strong>sibling</strong> <i class='arg'>n</i> ?<strong>visible</strong>?<dd>
+<dt><strong>sibling</strong> <i class='arg'>n</i> <i class='arg'>QUALIFIERS</i><dd>
Use the <i class='arg'>n</i>th child of the item's parent.
<br><br>
@@ -3489,6 +3526,34 @@ Use the <i class='arg'>n</i>th child of the item's parent.
Use the item in the first row of this column.
</dl>
+The word <i class='arg'>QUALIFIERS</i> above represents a list of zero or more of the
+following terms that changes which item is chosen:
+
+<dl>
+<dt><strong>state</strong> <i class='arg'>stateList</i><dd>
+<i class='arg'>StateList</i> is a list of item state names (static and dynamic, see <a href="#states">STATES</a>).
+Only items that have the given states set (or unset if the '!' prefix is used)
+are considered.
+<br><br>
+To get the first item in the list that is enabled:
+<p><table><tr><td bgcolor=black>&nbsp;</td><td><pre class='sample'>
+$T item id &quot;first state enabled&quot;
+</pre></td></tr></table></p>
+To get the first item in the list that is not open:
+<p><table><tr><td bgcolor=black>&nbsp;</td><td><pre class='sample'>
+$T item id &quot;first state !open&quot;
+</pre></td></tr></table></p>
+
+<br><br>
+<dt><strong>visible</strong><dd>
+When this qualifier is given, only items that are displayed are considered.
+<br><br>
+To get the first item in the list that is displayed:
+<p><table><tr><td bgcolor=black>&nbsp;</td><td><pre class='sample'>
+$T item id &quot;first visible&quot;
+</pre></td></tr></table></p>
+</dl>
+
<h2><a name="events_and_script_substitutions">EVENTS AND SCRIPT SUBSTITUTIONS</a></h2>
<p>
diff --git a/doc/treectrl.man b/doc/treectrl.man
index 6dc91cb..f146735 100644
--- a/doc/treectrl.man
+++ b/doc/treectrl.man
@@ -3,7 +3,7 @@
See the file "license.terms" for information on usage and redistribution
of this file, and for a DISCLAIMER OF ALL WARRANTIES.
- $Id: treectrl.man,v 1.34 2006/09/08 22:10:04 treectrl Exp $}
+ $Id: treectrl.man,v 1.35 2006/09/16 20:04:52 treectrl Exp $}
][manpage_begin treectrl n 2.1.1]
[moddesc {Tk Commands}]
[titledesc {Create and manipulate hierarchical multicolumn widgets}]
@@ -245,11 +245,10 @@ or [const extended]; the default value is [const browse].
[tkoption_def -showbuttons showButtons ShowButtons]
Specifies a boolean value that determines whether this widget
-displays a button to the left of any item.
-If the button is actually drawn can be configured for every item
-with the [cmd {item hasbutton}] widget command, but if this option is
-set to false, the configuration of an item has no effect.
+leaves indentation space to display the expand/collapse buttons next to items.
The default value is true.
+The item option [option -button] determines whether any item has a button.
+See also the treectrl option [option -showrootbutton].
[tkoption_def -showheader showHeader ShowHeader]
Specifies a boolean value that determines whether this widget
@@ -270,8 +269,9 @@ The default value is true.
[tkoption_def -showrootbutton showRootButton ShowRootButton]
Specifies a boolean value that determines whether this widget
-should draw a button before the root item.
-The default value is false.
+leaves indentation space to display the expand/collapse button next to the
+root item. The default value is false.
+The item option [option -button] determines whether the root item has a button.
[tkoption_def -showrootlines showRootLines ShowRootLines]
Specifies a boolean value that determines whether this widget
@@ -1089,6 +1089,11 @@ and dynamic, see [sectref STATES]) is used in place of the current state for
[list_end]
+[call [arg pathName] [cmd {item enabled}] [arg itemDesc] [opt [arg boolean]]]
+Returns 1 if the item described by [arg itemDesc] has the
+state [const enabled] switched on, 0 otherwise. If [arg boolean] is specified,
+the [const enabled] state is set accordingly.
+
[call [arg pathName] [cmd {item expand}] [arg itemDesc] [opt [option -recurse]]]
Switches on the [const open] state of the item(s) described by [arg itemDesc].
If the item has descendants, they are now displayed.
@@ -1655,6 +1660,29 @@ by means of the [cmd {item remove}] widget command. The root item is not returne
[call [arg pathName] [cmd range] [arg first] [arg last]]
Deprecated. Use the [cmd {item range}] command instead.
+[call [arg pathName] [cmd scan] [arg option] [arg args]]
+This command is used to implement scanning on treectrls. It has two forms,
+depending on [arg option]:
+[list_begin definitions]
+
+[call [arg pathName] [cmd {scan mark}] [arg x] [arg y]]
+Records [arg x] and [arg y] and the treectrl's current view; used in conjunction with
+later [cmd {scan dragto}] commands. Typically this command is associated with a
+mouse button press in the widget and [arg x] and [arg y] are the coordinates of the
+mouse. It returns an empty string.
+
+[call [arg pathName] [cmd {scan dragto}] [arg x] [arg y] [opt [arg gain]]]
+This command computes the difference between its [arg x] and [arg y] arguments (which
+are typically mouse coordinates) and the [arg x] and [arg y] arguments to the last
+[cmd {scan mark}] command for the widget. It then adjusts the view by [arg gain]
+times the difference in coordinates, where [arg gain] defaults to 10. This
+command is typically associated with mouse motion events in the widget,
+to produce the effect of dragging the treectrl at high speed through its window.
+The return value is an empty string.
+[list_end]
+
+
+
[call [arg pathName] [cmd state] [arg option] [opt [arg stateName]]]
This command is used to manipulate the list of user-defined states,
see section [sectref STATES] below.
@@ -2290,8 +2318,10 @@ the root item will become the active item.
This state can be modified by means of the widget command [cmd activate].
[lst_item [const enabled]]
-This state is set for every item, when it is created.
-It cannot be modified.
+This state is set for every item when it is created.
+Disabled items cannot be selected and are ignored by the default bindings
+when navigating via the keyboard.
+This state can be modified by means of the widget command [cmd {item enabled}].
[lst_item [const focus]]
This state is set for every item,
@@ -2667,18 +2697,14 @@ Indicates the anchor item of the selection, i.e. normally
the item specified as argument of the last successful [cmd {selection anchor}]
widget command, or the root item if no such call happened yet.
-[lst_item "[const first] [opt [const visible]]"]
-Indicates the first item of the treectrl, i.e. the root item.
-If [const visible] is specified and the widget is configured with
-[option -showroot] [const no], the first visible child of the root node
-is specified instead.
+[lst_item "[const first] [arg QUALIFIERS]"]
+Indicates the first item of the treectrl (the root item),
+or the first item matching [arg QUALIFIERS].
-[lst_item "[const end] [opt [const visible]]"]
-[lst_item "[const last] [opt [const visible]]"]
-Indicates the last item of the treectrl.
-If [const visible] is specified and the last item is currently not visible,
-i.e. one of its father nodes is collapsed,
-the last visible item is specified instead.
+[lst_item "[const end] [arg QUALIFIERS]"]
+[lst_item "[const last] [arg QUALIFIERS]"]
+Indicates the last item of the treectrl,
+or the last item matching [arg QUALIFIERS].
[lst_item "[const nearest] [arg {x y}]"]
Indicates the item nearest to the point given by [arg x] and [arg y].
@@ -2688,7 +2714,7 @@ Indicates the item in the given [arg row] and [arg column].
The row and column corresponds to
the on-screen arrangement of items as determined by the -orient and -wrap
options.
-You can memorize [const rnc] as abbreviation of "row 'n' column".
+You can memorize [const rnc] as an abbreviation of "row 'n' column".
[lst_item [const root]]
Indicates the root item of the treectrl.
@@ -2711,13 +2737,13 @@ Use the item one row below in this column.
[lst_item [const bottom]]
Use the item in the last row of this column.
-[lst_item "[const child] [arg n] [opt [const visible]]"]
+[lst_item "[const child] [arg n] [arg QUALIFIERS]"]
Use the [arg n]th child of the item.
-[lst_item "[const firstchild] [opt [const visible]]"]
+[lst_item "[const firstchild] [arg QUALIFIERS]"]
Use the first child of the item.
-[lst_item "[const lastchild] [opt [const visible]]"]
+[lst_item "[const lastchild] [arg QUALIFIERS]"]
Use the last child of the item.
[lst_item [const left]]
@@ -2726,22 +2752,22 @@ Use the item one column to the left in the same row.
[lst_item [const leftmost]]
Use the item of the first column in the same row.
-[lst_item "[const next] [opt [const visible]]"]
-Use the next item, which is the first existant (or visible) item of the
+[lst_item "[const next] [arg QUALIFIERS]"]
+Use the next item, which is the first item from the
following list: the first child, the next sibling or the next sibling of
-the nearest parent which has one.
+the nearest ancestor which has one.
-[lst_item "[const nextsibling] [opt [const visible]]"]
+[lst_item "[const nextsibling] [arg QUALIFIERS]"]
Use the next sibling of the item.
[lst_item [const parent]]
Use the parent of the item.
-[lst_item "[const prev] [opt [const visible]]"]
+[lst_item "[const prev] [arg QUALIFIERS]"]
Use the last child of the previous sibling,
or the parent if there is no previous sibling.
-[lst_item "[const prevsibling] [opt [const visible]]"]
+[lst_item "[const prevsibling] [arg QUALIFIERS]"]
Use the previous sibling of the item.
[lst_item [const right]]
@@ -2750,13 +2776,40 @@ Use the item one column to the right in the same row.
[lst_item [const rightmost]]
Use the item of the last column in the same row.
-[lst_item "[const sibling] [arg n] [opt [const visible]]"]
+[lst_item "[const sibling] [arg n] [arg QUALIFIERS]"]
Use the [arg n]th child of the item's parent.
[lst_item [const top]]
Use the item in the first row of this column.
[list_end]
+The word [arg QUALIFIERS] above represents a list of zero or more of the
+following terms that changes which item is chosen:
+
+[list_begin definitions]
+[lst_item "[const state] [arg stateList]"]
+[arg StateList] is a list of item state names (static and dynamic, see [sectref STATES]).
+Only items that have the given states set (or unset if the '!' prefix is used)
+are considered.
+[nl]
+To get the first item in the list that is enabled:
+[example_begin]
+$T item id "first state enabled"
+[example_end]
+To get the first item in the list that is not open:
+[example_begin]
+$T item id "first state !open"
+[example_end]
+
+[lst_item [const visible]]
+When this qualifier is given, only items that are displayed are considered.
+[nl]
+To get the first item in the list that is displayed:
+[example_begin]
+$T item id "first visible"
+[example_end]
+[list_end]
+
[section {EVENTS AND SCRIPT SUBSTITUTIONS}]
The [arg script] argument to [cmd {notify bind}] is a Tcl script, which will be
diff --git a/doc/treectrl.n b/doc/treectrl.n
index e39e5a6..06c5ea8 100644
--- a/doc/treectrl.n
+++ b/doc/treectrl.n
@@ -6,7 +6,7 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" $Id: treectrl.n,v 1.50 2006/09/08 22:10:04 treectrl Exp $
+'\" $Id: treectrl.n,v 1.51 2006/09/16 20:04:52 treectrl Exp $
.so man.macros
.TH "treectrl" n 2.1.1 treectrl "Tk Commands"
.BS
@@ -149,6 +149,8 @@ package require \fBtreectrl 2.1.1\fR
.sp
\fIpathName\fR \fBitem element perstate\fR \fIitemDesc\fR \fIcolumn\fR \fIelement\fR \fIoption\fR ?\fIstateList\fR?
.sp
+\fIpathName\fR \fBitem enabled\fR \fIitemDesc\fR ?\fIboolean\fR?
+.sp
\fIpathName\fR \fBitem expand\fR \fIitemDesc\fR ?\fB-recurse\fR?
.sp
\fIpathName\fR \fBitem firstchild\fR \fIparent\fR ?\fIchild\fR?
@@ -255,6 +257,12 @@ package require \fBtreectrl 2.1.1\fR
.sp
\fIpathName\fR \fBrange\fR \fIfirst\fR \fIlast\fR
.sp
+\fIpathName\fR \fBscan\fR \fIoption\fR \fIargs\fR
+.sp
+\fIpathName\fR \fBscan mark\fR \fIx\fR \fIy\fR
+.sp
+\fIpathName\fR \fBscan dragto\fR \fIx\fR \fIy\fR ?\fIgain\fR?
+.sp
\fIpathName\fR \fBstate\fR \fIoption\fR ?\fIstateName\fR?
.sp
\fIpathName\fR \fBstate define\fR \fIstateName\fR
@@ -740,11 +748,10 @@ Database Class: \fBShowButtons\fR
.fi
.IP
Specifies a boolean value that determines whether this widget
-displays a button to the left of any item.
-If the button is actually drawn can be configured for every item
-with the \fBitem hasbutton\fR widget command, but if this option is
-set to false, the configuration of an item has no effect.
+leaves indentation space to display the expand/collapse buttons next to items.
The default value is true.
+The item option \fB-button\fR determines whether any item has a button.
+See also the treectrl option \fB-showrootbutton\fR.
.LP
.nf
.ta 6c
@@ -793,8 +800,9 @@ Database Class: \fBShowRootButton\fR
.fi
.IP
Specifies a boolean value that determines whether this widget
-should draw a button before the root item.
-The default value is false.
+leaves indentation space to display the expand/collapse button next to the
+root item. The default value is false.
+The item option \fB-button\fR determines whether the root item has a button.
.LP
.nf
.ta 6c
@@ -1641,6 +1649,11 @@ and dynamic, see \fBSTATES\fR) is used in place of the current state for
\fIitem\fR and \fIcolumn.\fR
.RE
.TP
+\fIpathName\fR \fBitem enabled\fR \fIitemDesc\fR ?\fIboolean\fR?
+Returns 1 if the item described by \fIitemDesc\fR has the
+state \fBenabled\fR switched on, 0 otherwise. If \fIboolean\fR is specified,
+the \fBenabled\fR state is set accordingly.
+.TP
\fIpathName\fR \fBitem expand\fR \fIitemDesc\fR ?\fB-recurse\fR?
Switches on the \fBopen\fR state of the item(s) described by \fIitemDesc\fR.
If the item has descendants, they are now displayed.
@@ -2162,6 +2175,27 @@ by means of the \fBitem remove\fR widget command. The root item is not returned.
\fIpathName\fR \fBrange\fR \fIfirst\fR \fIlast\fR
Deprecated. Use the \fBitem range\fR command instead.
.TP
+\fIpathName\fR \fBscan\fR \fIoption\fR \fIargs\fR
+This command is used to implement scanning on treectrls. It has two forms,
+depending on \fIoption\fR:
+.RS
+.TP
+\fIpathName\fR \fBscan mark\fR \fIx\fR \fIy\fR
+Records \fIx\fR and \fIy\fR and the treectrl's current view; used in conjunction with
+later \fBscan dragto\fR commands. Typically this command is associated with a
+mouse button press in the widget and \fIx\fR and \fIy\fR are the coordinates of the
+mouse. It returns an empty string.
+.TP
+\fIpathName\fR \fBscan dragto\fR \fIx\fR \fIy\fR ?\fIgain\fR?
+This command computes the difference between its \fIx\fR and \fIy\fR arguments (which
+are typically mouse coordinates) and the \fIx\fR and \fIy\fR arguments to the last
+\fBscan mark\fR command for the widget. It then adjusts the view by \fIgain\fR
+times the difference in coordinates, where \fIgain\fR defaults to 10. This
+command is typically associated with mouse motion events in the widget,
+to produce the effect of dragging the treectrl at high speed through its window.
+The return value is an empty string.
+.RE
+.TP
\fIpathName\fR \fBstate\fR \fIoption\fR ?\fIstateName\fR?
This command is used to manipulate the list of user-defined states,
see section \fBSTATES\fR below.
@@ -2774,8 +2808,10 @@ the root item will become the active item.
This state can be modified by means of the widget command \fBactivate\fR.
.TP
\fBenabled\fR
-This state is set for every item, when it is created.
-It cannot be modified.
+This state is set for every item when it is created.
+Disabled items can not be selected and are ignored by the default bindings
+when navigating via the keyboard.
+This state can be modified by means of the widget command \fBitem enabled\fR.
.TP
\fBfocus\fR
This state is set for every item,
@@ -3125,19 +3161,15 @@ Indicates the anchor item of the selection, i.e. normally
the item specified as argument of the last successful \fBselection anchor\fR
widget command, or the root item if no such call happened yet.
.TP
-\fBfirst\fR ?\fBvisible\fR?
-Indicates the first item of the treectrl, i.e. the root item.
-If \fBvisible\fR is specified and the widget is configured with
-\fB-showroot\fR \fBno\fR, the first visible child of the root node
-is specified instead.
+\fBfirst\fR \fIQUALIFIERS\fR
+Indicates the first item of the treectrl (the root item),
+or the first item matching \fIQUALIFIERS\fR.
.TP
-\fBend\fR ?\fBvisible\fR?
+\fBend\fR \fIQUALIFIERS\fR
.TP
-\fBlast\fR ?\fBvisible\fR?
-Indicates the last item of the treectrl.
-If \fBvisible\fR is specified and the last item is currently not visible,
-i.e. one of its father nodes is collapsed,
-the last visible item is specified instead.
+\fBlast\fR \fIQUALIFIERS\fR
+Indicates the last item of the treectrl,
+or the last item matching \fIQUALIFIERS\fR.
.TP
\fBnearest\fR \fIx y\fR
Indicates the item nearest to the point given by \fIx\fR and \fIy\fR.
@@ -3147,7 +3179,7 @@ Indicates the item in the given \fIrow\fR and \fIcolumn\fR.
The row and column corresponds to
the on-screen arrangement of items as determined by the -orient and -wrap
options.
-You can memorize \fBrnc\fR as abbreviation of "row 'n' column".
+You can memorize \fBrnc\fR as an abbreviation of "row 'n' column".
.TP
\fBroot\fR
Indicates the root item of the treectrl.
@@ -3167,13 +3199,13 @@ Use the item one row below in this column.
\fBbottom\fR
Use the item in the last row of this column.
.TP
-\fBchild\fR \fIn\fR ?\fBvisible\fR?
+\fBchild\fR \fIn\fR \fIQUALIFIERS\fR
Use the \fIn\fRth child of the item.
.TP
-\fBfirstchild\fR ?\fBvisible\fR?
+\fBfirstchild\fR \fIQUALIFIERS\fR
Use the first child of the item.
.TP
-\fBlastchild\fR ?\fBvisible\fR?
+\fBlastchild\fR \fIQUALIFIERS\fR
Use the last child of the item.
.TP
\fBleft\fR
@@ -3182,22 +3214,22 @@ Use the item one column to the left in the same row.
\fBleftmost\fR
Use the item of the first column in the same row.
.TP
-\fBnext\fR ?\fBvisible\fR?
-Use the next item, which is the first existant (or visible) item of the
+\fBnext\fR \fIQUALIFIERS\fR
+Use the next item, which is the first item from the
following list: the first child, the next sibling or the next sibling of
-the nearest parent which has one.
+the nearest ancestor which has one.
.TP
-\fBnextsibling\fR ?\fBvisible\fR?
+\fBnextsibling\fR \fIQUALIFIERS\fR
Use the next sibling of the item.
.TP
\fBparent\fR
Use the parent of the item.
.TP
-\fBprev\fR ?\fBvisible\fR?
+\fBprev\fR \fIQUALIFIERS\fR
Use the last child of the previous sibling,
-or the parent if there is no previos sibling.
+or the parent if there is no previous sibling.
.TP
-\fBprevsibling\fR ?\fBvisible\fR?
+\fBprevsibling\fR \fIQUALIFIERS\fR
Use the previous sibling of the item.
.TP
\fBright\fR
@@ -3206,11 +3238,41 @@ Use the item one column to the right in the same row.
\fBrightmost\fR
Use the item of the last column in the same row.
.TP
-\fBsibling\fR \fIn\fR ?\fBvisible\fR?
+\fBsibling\fR \fIn\fR \fIQUALIFIERS\fR
Use the \fIn\fRth child of the item's parent.
.TP
\fBtop\fR
Use the item in the first row of this column.
+The word \fIQUALIFIERS\fR above represents a list of zero or more of the
+following terms that changes which item is chosen:
+.TP
+\fBstate\fR \fIstateList\fR
+\fIStateList\fR is a list of item state names (static and dynamic, see \fBSTATES\fR).
+Only items that have the given states set (or unset if the '!' prefix is used)
+are considered.
+.sp
+To get the first item in the list that is enabled:
+.nf
+
+$T item id "first state enabled"
+
+.fi
+To get the first item in the list that is not open:
+.nf
+
+$T item id "first state !open"
+
+.fi
+.TP
+\fBvisible\fR
+When this qualifier is given, only items that are displayed are considered.
+.sp
+To get the first item in the list that is displayed:
+.nf
+
+$T item id "first visible"
+
+.fi
.SH "EVENTS AND SCRIPT SUBSTITUTIONS"
The \fIscript\fR argument to \fBnotify bind\fR is a Tcl script, which will be
evaluated whenever the given event is generated. \fIScript\fR will be executed