summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authortreectrl <treectrl>2006-10-18 03:47:48 (GMT)
committertreectrl <treectrl>2006-10-18 03:47:48 (GMT)
commit0ac279aba65c5ca2d39a8ef7452ced2b566ce545 (patch)
tree799888d4d6d4b1339d7b69672652b9009f0cb4c2 /doc
parent82400a7d4484213fdb94829077cb6f27044da000 (diff)
downloadtktreectrl-0ac279aba65c5ca2d39a8ef7452ced2b566ce545.zip
tktreectrl-0ac279aba65c5ca2d39a8ef7452ced2b566ce545.tar.gz
tktreectrl-0ac279aba65c5ca2d39a8ef7452ced2b566ce545.tar.bz2
Merged with BRANCH_dynamic_options.
Diffstat (limited to 'doc')
-rw-r--r--doc/What's New in TkTreeCtrl.html797
-rw-r--r--doc/treectrl.html968
-rw-r--r--doc/treectrl.man373
-rw-r--r--doc/treectrl.n401
4 files changed, 1923 insertions, 616 deletions
diff --git a/doc/What's New in TkTreeCtrl.html b/doc/What's New in TkTreeCtrl.html
index 3532096..740c8f2 100644
--- a/doc/What's New in TkTreeCtrl.html
+++ b/doc/What's New in TkTreeCtrl.html
@@ -1,181 +1,267 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
+<!-- $Id: What's\040New\040in\040TkTreeCtrl.html,v 1.15 2006/10/18 03:47:48 treectrl Exp $ -->
-<!-- $Id: What's\040New\040in\040TkTreeCtrl.html,v 1.14 2006/09/27 02:10:47 treectrl Exp $ -->
+
+
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
- <title>What's New in TkTreeCtrl</title>
+
- <meta content="Tim Baker" name="author">
+
+ <title>What's New in TkTreeCtrl</title>
+ <meta content="Tim Baker" name="author">
</head>
<body>
+
<h1>What's New in TkTreeCtrl 2.2</h1>
+
<h2>Item Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Arguments/Result
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
changed</th>
+
</tr>
+
<tr>
+
<td>item count</td>
+
<td>New option <span style="font-weight: bold;">-visible</span>
added to return the number of items that are displayed (i.e., those
whose ancestors are all expanded etc).</td>
+
</tr>
+
<tr>
+
<td>item create</td>
+
<td>New option <span style="font-weight: bold;">-tags</span>
specifies an initial list of tags for created items.</td>
+
</tr>
+
<tr>
+
<td>item id</td>
+
<td>Returns a list of item ids if the item description
matches multiple items.</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>item descendants</td>
+
<td>Returns the ids of the children, grandchildren, etc of
an item.</td>
+
</tr>
+
<tr>
+
<td>item enabled</td>
+
<td>Gets and sets the <span style="font-weight: bold;">enabled</span>
state for items. All items are enabled when first created. Disabled
items cannot be selected, and are ignored by the default key-navigation
bindings.</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Tag Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>tag add</td>
+
<td>Add tags to items. For example:<br>
+
+
<pre>.t tag add all {a b c}</pre>
+
will add tags "a", "b" and "c" to every item.<br>
+
</td>
+
</tr>
+
<tr>
+
<td>tag expr</td>
+
<td>Evaluate a tag expression against items. For example:<br>
+
+
<pre>.t tag expr $item a</pre>
+
returns 1 if&nbsp;an item has tag "a". Also:<br>
+
+
<pre>.t tag expr $item a||b</pre>
+
returns 1 if &nbsp;an item has tag "a" or "b".</td>
+
</tr>
+
<tr>
+
<td>tag names</td>
+
<td>Return a list of tag names assigned to items. For
example:<br>
+
+
<pre>.t tag names $item</pre>
+
returns the tag list for an item, and:<br>
+
+
<pre>.t tag names all</pre>
+
returns every tag assigned to any item.</td>
+
</tr>
+
<tr>
+
<td>tag remove</td>
+
<td>Remove tags from items. For example:<br>
+
+
<pre>.t tag remove all {b c}</pre>
+
will remove tags "b" and "c" from any items that have them.</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Item Tags</h2>
+
Tags are textual labels applied to items to group them together. Tags
do not affect the appearance or behaviour of items. Tags can be used in
item descriptions to operate on multiple items. More information can be
found in the <a href="treectrl.html#item_tags">man page</a>.<br>
+
<h2>Window Element</h2>
+
Window elements can now be properly clipped so they don't draw over the
column header, borders, or outside the bounds of the item
columns they occupy. This is accomplished by making the window you want
@@ -183,12 +269,16 @@ to display a child of a borderless frame widget, and setting the new <span style
window element to TRUE. So if your program displays a canvas widget in
a window element, you would change this code:<br>
+
<pre style="margin-left: 40px;">set canvas [canvas .t.canvas ...]<br>.t item element configure $item $column myElement -window $canvas</pre>
+
to this:<br>
+
<pre style="margin-left: 40px;">set frame [frame .t.clip -borderwidth 0]<br>set canvas [canvas $frame.canvas ...]<br>.t item element configure $item $column myElement -window $frame -clip yes</pre>
+
The <span style="font-weight: bold;">-clip</span>
option tells the window element to manage the geometry of both the <span style="font-weight: bold;">-window</span>
widget (i.e,
@@ -198,211 +288,301 @@ out-of-bounds. You can see this in the "Big List" and "Firefox Privacy"
demos.
<h2>Item Descriptions</h2>
+
New keywords were added to allow multiple items to be specified by an <a href="treectrl.html#item_description">item description</a>:<br>
+
<ul>
+
<li>The keyword <span style="font-weight: bold;">list</span>
specifies a list of other item descriptions:
+
<pre>.t item id "list [list $a $b $c]"</pre>
+
</li>
+
<li>The keyword <span style="font-weight: bold;">range</span>
operates like the <span style="font-weight: bold;">item
range</span> command:
+
<pre>.t item id "range $first $last"</pre>
+
</li>
+
<li>The keyword <span style="font-weight: bold;">tag</span>
matches any items that meet a tag expression:
+
<pre>.t item id "tag $tagExpr"</pre>
+
</li>
+
</ul>
+
New modifiers were added to match multiple items:
<ul>
+
<li>The modifier <span style="font-weight: bold;">ancestors</span>
operates like the <span style="font-weight: bold;">item
ancestors</span> command:
+
<pre>.t item id "$item ancestors"</pre>
+
</li>
+
<li>The modifier <span style="font-weight: bold;">children</span>
operates like the <span style="font-weight: bold;">item
children</span> command:
+
<pre>.t item id "$item children"</pre>
+
</li>
+
<li>The modifier <span style="font-weight: bold;">descendants</span>
operates like the <span style="font-weight: bold;">item
descendants</span> command:
+
<pre>.t item id "$item descendants"</pre>
+
</li>
+
</ul>
+
New qualifiers were added to refine which items are matched:<br>
+
<ul>
+
<li>The qualifier <span style="font-weight: bold;">!visible</span>
matches items that are not displayed:
+
<pre>.t item id "first !visible" ; # find the first item that is not displayed</pre>
+
</li>
+
<li>The qualifier <span style="font-weight: bold;">state</span>
matches items that have certain states set (or not set if '!' is used):
+
<pre>.t item id "first state&nbsp;{selected !open}" ; # find the first item that is selected and collapsed</pre>
+
</li>
+
<li>The qualifier <span style="font-weight: bold;">tag</span>
matches items that meet a tag expression:
+
<pre>.t item id "$item children tag $tagExpr" ; # find children of $item that have certain tags</pre>
+
</li>
+
</ul>
+
Also, the keyword <span style="font-weight: bold;">all</span>
may now be followed by a list of qualifiers: For example:<br>
+
<pre style="margin-left: 40px;">.t item id "all !visible state myState" ; # find every item that is not displayed with user-defined state "myState"</pre>
+
The following commands can now operate on multiple items in a single
call:<br>
+
<ul>
+
<li>item configure</li>
+
<li> item element configure</li>
+
<li>item id</li>
+
<li> item image</li>
+
<li> item style map</li>
+
<li> item style set</li>
+
<li> item state forcolumn</li>
+
<li> item state set</li>
+
<li> item remove</li>
+
<li> item span</li>
+
<li> item text</li>
+
</ul>
+
<h2>Demo Changes</h2>
+
<ul>
+
<li>New demo "My Computer". Demonstrates disabled items used as
headers.</li>
+ <li>The "Big List" and "Firefox Privacy" demos were changed to use the new <span style="font-weight: bold;">-clip</span> option of window elements.</li>
+
</ul>
+
<h2>Bug Fixes</h2>
+
<ul>
+
<li><span style="font-weight: bold;">item create</span>:
Fixed bug where <span style="font-weight: bold;">-nextsibling</span>
and <span style="font-weight: bold;">-prevsibling</span>
options could specify an orphan item.</li>
+
<li><span style="font-weight: bold;">item delete</span>:
Stopped items possibly being double-deleted by nested calls through <span style="font-weight: bold;">&lt;Selection&gt;</span>
and <span style="font-weight: bold;">&lt;ItemDelete&gt;</span>
binding scripts.</li>
+
<li><span style="font-weight: bold;">item expand</span>,&nbsp;<span style="font-weight: bold;">item collapse</span>,&nbsp;<span style="font-weight: bold;">item toggle</span>: Only
operate on items which exist when the command is called, not any that
might get created by <span style="font-weight: bold;">&lt;Expand&gt;</span>
or <span style="font-weight: bold;">&lt;Collapse&gt;</span>
binding scripts.</li>
+
<li>When a style with window elements spanned more than one
column, the window might be improperly sized during display updates.</li>
+
</ul>
+
<hr style="width: 100%; height: 2px;">
<h1>What's New in TkTreeCtrl 2.1.1</h1>
+
<h2>Column Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Arguments/Result
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
changed</th>
+
</tr>
+
<tr>
+
<td>column delete<br>
+
</td>
+
<td>Added an optional second argument allowing a range of
columns to be deleted.</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Bug Fixes</h2>
+
<ul>
+
<li>The <span style="font-weight: bold;">item sort</span>
command
will be much faster in many cases. There was a silly error in the
pivot-finding code of quicksort which resulted in the slow-down.</li>
+
<li>A&nbsp;column header will be redisplayed if an image in
the header is altered.</li>
+
<li>Fixed bus errors on some Unix systems due to alignment
problems.</li>
+
</ul>
+
<h2>Other Changes</h2>
+
<ul>
+
<li>The Tk caret is now positioned over the active item when it
changes. The Tk caret is used for the Magnifier accessibility
application and IME on Windows, as well as XIM under Unix.</li>
+
<li>Improved the appearance of the column headers under OSX.</li>
+
<li>Added &lt;MouseWheel&gt; support to OSX.</li>
+
<li>Changing the -visible option of an item could be slow if
any
items were selected. That is because non-visible items may not be part
@@ -410,416 +590,603 @@ of the selection. A change was made so that changes to the selection
caused by modifying the -visible option of an item do not occur until
the next display update.</li>
+
</ul>
+
<h2>Demo Changes</h2>
+
<ul>
+
<li>New demo "Column Spanning". Demonstrates a 100-column list
where styles span from 1 to 20 columns each.</li>
+
<li>The&nbsp;<span style="font-weight: bold;">loupe</span>
command (which performs screen capture to an image) is now implemented
on Windows and OSX thanks to Jeff Hobbs.</li>
+
<li>The screen-magnifier image now resizes with the "loupe"
window.</li>
+
</ul>
+
<hr style="width: 100%; height: 2px;">
<h1>What's New in TkTreeCtrl 2.1</h1>
+
This version should be backwards compatible with 2.0, except for a few
obscure changes.<br>
+
<h2>TreeCtrl Configuration Options</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>-itemwidth</td>
+
<td><br>
+
</td>
+
</tr>
+
<tr>
+
<td>-itemwidthequal</td>
+
<td>Deprecates the column -widthhack option.</td>
+
</tr>
+
<tr>
+
<td>-itemwidthmultiple</td>
+
<td>Deprecates the column -stepwidth option.</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Column Configuration Options</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Deprecated</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>-stepwidth</td>
+
<td>treectrl's -itemwidthmultiple option</td>
+
</tr>
+
<tr>
+
<td>-widthhack</td>
+
<td>treectrl's -itemwidthequal option</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Element Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>element perstate</td>
+
<td>Like [item element perstate].</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Item Configuration Options</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>-height</td>
+
<td>Overrides the treectrl's -itemheight option</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Item Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Deprecated</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>item element actual</td>
+
<td>item element perstate</td>
+
</tr>
+
<tr>
+
<td>item complex</td>
+
<td>item element configure</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Behaviour
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
changed</th>
+
</tr>
+
<tr>
+
<td>item bbox</td>
+
<td>No longer returns an error if no style had been
assigned to the column.</td>
+
</tr>
+
<tr>
+
<td>item state forcolumn</td>
+
<td>No longer returns an error if no style had been
assigned to the column.</td>
+
</tr>
+
<tr>
+
<td>item style set</td>
+
<td>Does nothing when replacing a style with the same
style.
Previously the old style was freed before assigning the new style,
losing the element config info if the old and new styles were the same.<br>
+
<span style="color: rgb(255, 0, 0);">Potential
incompatibility</span></td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Arguments/Result
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
changed</th>
+
</tr>
+
<tr>
+
<td>item create</td>
+
<td>Added options: -count -height, -nextsibling, -open,
-parent,
-prevsibling, and -returnid. Multiple items may be created with one
call using the -count option.</td>
+
</tr>
+
<tr>
+
<td>item element configure</td>
+
<td>Multiple elements in multiple columns may be configured
with
a single call. Use '+' to separate elements, and ',' to separate
columns. See the docs.</td>
+
</tr>
+
<tr>
+
<td>item style set</td>
+
<td>When no column is specified, returns a list of one
style name
per column. Previously, the list would have less values than the number
of columns if no styles had ever been assigned to the rightmost
column(s).<br>
+
<span style="color: rgb(255, 0, 0);">Potential
incompatibility</span></td>
+
</tr>
+
<tr>
+
<td>item text</td>
+
<td>When no column is specified, returns a list of one
string per column.</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>item image</td>
+
<td>Partner to the [item text] command.</td>
+
</tr>
+
<tr>
+
<td>item element perstate</td>
+
<td>Not really new, just renamed from [item element actual]
to
better describe what it does. Accepts a new optional argument which
specifies the state to use when determining the value of the per-state
option.<br>
+
<br>
+
The following options no longer return a default value if the per-state
option itself does not have a value specified:<br>
+
+
<ul>
+
<li>bitmap -foreground, -background</li>
+
<li>border -relief</li>
+
<li>text -fill, -font</li>
+
+
</ul>
+
<span style="color: rgb(255, 0, 0);">Potential
incompatibility</span></td>
+
</tr>
+
<tr>
+
<td>item span</td>
+
<td>A style may now be displayed over multiple adjacent
columns.<br>
+
</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2><span style="font-weight: bold;"></span>Notify
Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>notify unbind<br>
+
</td>
+
<td>Let's you unbind all scripts from an object with one
call.</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Style Layout Changes</h2>
+
<ul>
+
<li>Column justification will now affect the position of
elements in 2 situations which previously had no effect (<span style="color: rgb(255, 0, 0);">Potential incompatibility</span>):</li>
+
</ul>
+
<ol style="margin-left: 40px;">
+
<li>If a -detach element had a fixed width larger than the
other elements.</li>
+
<li>If an element had -iexpand x specified as well as
-maxwidth, leaving some space available.</li>
+
</ol>
+
<h2>Element Changes</h2>
+
<ul>
+
<li>Bitmap, image and text elements are drawn clipped if given
less space than they need.</li>
+
<li>Fixed line wrapping of text elements. It did not work for
single lines of text at all (<span style="color: rgb(255, 0, 0);">Potential
incompatibility</span>).</li>
+
<li>The text -wrap option can now be <span style="font-weight: bold;">none</span> to disable line
wrapping.</li>
+
</ul>
+
<h2>Event Changes</h2>
+
<ul>
+
<li>The new static event <span style="font-weight: bold;">&lt;ItemVisibility&gt;</span>
is generated when items become visible on screen and when items are no
longer visible on screen.
@@ -828,103 +1195,145 @@ styles when items are about to be displayed. See the EVENTS AND SCRIPT
SUBSTITUTIONS section in the help
file, and the new demo "Big List".</li>
+
</ul>
+
<h2>Other Changes</h2>
+
<ul>
+
<li>On WinXP, the column header sort arrow is drawn like
Explorer draws it if <span style="font-weight: bold;">-usetheme</span>
is true.</li>
+
</ul>
+
<h2>Demo Changes</h2>
+
<ul>
+
<li>New demo "Big List". Demonstrates the new <span style="font-weight: bold;">&lt;ItemVisibility&gt;</span>
event, using &lt;Expand-before&gt; to add items on demand, and
column spanning.</li>
+
<li>The context menu has a <span style="font-weight: bold;">Span</span>
submenu that lets you manipulate column spanning in items. See
the&nbsp;<span style="font-weight: bold;">item span</span>
command in the help file.</li>
+
<li>Under WinXP, the "Explorer" demos will use the new <span style="font-weight: bold;">shellicon</span>
extension if available. This extension allows a treectrl to display
file/folder icons using the Win32 Shell API. It may work on other
versions of Windows but it hasn't been tested.</li>
+
</ul>
+
<hr style="width: 100%; height: 2px;">
<h1>What's New in TkTreeCtrl 2.0</h1>
+
<h2>TreeCtrl Configuration Options</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Replaced</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>-openbuttonimage</td>
+
<td>-buttonimage</td>
+
</tr>
+
<tr>
+
<td>-closedbuttonimage</td>
+
<td>-buttonimage</td>
+
</tr>
+
<tr>
+
<td>-openbuttonbitmap</td>
+
<td>-buttonbitmap</td>
+
</tr>
+
<tr>
+
<td>-closedbuttonbitmap</td>
+
<td>-buttonbitmap</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Usage
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">How
it changed</th>
+
</tr>
+
<tr>
+
<td>-backgroundmode</td>
+
<td>The values "index" and "visindex" are deprecated. The
value
"order" should be used instead of "index", and
@@ -932,769 +1341,1134 @@ value
agreement with the new "item order" command which replaces the "item
index" command.</td>
+
</tr>
+
<tr>
+
<td>-treecolumn</td>
+
<td>This used to be any integer value which may or may not
have
corresponded to an actual column. Now the value must be a valid column
description, or an empty string to indicate no column should display
buttons/lines.</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">New</th>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-backgroundimage</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-columnprefix</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-columnresizemode</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-itemprefix</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-minitemheight</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-usetheme</td>
+
<td></td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>TreeCtrl Commands</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="width: 50%; background-color: rgb(255, 255, 204);">Deprecated</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>compare</td>
+
<td>item compare</td>
+
</tr>
+
<tr>
+
<td>index</td>
+
<td>item id</td>
+
</tr>
+
<tr>
+
<td>numcolumns</td>
+
<td>column count</td>
+
</tr>
+
<tr>
+
<td>numitems</td>
+
<td>item count</td>
+
</tr>
+
<tr>
+
<td>range</td>
+
<td>item range</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Column Configuration Options</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Removed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>-relief<br>
+
</td>
+
<td>-state</td>
+
</tr>
+
<tr>
+
<td>-sunken</td>
+
<td>-state</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Renamed<br>
+
</th>
+
<th style="background-color: rgb(204, 255, 255);">New
name</th>
+
</tr>
+
<tr>
+
<td>-arrowpad</td>
+
<td>-arrowpadx</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Usage
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">How
it changed</th>
+
</tr>
+
<tr>
+
<td>-background</td>
+
<td>This is now a per-state option. See COLUMNS in the help
file
for valid state names.</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">New<br>
+
</th>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-arrowbitmap<br>
+
</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-arrowimage</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-arrowpady</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-maxwidth</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-resize</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-state</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-textlines</td>
+
<td></td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Column Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Deprecated</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>column index</td>
+
<td>column id</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Arguments/Result
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
changed</th>
+
</tr>
+
<tr>
+
<td>column configure<br>
+
</td>
+
<td>A column description of "all" is allowed if at least
one
option-value pair is given.<br>
+
</td>
+
</tr>
+
<tr>
+
<td>column create</td>
+
<td>The result is a unique identifier. Previously the
result was
an
index in the list of columns.</td>
+
</tr>
+
<tr>
+
<td>column delete</td>
+
<td>A column description of "all" is allowed.</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>column compare</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>column count</td>
+
<td>replaces "numcolumns"</td>
+
</tr>
+
<tr>
+
<td>column dragconfigure</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>column dragcget</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>column id</td>
+
<td>replaces "column index"</td>
+
</tr>
+
<tr>
+
<td>column list</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>column order</td>
+
<td></td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Item Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Removed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
to use
instead</th>
+
</tr>
+
<tr>
+
<td>item index</td>
+
<td>item order</td>
+
</tr>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">New</th>
+
<th style="background-color: rgb(204, 255, 255);">Comment</th>
+
</tr>
+
<tr>
+
<td>item compare</td>
+
<td>replaces "compare"</td>
+
</tr>
+
<tr>
+
<td>item count</td>
+
<td>replaces "numitems"</td>
+
</tr>
+
<tr>
+
<td>item id</td>
+
<td>replaces "index"</td>
+
</tr>
+
<tr>
+
<td>item order</td>
+
<td>replaces "item index"</td>
+
</tr>
+
<tr>
+
<td>item range</td>
+
<td>replaces "range"</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Notify Command</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204); width: 50%;">Arguments/Result
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">What
changed</th>
+
</tr>
+
<tr>
+
<td>notify generate<br>
+
</td>
+
<td>Added optional <span style="font-style: italic;">percentsCommand</span>
argument</td>
+
</tr>
+
<tr>
+
<td>notify install</td>
+
<td>Old syntax (supported but deprecated):<br>
+
+
<pre style="margin-left: 40px;"><span style="font-weight: bold;">notify install event</span> <span style="font-style: italic;">eventName</span></pre>
+
+
<pre style="margin-left: 40px;"><span style="font-weight: bold;">notify install detail</span> <span style="font-style: italic;">eventName</span> <span style="font-style: italic;">detail</span></pre>
+
New syntax:<br>
+
+
<pre style="margin-left: 40px;"><span style="font-weight: bold;">notify install</span> &lt;<span style="font-style: italic;">eventName</span>&gt;</pre>
+
+
<pre style="margin-left: 40px;"><span style="font-weight: bold;">notify install</span> &lt;<span style="font-style: italic;">eventName</span>-<span style="font-style: italic;">detail</span>&gt;</pre>
+
</td>
+
</tr>
+
<tr>
+
<td>notify linkage</td>
+
<td>Old syntax (supported but deprecated):<br>
+
+
<div style="margin-left: 40px;">
+
<pre><span style="font-weight: bold;">notify linkage</span> <span style="font-style: italic;">eventName</span></pre>
+
+
<pre><span style="font-weight: bold;">notify linkage</span> <span style="font-style: italic;">eventName</span> <span style="font-style: italic;">detail</span></pre>
+
</div>
+
New syntax:<br>
+
+
<div style="margin-left: 40px;">
+
<pre><span style="font-weight: bold;">notify linkage</span> &lt;<span style="font-style: italic;">eventName</span>&gt;</pre>
+
+
<pre><span style="font-weight: bold;">notify linkage</span> &lt;<span style="font-style: italic;">eventName</span>-<span style="font-style: italic;">detail</span>&gt;</pre>
+
</div>
+
</td>
+
</tr>
+
<tr>
+
<td>notify uninstall</td>
+
<td>see <span style="font-weight: bold;">notify
install</span>
above</td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Style Layout Options</h2>
+
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
+
<tbody>
+
<tr>
+
<th style="background-color: rgb(255, 255, 204);">Usage
Changed</th>
+
<th style="background-color: rgb(204, 255, 255);">How
it changed</th>
+
</tr>
+
<tr>
+
<td>-iexpand</td>
+
<td>Two new flags "x' and "y" are allowed. Previously, only
the
-ipadx and -ipady padding could be expanded by this option. The new xy
flags expand the display area of the element, not the padding. To
update your code, you will probably want to change this:<br>
+
+
<div style="margin-left: 40px;">
+
<pre>$T style layout $S $E -iexpand we</pre>
+
</div>
+
to this:<br>
+
+
<div style="margin-left: 40px;">
+
<pre>$T style layout $S $E -iexpand x<br></pre>
+
</div>
+
Keep in mind that -union elements are not affected by -iexpand xy,
since the size of a -union element is determined by the elements it
surrounds.</td>
+
</tr>
+
<tr>
+
<th style="width: 50%; background-color: rgb(255, 255, 204);">New<br>
+
</th>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-height</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-maxheight</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-maxwidth</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-minheight</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-minwidth</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-sticky</td>
+
<td></td>
+
</tr>
+
<tr>
+
<td>-width</td>
+
<td></td>
+
</tr>
+
+
</tbody>
</table>
+
<h2>Element Changes</h2>
+
<ul>
+
<li>A new element type&nbsp;<span style="font-weight: bold;">window</span>
was added.
See the new demo "Firefox Privacy" and the ELEMENTS section in the help
file.</li>
+
<li>All element types have a new
per-state boolean option called <span style="font-weight: bold;">-draw</span>.</li>
+
<li>The <span style="font-weight: bold;">text</span>
element type
has a new option called <span style="font-weight: bold;">-textvariable</span>.
See the new demo
"Textvariable" and the ELEMENTS section in the help file.</li>
+
</ul>
+
<h2>Event Changes</h2>
+
<ul>
+
<li>2 new %-substitution characters <span style="font-weight: bold;">%P</span>
and <span style="font-weight: bold;">%?</span> are
allowed in binding
scripts. See the EVENTS AND SCRIPT SUBSTITUTIONS section in the help
file.</li>
+
<li>The new static event <span style="font-weight: bold;">&lt;ItemDelete&gt;</span>
is generated when items are deleted. See the EVENTS AND SCRIPT
SUBSTITUTIONS section in the help file.</li>
+
</ul>
+
<h2>Library Script Changes</h2>
+
<h3 style="margin-left: 40px;">filelist-bindings.tcl:</h3>
+
<ul>
+
<li>The Priv(edit) variable, which is used to specify which
text
elements may be edited, now has the same format as Priv(sensitive).
Previously only elements in the first column could be edited.</li>
+
<li>3 new commands in the TreeCtrl namespace should be used to
access
the Priv(dragimage), Priv(edit) and Priv(sensitive) variables. The
commands are SetDragImage, SetEditable and SetSensitive.</li>
+
<li>Two new dynamic events <span style="font-weight: bold;">&lt;Edit-begin&gt;</span>
and <span style="font-weight: bold;">&lt;Edit-end&gt;</span>
are
generated when editing a file name.</li>
+
</ul>
+
<h3 style="margin-left: 40px;">treectrl.tcl:</h3>
+
<ul>
+
<li>On OSX/Aqua, the Command key is used to perform
discontinuous
selection. Previously the Control key was used but Command is specified
by Apple's user-interface guidelines.</li>
+
</ul>
+
<h2>Other Changes</h2>
+
<ul>
+
<li>On WinXP, the column headers and open/close buttons are
drawn
using the system theme if <span style="font-weight: bold;">-usetheme</span>
is true. The sort arrow is drawn the old-fashioned way.</li>
+
<li>On OSX/Aqua,&nbsp; the column headers and open/close
buttons are
drawn
@@ -1704,26 +2478,33 @@ well. This will override the <span style="font-weight: bold;">-arrowside</span>
and <span style="font-weight: bold;">-arrowgravity</span>
options.</li>
+
<li>Columns can be moved by drag-and-drop. See <span style="font-weight: bold;">column dragconfigure</span>
in the help
file.</li>
+
<li>Columns can be specified in new ways. See the COLUMN
DESCRIPTION
section in the help file.</li>
+
<li>Added new section DYNAMIC EVENTS to the help file.</li>
+
<li>Added new section PER-STATE OPTIONS to the help file.</li>
+
<li>The new style layout option <span style="font-weight: bold;">-indent</span>
allows elements to be displayed in the button/line area. See the <span style="font-weight: bold;">style layout</span> command
in the help
file and the new demo "Firefox Privacy".</li>
+
<li>The new item description <span style="font-weight: bold;">end</span>
is equivalent to <span style="font-weight: bold;">last</span>.</li>
+
<li><span style="color: rgb(255, 0, 0);">If you
have version 1.1
installed, replace the old pkgIndex.tcl file with the one from this
@@ -1732,33 +2513,43 @@ file will
set the TREECTRL_LIBRARY variable which will override where the library
scripts are found.</span></span></li>
+
</ul>
+
<h2>Demo Changes</h2>
+
<ul>
+
<li>New demo "Firefox Privacy". Demonstrates the new <span style="font-weight: bold;">window</span> element type
and <span style="font-weight: bold;">-indent</span>
style layout option.</li>
+
<li>New demo "Textvariable". Demonstrates the new <span style="font-weight: bold;">-textvariable</span> option
of the <span style="font-weight: bold;">text</span>
element.</li>
+
<li>Added a new Event Browser window to display events
generated by
the main treectrl widget.</li>
+
<li>The context menu can be popped up in all the demo lists. A
&lt;Control-ButtonPress-1&gt; binding for this was added under
OSX/Aqua.</li>
+
<li>In the "Explorer" demos, the file name is hidden while
editing
the file name.</li>
+
</ul>
+
</body>
</html>
diff --git a/doc/treectrl.html b/doc/treectrl.html
index ce1e47d..3bc7ea8 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.36 2006/09/27 02:05:12 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.37 2006/10/18 03:47:48 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.36 2006/09/27 02:05:12 treectrl Exp $ treectrl.n
+<! -- CVS: $Id: treectrl.html,v 1.37 2006/10/18 03:47:48 treectrl Exp $ treectrl.n
-->
<body>
@@ -22,7 +22,7 @@
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#description">DESCRIPTION</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#standard_options">STANDARD OPTIONS</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#widget_specific_options">WIDGET SPECIFIC OPTIONS</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;<a href="#item_tags">ITEM TAGS</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#widget_command">WIDGET COMMAND</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#columns">COLUMNS</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="#column_description">COLUMN DESCRIPTION</a><br>
@@ -67,145 +67,152 @@ package require <b>treectrl 2.1.1</b><br>
<tr valign=top ><td ><a href="#20"><i class='arg'>pathName</i> <b class='cmd'>column move</b> <i class='arg'>columnDesc</i> <i class='arg'>beforeDesc</i></a></td></tr>
<tr valign=top ><td ><a href="#21"><i class='arg'>pathName</i> <b class='cmd'>column neededwidth</b> <i class='arg'>columnDesc</i></a></td></tr>
<tr valign=top ><td ><a href="#22"><i class='arg'>pathName</i> <b class='cmd'>column order</b> <i class='arg'>columnDesc</i> ?<i class='arg'>-visible</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#23"><i class='arg'>pathName</i> <b class='cmd'>column width</b> <i class='arg'>columnDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#24"><i class='arg'>pathName</i> <b class='cmd'>compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a></td></tr>
-<tr valign=top ><td ><a href="#25"><i class='arg'>pathName</i> <b class='cmd'>configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#26"><i class='arg'>pathName</i> <b class='cmd'>contentbox</b></a></td></tr>
-<tr valign=top ><td ><a href="#27"><i class='arg'>pathName</i> <b class='cmd'>debug</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#28"><i class='arg'>pathName</i> <b class='cmd'>debug cget</b> <i class='arg'>element</i> <i class='arg'>option</i></a></td></tr>
-<tr valign=top ><td ><a href="#29"><i class='arg'>pathName</i> <b class='cmd'>debug configure</b> <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="#30"><i class='arg'>pathName</i> <b class='cmd'>debug dinfo</b></a></td></tr>
-<tr valign=top ><td ><a href="#31"><i class='arg'>pathName</i> <b class='cmd'>debug scroll</b></a></td></tr>
-<tr valign=top ><td ><a href="#32"><i class='arg'>pathName</i> <b class='cmd'>depth</b> ?<i class='arg'>itemDesc</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#33"><i class='arg'>pathName</i> <b class='cmd'>dragimage</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#34"><i class='arg'>pathName</i> <b class='cmd'>dragimage add</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#35"><i class='arg'>pathName</i> <b class='cmd'>dragimage cget</b> <i class='arg'>option</i></a></td></tr>
-<tr valign=top ><td ><a href="#36"><i class='arg'>pathName</i> <b class='cmd'>dragimage clear</b></a></td></tr>
-<tr valign=top ><td ><a href="#37"><i class='arg'>pathName</i> <b class='cmd'>dragimage 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="#38"><i class='arg'>pathName</i> <b class='cmd'>dragimage offset</b> ?<i class='arg'>x y</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#39"><i class='arg'>pathName</i> <b class='cmd'>element</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="#40"><i class='arg'>pathName</i> <b class='cmd'>element cget</b> <i class='arg'>element</i> <i class='arg'>option</i></a></td></tr>
-<tr valign=top ><td ><a href="#41"><i class='arg'>pathName</i> <b class='cmd'>element configure</b> <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="#42"><i class='arg'>pathName</i> <b class='cmd'>element create</b> <i class='arg'>element</i> <i class='arg'>type</i> ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#43"><i class='arg'>pathName</i> <b class='cmd'>element delete</b> ?<i class='arg'>element ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#44"><i class='arg'>pathName</i> <b class='cmd'>element names</b></a></td></tr>
-<tr valign=top ><td ><a href="#45"><i class='arg'>pathName</i> <b class='cmd'>element perstate</b> <i class='arg'>element</i> <i class='arg'>option</i> <i class='arg'>stateList</i></a></td></tr>
-<tr valign=top ><td ><a href="#46"><i class='arg'>pathName</i> <b class='cmd'>element type</b> <i class='arg'>element</i></a></td></tr>
-<tr valign=top ><td ><a href="#47"><i class='arg'>pathName</i> <b class='cmd'>expand</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#48"><i class='arg'>pathName</i> <b class='cmd'>identify</b> <i class='arg'>x</i> <i class='arg'>y</i></a></td></tr>
-<tr valign=top ><td ><a href="#49"><i class='arg'>pathName</i> <b class='cmd'>index</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#50"><i class='arg'>pathName</i> <b class='cmd'>item</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#51"><i class='arg'>pathName</i> <b class='cmd'>item ancestors</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#52"><i class='arg'>pathName</i> <b class='cmd'>item bbox</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#53"><i class='arg'>pathName</i> <b class='cmd'>item cget</b> <i class='arg'>itemDesc</i> <i class='arg'>option</i></a></td></tr>
-<tr valign=top ><td ><a href="#54"><i class='arg'>pathName</i> <b class='cmd'>item children</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#55"><i class='arg'>pathName</i> <b class='cmd'>item collapse</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a></td></tr>
-<tr valign=top ><td ><a href="#56"><i class='arg'>pathName</i> <b class='cmd'>item compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a></td></tr>
-<tr valign=top ><td ><a href="#57"><i class='arg'>pathName</i> <b class='cmd'>item complex</b> <i class='arg'>itemDesc</i> ?<i class='arg'>list...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#58"><i class='arg'>pathName</i> <b class='cmd'>item configure</b> <i class='arg'>itemDesc</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="#59"><i class='arg'>pathName</i> <b class='cmd'>item count</b> ?<i class='arg'>-visible</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#60"><i class='arg'>pathName</i> <b class='cmd'>item create</b> ?<i class='arg'>option value ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#61"><i class='arg'>pathName</i> <b class='cmd'>item delete</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#62"><i class='arg'>pathName</i> <b class='cmd'>item descendants</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#63"><i class='arg'>pathName</i> <b class='cmd'>item dump</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#64"><i class='arg'>pathName</i> <b class='cmd'>item element</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#65"><i class='arg'>pathName</i> <b class='cmd'>item element actual</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 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="#67"><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="#68"><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="#69"><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="#70"><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="#71"><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="#72"><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="#73"><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="#74"><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="#75"><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="#76"><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="#77"><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="#78"><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="#79"><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="#80"><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="#81"><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="#82"><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="#83"><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="#84"><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="#85"><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="#86"><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="#87"><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="#88"><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="#89"><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="#90"><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="#91"><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="#92"><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="#93"><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="#94"><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="#95"><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="#96"><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="#97"><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="#98"><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="#99"><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="#100"><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="#101"><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="#102"><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="#103"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a></td></tr>
-<tr valign=top ><td ><a href="#104"><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="#105"><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="#106"><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="#107"><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="#108"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a></td></tr>
-<tr valign=top ><td ><a href="#109"><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="#110"><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="#111"><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="#112"><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="#113"><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="#114"><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="#115"><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="#116"><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="#117"><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="#118"><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="#119"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a></td></tr>
-<tr valign=top ><td ><a href="#120"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a></td></tr>
-<tr valign=top ><td ><a href="#121"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a></td></tr>
-<tr valign=top ><td ><a href="#122"><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="#123"><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="#124"><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="#125"><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="#126"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> <i class='arg'>args</i></a></td></tr>
-<tr valign=top ><td ><a href="#127"><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="#128"><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="#129"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a></td></tr>
-<tr valign=top ><td ><a href="#130"><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="#131"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#132"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>args</i></a></td></tr>
-<tr valign=top ><td ><a href="#133"><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="#134"><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="#135"><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="#136"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a></td></tr>
-<tr valign=top ><td ><a href="#137"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a></td></tr>
-<tr valign=top ><td ><a href="#138"><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="#139"><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="#140"><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="#141"><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="#142"><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="#143"><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="#144"><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="#145"><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="#146"><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="#147"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a></td></tr>
-<tr valign=top ><td ><a href="#148"><i class='arg'>pathName</i> <b class='cmd'>tag</b> <i class='arg'>option</i> <i class='arg'>args</i></a></td></tr>
-<tr valign=top ><td ><a href="#149"><i class='arg'>pathName</i> <b class='cmd'>tag add</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a></td></tr>
-<tr valign=top ><td ><a href="#150"><i class='arg'>pathName</i> <b class='cmd'>tag expr</b> <i class='arg'>itemDesc</i> <i class='arg'>tagExpr</i></a></td></tr>
-<tr valign=top ><td ><a href="#151"><i class='arg'>pathName</i> <b class='cmd'>tag names</b> <i class='arg'>itemDesc</i></a></td></tr>
-<tr valign=top ><td ><a href="#152"><i class='arg'>pathName</i> <b class='cmd'>tag remove</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a></td></tr>
-<tr valign=top ><td ><a href="#153"><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="#154"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#155"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a></td></tr>
-<tr valign=top ><td ><a href="#156"><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="#157"><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="#158"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a></td></tr>
-<tr valign=top ><td ><a href="#159"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a></td></tr>
-<tr valign=top ><td ><a href="#160"><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="#161"><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="#23"><i class='arg'>pathName</i> <b class='cmd'>column tag</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#24"><i class='arg'>pathName</i> <b class='cmd'>column tag add</b> <i class='arg'>columnDesc</i> <i class='arg'>tagList</i></a></td></tr>
+<tr valign=top ><td ><a href="#25"><i class='arg'>pathName</i> <b class='cmd'>column tag expr</b> <i class='arg'>columnDesc</i> <i class='arg'>tagExpr</i></a></td></tr>
+<tr valign=top ><td ><a href="#26"><i class='arg'>pathName</i> <b class='cmd'>column tag names</b> <i class='arg'>columnDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#27"><i class='arg'>pathName</i> <b class='cmd'>column tag remove</b> <i class='arg'>columnDesc</i> <i class='arg'>tagList</i></a></td></tr>
+<tr valign=top ><td ><a href="#28"><i class='arg'>pathName</i> <b class='cmd'>column width</b> <i class='arg'>columnDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#29"><i class='arg'>pathName</i> <b class='cmd'>compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a></td></tr>
+<tr valign=top ><td ><a href="#30"><i class='arg'>pathName</i> <b class='cmd'>configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#31"><i class='arg'>pathName</i> <b class='cmd'>contentbox</b></a></td></tr>
+<tr valign=top ><td ><a href="#32"><i class='arg'>pathName</i> <b class='cmd'>debug</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#33"><i class='arg'>pathName</i> <b class='cmd'>debug alloc</b></a></td></tr>
+<tr valign=top ><td ><a href="#34"><i class='arg'>pathName</i> <b class='cmd'>debug cget</b> <i class='arg'>option</i></a></td></tr>
+<tr valign=top ><td ><a href="#35"><i class='arg'>pathName</i> <b class='cmd'>debug 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="#36"><i class='arg'>pathName</i> <b class='cmd'>debug dinfo</b></a></td></tr>
+<tr valign=top ><td ><a href="#37"><i class='arg'>pathName</i> <b class='cmd'>debug expose</b> <i class='arg'>x1</i> <i class='arg'>y1</i> <i class='arg'>x2</i> <i class='arg'>y2</i></a></td></tr>
+<tr valign=top ><td ><a href="#38"><i class='arg'>pathName</i> <b class='cmd'>debug scroll</b></a></td></tr>
+<tr valign=top ><td ><a href="#39"><i class='arg'>pathName</i> <b class='cmd'>depth</b> ?<i class='arg'>itemDesc</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#40"><i class='arg'>pathName</i> <b class='cmd'>dragimage</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#41"><i class='arg'>pathName</i> <b class='cmd'>dragimage add</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#42"><i class='arg'>pathName</i> <b class='cmd'>dragimage cget</b> <i class='arg'>option</i></a></td></tr>
+<tr valign=top ><td ><a href="#43"><i class='arg'>pathName</i> <b class='cmd'>dragimage clear</b></a></td></tr>
+<tr valign=top ><td ><a href="#44"><i class='arg'>pathName</i> <b class='cmd'>dragimage 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="#45"><i class='arg'>pathName</i> <b class='cmd'>dragimage offset</b> ?<i class='arg'>x y</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#46"><i class='arg'>pathName</i> <b class='cmd'>element</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="#47"><i class='arg'>pathName</i> <b class='cmd'>element cget</b> <i class='arg'>element</i> <i class='arg'>option</i></a></td></tr>
+<tr valign=top ><td ><a href="#48"><i class='arg'>pathName</i> <b class='cmd'>element configure</b> <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="#49"><i class='arg'>pathName</i> <b class='cmd'>element create</b> <i class='arg'>element</i> <i class='arg'>type</i> ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#50"><i class='arg'>pathName</i> <b class='cmd'>element delete</b> ?<i class='arg'>element ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#51"><i class='arg'>pathName</i> <b class='cmd'>element names</b></a></td></tr>
+<tr valign=top ><td ><a href="#52"><i class='arg'>pathName</i> <b class='cmd'>element perstate</b> <i class='arg'>element</i> <i class='arg'>option</i> <i class='arg'>stateList</i></a></td></tr>
+<tr valign=top ><td ><a href="#53"><i class='arg'>pathName</i> <b class='cmd'>element type</b> <i class='arg'>element</i></a></td></tr>
+<tr valign=top ><td ><a href="#54"><i class='arg'>pathName</i> <b class='cmd'>expand</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#55"><i class='arg'>pathName</i> <b class='cmd'>identify</b> <i class='arg'>x</i> <i class='arg'>y</i></a></td></tr>
+<tr valign=top ><td ><a href="#56"><i class='arg'>pathName</i> <b class='cmd'>index</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#57"><i class='arg'>pathName</i> <b class='cmd'>item</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#58"><i class='arg'>pathName</i> <b class='cmd'>item ancestors</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#59"><i class='arg'>pathName</i> <b class='cmd'>item bbox</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#60"><i class='arg'>pathName</i> <b class='cmd'>item cget</b> <i class='arg'>itemDesc</i> <i class='arg'>option</i></a></td></tr>
+<tr valign=top ><td ><a href="#61"><i class='arg'>pathName</i> <b class='cmd'>item children</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#62"><i class='arg'>pathName</i> <b class='cmd'>item collapse</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a></td></tr>
+<tr valign=top ><td ><a href="#63"><i class='arg'>pathName</i> <b class='cmd'>item compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a></td></tr>
+<tr valign=top ><td ><a href="#64"><i class='arg'>pathName</i> <b class='cmd'>item complex</b> <i class='arg'>itemDesc</i> ?<i class='arg'>list...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#65"><i class='arg'>pathName</i> <b class='cmd'>item configure</b> <i class='arg'>itemDesc</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="#66"><i class='arg'>pathName</i> <b class='cmd'>item count</b> ?<i class='arg'>-visible</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#67"><i class='arg'>pathName</i> <b class='cmd'>item create</b> ?<i class='arg'>option value ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#68"><i class='arg'>pathName</i> <b class='cmd'>item delete</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#69"><i class='arg'>pathName</i> <b class='cmd'>item descendants</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#70"><i class='arg'>pathName</i> <b class='cmd'>item dump</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 element</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> ?<i class='arg'>arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#72"><i class='arg'>pathName</i> <b class='cmd'>item element actual</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="#73"><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="#74"><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="#75"><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="#76"><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="#77"><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="#78"><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="#79"><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="#80"><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="#81"><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="#82"><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="#83"><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="#84"><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="#85"><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="#86"><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="#87"><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="#88"><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="#89"><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="#90"><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="#91"><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="#92"><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="#93"><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="#94"><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="#95"><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="#96"><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="#97"><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="#98"><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="#99"><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="#100"><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="#101"><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="#102"><i class='arg'>pathName</i> <b class='cmd'>item tag</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#103"><i class='arg'>pathName</i> <b class='cmd'>item tag add</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a></td></tr>
+<tr valign=top ><td ><a href="#104"><i class='arg'>pathName</i> <b class='cmd'>item tag expr</b> <i class='arg'>itemDesc</i> <i class='arg'>tagExpr</i></a></td></tr>
+<tr valign=top ><td ><a href="#105"><i class='arg'>pathName</i> <b class='cmd'>item tag names</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#106"><i class='arg'>pathName</i> <b class='cmd'>item tag remove</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a></td></tr>
+<tr valign=top ><td ><a href="#107"><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="#108"><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="#109"><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="#110"><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="#111"><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="#112"><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="#113"><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="#114"><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="#115"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a></td></tr>
+<tr valign=top ><td ><a href="#116"><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="#117"><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="#118"><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="#119"><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="#120"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a></td></tr>
+<tr valign=top ><td ><a href="#121"><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="#122"><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="#123"><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="#124"><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="#125"><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="#126"><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="#127"><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="#128"><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="#129"><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="#130"><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="#131"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a></td></tr>
+<tr valign=top ><td ><a href="#132"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a></td></tr>
+<tr valign=top ><td ><a href="#133"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a></td></tr>
+<tr valign=top ><td ><a href="#134"><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="#135"><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="#136"><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="#137"><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="#138"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> <i class='arg'>args</i></a></td></tr>
+<tr valign=top ><td ><a href="#139"><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="#140"><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="#141"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a></td></tr>
+<tr valign=top ><td ><a href="#142"><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="#143"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a></td></tr>
+<tr valign=top ><td ><a href="#144"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>args</i></a></td></tr>
+<tr valign=top ><td ><a href="#145"><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="#146"><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="#147"><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="#148"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a></td></tr>
+<tr valign=top ><td ><a href="#149"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a></td></tr>
+<tr valign=top ><td ><a href="#150"><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="#151"><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="#152"><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="#153"><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="#154"><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="#155"><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="#156"><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="#157"><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="#158"><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="#159"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a></td></tr>
+<tr valign=top ><td ><a href="#160"><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="#161"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#162"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a></td></tr>
+<tr valign=top ><td ><a href="#163"><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="#164"><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="#165"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a></td></tr>
+<tr valign=top ><td ><a href="#166"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a></td></tr>
+<tr valign=top ><td ><a href="#167"><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="#168"><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>
@@ -525,6 +532,22 @@ in each column. This option has no effect if the -itemheight option is specified
Items are never shorter than the maximum height of a button.
<br><br>
+<dt>Command-Line Switch: <strong>-rowproxy</strong><br>
+Database Name: <strong>rowProxy</strong><br>
+Database Class: <strong>RowProxy</strong><br>
+<dd>
+If this option specifies a non empty value,
+it should be a screen distance
+in any of the forms acceptable to <strong>Tk_GetPixels</strong>.
+Then a 1 pixel thick horizontal line will be drawn
+at the specified screen distance from the top edge of the treectrl widget,
+which reaches from left to right of the treectrl widget
+and uses an inverting color
+(i.e black on lighter background, white on darker background).
+This line can be used to give the user a visual feedback
+during row resizing.
+
+<br><br>
<dt>Command-Line Switch: <strong>-scrollmargin</strong><br>
Database Name: <strong>scrollMargin</strong><br>
Database Class: <strong>ScrollMargin</strong><br>
@@ -713,18 +736,20 @@ this option is less than or equal to zero, then vertical scrolling
is unconstrained.
</dl>
-<h2><a name="item_tags">ITEM TAGS</a></h2>
+<h2><a name="item_and_column_tags">ITEM AND COLUMN TAGS</a></h2>
<p>
-An item may have any number of tags associated with it. A tag is just a string
-of characters, and it may take any form, including that of an integer,
-although the characters '(', ')', '&amp;', '|', '^' and '!' should be avoided.
+Columns and items may have any number of tags associated with them.
+A tag is just a string of characters, and it may take any form,
+including that of an integer, although the characters '(', ')', '&amp;', '|', '^'
+and '!' should be avoided.
<p>
-The same tag may be associated with many items. This is commonly done to group
+The same tag may be associated with many columns or items. This is commonly done to group
items in various interesting ways; for example, in a file browser all directories
might be given the tag &quot;directory&quot;.
<p>
-Tag expressions are used in <a href="#item_description">item descriptions</a> to specify which items to
-operate on.
+Tag expressions are used in <a href="#column_description">column descriptions</a>
+and <a href="#item_description">item descriptions</a> to specify which columns
+and items to operate on.
A tag expression can be a single tag name or a logical expression of tags
using operators '&amp;&amp;', '||', '^' and '!', and parenthesized subexpressions.
For example:
@@ -876,8 +901,9 @@ of the new column.
<dt><a name="14"><i class='arg'>pathName</i> <b class='cmd'>column delete</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a><dd>
Deletes the specified column(s). <i class='arg'>First</i> and <i class='arg'>last</i> must be valid
-<a href="#column_description">column descriptions</a>. If either <i class='arg'>first</i>
-or <i class='arg'>last</i> is specified as <strong>all</strong>, then all columns are deleted.
+<a href="#column_description">column descriptions</a>. If <i class='arg'>first</i>
+is specified as <strong>all</strong>, then all columns are deleted. If both <i class='arg'>first</i>
+and <i class='arg'>last</i> are specified, then they may refer to a single column only.
The <strong>tail</strong> column cannot be deleted and it is an error to specify it.
The order of <i class='arg'>first</i> and <i class='arg'>last</i> doesn't matter, and <i class='arg'>first</i> may
be equal to <i class='arg'>last</i>.
@@ -930,8 +956,12 @@ starting position.
<br><br>
<dt><strong><strong>-indicatorcolumn</strong></strong> <i class='arg'>column</i><dd>
-The 2-pixel-thick line will be drawn over the left edge of <i class='arg'>column</i>.
+The 2-pixel-thick line will be drawn over the left or right edge of <i class='arg'>column</i>.
+<br><br>
+<dt><strong><strong>-indicatorside</strong></strong> <i class='arg'>side</i><dd>
+Specifies whether the 2-pixel-thick line will be drawn over the <strong>left</strong>
+or <strong>right</strong> edge of the column specified by <strong>-indicatorcolumn</strong>.
</dl>
<dt><a name="17"><i class='arg'>pathName</i> <b class='cmd'>column index</b> <i class='arg'>columnDesc</i></a><dd>
@@ -942,9 +972,8 @@ Deprecated. Use <b class='cmd'>column id</b> instead.
<dt><a name="18"><i class='arg'>pathName</i> <b class='cmd'>column id</b> <i class='arg'>columnDesc</i></a><dd>
This command resolves the <a href="#column_description">column description</a>
-<i class='arg'>columnDesc</i> into a unique column identifier.
-If the column described by <i class='arg'>columnDesc</i> doesn't exist, this command returns
-an empty string.
+<i class='arg'>columnDesc</i> into a list of unique column identifiers. If the column(s) described by
+<i class='arg'>columnDesc</i> don't exist, this command returns an empty list.
<br><br>
<dt><a name="19"><i class='arg'>pathName</i> <b class='cmd'>column list</b> ?<i class='arg'>-visible</i>?</a><dd>
@@ -982,8 +1011,54 @@ If <i class='arg'>-visible</i> is given, only columns whose -visible
option is true are considered, and -1 is returned if <i class='arg'>columnDesc</i>'s -visible
option is false.
+
+
+<br><br>
+<dt><a name="23"><i class='arg'>pathName</i> <b class='cmd'>column tag</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a><dd>
+
+This command is used to manipulate tags on columns.
+The exact behavior of the command depends on the <i class='arg'>option</i> argument
+that follows the <b class='cmd'>column tag</b> argument.
+The following forms of the command are supported:
+
+<br><br>
+<dl>
+<dt><a name="24"><i class='arg'>pathName</i> <b class='cmd'>column tag add</b> <i class='arg'>columnDesc</i> <i class='arg'>tagList</i></a><dd>
+
+Adds each tag in <i class='arg'>tagList</i> to the columns specified by the
+<a href="#column_description">column description</a> <i class='arg'>columnDesc</i>.
+Duplicate tags are ignored. The list of tags for a column can also be
+changed via a column's <strong>-tags</strong> option.
+
+<br><br>
+<dt><a name="25"><i class='arg'>pathName</i> <b class='cmd'>column tag expr</b> <i class='arg'>columnDesc</i> <i class='arg'>tagExpr</i></a><dd>
+
+Evaluates the tag expression <i class='arg'>tagExpr</i> against every column
+specified by the <a href="#column_description">column description</a>
+<i class='arg'>columnDesc</i>. The result is 1 if the tag expression evaluates to true
+for every column, 0 otherwise.
+
+<br><br>
+<dt><a name="26"><i class='arg'>pathName</i> <b class='cmd'>column tag names</b> <i class='arg'>columnDesc</i></a><dd>
+
+Returns a list of tag names assigned to the columns
+specified by the <a href="#column_description">column description</a>
+<i class='arg'>columnDesc</i>. The result is the union of any tags assigned to the
+columns.
+
<br><br>
-<dt><a name="23"><i class='arg'>pathName</i> <b class='cmd'>column width</b> <i class='arg'>columnDesc</i></a><dd>
+<dt><a name="27"><i class='arg'>pathName</i> <b class='cmd'>column tag remove</b> <i class='arg'>columnDesc</i> <i class='arg'>tagList</i></a><dd>
+
+Removes each tag in <i class='arg'>tagList</i> from the columns specified by the
+<a href="#column_description">column description</a> <i class='arg'>columnDesc</i>.
+It is not an error if any of the columns do not use any of the tags.
+The list of tags for a column can also be changed via a column's
+<strong>-tags</strong> option.
+</dl>
+
+
+
+<dt><a name="28"><i class='arg'>pathName</i> <b class='cmd'>column width</b> <i class='arg'>columnDesc</i></a><dd>
This command returns a decimal string giving the width in pixels
of the column specified by the <a href="#column_description">column description</a>
@@ -992,12 +1067,12 @@ even if the treectrl is configured to not display the column headers
by means of the <strong>-showheader</strong> option.
</dl>
-<dt><a name="24"><i class='arg'>pathName</i> <b class='cmd'>compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a><dd>
+<dt><a name="29"><i class='arg'>pathName</i> <b class='cmd'>compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a><dd>
Deprecated. Use the <b class='cmd'>item compare</b> command instead.
<br><br>
-<dt><a name="25"><i class='arg'>pathName</i> <b class='cmd'>configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value option value ...</i>?</a><dd>
+<dt><a name="30"><i class='arg'>pathName</i> <b class='cmd'>configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value option value ...</i>?</a><dd>
Query or modify the configuration options of the widget.
If no <i class='arg'>option</i> is specified, returns a list describing all of
@@ -1013,15 +1088,16 @@ this case the command returns an empty string.
command.
<br><br>
-<dt><a name="26"><i class='arg'>pathName</i> <b class='cmd'>contentbox</b></a><dd>
+<dt><a name="31"><i class='arg'>pathName</i> <b class='cmd'>contentbox</b></a><dd>
Returns a list with four elements giving the bounding box
-for the space used to display the items,
-i.e. the space of the treectrl window without
-the surrounding borders or the column headers.
+of the screen area used to display items.
+This is the area of the window not including borders, column headers, or
+locked columns. An empty string is returned if the display area has
+no height or width, which can happen if the window is too small.
<br><br>
-<dt><a name="27"><i class='arg'>pathName</i> <b class='cmd'>debug</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a><dd>
+<dt><a name="32"><i class='arg'>pathName</i> <b class='cmd'>debug</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a><dd>
This command is used to facilitate debugging of the treectrl widget.
The exact behavior of the command depends on the <i class='arg'>option</i> argument
@@ -1030,7 +1106,12 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="28"><i class='arg'>pathName</i> <b class='cmd'>debug cget</b> <i class='arg'>element</i> <i class='arg'>option</i></a><dd>
+<dt><a name="33"><i class='arg'>pathName</i> <b class='cmd'>debug alloc</b></a><dd>
+
+Returns a string giving partial statistics on memory allocations.
+
+<br><br>
+<dt><a name="34"><i class='arg'>pathName</i> <b class='cmd'>debug cget</b> <i class='arg'>option</i></a><dd>
This command returns the current value of the debugging option
named <i class='arg'>option</i>.
@@ -1038,7 +1119,7 @@ named <i class='arg'>option</i>.
<b class='cmd'>debug configure</b> widget command.
<br><br>
-<dt><a name="29"><i class='arg'>pathName</i> <b class='cmd'>debug configure</b> <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="35"><i class='arg'>pathName</i> <b class='cmd'>debug 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 debugging options
@@ -1081,20 +1162,29 @@ If this option is switched on
at varios places additional debugging output is printed to stdout.
<br><br>
+<dt><strong><strong>-drawcolor</strong></strong> <i class='arg'>color</i><dd>
+When specified, areas of the window are painted with this color when drawing
+in those areas is about to occur.
+Setting this option has only an effect if the
+debugging options <strong>-enable</strong> and <strong>-display</strong> are switched on.
+
+<br><br>
<dt><strong><strong>-enable</strong></strong> <i class='arg'>boolean</i><dd>
All other debugging options only take effect,
if this option is also switched on.
<br><br>
<dt><strong><strong>-erasecolor</strong></strong> <i class='arg'>color</i><dd>
-Use this color, when parts of the treectrl widget should be deleted.
+When specified, areas of the window which have been marked as &quot;invalid&quot;
+(for example, when part of the window is exposed) are
+painted with this color.
If you use an unusual color for this option (like <strong>pink</strong>),
superflous screen redraws can be spotted more easily.
-Setting this option has only an effect, if the
+Setting this option has only an effect if the
debugging options <strong>-enable</strong> and <strong>-display</strong> are switched on.
</dl>
-<dt><a name="30"><i class='arg'>pathName</i> <b class='cmd'>debug dinfo</b></a><dd>
+<dt><a name="36"><i class='arg'>pathName</i> <b class='cmd'>debug dinfo</b></a><dd>
For every of the treectrl widget
a line with some internal values info about all items
@@ -1102,12 +1192,18 @@ is printed to stdout.
The command returns the empty string.
<br><br>
-<dt><a name="31"><i class='arg'>pathName</i> <b class='cmd'>debug scroll</b></a><dd>
+<dt><a name="37"><i class='arg'>pathName</i> <b class='cmd'>debug expose</b> <i class='arg'>x1</i> <i class='arg'>y1</i> <i class='arg'>x2</i> <i class='arg'>y2</i></a><dd>
+
+Causes the area of the window bounded by the given window-coords to be
+marked as invalid. This simulates uncovering part of the window.
+
+<br><br>
+<dt><a name="38"><i class='arg'>pathName</i> <b class='cmd'>debug scroll</b></a><dd>
Returns a string useful for debugging vertical scrolling.
</dl>
-<dt><a name="32"><i class='arg'>pathName</i> <b class='cmd'>depth</b> ?<i class='arg'>itemDesc</i>?</a><dd>
+<dt><a name="39"><i class='arg'>pathName</i> <b class='cmd'>depth</b> ?<i class='arg'>itemDesc</i>?</a><dd>
If the additional argument <i class='arg'>itemDesc</i> is specified,
returns a decimal string giving the depth of
@@ -1117,7 +1213,7 @@ If no <i class='arg'>itemDesc</i> is specified, the maximum depth of all
items in the treectrl widget is returned instead.
<br><br>
-<dt><a name="33"><i class='arg'>pathName</i> <b class='cmd'>dragimage</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="40"><i class='arg'>pathName</i> <b class='cmd'>dragimage</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
This command is used to manipulate the dragimage,
one or more dotted lines around rectangular regions of the treectrl widget.
@@ -1127,7 +1223,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="34"><i class='arg'>pathName</i> <b class='cmd'>dragimage add</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a><dd>
+<dt><a name="41"><i class='arg'>pathName</i> <b class='cmd'>dragimage add</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a><dd>
Adds the shapes of the item described by <i class='arg'>itemDesc</i>
to the shapes of the dragimage.
@@ -1140,7 +1236,7 @@ If also <i class='arg'>element</i> is specified, only a rectangle for this one e
of the specified item in the given column is added.
<br><br>
-<dt><a name="35"><i class='arg'>pathName</i> <b class='cmd'>dragimage cget</b> <i class='arg'>option</i></a><dd>
+<dt><a name="42"><i class='arg'>pathName</i> <b class='cmd'>dragimage cget</b> <i class='arg'>option</i></a><dd>
This command returns the current value of the dragimage option
named <i class='arg'>option</i>.
@@ -1148,13 +1244,13 @@ named <i class='arg'>option</i>.
<b class='cmd'>dragimage configure</b> widget command.
<br><br>
-<dt><a name="36"><i class='arg'>pathName</i> <b class='cmd'>dragimage clear</b></a><dd>
+<dt><a name="43"><i class='arg'>pathName</i> <b class='cmd'>dragimage clear</b></a><dd>
Removes all shapes (if there are any) from the dragimage.
This command does not modify the dragimage offset.
<br><br>
-<dt><a name="37"><i class='arg'>pathName</i> <b class='cmd'>dragimage configure</b> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="44"><i class='arg'>pathName</i> <b class='cmd'>dragimage 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 dragimage options
@@ -1180,7 +1276,7 @@ Specifies a boolean value which determines
whether the dragimage should currently be visible.
</dl>
-<dt><a name="38"><i class='arg'>pathName</i> <b class='cmd'>dragimage offset</b> ?<i class='arg'>x y</i>?</a><dd>
+<dt><a name="45"><i class='arg'>pathName</i> <b class='cmd'>dragimage offset</b> ?<i class='arg'>x y</i>?</a><dd>
Returns a list containing the x and y offsets of the dragimage,
if no additional arguments are specified.
@@ -1191,7 +1287,7 @@ sets the dragimage offset to the given coordinates <i class='arg'>x</i> and <i c
</dl>
-<dt><a name="39"><i class='arg'>pathName</i> <b class='cmd'>element</b> <i class='arg'>option</i> ?<i class='arg'>element</i>? ?<i class='arg'>arg arg ...</i>?</a><dd>
+<dt><a name="46"><i class='arg'>pathName</i> <b class='cmd'>element</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 elements (see <a href="#elements">ELEMENTS</a> below).
The exact behavior of the command depends on the <i class='arg'>option</i> argument
@@ -1200,7 +1296,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="40"><i class='arg'>pathName</i> <b class='cmd'>element cget</b> <i class='arg'>element</i> <i class='arg'>option</i></a><dd>
+<dt><a name="47"><i class='arg'>pathName</i> <b class='cmd'>element cget</b> <i class='arg'>element</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 element given by <i class='arg'>element</i>.
@@ -1208,7 +1304,7 @@ associated with the element given by <i class='arg'>element</i>.
<b class='cmd'>element configure</b> widget command.
<br><br>
-<dt><a name="41"><i class='arg'>pathName</i> <b class='cmd'>element configure</b> <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="48"><i class='arg'>pathName</i> <b class='cmd'>element configure</b> <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 associated with the element given by <i class='arg'>element</i>
@@ -1226,7 +1322,7 @@ in this case the command returns an empty string.
See <a href="#elements">ELEMENTS</a> below for details on the options available for elements.
<br><br>
-<dt><a name="42"><i class='arg'>pathName</i> <b class='cmd'>element create</b> <i class='arg'>element</i> <i class='arg'>type</i> ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="49"><i class='arg'>pathName</i> <b class='cmd'>element create</b> <i class='arg'>element</i> <i class='arg'>type</i> ?<i class='arg'>option value ...</i>?</a><dd>
Create a new elememt in <i class='arg'>pathName</i> of type <i class='arg'>type</i>
with name <i class='arg'>element</i>.
@@ -1237,7 +1333,7 @@ on the syntax of this command.
This command returns the name for the new element.
<br><br>
-<dt><a name="43"><i class='arg'>pathName</i> <b class='cmd'>element delete</b> ?<i class='arg'>element ...</i>?</a><dd>
+<dt><a name="50"><i class='arg'>pathName</i> <b class='cmd'>element delete</b> ?<i class='arg'>element ...</i>?</a><dd>
Deletes each of the named elements and returns an empty string.
If an element is deleted while it is still configured
@@ -1246,12 +1342,12 @@ by means of the <b class='cmd'>style elements</b> widget command,
it is also removed from the element lists of these styles.
<br><br>
-<dt><a name="44"><i class='arg'>pathName</i> <b class='cmd'>element names</b></a><dd>
+<dt><a name="51"><i class='arg'>pathName</i> <b class='cmd'>element names</b></a><dd>
Returns a list containing the names of all existing elements.
<br><br>
-<dt><a name="45"><i class='arg'>pathName</i> <b class='cmd'>element perstate</b> <i class='arg'>element</i> <i class='arg'>option</i> <i class='arg'>stateList</i></a><dd>
+<dt><a name="52"><i class='arg'>pathName</i> <b class='cmd'>element perstate</b> <i class='arg'>element</i> <i class='arg'>option</i> <i class='arg'>stateList</i></a><dd>
This command returns the value of the <a href="#per-state_options">per-state</a>
option named <i class='arg'>option</i> for <i class='arg'>element</i> for a certain state.
@@ -1259,18 +1355,18 @@ option named <i class='arg'>option</i> for <i class='arg'>element</i> for a cert
which specifies the state to use.
<br><br>
-<dt><a name="46"><i class='arg'>pathName</i> <b class='cmd'>element type</b> <i class='arg'>element</i></a><dd>
+<dt><a name="53"><i class='arg'>pathName</i> <b class='cmd'>element type</b> <i class='arg'>element</i></a><dd>
Returns the type of the elements given by <i class='arg'>element</i>,
such as <strong>rect</strong> or <strong>text</strong>.
</dl>
-<dt><a name="47"><i class='arg'>pathName</i> <b class='cmd'>expand</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a><dd>
+<dt><a name="54"><i class='arg'>pathName</i> <b class='cmd'>expand</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a><dd>
Use <b class='cmd'>item expand</b> instead.
<br><br>
-<dt><a name="48"><i class='arg'>pathName</i> <b class='cmd'>identify</b> <i class='arg'>x</i> <i class='arg'>y</i></a><dd>
+<dt><a name="55"><i class='arg'>pathName</i> <b class='cmd'>identify</b> <i class='arg'>x</i> <i class='arg'>y</i></a><dd>
Returns a list containing some diagnostics about what
is displayed at the given windows coordinates <i class='arg'>x</i> and <i class='arg'>y</i>.
@@ -1307,12 +1403,12 @@ if the x coordinate is to the right of the elements;
nothing otherwise.
<br><br>
-<dt><a name="49"><i class='arg'>pathName</i> <b class='cmd'>index</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="56"><i class='arg'>pathName</i> <b class='cmd'>index</b> <i class='arg'>itemDesc</i></a><dd>
Deprecated. Use <b class='cmd'>item id</b> instead.
<br><br>
-<dt><a name="50"><i class='arg'>pathName</i> <b class='cmd'>item</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="57"><i class='arg'>pathName</i> <b class='cmd'>item</b> <i class='arg'>option</i> ?<i class='arg'>arg ...</i>?</a><dd>
This command is used to manipulate items.
The exact behavior of the command depends on the <i class='arg'>option</i> argument
@@ -1321,7 +1417,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="51"><i class='arg'>pathName</i> <b class='cmd'>item ancestors</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="58"><i class='arg'>pathName</i> <b class='cmd'>item ancestors</b> <i class='arg'>itemDesc</i></a><dd>
Returns a list containing the item ids of the ancestors
of the item specified by <i class='arg'>itemDesc</i>. The first list value is the parent,
@@ -1329,7 +1425,7 @@ the second is the parent's parent, an so on. The last list value will be the
root item if <i class='arg'>itemDesc</i> is a descendant of the root item.
<br><br>
-<dt><a name="52"><i class='arg'>pathName</i> <b class='cmd'>item bbox</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a><dd>
+<dt><a name="59"><i class='arg'>pathName</i> <b class='cmd'>item bbox</b> <i class='arg'>itemDesc</i> ?<i class='arg'>column</i>? ?<i class='arg'>element</i>?</a><dd>
Returns a list with four elements giving the bounding box
for the item described by <i class='arg'>itemDesc</i>.
@@ -1340,21 +1436,21 @@ the area of this <i class='arg'>element</i> in <i class='arg'>column</i> of the
returned.
<br><br>
-<dt><a name="53"><i class='arg'>pathName</i> <b class='cmd'>item cget</b> <i class='arg'>itemDesc</i> <i class='arg'>option</i></a><dd>
+<dt><a name="60"><i class='arg'>pathName</i> <b class='cmd'>item cget</b> <i class='arg'>itemDesc</i> <i class='arg'>option</i></a><dd>
Returns the current value of the configuration option for the item specified by
<i class='arg'>itemDesc</i> whose name is <i class='arg'>option</i>. <i class='arg'>Option</i> may have any of the
values accepted by the <b class='cmd'>item configure</b> command.
<br><br>
-<dt><a name="54"><i class='arg'>pathName</i> <b class='cmd'>item children</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="61"><i class='arg'>pathName</i> <b class='cmd'>item children</b> <i class='arg'>itemDesc</i></a><dd>
Returns a list containing the item ids of all children
of the item specified by <i class='arg'>itemDesc</i> in the correct order from
the first child to the last child.
<br><br>
-<dt><a name="55"><i class='arg'>pathName</i> <b class='cmd'>item collapse</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
+<dt><a name="62"><i class='arg'>pathName</i> <b class='cmd'>item collapse</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
Switches off the <strong>open</strong> state of the item(s)
described by <i class='arg'>itemDesc</i>.
@@ -1374,7 +1470,7 @@ a <strong>&lt;Collapse-before&gt;</strong> event before the item state is change
and a <strong>&lt;Collapse-after&gt;</strong> event after the item state was changed.
<br><br>
-<dt><a name="56"><i class='arg'>pathName</i> <b class='cmd'>item compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a><dd>
+<dt><a name="63"><i class='arg'>pathName</i> <b class='cmd'>item compare</b> <i class='arg'>itemDesc1</i> <i class='arg'>op</i> <i class='arg'>itemDesc2</i></a><dd>
From both items described by the <i class='arg'>itemDesc</i>s the index is retrieved
(as returned from the <b class='cmd'>item order</b> widget command).
@@ -1385,7 +1481,7 @@ The return value of this command is 1 if the comparison evaluated to true,
0 otherwise.
<br><br>
-<dt><a name="57"><i class='arg'>pathName</i> <b class='cmd'>item complex</b> <i class='arg'>itemDesc</i> ?<i class='arg'>list...</i>?</a><dd>
+<dt><a name="64"><i class='arg'>pathName</i> <b class='cmd'>item complex</b> <i class='arg'>itemDesc</i> ?<i class='arg'>list...</i>?</a><dd>
This horrible command is now deprecated. Use <b class='cmd'>item element configure</b>
instead. For every column of the treectrl there may be specified one <i class='arg'>list</i>.
@@ -1399,16 +1495,19 @@ Each <i class='arg'>option</i> will be set to <i class='arg'>value</i> for the e
one column in this item.
<br><br>
-<dt><a name="58"><i class='arg'>pathName</i> <b class='cmd'>item configure</b> <i class='arg'>itemDesc</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="65"><i class='arg'>pathName</i> <b class='cmd'>item configure</b> <i class='arg'>itemDesc</i> ?<i class='arg'>option</i>? ?<i class='arg'>value</i>? ?<i class='arg'>option value ...</i>?</a><dd>
If no <i class='arg'>option</i> is specified, returns a list describing all of the available
options for the item given by <i class='arg'>itemDesc</i> (see <strong>Tk_ConfigureInfo</strong> for
information on the format of this list). If <i class='arg'>option</i> is specified with no
value, then the command returns a list describing the one named option (this
list will be identical to the corresponding sublist of the value returned if
-no <i class='arg'>option</i> is specified). If one or more <i class='arg'>option</i>-<i class='arg'>value</i> pairs
+no <i class='arg'>option</i> is specified).
+<br><br>
+If one or more <i class='arg'>option</i>-<i class='arg'>value</i> pairs
are specified, then the command modifies the given item option(s) to have the
-given value(s); in this case the command returns an empty string.
+given value(s); in this case the command returns an empty string. This is the
+only case where <i class='arg'>itemDesc</i> may refer to multiple items.
<br><br>
The following options are supported by this command (see <b class='cmd'>item create</b> for
the meaning of each option):
@@ -1418,11 +1517,12 @@ the meaning of each option):
<dt><strong><strong>-button</strong></strong> <i class='arg'>boolean</i><dd>
<dt><strong><strong>-height</strong></strong> <i class='arg'>height</i><dd>
+<dt><strong><strong>-tags</strong></strong> <i class='arg'>tagList</i><dd>
<dt><strong><strong>-visible</strong></strong> <i class='arg'>boolean</i><dd>
</dl>
-<dt><a name="59"><i class='arg'>pathName</i> <b class='cmd'>item count</b> ?<i class='arg'>-visible</i>?</a><dd>
+<dt><a name="66"><i class='arg'>pathName</i> <b class='cmd'>item count</b> ?<i class='arg'>-visible</i>?</a><dd>
Returns a decimal string giving the number of
items created by the <b class='cmd'>item create</b> widget command which haven't been
@@ -1433,7 +1533,7 @@ Additionally, for the root item, the treectrl option <strong>-showroot</strong>
be true for the root item to be counted.
<br><br>
-<dt><a name="60"><i class='arg'>pathName</i> <b class='cmd'>item create</b> ?<i class='arg'>option value ...</i>?</a><dd>
+<dt><a name="67"><i class='arg'>pathName</i> <b class='cmd'>item create</b> ?<i class='arg'>option value ...</i>?</a><dd>
Creates some new items and optionally returns a list of unique identifiers for
those items.
@@ -1503,16 +1603,14 @@ and b) each ancestor's <strong>-visible</strong> option is true
</dl>
-<dt><a name="61"><i class='arg'>pathName</i> <b class='cmd'>item delete</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a><dd>
+<dt><a name="68"><i class='arg'>pathName</i> <b class='cmd'>item delete</b> <i class='arg'>first</i> ?<i class='arg'>last</i>?</a><dd>
Deletes the specified item(s).
<i class='arg'>First</i> and <i class='arg'>last</i> must be valid
<a href="#item_description">item descriptions</a>.
-If either <i class='arg'>first</i> or <i class='arg'>last</i> is specified as <strong>all</strong>, then all items are
-deleted. If <i class='arg'>first</i> is specified and <i class='arg'>last</i> isn't
-specified, the item described by <i class='arg'>first</i> is deleted.
+If <i class='arg'>last</i> isn't specified, then <i class='arg'>first</i> may specify multiple items.
If both <i class='arg'>first</i> and <i class='arg'>last</i> are specified,
-they must decribe items with a common ancestor;
+they must each decribe a single item with a common ancestor;
then the range of items between <i class='arg'>first</i> and <i class='arg'>last</i> is deleted.
The order of <i class='arg'>first</i> and <i class='arg'>last</i> doesn't matter.
<br><br>
@@ -1529,21 +1627,21 @@ If any items were actually deleted, then an <strong>&lt;ItemDelete&gt;</strong>
are deleted.
<br><br>
-<dt><a name="62"><i class='arg'>pathName</i> <b class='cmd'>item descendants</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="69"><i class='arg'>pathName</i> <b class='cmd'>item descendants</b> <i class='arg'>itemDesc</i></a><dd>
Returns a list containing the item ids of the descendants
of the item specified by <i class='arg'>itemDesc</i>, i.e. the children, grandchildren,
great-grandchildren etc, of the item.
<br><br>
-<dt><a name="63"><i class='arg'>pathName</i> <b class='cmd'>item dump</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="70"><i class='arg'>pathName</i> <b class='cmd'>item dump</b> <i class='arg'>itemDesc</i></a><dd>
Returns a list with six elements in the form
<strong>index</strong> <em>index</em> <strong>indexVis</strong> <em>indexVis</em>
<strong>neededHeight</strong> <em>neededHeight</em>.
<br><br>
-<dt><a name="64"><i class='arg'>pathName</i> <b class='cmd'>item element</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> ?<i class='arg'>arg ...</i>?</a><dd>
+<dt><a name="71"><i class='arg'>pathName</i> <b class='cmd'>item element</b> <i class='arg'>command</i> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> ?<i class='arg'>arg ...</i>?</a><dd>
This command is used to manipulate elements of the item.
The exact behavior of the command depends on the <i class='arg'>command</i> argument
@@ -1552,12 +1650,12 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="65"><i class='arg'>pathName</i> <b class='cmd'>item element actual</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> <i class='arg'>option</i></a><dd>
+<dt><a name="72"><i class='arg'>pathName</i> <b class='cmd'>item element actual</b> <i class='arg'>itemDesc</i> <i class='arg'>column</i> <i class='arg'>element</i> <i class='arg'>option</i></a><dd>
Deprecated. Use <b class='cmd'>item element perstate</b> instead.
<br><br>
-<dt><a name="66"><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><dd>
+<dt><a name="73"><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><dd>
This command returns the value of the option named <i class='arg'>option</i>
associated with <i class='arg'>element</i> inside <i class='arg'>column</i> of the item described by
@@ -1566,12 +1664,10 @@ associated with <i class='arg'>element</i> inside <i class='arg'>column</i> of t
specified element (see <a href="#elements">ELEMENTS</a> below)
<br><br>
-<dt><a name="67"><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><dd>
+<dt><a name="74"><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><dd>
-This command is similar to the <b class='cmd'>configure</b> widget command except
-that it modifies options associated with
-<i class='arg'>element</i> inside <i class='arg'>column</i> of the item described by <i class='arg'>itemDesc</i>
-instead of modifying options for the overall treectrl widget.
+This command modifies configuration options for an element in a column of
+an item.
If no <i class='arg'>option</i> is specified, the command returns a list describing
all of the available options for the element (see <strong>Tk_ConfigureInfo</strong>
for information on the format of this list).
@@ -1579,10 +1675,12 @@ If <i class='arg'>option</i> is specified with no <i class='arg'>value</i>, then
a list describing the one named option (this list will be identical to
the corresponding sublist of the value returned if no <i class='arg'>option</i>
is specified).
+<br><br>
If one or more <i class='arg'>option</i>-<i class='arg'>value</i> pairs are specified, then the command
modifies the given option(s) to have the given value(s) in the
-<i class='arg'>element</i> inside <i class='arg'>column</i> of the item described by <i class='arg'>itemDesc</i>;
-in this case the command returns an empty string.
+<i class='arg'>element</i> inside <i class='arg'>column</i> of the item(s) described by <i class='arg'>itemDesc</i>;
+in this case the command returns an empty string. This is the only case where
+<i class='arg'>itemDesc</i> may refer to multiple items.
<br><br>
It is possible to configure multiple elements in multiple columns with
a single call. To configure another element in the same column, append a
@@ -1595,9 +1693,11 @@ For example:
$C2 $E3 -fill Blue , \
$C3 $E1 -text &quot;apples and oranges&quot;
</pre></td></tr></table></p>
+Each of the <a href="#column_description">column description</a> arguments
+may refer to multiple columns.
<br><br>
-<dt><a name="68"><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><dd>
+<dt><a name="75"><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><dd>
This command returns the current value of the <a href="#per-state_options">per-state</a>
option named <i class='arg'>option</i> for <i class='arg'>element</i> inside <i class='arg'>column</i> of the item described by
@@ -1607,14 +1707,14 @@ and dynamic, see <a href="#states">STATES</a>) is used in place of the current s
</dl>
-<dt><a name="69"><i class='arg'>pathName</i> <b class='cmd'>item enabled</b> <i class='arg'>itemDesc</i> ?<i class='arg'>boolean</i>?</a><dd>
+<dt><a name="76"><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="70"><i class='arg'>pathName</i> <b class='cmd'>item expand</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
+<dt><a name="77"><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.
@@ -1633,7 +1733,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="71"><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="78"><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>.
@@ -1642,14 +1742,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="72"><i class='arg'>pathName</i> <b class='cmd'>item id</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="79"><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 list of unique item identifiers. If the item(s) described by
<i class='arg'>itemDesc</i> don't exist, this command returns an empty list.
<br><br>
-<dt><a name="73"><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="80"><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.
@@ -1658,28 +1758,30 @@ If no <i class='arg'>column</i> is specified, this command returns a list of val
one per column.
If no <i class='arg'>image</i> is specified, this command returns the value for <i class='arg'>column</i>.
-
+<br><br>
If one or more <i class='arg'>column</i>-<i class='arg'>image</i> pairs is specified,
then the value of the -image option in each <i class='arg'>column</i> is set to <i class='arg'>image</i>.
-
+In this case <i class='arg'>itemDesc</i> may refer to multiple items and each <i class='arg'>column</i>
+may refer to multiple columns.
+<br><br>
Note that this command is provided as a convenience. Use the
<b class='cmd'>item element configure</b> or <b class='cmd'>item element cget</b> commands if you want
to set or retrieve the value of the -image option for a specific image element.
<br><br>
-<dt><a name="74"><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="81"><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="75"><i class='arg'>pathName</i> <b class='cmd'>item isopen</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="82"><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="76"><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="83"><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>.
@@ -1688,7 +1790,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="77"><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="84"><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>.
@@ -1697,12 +1799,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="78"><i class='arg'>pathName</i> <b class='cmd'>item numchildren</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="85"><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="79"><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="86"><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
@@ -1713,13 +1815,13 @@ result of this command is the row the item falls in. If the optional argument
is not visible.
<br><br>
-<dt><a name="80"><i class='arg'>pathName</i> <b class='cmd'>item parent</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="87"><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="81"><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="88"><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>.
@@ -1728,7 +1830,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="82"><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="89"><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.
@@ -1739,13 +1841,13 @@ The items specified by <i class='arg'>first</i> and <i class='arg'>last</i> must
ancestor.
<br><br>
-<dt><a name="83"><i class='arg'>pathName</i> <b class='cmd'>item remove</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="90"><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="84"><i class='arg'>pathName</i> <b class='cmd'>item rnc</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="91"><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
@@ -1753,7 +1855,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="85"><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="92"><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.
@@ -1824,16 +1926,19 @@ Convert to integers and use integer comparison.
Convert to floating-point values and use floating comparison.
</dl>
-<dt><a name="86"><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="93"><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.
If no <i class='arg'>numColumns</i> is specified, the return value is the span for <i class='arg'>column</i>.
+<br><br>
If one or more <i class='arg'>column</i>-<i class='arg'>numColumns</i> pairs is specified, the
-span for each <i class='arg'>column</i> is set to <i class='arg'>numColumns</i>.
+span for each <i class='arg'>column</i> is set to <i class='arg'>numColumns</i>. In this case <i class='arg'>itemDesc</i>
+may refer to multiple items and each <i class='arg'>column</i> may refer to multiple
+columns.
<br><br>
-<dt><a name="87"><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="94"><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
@@ -1843,15 +1948,18 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="88"><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="95"><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,
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>
+If <i class='arg'>stateDescList</i> is specified, then <i class='arg'>itemDesc</i> may refer to multiple
+items and <i class='arg'>column</i> may refer to multiple columns.
<br><br>
-<dt><a name="89"><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="96"><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
@@ -1861,7 +1969,7 @@ If a <i class='arg'>stateName</i> is specified,
0 otherwise.
<br><br>
-<dt><a name="90"><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="97"><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),
@@ -1871,13 +1979,13 @@ item described by <i class='arg'>itemDesc</i>,
every state with a leading <strong>~</strong> will be toggled, and
every state without leading <strong>!</strong> or <strong>~</strong> will be switched on.
If <i class='arg'>lastItem</i> is specified, the state changes will be made for all items
-in the range betwen <i class='arg'>itemDesc</i> and <i class='arg'>lastItem</i>.
-If <i class='arg'>ItemDesc</i> is the string <strong>all</strong>,
-then the state changes are made for all items of the treectrl widget.
+in the range between <i class='arg'>itemDesc</i> and <i class='arg'>lastItem</i>.
+If <i class='arg'>lastItem</i> unspecified,
+then the state changes are made for all items described by <i class='arg'>itemDesc</i>.
</dl>
-<dt><a name="91"><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="98"><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
@@ -1886,7 +1994,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="92"><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="99"><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
@@ -1894,7 +2002,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="93"><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="100"><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
@@ -1905,9 +2013,11 @@ to elements in the new style specified by <i class='arg'>style</i>.
<i class='arg'>elementOld</i> is an element in the current style, and <i class='arg'>elementNew</i> is
an element in the style specified by <i class='arg'>style</i>. Both <i class='arg'>elementOld</i> and
<i class='arg'>elementNew</i> must be of the same type (<strong>bitmap</strong>, <strong>text</strong> etc).
+<i class='arg'>ItemDesc</i> may refer to multiple items and <i class='arg'>column</i> may refer to
+multiple columns.
<br><br>
-<dt><a name="94"><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="101"><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.
@@ -1917,12 +2027,58 @@ styles set for all columns of the item described by <i class='arg'>itemDesc</i>.
If no <i class='arg'>style</i> is specified, this command
returns the name of the style set for the item described by
<i class='arg'>itemDesc</i> in <i class='arg'>column</i>.
-
+<br><br>
If one or more <i class='arg'>column</i>-<i class='arg'>style</i> pairs is specified,
-then the style in each <i class='arg'>column</i> is set to <i class='arg'>style</i>.
+then the style in each <i class='arg'>column</i> is set to <i class='arg'>style</i>. In this case
+<i class='arg'>itemDesc</i> may refer to multiple items and each <i class='arg'>column</i> may refer to
+multiple columns.
</dl>
-<dt><a name="95"><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="102"><i class='arg'>pathName</i> <b class='cmd'>item tag</b> <i class='arg'>option</i> ?<i class='arg'>arg arg ...</i>?</a><dd>
+
+This command is used to manipulate tags on items.
+The exact behavior of the command depends on the <i class='arg'>option</i> argument
+that follows the <b class='cmd'>item tag</b> argument.
+The following forms of the command are supported:
+
+<br><br>
+<dl>
+<dt><a name="103"><i class='arg'>pathName</i> <b class='cmd'>item tag add</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a><dd>
+
+Adds each tag in <i class='arg'>tagList</i> to the items specified by the
+<a href="#item_description">item description</a> <i class='arg'>itemDesc</i>.
+Duplicate tags are ignored. The list of tags for an item can also be
+changed via an item's <strong>-tags</strong> option.
+
+<br><br>
+<dt><a name="104"><i class='arg'>pathName</i> <b class='cmd'>item tag expr</b> <i class='arg'>itemDesc</i> <i class='arg'>tagExpr</i></a><dd>
+
+Evaluates the tag expression <i class='arg'>tagExpr</i> against every item
+specified by the <a href="#item_description">item description</a>
+<i class='arg'>itemDesc</i>. The result is 1 if the tag expression evaluates to true
+for every item, 0 otherwise.
+
+<br><br>
+<dt><a name="105"><i class='arg'>pathName</i> <b class='cmd'>item tag names</b> <i class='arg'>itemDesc</i></a><dd>
+
+Returns a list of tag names assigned to the items
+specified by the <a href="#item_description">item description</a>
+<i class='arg'>itemDesc</i>. The result is the union of any tags assigned to the
+items.
+
+<br><br>
+<dt><a name="106"><i class='arg'>pathName</i> <b class='cmd'>item tag remove</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a><dd>
+
+Removes each tag in <i class='arg'>tagList</i> from the items specified by the
+<a href="#item_description">item description</a> <i class='arg'>itemDesc</i>.
+It is not an error if any of the items do not use any of the tags.
+The list of tags for an item can also be changed via an item's
+<strong>-tags</strong> option.
+</dl>
+
+
+<dt><a name="107"><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.
@@ -1931,16 +2087,18 @@ If no <i class='arg'>column</i> is specified, this command returns a list of val
one per column.
If no <i class='arg'>text</i> is specified, this command returns the value for <i class='arg'>column</i>.
-
+<br><br>
If one or more <i class='arg'>column</i>-<i class='arg'>text</i> pairs is specified,
then the value of the -text option in each <i class='arg'>column</i> is set to <i class='arg'>text</i>.
-
+In this case <i class='arg'>itemDesc</i> may refer to multiple items and each <i class='arg'>column</i>
+may refer to multiple columns.
+<br><br>
Note that this command is provided as a convenience. Use the
<b class='cmd'>item element configure</b> or <b class='cmd'>item element cget</b> commands if you
want to set or retrieve the value of the -text option for a specific text element.
<br><br>
-<dt><a name="96"><i class='arg'>pathName</i> <b class='cmd'>item toggle</b> <i class='arg'>itemDesc</i> ?<strong>-recurse</strong>?</a><dd>
+<dt><a name="108"><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,
@@ -1953,7 +2111,7 @@ If <strong>-recurse</strong> is specified, the state of all descendants of
</dl>
-<dt><a name="97"><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="109"><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
@@ -1970,7 +2128,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="98"><i class='arg'>pathName</i> <b class='cmd'>marquee anchor</b> ?<i class='arg'>x y</i>?</a><dd>
+<dt><a name="110"><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.
@@ -1978,7 +2136,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="99"><i class='arg'>pathName</i> <b class='cmd'>marquee cget</b> <i class='arg'>option</i></a><dd>
+<dt><a name="111"><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>.
@@ -1986,7 +2144,7 @@ named <i class='arg'>option</i>.
<b class='cmd'>marquee configure</b> widget command.
<br><br>
-<dt><a name="100"><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="112"><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
@@ -2013,7 +2171,7 @@ whether the dotted line surrounding the region of the marquee
should currently be visible.
</dl>
-<dt><a name="101"><i class='arg'>pathName</i> <b class='cmd'>marquee coords</b> ?<i class='arg'>x1 y1 x2 y2</i>?</a><dd>
+<dt><a name="113"><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,
@@ -2023,7 +2181,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="102"><i class='arg'>pathName</i> <b class='cmd'>marquee corner</b> ?<i class='arg'>x y</i>?</a><dd>
+<dt><a name="114"><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.
@@ -2031,7 +2189,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="103"><i class='arg'>pathName</i> <b class='cmd'>marquee identify</b></a><dd>
+<dt><a name="115"><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
@@ -2045,7 +2203,7 @@ if there are any.
</dl>
-<dt><a name="104"><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="116"><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
@@ -2061,7 +2219,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="105"><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="117"><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.
@@ -2090,7 +2248,7 @@ for a window; otherwise it may be an arbitrary string. Like the regular
that window is destroyed.
<br><br>
-<dt><a name="106"><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="118"><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.
@@ -2115,7 +2273,7 @@ a binding script will not be evaluated when the corresponding event is
generated.
</dl>
-<dt><a name="107"><i class='arg'>pathName</i> <b class='cmd'>notify detailnames</b> <i class='arg'>eventName</i></a><dd>
+<dt><a name="119"><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>
@@ -2123,14 +2281,14 @@ by means of the <b class='cmd'>notify install</b> widget command
or by the treectrl widget itself.
<br><br>
-<dt><a name="108"><i class='arg'>pathName</i> <b class='cmd'>notify eventnames</b></a><dd>
+<dt><a name="120"><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="109"><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="121"><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>
@@ -2156,7 +2314,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="110"><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="122"><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,
@@ -2191,19 +2349,19 @@ by itself.
or an error if the event is not dynamic.
<br><br>
-<dt><a name="111"><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="123"><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="112"><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="124"><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="113"><i class='arg'>pathName</i> <b class='cmd'>notify linkage</b> <i class='arg'>pattern</i></a><dd>
+<dt><a name="125"><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
@@ -2211,21 +2369,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="114"><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="126"><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="115"><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="127"><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="116"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall</b> <i class='arg'>pattern</i></a><dd>
+<dt><a name="128"><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.
@@ -2233,29 +2391,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="117"><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="129"><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="118"><i class='arg'>pathName</i> <b class='cmd'>notify uninstall event</b> <i class='arg'>eventName</i></a><dd>
+<dt><a name="130"><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="119"><i class='arg'>pathName</i> <b class='cmd'>numcolumns</b></a><dd>
+<dt><a name="131"><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="120"><i class='arg'>pathName</i> <b class='cmd'>numitems</b></a><dd>
+<dt><a name="132"><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="121"><i class='arg'>pathName</i> <b class='cmd'>orphans</b></a><dd>
+<dt><a name="133"><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.
@@ -2264,19 +2422,19 @@ 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="122"><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="134"><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="123"><i class='arg'>pathName</i> <b class='cmd'>scan</b> <i class='arg'>option</i> <i class='arg'>args</i></a><dd>
+<dt><a name="135"><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="124"><i class='arg'>pathName</i> <b class='cmd'>scan mark</b> <i class='arg'>x</i> <i class='arg'>y</i></a><dd>
+<dt><a name="136"><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
@@ -2284,7 +2442,7 @@ mouse button press in the widget and <i class='arg'>x</i> and <i class='arg'>y</
mouse. It returns an empty string.
<br><br>
-<dt><a name="125"><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>
+<dt><a name="137"><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
@@ -2295,7 +2453,7 @@ 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="126"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> <i class='arg'>args</i></a><dd>
+<dt><a name="138"><i class='arg'>pathName</i> <b class='cmd'>state</b> <i class='arg'>option</i> <i class='arg'>args</i></a><dd>
This command is used to manipulate the list of user-defined states,
see section <a href="#states">STATES</a> below.
@@ -2305,13 +2463,13 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="127"><i class='arg'>pathName</i> <b class='cmd'>state define</b> <i class='arg'>stateName</i></a><dd>
+<dt><a name="139"><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="128"><i class='arg'>pathName</i> <b class='cmd'>state linkage</b> <i class='arg'>stateName</i></a><dd>
+<dt><a name="140"><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
@@ -2319,18 +2477,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="129"><i class='arg'>pathName</i> <b class='cmd'>state names</b></a><dd>
+<dt><a name="141"><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="130"><i class='arg'>pathName</i> <b class='cmd'>state undefine</b> ?<i class='arg'>stateName ...</i>?</a><dd>
+<dt><a name="142"><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="131"><i class='arg'>pathName</i> <b class='cmd'>see</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="143"><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.
@@ -2340,27 +2498,29 @@ and the corresponding <strong>&lt;Scroll-x&gt;</strong> and/or <strong>&lt;Scrol
events are generated.
<br><br>
-<dt><a name="132"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>args</i></a><dd>
+<dt><a name="144"><i class='arg'>pathName</i> <b class='cmd'>selection</b> <i class='arg'>option</i> <i class='arg'>args</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="133"><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="145"><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>.
-Adds every unselected item in the range between
+must be valid <a href="#item_description">item descriptions</a>. If both
+<i class='arg'>first</i> and <i class='arg'>last</i> are specified, then they may refer to a single
+item only; in this case
+the command adds every unselected item in the range between
<i class='arg'>first</i> and <i class='arg'>last</i>, inclusive, to the selection
-without affecting the selection state of items outside that range.
-If one of the arguments is the string <strong>all</strong>,
-every unselected item in the treectrl widget is added to the selection.
+without affecting the selected state of items outside that range.
+If only <i class='arg'>first</i> is specified, then
+every unselected item specified by <i class='arg'>first</i> is added to the selection.
A <strong>&lt;Selection&gt;</strong> event is generated if any items were added to the
selection.
<br><br>
-<dt><a name="134"><i class='arg'>pathName</i> <b class='cmd'>selection anchor</b> ?<i class='arg'>itemDesc</i>?</a><dd>
+<dt><a name="146"><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.
@@ -2368,30 +2528,32 @@ The selection anchor is the end of the selection that is fixed
while dragging out a selection with the mouse.
The item description <strong>anchor</strong> may be used to refer to the anchor item.
This command doesn't modify the selection state of any item.
-Returns the numerical id of the selection anchor item.
+Returns the unique id of the selection anchor item.
<br><br>
-<dt><a name="135"><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="147"><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>.
-If any of the items between <i class='arg'>first</i> and <i class='arg'>last</i>
-(inclusive) are selected, they are deselected.
-The selection state is not changed for items outside this range.
-If no additional arguments are given,
-or if one of the arguments is the string <strong>all</strong>,
-then all items are removed from the selection.
+must be valid <a href="#item_description">item descriptions</a>. If both
+<i class='arg'>first</i> and <i class='arg'>last</i> are specified, then they may refer to a single
+item only; in this case any selected items between <i class='arg'>first</i> and <i class='arg'>last</i>
+(inclusive) are removed from the selection without affecting
+the selected state of items outside that range.
+If only <i class='arg'>first</i> is specified, then
+every selected item specified by <i class='arg'>first</i> is removed from the selection.
+If neither <i class='arg'>first</i> nor <i class='arg'>last</i> are specified,
+then all selected items are removed from the selection.
A <strong>&lt;Selection&gt;</strong> event is generated if any items were removed from the
selection.
<br><br>
-<dt><a name="136"><i class='arg'>pathName</i> <b class='cmd'>selection count</b></a><dd>
+<dt><a name="148"><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="137"><i class='arg'>pathName</i> <b class='cmd'>selection get</b></a><dd>
+<dt><a name="149"><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.
@@ -2399,23 +2561,23 @@ If there are no items selected in the treectrl then an empty
string is returned.
<br><br>
-<dt><a name="138"><i class='arg'>pathName</i> <b class='cmd'>selection includes</b> <i class='arg'>itemDesc</i></a><dd>
+<dt><a name="150"><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="139"><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="151"><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>.
+Both arguments <i class='arg'>select</i> and <i class='arg'>deselect</i> are
+a possibly-empty list of <a href="#item_description">item descriptions</a>.
Any unselected items in <i class='arg'>select</i> are added to the selection,
and any selected items in <i class='arg'>deselect</i> are removed from the selection (except
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="140"><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="152"><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.
@@ -2425,7 +2587,7 @@ The following forms of the command are supported:
<br><br>
<dl>
-<dt><a name="141"><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="153"><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>.
@@ -2433,7 +2595,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="142"><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="154"><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>
@@ -2462,7 +2624,7 @@ Must be either <strong>horizontal</strong> (the default)
or <strong>vertical</strong> or an abbreviation of one of these.
</dl>
-<dt><a name="143"><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="155"><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>
@@ -2473,7 +2635,7 @@ configuration.
Returns the name of the new style.
<br><br>
-<dt><a name="144"><i class='arg'>pathName</i> <b class='cmd'>style delete</b> ?<i class='arg'>style ...</i>?</a><dd>
+<dt><a name="156"><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
@@ -2481,7 +2643,7 @@ one or more items,
it is also removed from the style list of these items.
<br><br>
-<dt><a name="145"><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="157"><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
@@ -2496,7 +2658,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="146"><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="158"><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>
@@ -2617,51 +2779,17 @@ around a piece of text.
</dl>
-<dt><a name="147"><i class='arg'>pathName</i> <b class='cmd'>style names</b></a><dd>
+<dt><a name="159"><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="148"><i class='arg'>pathName</i> <b class='cmd'>tag</b> <i class='arg'>option</i> <i class='arg'>args</i></a><dd>
-
-This command is used to manipulate <a href="#item_tags">item tags</a>.
-The following forms of the command are supported:
-
-<br><br>
-<dl>
-<dt><a name="149"><i class='arg'>pathName</i> <b class='cmd'>tag add</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a><dd>
-
-Adds each tag in <i class='arg'>tagList</i> to the item(s) described by <i class='arg'>itemDesc</i>.
-Duplicate tags are never added to an item.
-
-<br><br>
-<dt><a name="150"><i class='arg'>pathName</i> <b class='cmd'>tag expr</b> <i class='arg'>itemDesc</i> <i class='arg'>tagExpr</i></a><dd>
-
-Returns a boolean indicating if the item(s) described by <i class='arg'>itemDesc</i>
-meet the tag expression <i class='arg'>tagExpr</i>. This command can be used to test
-whether an item has (or doesn't have) a certain tag.
-
-<br><br>
-<dt><a name="151"><i class='arg'>pathName</i> <b class='cmd'>tag names</b> <i class='arg'>itemDesc</i></a><dd>
-
-Returns a list of tag names that any of the items described by <i class='arg'>itemDesc</i>
-have.
-
-<br><br>
-<dt><a name="152"><i class='arg'>pathName</i> <b class='cmd'>tag remove</b> <i class='arg'>itemDesc</i> <i class='arg'>tagList</i></a><dd>
-
-Removes each tag in <i class='arg'>tagList</i> from the item(s) described by <i class='arg'>itemDesc</i>.
-If an item doesn't have one of the tags, then nothing bad happens.
-</dl>
-
-
-<dt><a name="153"><i class='arg'>pathName</i> <b class='cmd'>toggle</b> ?<strong>-recurse</strong>? ?<i class='arg'>itemDesc ...</i>?</a><dd>
+<dt><a name="160"><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="154"><i class='arg'>pathName</i> <b class='cmd'>xview</b> ?<i class='arg'>args</i>?</a><dd>
+<dt><a name="161"><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.
@@ -2669,7 +2797,7 @@ It can take any of the following forms:
<br><br>
<dl>
-<dt><a name="155"><i class='arg'>pathName</i> <b class='cmd'>xview</b></a><dd>
+<dt><a name="162"><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
@@ -2682,7 +2810,7 @@ These are the same values passed to scrollbars via the <strong>-xscrollcommand</
option.
<br><br>
-<dt><a name="156"><i class='arg'>pathName</i> <b class='cmd'>xview moveto</b> <i class='arg'>fraction</i></a><dd>
+<dt><a name="163"><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.
@@ -2690,7 +2818,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="157"><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="164"><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>.
@@ -2708,7 +2836,7 @@ becomes visible.
A <strong>&lt;Scroll-x&gt;</strong> event is generated.
</dl>
-<dt><a name="158"><i class='arg'>pathName</i> <b class='cmd'>yview</b> ?<i class='arg'>args</i>?</a><dd>
+<dt><a name="165"><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.
@@ -2716,7 +2844,7 @@ It can take any of the following forms:
<br><br>
<dl>
-<dt><a name="159"><i class='arg'>pathName</i> <b class='cmd'>yview</b></a><dd>
+<dt><a name="166"><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
@@ -2727,7 +2855,7 @@ These are the same values passed to scrollbars via the <strong>-yscrollcommand</
option.
<br><br>
-<dt><a name="160"><i class='arg'>pathName</i> <b class='cmd'>yview moveto</b> <i class='arg'>fraction</i></a><dd>
+<dt><a name="167"><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.
@@ -2735,7 +2863,7 @@ area is off-screen to the top.
A <strong>&lt;Scroll-y&gt;</strong> event is generated.
<br><br>
-<dt><a name="161"><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="168"><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>.
@@ -2888,6 +3016,12 @@ This option determines how the items (and the title) line up with each other.
Must be one of <strong>left</strong> (the default), <strong>center</strong>, or <strong>right</strong>.
<br><br>
+<dt><strong><strong>-lock</strong></strong> <i class='arg'>lock</i><dd>
+This option allows a column to stick to the left or right edge of the window.
+A locked column scrolls vertically but not horizontally.
+Must be one of <strong>none</strong> (the default), <strong>left</strong>, or <strong>right</strong>.
+
+<br><br>
<dt><strong><strong>-maxwidth</strong></strong> <i class='arg'>size</i><dd>
Specifies the maximum size, in screen units, that will be permitted for this column.
If <i class='arg'>size</i> is an empty string, then there is no limit on the maximum size of the column.
@@ -2924,9 +3058,9 @@ The pressed state is used when the mouse button is pressed in the header.
Deprecated. Use the treectrl's <strong>-itemwidthmultiple</strong> option instead.
<br><br>
-<dt><strong><strong>-tag</strong></strong> <i class='arg'>tag</i><dd>
-Defines a unique name for the column which can be used
-whenever a column must be specified.
+<dt><strong><strong>-tags</strong></strong> <i class='arg'>tagList</i><dd>
+<i class='arg'>TagList</i> is a list of tag names that can be used to identify the column.
+See also the <b class='cmd'>column tag</b> command.
<br><br>
<dt><strong><strong>-text</strong></strong> <i class='arg'>text</i><dd>
@@ -2998,36 +3132,57 @@ the return value of a prior call of the <b class='cmd'>column create</b> widget
See also the <strong>-columnprefix</strong> option.
<br><br>
-<dt><i class='arg'>tag</i><dd>
-Specifies the value of a column's -tag option.
+<dt><i class='arg'>tagExpr</i> <i class='arg'>QUALIFIERS</i><dd>
+<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a>) against which
+every column's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single column is
+matched. You may run into trouble if <i class='arg'>tagExpr</i> looks like a column id
+or other keyword; also, <i class='arg'>tagExpr</i> must look like a single list element
+since column descriptions are properly-formed lists. To be safe you may want to
+use the <strong>tag</strong> keyword.
<br><br>
-<dt><strong>all</strong><dd>
-Indicates every column, including the tail column. Not all commands accept this.
+<dt><strong>all</strong> <i class='arg'>QUALIFIERS</i><dd>
+Indicates every column, including the tail column, which match <i class='arg'>QUALIFIERS</i>.
<br><br>
-<dt><strong>first</strong> ?<strong>visible</strong>?<dd>
-Indicates the leftmost column of the treectrl.
-If <strong>visible</strong> is specified, the leftmost column whose -visible option
-is true is used.
+<dt><strong>first</strong> <i class='arg'>QUALIFIERS</i><dd>
+Indicates the leftmost column of the treectrl which matches <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 rightmost column of the treectrl (but not the tail column).
-If <strong>visible</strong> is specified, the rightmost column whose -visible option
-is true is used.
+<dt><strong>end</strong> <i class='arg'>QUALIFIERS</i><dd>
+<dt><strong>last</strong> <i class='arg'>QUALIFIERS</i><dd>
+Indicates the rightmost column of the treectrl (but not the tail column)
+which matches <i class='arg'>QUALIFIERS</i>.
<br><br>
-<dt><strong>order</strong> <i class='arg'>n</i> ?<strong>visible</strong>?<dd>
+<dt><strong>list</strong> <i class='arg'>columnDescs</i><dd>
+<i class='arg'>ColumnDescs</i> is a list (a single argument, i.e. &quot;list {a b c}&quot; not &quot;list a b c&quot;)
+of other column descriptions.
+This keyword cannot be followed by any modifiers unless a single column is specified.
+
+<br><br>
+<dt><strong>order</strong> <i class='arg'>n</i> <i class='arg'>QUALIFIERS</i><dd>
Indicates the <i class='arg'>n</i>th column in the list of columns as returned by the
<b class='cmd'>column order</b> command.
<br><br>
+<dt><strong>range</strong> <i class='arg'>first last</i> <i class='arg'>QUALIFIERS</i><dd>
+<i class='arg'>First</i> and <i class='arg'>last</i> specify a range of columns.
+This keyword cannot be followed by any modifiers unless a single column is specified.
+
+<br><br>
<dt><strong>tail</strong><dd>
Indicates the ever-present tail column of the treectrl.
<br><br>
+<dt><strong>tag</strong> <i class='arg'>tagExpr</i> <i class='arg'>QUALIFIERS</i><dd>
+<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a>) against which
+every column's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single column is
+matched.
+
+<br><br>
<dt><strong>tree</strong><dd>
Indicates the column specified by the -treecolumn option of the treectrl.
</dl>
@@ -3041,17 +3196,40 @@ It may be specified in any of the following forms:
<dl>
-<dt><strong>next</strong> ?<strong>visible</strong>?<dd>
-Use the column to the right, or the column to the right whose -visible option
-is true.
+<dt><strong>next</strong> <i class='arg'>QUALIFIERS</i><dd>
+Use the column to the right matching <i class='arg'>QUALIFIERS</i>.
<br><br>
-<dt><strong>prev</strong> ?<strong>visible</strong>?<dd>
-Use the column to the left, or the column to the left whose -visible option
-is true.
+<dt><strong>prev</strong> <i class='arg'>QUALIFIERS</i><dd>
+Use the column to the left matching <i class='arg'>QUALIFIERS</i>.
</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 column state names.
+Only columns that have the given states set (or unset if the '!' prefix is used)
+are considered.
+
+<br><br>
+<dt><strong>tag</strong> <i class='arg'>tagExpr</i><dd>
+<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a>) against which
+every column's tags are tested for a match.
+
+<br><br>
+<dt><strong>visible</strong><dd>
+When this qualifier is given, only columns whose <strong>-visible</strong> option is
+TRUE are considered.
+
+<br><br>
+<dt><strong>!visible</strong><dd>
+When this qualifier is given, only columns whose <strong>-visible</strong> option is
+FALSE are considered.
+</dl>
+
<h2><a name="states">STATES</a></h2>
<p>
For every item a set of boolean states is managed. These states play an
@@ -3491,6 +3669,16 @@ or <strong>0</strong> to specify the ever-present root item. See also the
<strong>-itemprefix</strong> option.
<br><br>
+<dt><i class='arg'>tagExpr</i><dd>
+<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a>) against which
+every item's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single item is
+matched. You may run into trouble if <i class='arg'>tagExpr</i> looks like an item id
+or other keyword; also, <i class='arg'>tagExpr</i> must look like a single list element
+since item descriptions are properly-formed lists. To be safe you may want to
+use the <strong>tag</strong> keyword.
+
+<br><br>
<dt><strong>active</strong><dd>
Indicates the item that is currently active, i.e. normally
the item specified as argument of the last successful <b class='cmd'>activate</b>
@@ -3548,7 +3736,7 @@ Indicates the root item of the treectrl.
<br><br>
<dt><strong>tag</strong> <i class='arg'>tagExpr</i> <i class='arg'>QUALIFIERS</i><dd>
-<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_tags">ITEM TAGS</a>) against which
+<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a>) against which
every item's tags are tested for a match.
This keyword cannot be followed by any modifiers unless a single item is
matched.
@@ -3663,7 +3851,7 @@ are considered.
<br><br>
<dt><strong>tag</strong> <i class='arg'>tagExpr</i><dd>
-<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_tags">ITEM TAGS</a>) against which
+<i class='arg'>TagExpr</i> is a tag expression (see <a href="#item_and_column_tags">ITEM AND COLUMN TAGS</a>) against which
every item's tags are tested for a match.
<br><br>
diff --git a/doc/treectrl.man b/doc/treectrl.man
index 5aa6568..d169927 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.37 2006/09/27 02:05:13 treectrl Exp $}
+ $Id: treectrl.man,v 1.38 2006/10/18 03:47:48 treectrl Exp $}
][manpage_begin treectrl n 2.1.1]
[moddesc {Tk Commands}]
[titledesc {Create and manipulate hierarchical multicolumn widgets}]
@@ -231,6 +231,18 @@ every item has the height requested by the arrangement of elements
in each column. This option has no effect if the -itemheight option is specified.
Items are never shorter than the maximum height of a button.
+[tkoption_def -rowproxy rowProxy RowProxy]
+If this option specifies a non empty value,
+it should be a screen distance
+in any of the forms acceptable to [fun Tk_GetPixels].
+Then a 1 pixel thick horizontal line will be drawn
+at the specified screen distance from the top edge of the treectrl widget,
+which reaches from left to right of the treectrl widget
+and uses an inverting color
+(i.e black on lighter background, white on darker background).
+This line can be used to give the user a visual feedback
+during row resizing.
+
[tkoption_def -scrollmargin scrollMargin ScrollMargin]
The interpretation of this option is left to Tcl scripts
that implement scrolling:
@@ -356,17 +368,19 @@ this option is less than or equal to zero, then vertical scrolling
is unconstrained.
[list_end]
-[section {ITEM TAGS}]
-An item may have any number of tags associated with it. A tag is just a string
-of characters, and it may take any form, including that of an integer,
-although the characters '(', ')', '&', '|', '^' and '!' should be avoided.
+[section {ITEM AND COLUMN TAGS}]
+Columns and items may have any number of tags associated with them.
+A tag is just a string of characters, and it may take any form,
+including that of an integer, although the characters '(', ')', '&', '|', '^'
+and '!' should be avoided.
[para]
-The same tag may be associated with many items. This is commonly done to group
+The same tag may be associated with many columns or items. This is commonly done to group
items in various interesting ways; for example, in a file browser all directories
might be given the tag "directory".
[para]
-Tag expressions are used in [sectref {ITEM DESCRIPTION} {item descriptions}] to specify which items to
-operate on.
+Tag expressions are used in [sectref {COLUMN DESCRIPTION} {column descriptions}]
+and [sectref {ITEM DESCRIPTION} {item descriptions}] to specify which columns
+and items to operate on.
A tag expression can be a single tag name or a logical expression of tags
using operators '&&', '||', '^' and '!', and parenthesized subexpressions.
For example:
@@ -495,8 +509,9 @@ of the new column.
[call [arg pathName] [cmd {column delete}] [arg first] [opt [arg last]]]
Deletes the specified column(s). [arg First] and [arg last] must be valid
-[sectref {COLUMN DESCRIPTION} {column descriptions}]. If either [arg first]
-or [arg last] is specified as [const all], then all columns are deleted.
+[sectref {COLUMN DESCRIPTION} {column descriptions}]. If [arg first]
+is specified as [const all], then all columns are deleted. If both [arg first]
+and [arg last] are specified, then they may refer to a single column only.
The [const tail] column cannot be deleted and it is an error to specify it.
The order of [arg first] and [arg last] doesn't matter, and [arg first] may
be equal to [arg last].
@@ -540,8 +555,11 @@ starting position.
[arg Color] is the color of the 2-pixel-thick line.
[opt_def [option -indicatorcolumn] [arg column]]
-The 2-pixel-thick line will be drawn over the left edge of [arg column].
+The 2-pixel-thick line will be drawn over the left or right edge of [arg column].
+[opt_def [option -indicatorside] [arg side]]
+Specifies whether the 2-pixel-thick line will be drawn over the [const left]
+or [const right] edge of the column specified by [option -indicatorcolumn].
[list_end]
[call [arg pathName] [cmd {column index}] [arg columnDesc]]
@@ -549,9 +567,8 @@ Deprecated. Use [cmd {column id}] instead.
[call [arg pathName] [cmd {column id}] [arg columnDesc]]
This command resolves the [sectref {COLUMN DESCRIPTION} {column description}]
-[arg columnDesc] into a unique column identifier.
-If the column described by [arg columnDesc] doesn't exist, this command returns
-an empty string.
+[arg columnDesc] into a list of unique column identifiers. If the column(s) described by
+[arg columnDesc] don't exist, this command returns an empty list.
[call [arg pathName] [cmd {column list}] [opt [arg -visible]]]
This command returns a list of identifiers for every column (except the tail)
@@ -581,6 +598,43 @@ If [arg -visible] is given, only columns whose -visible
option is true are considered, and -1 is returned if [arg columnDesc]'s -visible
option is false.
+
+
+[call [arg pathName] [cmd {column tag}] [arg option] [opt [arg {arg arg ...}]]]
+This command is used to manipulate tags on columns.
+The exact behavior of the command depends on the [arg option] argument
+that follows the [cmd {column tag}] argument.
+The following forms of the command are supported:
+
+[list_begin definitions]
+[call [arg pathName] [cmd {column tag add}] [arg columnDesc] [arg tagList]]
+Adds each tag in [arg tagList] to the columns specified by the
+[sectref {COLUMN DESCRIPTION} {column description}] [arg columnDesc].
+Duplicate tags are ignored. The list of tags for a column can also be
+changed via a column's [option -tags] option.
+
+[call [arg pathName] [cmd {column tag expr}] [arg columnDesc] [arg tagExpr]]
+Evaluates the tag expression [arg tagExpr] against every column
+specified by the [sectref {COLUMN DESCRIPTION} {column description}]
+[arg columnDesc]. The result is 1 if the tag expression evaluates to true
+for every column, 0 otherwise.
+
+[call [arg pathName] [cmd {column tag names}] [arg columnDesc]]
+Returns a list of tag names assigned to the columns
+specified by the [sectref {COLUMN DESCRIPTION} {column description}]
+[arg columnDesc]. The result is the union of any tags assigned to the
+columns.
+
+[call [arg pathName] [cmd {column tag remove}] [arg columnDesc] [arg tagList]]
+Removes each tag in [arg tagList] from the columns specified by the
+[sectref {COLUMN DESCRIPTION} {column description}] [arg columnDesc].
+It is not an error if any of the columns do not use any of the tags.
+The list of tags for a column can also be changed via a column's
+[option -tags] option.
+[list_end]
+
+
+
[call [arg pathName] [cmd {column width}] [arg columnDesc]]
This command returns a decimal string giving the width in pixels
of the column specified by the [sectref {COLUMN DESCRIPTION} {column description}]
@@ -609,9 +663,10 @@ command.
[call [arg pathName] [cmd contentbox]]
Returns a list with four elements giving the bounding box
-for the space used to display the items,
-i.e. the space of the treectrl window without
-the surrounding borders or the column headers.
+of the screen area used to display items.
+This is the area of the window not including borders, column headers, or
+locked columns. An empty string is returned if the display area has
+no height or width, which can happen if the window is too small.
[call [arg pathName] [cmd debug] [arg option] [opt [arg {arg arg ...}]]]
This command is used to facilitate debugging of the treectrl widget.
@@ -620,13 +675,16 @@ that follows the [cmd debug] argument.
The following forms of the command are supported:
[list_begin definitions]
-[call [arg pathName] [cmd {debug cget}] [arg element] [arg option]]
+[call [arg pathName] [cmd {debug alloc}]]
+Returns a string giving partial statistics on memory allocations.
+
+[call [arg pathName] [cmd {debug cget}] [arg option]]
This command returns the current value of the debugging option
named [arg option].
[arg Option] may have any of the values accepted by the
[cmd {debug configure}] widget command.
-[call [arg pathName] [cmd {debug configure}] [arg element] \
+[call [arg pathName] [cmd {debug configure}] \
[opt [arg option]] [opt [arg value]] [opt [arg {option value ...}]]]
This command is similar to the [cmd configure] widget command except
that it modifies debugging options
@@ -665,15 +723,23 @@ If this option is switched on
(together with the debugging option [option -enable]),
at varios places additional debugging output is printed to stdout.
+[opt_def [option -drawcolor] [arg color]]
+When specified, areas of the window are painted with this color when drawing
+in those areas is about to occur.
+Setting this option has only an effect if the
+debugging options [option -enable] and [option -display] are switched on.
+
[opt_def [option -enable] [arg boolean]]
All other debugging options only take effect,
if this option is also switched on.
[opt_def [option -erasecolor] [arg color]]
-Use this color, when parts of the treectrl widget should be deleted.
+When specified, areas of the window which have been marked as "invalid"
+(for example, when part of the window is exposed) are
+painted with this color.
If you use an unusual color for this option (like [const pink]),
superflous screen redraws can be spotted more easily.
-Setting this option has only an effect, if the
+Setting this option has only an effect if the
debugging options [option -enable] and [option -display] are switched on.
[list_end]
@@ -683,6 +749,10 @@ a line with some internal values info about all items
is printed to stdout.
The command returns the empty string.
+[call [arg pathName] [cmd {debug expose}] [arg x1] [arg y1] [arg x2] [arg y2]]
+Causes the area of the window bounded by the given window-coords to be
+marked as invalid. This simulates uncovering part of the window.
+
[call [arg pathName] [cmd {debug scroll}]]
Returns a string useful for debugging vertical scrolling.
[list_end]
@@ -942,9 +1012,12 @@ options for the item given by [arg itemDesc] (see [fun Tk_ConfigureInfo] for
information on the format of this list). If [arg option] is specified with no
value, then the command returns a list describing the one named option (this
list will be identical to the corresponding sublist of the value returned if
-no [arg option] is specified). If one or more [arg option]-[arg value] pairs
+no [arg option] is specified).
+[nl]
+If one or more [arg option]-[arg value] pairs
are specified, then the command modifies the given item option(s) to have the
-given value(s); in this case the command returns an empty string.
+given value(s); in this case the command returns an empty string. This is the
+only case where [arg itemDesc] may refer to multiple items.
[nl]
The following options are supported by this command (see [cmd {item create}] for
the meaning of each option):
@@ -953,6 +1026,7 @@ the meaning of each option):
[opt_def [option -button] [arg boolean]]
[opt_def [option -height] [arg height]]
+[opt_def [option -tags] [arg tagList]]
[opt_def [option -visible] [arg boolean]]
[list_end]
@@ -1029,11 +1103,9 @@ and b) each ancestor's [option -visible] option is true
Deletes the specified item(s).
[arg First] and [arg last] must be valid
[sectref {ITEM DESCRIPTION} {item descriptions}].
-If either [arg first] or [arg last] is specified as [const all], then all items are
-deleted. If [arg first] is specified and [arg last] isn't
-specified, the item described by [arg first] is deleted.
+If [arg last] isn't specified, then [arg first] may specify multiple items.
If both [arg first] and [arg last] are specified,
-they must decribe items with a common ancestor;
+they must each decribe a single item with a common ancestor;
then the range of items between [arg first] and [arg last] is deleted.
The order of [arg first] and [arg last] doesn't matter.
[nl]
@@ -1082,10 +1154,8 @@ specified element (see [sectref ELEMENTS] below)
[call [arg pathName] [cmd {item element configure}] [arg itemDesc] \
[arg column] [arg element] [opt [arg option]] [opt [arg value]] \
[opt [arg {option value ...}]]]
-This command is similar to the [cmd configure] widget command except
-that it modifies options associated with
-[arg element] inside [arg column] of the item described by [arg itemDesc]
-instead of modifying options for the overall treectrl widget.
+This command modifies configuration options for an element in a column of
+an item.
If no [arg option] is specified, the command returns a list describing
all of the available options for the element (see [fun Tk_ConfigureInfo]
for information on the format of this list).
@@ -1093,10 +1163,12 @@ If [arg option] is specified with no [arg value], then the command returns
a list describing the one named option (this list will be identical to
the corresponding sublist of the value returned if no [arg option]
is specified).
+[nl]
If one or more [arg option]-[arg value] pairs are specified, then the command
modifies the given option(s) to have the given value(s) in the
-[arg element] inside [arg column] of the item described by [arg itemDesc];
-in this case the command returns an empty string.
+[arg element] inside [arg column] of the item(s) described by [arg itemDesc];
+in this case the command returns an empty string. This is the only case where
+[arg itemDesc] may refer to multiple items.
[nl]
It is possible to configure multiple elements in multiple columns with
a single call. To configure another element in the same column, append a
@@ -1109,6 +1181,8 @@ For example:
$C2 $E3 -fill Blue , \
$C3 $E1 -text "apples and oranges"
[example_end]
+Each of the [sectref {COLUMN DESCRIPTION} {column description}] arguments
+may refer to multiple columns.
[call [arg pathName] [cmd {item element perstate}] [arg itemDesc] [arg column] \
[arg element] [arg option] [opt [arg stateList]]]
@@ -1163,10 +1237,12 @@ If no [arg column] is specified, this command returns a list of values,
one per column.
If no [arg image] is specified, this command returns the value for [arg column].
-
+[nl]
If one or more [arg column]-[arg image] pairs is specified,
then the value of the -image option in each [arg column] is set to [arg image].
-
+In this case [arg itemDesc] may refer to multiple items and each [arg column]
+may refer to multiple columns.
+[nl]
Note that this command is provided as a convenience. Use the
[cmd "item element configure"] or [cmd "item element cget"] commands if you want
to set or retrieve the value of the -image option for a specific image element.
@@ -1303,8 +1379,11 @@ Convert to floating-point values and use floating comparison.
This command sets or retrieves the number of columns that a style covers.
If no [arg column] is specified, the return value is a list of spans, one per column.
If no [arg numColumns] is specified, the return value is the span for [arg column].
+[nl]
If one or more [arg column]-[arg numColumns] pairs is specified, the
-span for each [arg column] is set to [arg numColumns].
+span for each [arg column] is set to [arg numColumns]. In this case [arg itemDesc]
+may refer to multiple items and each [arg column] may refer to multiple
+columns.
[call [arg pathName] [cmd {item state}] [arg command] [arg itemDesc] \
[opt [arg {arg ...}]]]
@@ -1321,6 +1400,9 @@ Just like [cmd {item state set}] but manipulates dynamic states for a single
item column, not the item as a whole. If [arg stateDescList] is unspecified,
this command returns a list containing the names of all the dynamic states
which are switched on in [arg column].
+[nl]
+If [arg stateDescList] is specified, then [arg itemDesc] may refer to multiple
+items and [arg column] may refer to multiple columns.
[call [arg pathName] [cmd {item state get}] [arg itemDesc] \
[opt [arg {stateName}]]]
@@ -1341,9 +1423,9 @@ item described by [arg itemDesc],
every state with a leading [const ~] will be toggled, and
every state without leading [const !] or [const ~] will be switched on.
If [arg lastItem] is specified, the state changes will be made for all items
-in the range betwen [arg itemDesc] and [arg lastItem].
-If [arg ItemDesc] is the string [const all],
-then the state changes are made for all items of the treectrl widget.
+in the range between [arg itemDesc] and [arg lastItem].
+If [arg lastItem] unspecified,
+then the state changes are made for all items described by [arg itemDesc].
[list_end]
@@ -1372,6 +1454,8 @@ to elements in the new style specified by [arg style].
[arg elementOld] is an element in the current style, and [arg elementNew] is
an element in the style specified by [arg style]. Both [arg elementOld] and
[arg elementNew] must be of the same type ([const bitmap], [const text] etc).
+[arg ItemDesc] may refer to multiple items and [arg column] may refer to
+multiple columns.
[call [arg pathName] [cmd {item style set}] [arg itemDesc] [opt [arg column]] \
[opt [arg style]] [opt [arg {column style ...}]]]
@@ -1383,11 +1467,48 @@ styles set for all columns of the item described by [arg itemDesc].
If no [arg style] is specified, this command
returns the name of the style set for the item described by
[arg itemDesc] in [arg column].
-
+[nl]
If one or more [arg column]-[arg style] pairs is specified,
-then the style in each [arg column] is set to [arg style].
+then the style in each [arg column] is set to [arg style]. In this case
+[arg itemDesc] may refer to multiple items and each [arg column] may refer to
+multiple columns.
[list_end]
+
+[call [arg pathName] [cmd {item tag}] [arg option] [opt [arg {arg arg ...}]]]
+This command is used to manipulate tags on items.
+The exact behavior of the command depends on the [arg option] argument
+that follows the [cmd {item tag}] argument.
+The following forms of the command are supported:
+
+[list_begin definitions]
+[call [arg pathName] [cmd {item tag add}] [arg itemDesc] [arg tagList]]
+Adds each tag in [arg tagList] to the items specified by the
+[sectref {ITEM DESCRIPTION} {item description}] [arg itemDesc].
+Duplicate tags are ignored. The list of tags for an item can also be
+changed via an item's [option -tags] option.
+
+[call [arg pathName] [cmd {item tag expr}] [arg itemDesc] [arg tagExpr]]
+Evaluates the tag expression [arg tagExpr] against every item
+specified by the [sectref {ITEM DESCRIPTION} {item description}]
+[arg itemDesc]. The result is 1 if the tag expression evaluates to true
+for every item, 0 otherwise.
+
+[call [arg pathName] [cmd {item tag names}] [arg itemDesc]]
+Returns a list of tag names assigned to the items
+specified by the [sectref {ITEM DESCRIPTION} {item description}]
+[arg itemDesc]. The result is the union of any tags assigned to the
+items.
+
+[call [arg pathName] [cmd {item tag remove}] [arg itemDesc] [arg tagList]]
+Removes each tag in [arg tagList] from the items specified by the
+[sectref {ITEM DESCRIPTION} {item description}] [arg itemDesc].
+It is not an error if any of the items do not use any of the tags.
+The list of tags for an item can also be changed via an item's
+[option -tags] option.
+[list_end]
+
+
[call [arg pathName] [cmd {item text}] [arg itemDesc] [opt [arg column]] \
[opt [arg text]] [opt [arg {column text ...}]]]
This command sets or retrieves the value of the -text option for the first
@@ -1397,10 +1518,12 @@ If no [arg column] is specified, this command returns a list of values,
one per column.
If no [arg text] is specified, this command returns the value for [arg column].
-
+[nl]
If one or more [arg column]-[arg text] pairs is specified,
then the value of the -text option in each [arg column] is set to [arg text].
-
+In this case [arg itemDesc] may refer to multiple items and each [arg column]
+may refer to multiple columns.
+[nl]
Note that this command is provided as a convenience. Use the
[cmd "item element configure"] or [cmd "item element cget"] commands if you
want to set or retrieve the value of the -text option for a specific text element.
@@ -1753,12 +1876,14 @@ It has several forms, depending on [arg option]:
[list_begin definitions]
[call [arg pathName] [cmd {selection add}] [arg first] [opt [arg last]]]
[arg First] and [arg last] (if specified)
-must be the string [const all] or a valid [sectref {ITEM DESCRIPTION} {item description}].
-Adds every unselected item in the range between
+must be valid [sectref {ITEM DESCRIPTION} {item descriptions}]. If both
+[arg first] and [arg last] are specified, then they may refer to a single
+item only; in this case
+the command adds every unselected item in the range between
[arg first] and [arg last], inclusive, to the selection
-without affecting the selection state of items outside that range.
-If one of the arguments is the string [const all],
-every unselected item in the treectrl widget is added to the selection.
+without affecting the selected state of items outside that range.
+If only [arg first] is specified, then
+every unselected item specified by [arg first] is added to the selection.
A [const <Selection>] event is generated if any items were added to the
selection.
@@ -1769,18 +1894,19 @@ The selection anchor is the end of the selection that is fixed
while dragging out a selection with the mouse.
The item description [const anchor] may be used to refer to the anchor item.
This command doesn't modify the selection state of any item.
-Returns the numerical id of the selection anchor item.
+Returns the unique id of the selection anchor item.
-[call [arg pathName] [cmd {selection clear}] \
- [opt [arg first]] [opt [arg last]]]
+[call [arg pathName] [cmd {selection clear}] [opt [arg first]] [opt [arg last]]]
[arg First] and [arg last] (if specified)
-must be the string [const all] or a valid [sectref {ITEM DESCRIPTION} {item description}].
-If any of the items between [arg first] and [arg last]
-(inclusive) are selected, they are deselected.
-The selection state is not changed for items outside this range.
-If no additional arguments are given,
-or if one of the arguments is the string [const all],
-then all items are removed from the selection.
+must be valid [sectref {ITEM DESCRIPTION} {item descriptions}]. If both
+[arg first] and [arg last] are specified, then they may refer to a single
+item only; in this case any selected items between [arg first] and [arg last]
+(inclusive) are removed from the selection without affecting
+the selected state of items outside that range.
+If only [arg first] is specified, then
+every selected item specified by [arg first] is removed from the selection.
+If neither [arg first] nor [arg last] are specified,
+then all selected items are removed from the selection.
A [const <Selection>] event is generated if any items were removed from the
selection.
@@ -1799,8 +1925,8 @@ Returns 1 if the item described by [arg itemDesc] is currently
selected, 0 if it isn't.
[call [arg pathName] [cmd {selection modify}] [arg select] [arg deselect]]
-Both arguments [arg select] and [arg deselect] must be
-the string [const all] or a possibly-empty list of [sectref {ITEM DESCRIPTION} {item descriptions}].
+Both arguments [arg select] and [arg deselect] are
+a possibly-empty list of [sectref {ITEM DESCRIPTION} {item descriptions}].
Any unselected items in [arg select] are added to the selection,
and any selected items in [arg deselect] are removed from the selection (except
for those items which are also in [arg select]).
@@ -1994,31 +2120,6 @@ around a piece of text.
Returns a list containing the names of all existing styles.
[list_end]
-
-[call [arg pathName] [cmd tag] [arg option] [arg args]]
-This command is used to manipulate [sectref {ITEM TAGS} "item tags"].
-The following forms of the command are supported:
-
-[list_begin definitions]
-[call [arg pathName] [cmd {tag add}] [arg itemDesc] [arg tagList]]
-Adds each tag in [arg tagList] to the item(s) described by [arg itemDesc].
-Duplicate tags are never added to an item.
-
-[call [arg pathName] [cmd {tag expr}] [arg itemDesc] [arg tagExpr]]
-Returns a boolean indicating if the item(s) described by [arg itemDesc]
-meet the tag expression [arg tagExpr]. This command can be used to test
-whether an item has (or doesn't have) a certain tag.
-
-[call [arg pathName] [cmd {tag names}] [arg itemDesc]]
-Returns a list of tag names that any of the items described by [arg itemDesc]
-have.
-
-[call [arg pathName] [cmd {tag remove}] [arg itemDesc] [arg tagList]]
-Removes each tag in [arg tagList] from the item(s) described by [arg itemDesc].
-If an item doesn't have one of the tags, then nothing bad happens.
-[list_end]
-
-
[call [arg pathName] [cmd toggle] [opt [option -recurse]] \
[opt [arg {itemDesc ...}]]]
Use [cmd {item toggle}] instead.
@@ -2217,6 +2318,11 @@ See also the [option -backgroundmode] widget option for more on this.
This option determines how the items (and the title) line up with each other.
Must be one of [const left] (the default), [const center], or [const right].
+[opt_def [option -lock] [arg lock]]
+This option allows a column to stick to the left or right edge of the window.
+A locked column scrolls vertically but not horizontally.
+Must be one of [const none] (the default), [const left], or [const right].
+
[opt_def [option -maxwidth] [arg size]]
Specifies the maximum size, in screen units, that will be permitted for this column.
If [arg size] is an empty string, then there is no limit on the maximum size of the column.
@@ -2247,9 +2353,9 @@ The pressed state is used when the mouse button is pressed in the header.
[opt_def [option -stepwidth] [arg size]]
Deprecated. Use the treectrl's [option -itemwidthmultiple] option instead.
-[opt_def [option -tag] [arg tag]]
-Defines a unique name for the column which can be used
-whenever a column must be specified.
+[opt_def [option -tags] [arg tagList]]
+[arg TagList] is a list of tag names that can be used to identify the column.
+See also the [cmd {column tag}] command.
[opt_def [option -text] [arg text]]
Specifies a text string to be displayed as the column title.
@@ -2311,30 +2417,48 @@ Specifies the unique column identifier, where [arg id] should be
the return value of a prior call of the [cmd {column create}] widget command.
See also the [option -columnprefix] option.
-[lst_item [arg tag]]
-Specifies the value of a column's -tag option.
+[lst_item "[arg tagExpr] [arg QUALIFIERS]"]
+[arg TagExpr] is a tag expression (see [sectref {ITEM AND COLUMN TAGS}]) against which
+every column's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single column is
+matched. You may run into trouble if [arg tagExpr] looks like a column id
+or other keyword; also, [arg tagExpr] must look like a single list element
+since column descriptions are properly-formed lists. To be safe you may want to
+use the [const tag] keyword.
+
+[lst_item "[const all] [arg QUALIFIERS]"]
+Indicates every column, including the tail column, which match [arg QUALIFIERS].
-[lst_item [const all]]
-Indicates every column, including the tail column. Not all commands accept this.
+[lst_item "[const first] [arg QUALIFIERS]"]
+Indicates the leftmost column of the treectrl which matches [arg QUALIFIERS].
-[lst_item "[const first] [opt [const visible]]"]
-Indicates the leftmost column of the treectrl.
-If [const visible] is specified, the leftmost column whose -visible option
-is true is used.
+[lst_item "[const end] [arg QUALIFIERS]"]
+[lst_item "[const last] [arg QUALIFIERS]"]
+Indicates the rightmost column of the treectrl (but not the tail column)
+which matches [arg QUALIFIERS].
-[lst_item "[const end] [opt [const visible]]"]
-[lst_item "[const last] [opt [const visible]]"]
-Indicates the rightmost column of the treectrl (but not the tail column).
-If [const visible] is specified, the rightmost column whose -visible option
-is true is used.
+[lst_item "[const list] [arg columnDescs]"]
+[arg ColumnDescs] is a list (a single argument, i.e. "list {a b c}" not "list a b c")
+of other column descriptions.
+This keyword cannot be followed by any modifiers unless a single column is specified.
-[lst_item "[const order] [arg n] [opt [const visible]]"]
+[lst_item "[const order] [arg n] [arg QUALIFIERS]"]
Indicates the [arg n]th column in the list of columns as returned by the
[cmd {column order}] command.
+[lst_item "[const range] [arg {first last}] [arg QUALIFIERS]"]
+[arg First] and [arg last] specify a range of columns.
+This keyword cannot be followed by any modifiers unless a single column is specified.
+
[lst_item [const tail]]
Indicates the ever-present tail column of the treectrl.
+[lst_item "[const tag] [arg tagExpr] [arg QUALIFIERS]"]
+[arg TagExpr] is a tag expression (see [sectref {ITEM AND COLUMN TAGS}]) against which
+every column's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single column is
+matched.
+
[lst_item [const tree]]
Indicates the column specified by the -treecolumn option of the treectrl.
[list_end]
@@ -2348,16 +2472,36 @@ It may be specified in any of the following forms:
[list_begin definitions]
-[lst_item "[const next] [opt [const visible]]"]
-Use the column to the right, or the column to the right whose -visible option
-is true.
+[lst_item "[const next] [arg QUALIFIERS]"]
+Use the column to the right matching [arg QUALIFIERS].
-[lst_item "[const prev] [opt [const visible]]"]
-Use the column to the left, or the column to the left whose -visible option
-is true.
+[lst_item "[const prev] [arg QUALIFIERS]"]
+Use the column to the left matching [arg QUALIFIERS].
[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 column state names.
+Only columns that have the given states set (or unset if the '!' prefix is used)
+are considered.
+
+[lst_item "[const tag] [arg tagExpr]"]
+[arg TagExpr] is a tag expression (see [sectref {ITEM AND COLUMN TAGS}]) against which
+every column's tags are tested for a match.
+
+[lst_item [const visible]]
+When this qualifier is given, only columns whose [option -visible] option is
+TRUE are considered.
+
+[lst_item [const !visible]]
+When this qualifier is given, only columns whose [option -visible] option is
+FALSE are considered.
+[list_end]
+
[section STATES]
For every item a set of boolean states is managed. These states play an
integral role in the appearance of each item.
@@ -2749,6 +2893,15 @@ the return value of a prior call of the [cmd {item create}] widget command,
or [const 0] to specify the ever-present root item. See also the
[option -itemprefix] option.
+[lst_item [arg tagExpr]]
+[arg TagExpr] is a tag expression (see [sectref {ITEM AND COLUMN TAGS}]) against which
+every item's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single item is
+matched. You may run into trouble if [arg tagExpr] looks like an item id
+or other keyword; also, [arg tagExpr] must look like a single list element
+since item descriptions are properly-formed lists. To be safe you may want to
+use the [const tag] keyword.
+
[lst_item [const active]]
Indicates the item that is currently active, i.e. normally
the item specified as argument of the last successful [cmd activate]
@@ -2796,7 +2949,7 @@ This keyword cannot be followed by any modifiers.
Indicates the root item of the treectrl.
[lst_item "[const tag] [arg tagExpr] [arg QUALIFIERS]"]
-[arg TagExpr] is a tag expression (see [sectref {ITEM TAGS}]) against which
+[arg TagExpr] is a tag expression (see [sectref {ITEM AND COLUMN TAGS}]) against which
every item's tags are tested for a match.
This keyword cannot be followed by any modifiers unless a single item is
matched.
@@ -2891,7 +3044,7 @@ Only items that have the given states set (or unset if the '!' prefix is used)
are considered.
[lst_item "[const tag] [arg tagExpr]"]
-[arg TagExpr] is a tag expression (see [sectref {ITEM TAGS}]) against which
+[arg TagExpr] is a tag expression (see [sectref {ITEM AND COLUMN TAGS}]) against which
every item's tags are tested for a match.
[lst_item [const visible]]
diff --git a/doc/treectrl.n b/doc/treectrl.n
index c6af95e..9b804d5 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.53 2006/09/27 02:05:13 treectrl Exp $
+'\" $Id: treectrl.n,v 1.54 2006/10/18 03:47:48 treectrl Exp $
.so man.macros
.TH "treectrl" n 2.1.1 treectrl "Tk Commands"
.BS
@@ -59,6 +59,16 @@ package require \fBtreectrl 2.1.1\fR
.sp
\fIpathName\fR \fBcolumn order\fR \fIcolumnDesc\fR ?\fI-visible\fR?
.sp
+\fIpathName\fR \fBcolumn tag\fR \fIoption\fR ?\fIarg arg ...\fR?
+.sp
+\fIpathName\fR \fBcolumn tag add\fR \fIcolumnDesc\fR \fItagList\fR
+.sp
+\fIpathName\fR \fBcolumn tag expr\fR \fIcolumnDesc\fR \fItagExpr\fR
+.sp
+\fIpathName\fR \fBcolumn tag names\fR \fIcolumnDesc\fR
+.sp
+\fIpathName\fR \fBcolumn tag remove\fR \fIcolumnDesc\fR \fItagList\fR
+.sp
\fIpathName\fR \fBcolumn width\fR \fIcolumnDesc\fR
.sp
\fIpathName\fR \fBcompare\fR \fIitemDesc1\fR \fIop\fR \fIitemDesc2\fR
@@ -69,12 +79,16 @@ package require \fBtreectrl 2.1.1\fR
.sp
\fIpathName\fR \fBdebug\fR \fIoption\fR ?\fIarg arg ...\fR?
.sp
-\fIpathName\fR \fBdebug cget\fR \fIelement\fR \fIoption\fR
+\fIpathName\fR \fBdebug alloc\fR
+.sp
+\fIpathName\fR \fBdebug cget\fR \fIoption\fR
.sp
-\fIpathName\fR \fBdebug configure\fR \fIelement\fR ?\fIoption\fR? ?\fIvalue\fR? ?\fIoption value ...\fR?
+\fIpathName\fR \fBdebug configure\fR ?\fIoption\fR? ?\fIvalue\fR? ?\fIoption value ...\fR?
.sp
\fIpathName\fR \fBdebug dinfo\fR
.sp
+\fIpathName\fR \fBdebug expose\fR \fIx1\fR \fIy1\fR \fIx2\fR \fIy2\fR
+.sp
\fIpathName\fR \fBdebug scroll\fR
.sp
\fIpathName\fR \fBdepth\fR ?\fIitemDesc\fR?
@@ -203,6 +217,16 @@ package require \fBtreectrl 2.1.1\fR
.sp
\fIpathName\fR \fBitem style set\fR \fIitemDesc\fR ?\fIcolumn\fR? ?\fIstyle\fR? ?\fIcolumn style ...\fR?
.sp
+\fIpathName\fR \fBitem tag\fR \fIoption\fR ?\fIarg arg ...\fR?
+.sp
+\fIpathName\fR \fBitem tag add\fR \fIitemDesc\fR \fItagList\fR
+.sp
+\fIpathName\fR \fBitem tag expr\fR \fIitemDesc\fR \fItagExpr\fR
+.sp
+\fIpathName\fR \fBitem tag names\fR \fIitemDesc\fR
+.sp
+\fIpathName\fR \fBitem tag remove\fR \fIitemDesc\fR \fItagList\fR
+.sp
\fIpathName\fR \fBitem text\fR \fIitemDesc\fR ?\fIcolumn\fR? ?\fItext\fR? ?\fIcolumn text ...\fR?
.sp
\fIpathName\fR \fBitem toggle\fR \fIitemDesc\fR ?\fB-recurse\fR?
@@ -309,16 +333,6 @@ package require \fBtreectrl 2.1.1\fR
.sp
\fIpathName\fR \fBstyle names\fR
.sp
-\fIpathName\fR \fBtag\fR \fIoption\fR \fIargs\fR
-.sp
-\fIpathName\fR \fBtag add\fR \fIitemDesc\fR \fItagList\fR
-.sp
-\fIpathName\fR \fBtag expr\fR \fIitemDesc\fR \fItagExpr\fR
-.sp
-\fIpathName\fR \fBtag names\fR \fIitemDesc\fR
-.sp
-\fIpathName\fR \fBtag remove\fR \fIitemDesc\fR \fItagList\fR
-.sp
\fIpathName\fR \fBtoggle\fR ?\fB-recurse\fR? ?\fIitemDesc ...\fR?
.sp
\fIpathName\fR \fBxview\fR ?\fIargs\fR?
@@ -727,6 +741,25 @@ Items are never shorter than the maximum height of a button.
.LP
.nf
.ta 6c
+Command-Line Switch: \fB-rowproxy\fR
+Database Name: \fBrowProxy\fR
+Database Class: \fBRowProxy\fR
+
+.fi
+.IP
+If this option specifies a non empty value,
+it should be a screen distance
+in any of the forms acceptable to \fBTk_GetPixels\fR.
+Then a 1 pixel thick horizontal line will be drawn
+at the specified screen distance from the top edge of the treectrl widget,
+which reaches from left to right of the treectrl widget
+and uses an inverting color
+(i.e black on lighter background, white on darker background).
+This line can be used to give the user a visual feedback
+during row resizing.
+.LP
+.nf
+.ta 6c
Command-Line Switch: \fB-scrollmargin\fR
Database Name: \fBscrollMargin\fR
Database Class: \fBScrollMargin\fR
@@ -956,17 +989,19 @@ multiple of \fB-yscrollincrement\fR; furthermore, the units for scrolling
are selected) will also be \fB-yscrollincrement\fR. If the value of
this option is less than or equal to zero, then vertical scrolling
is unconstrained.
-.SH "ITEM TAGS"
-An item may have any number of tags associated with it. A tag is just a string
-of characters, and it may take any form, including that of an integer,
-although the characters '(', ')', '&', '|', '^' and '!' should be avoided.
+.SH "ITEM AND COLUMN TAGS"
+Columns and items may have any number of tags associated with them.
+A tag is just a string of characters, and it may take any form,
+including that of an integer, although the characters '(', ')', '&', '|', '^'
+and '!' should be avoided.
.PP
-The same tag may be associated with many items. This is commonly done to group
+The same tag may be associated with many columns or items. This is commonly done to group
items in various interesting ways; for example, in a file browser all directories
might be given the tag "directory".
.PP
-Tag expressions are used in \fBitem descriptions\fR to specify which items to
-operate on.
+Tag expressions are used in \fBcolumn descriptions\fR
+and \fBitem descriptions\fR to specify which columns
+and items to operate on.
A tag expression can be a single tag name or a logical expression of tags
using operators '&&', '||', '^' and '!', and parenthesized subexpressions.
For example:
@@ -1090,8 +1125,9 @@ of the new column.
.TP
\fIpathName\fR \fBcolumn delete\fR \fIfirst\fR ?\fIlast\fR?
Deletes the specified column(s). \fIFirst\fR and \fIlast\fR must be valid
-\fBcolumn descriptions\fR. If either \fIfirst\fR
-or \fIlast\fR is specified as \fBall\fR, then all columns are deleted.
+\fBcolumn descriptions\fR. If \fIfirst\fR
+is specified as \fBall\fR, then all columns are deleted. If both \fIfirst\fR
+and \fIlast\fR are specified, then they may refer to a single column only.
The \fBtail\fR column cannot be deleted and it is an error to specify it.
The order of \fIfirst\fR and \fIlast\fR doesn't matter, and \fIfirst\fR may
be equal to \fIlast\fR.
@@ -1134,7 +1170,11 @@ starting position.
\fIColor\fR is the color of the 2-pixel-thick line.
.TP
\fB\fB-indicatorcolumn\fR\fR \fIcolumn\fR
-The 2-pixel-thick line will be drawn over the left edge of \fIcolumn\fR.
+The 2-pixel-thick line will be drawn over the left or right edge of \fIcolumn\fR.
+.TP
+\fB\fB-indicatorside\fR\fR \fIside\fR
+Specifies whether the 2-pixel-thick line will be drawn over the \fBleft\fR
+or \fBright\fR edge of the column specified by \fB-indicatorcolumn\fR.
.RE
.TP
\fIpathName\fR \fBcolumn index\fR \fIcolumnDesc\fR
@@ -1142,9 +1182,8 @@ Deprecated. Use \fBcolumn id\fR instead.
.TP
\fIpathName\fR \fBcolumn id\fR \fIcolumnDesc\fR
This command resolves the \fBcolumn description\fR
-\fIcolumnDesc\fR into a unique column identifier.
-If the column described by \fIcolumnDesc\fR doesn't exist, this command returns
-an empty string.
+\fIcolumnDesc\fR into a list of unique column identifiers. If the column(s) described by
+\fIcolumnDesc\fR don't exist, this command returns an empty list.
.TP
\fIpathName\fR \fBcolumn list\fR ?\fI-visible\fR?
This command returns a list of identifiers for every column (except the tail)
@@ -1174,6 +1213,39 @@ If \fI-visible\fR is given, only columns whose -visible
option is true are considered, and -1 is returned if \fIcolumnDesc\fR's -visible
option is false.
.TP
+\fIpathName\fR \fBcolumn tag\fR \fIoption\fR ?\fIarg arg ...\fR?
+This command is used to manipulate tags on columns.
+The exact behavior of the command depends on the \fIoption\fR argument
+that follows the \fBcolumn tag\fR argument.
+The following forms of the command are supported:
+.RS
+.TP
+\fIpathName\fR \fBcolumn tag add\fR \fIcolumnDesc\fR \fItagList\fR
+Adds each tag in \fItagList\fR to the columns specified by the
+\fBcolumn description\fR \fIcolumnDesc\fR.
+Duplicate tags are ignored. The list of tags for a column can also be
+changed via a column's \fB-tags\fR option.
+.TP
+\fIpathName\fR \fBcolumn tag expr\fR \fIcolumnDesc\fR \fItagExpr\fR
+Evaluates the tag expression \fItagExpr\fR against every column
+specified by the \fBcolumn description\fR
+\fIcolumnDesc\fR. The result is 1 if the tag expression evaluates to true
+for every column, 0 otherwise.
+.TP
+\fIpathName\fR \fBcolumn tag names\fR \fIcolumnDesc\fR
+Returns a list of tag names assigned to the columns
+specified by the \fBcolumn description\fR
+\fIcolumnDesc\fR. The result is the union of any tags assigned to the
+columns.
+.TP
+\fIpathName\fR \fBcolumn tag remove\fR \fIcolumnDesc\fR \fItagList\fR
+Removes each tag in \fItagList\fR from the columns specified by the
+\fBcolumn description\fR \fIcolumnDesc\fR.
+It is not an error if any of the columns do not use any of the tags.
+The list of tags for a column can also be changed via a column's
+\fB-tags\fR option.
+.RE
+.TP
\fIpathName\fR \fBcolumn width\fR \fIcolumnDesc\fR
This command returns a decimal string giving the width in pixels
of the column specified by the \fBcolumn description\fR
@@ -1201,9 +1273,10 @@ command.
.TP
\fIpathName\fR \fBcontentbox\fR
Returns a list with four elements giving the bounding box
-for the space used to display the items,
-i.e. the space of the treectrl window without
-the surrounding borders or the column headers.
+of the screen area used to display items.
+This is the area of the window not including borders, column headers, or
+locked columns. An empty string is returned if the display area has
+no height or width, which can happen if the window is too small.
.TP
\fIpathName\fR \fBdebug\fR \fIoption\fR ?\fIarg arg ...\fR?
This command is used to facilitate debugging of the treectrl widget.
@@ -1212,13 +1285,16 @@ that follows the \fBdebug\fR argument.
The following forms of the command are supported:
.RS
.TP
-\fIpathName\fR \fBdebug cget\fR \fIelement\fR \fIoption\fR
+\fIpathName\fR \fBdebug alloc\fR
+Returns a string giving partial statistics on memory allocations.
+.TP
+\fIpathName\fR \fBdebug cget\fR \fIoption\fR
This command returns the current value of the debugging option
named \fIoption\fR.
\fIOption\fR may have any of the values accepted by the
\fBdebug configure\fR widget command.
.TP
-\fIpathName\fR \fBdebug configure\fR \fIelement\fR ?\fIoption\fR? ?\fIvalue\fR? ?\fIoption value ...\fR?
+\fIpathName\fR \fBdebug configure\fR ?\fIoption\fR? ?\fIvalue\fR? ?\fIoption value ...\fR?
This command is similar to the \fBconfigure\fR widget command except
that it modifies debugging options
instead of modifying options for the overall treectrl widget.
@@ -1256,15 +1332,23 @@ If this option is switched on
(together with the debugging option \fB-enable\fR),
at varios places additional debugging output is printed to stdout.
.TP
+\fB\fB-drawcolor\fR\fR \fIcolor\fR
+When specified, areas of the window are painted with this color when drawing
+in those areas is about to occur.
+Setting this option has only an effect if the
+debugging options \fB-enable\fR and \fB-display\fR are switched on.
+.TP
\fB\fB-enable\fR\fR \fIboolean\fR
All other debugging options only take effect,
if this option is also switched on.
.TP
\fB\fB-erasecolor\fR\fR \fIcolor\fR
-Use this color, when parts of the treectrl widget should be deleted.
+When specified, areas of the window which have been marked as "invalid"
+(for example, when part of the window is exposed) are
+painted with this color.
If you use an unusual color for this option (like \fBpink\fR),
superflous screen redraws can be spotted more easily.
-Setting this option has only an effect, if the
+Setting this option has only an effect if the
debugging options \fB-enable\fR and \fB-display\fR are switched on.
.RE
.TP
@@ -1274,6 +1358,10 @@ a line with some internal values info about all items
is printed to stdout.
The command returns the empty string.
.TP
+\fIpathName\fR \fBdebug expose\fR \fIx1\fR \fIy1\fR \fIx2\fR \fIy2\fR
+Causes the area of the window bounded by the given window-coords to be
+marked as invalid. This simulates uncovering part of the window.
+.TP
\fIpathName\fR \fBdebug scroll\fR
Returns a string useful for debugging vertical scrolling.
.RE
@@ -1524,9 +1612,12 @@ options for the item given by \fIitemDesc\fR (see \fBTk_ConfigureInfo\fR for
information on the format of this list). If \fIoption\fR is specified with no
value, then the command returns a list describing the one named option (this
list will be identical to the corresponding sublist of the value returned if
-no \fIoption\fR is specified). If one or more \fIoption\fR-\fIvalue\fR pairs
+no \fIoption\fR is specified).
+.sp
+If one or more \fIoption\fR-\fIvalue\fR pairs
are specified, then the command modifies the given item option(s) to have the
-given value(s); in this case the command returns an empty string.
+given value(s); in this case the command returns an empty string. This is the
+only case where \fIitemDesc\fR may refer to multiple items.
.sp
The following options are supported by this command (see \fBitem create\fR for
the meaning of each option):
@@ -1536,6 +1627,8 @@ the meaning of each option):
.TP
\fB\fB-height\fR\fR \fIheight\fR
.TP
+\fB\fB-tags\fR\fR \fItagList\fR
+.TP
\fB\fB-visible\fR\fR \fIboolean\fR
.RE
.TP
@@ -1609,11 +1702,9 @@ and b) each ancestor's \fB-visible\fR option is true
Deletes the specified item(s).
\fIFirst\fR and \fIlast\fR must be valid
\fBitem descriptions\fR.
-If either \fIfirst\fR or \fIlast\fR is specified as \fBall\fR, then all items are
-deleted. If \fIfirst\fR is specified and \fIlast\fR isn't
-specified, the item described by \fIfirst\fR is deleted.
+If \fIlast\fR isn't specified, then \fIfirst\fR may specify multiple items.
If both \fIfirst\fR and \fIlast\fR are specified,
-they must decribe items with a common ancestor;
+they must each decribe a single item with a common ancestor;
then the range of items between \fIfirst\fR and \fIlast\fR is deleted.
The order of \fIfirst\fR and \fIlast\fR doesn't matter.
.sp
@@ -1657,10 +1748,8 @@ associated with \fIelement\fR inside \fIcolumn\fR of the item described by
specified element (see \fBELEMENTS\fR below)
.TP
\fIpathName\fR \fBitem element configure\fR \fIitemDesc\fR \fIcolumn\fR \fIelement\fR ?\fIoption\fR? ?\fIvalue\fR? ?\fIoption value ...\fR?
-This command is similar to the \fBconfigure\fR widget command except
-that it modifies options associated with
-\fIelement\fR inside \fIcolumn\fR of the item described by \fIitemDesc\fR
-instead of modifying options for the overall treectrl widget.
+This command modifies configuration options for an element in a column of
+an item.
If no \fIoption\fR is specified, the command returns a list describing
all of the available options for the element (see \fBTk_ConfigureInfo\fR
for information on the format of this list).
@@ -1668,10 +1757,12 @@ If \fIoption\fR is specified with no \fIvalue\fR, then the command returns
a list describing the one named option (this list will be identical to
the corresponding sublist of the value returned if no \fIoption\fR
is specified).
+.sp
If one or more \fIoption\fR-\fIvalue\fR pairs are specified, then the command
modifies the given option(s) to have the given value(s) in the
-\fIelement\fR inside \fIcolumn\fR of the item described by \fIitemDesc\fR;
-in this case the command returns an empty string.
+\fIelement\fR inside \fIcolumn\fR of the item(s) described by \fIitemDesc\fR;
+in this case the command returns an empty string. This is the only case where
+\fIitemDesc\fR may refer to multiple items.
.sp
It is possible to configure multiple elements in multiple columns with
a single call. To configure another element in the same column, append a
@@ -1686,6 +1777,8 @@ For example:
$C3 $E1 -text "apples and oranges"
.fi
+Each of the \fBcolumn description\fR arguments
+may refer to multiple columns.
.TP
\fIpathName\fR \fBitem element perstate\fR \fIitemDesc\fR \fIcolumn\fR \fIelement\fR \fIoption\fR ?\fIstateList\fR?
This command returns the current value of the \fBper-state\fR
@@ -1735,8 +1828,12 @@ This command sets or retrieves the value of the \fBper-state\fR
If no \fIcolumn\fR is specified, this command returns a list of values,
one per column.
If no \fIimage\fR is specified, this command returns the value for \fIcolumn\fR.
+.sp
If one or more \fIcolumn\fR-\fIimage\fR pairs is specified,
then the value of the -image option in each \fIcolumn\fR is set to \fIimage\fR.
+In this case \fIitemDesc\fR may refer to multiple items and each \fIcolumn\fR
+may refer to multiple columns.
+.sp
Note that this command is provided as a convenience. Use the
\fBitem element configure\fR or \fBitem element cget\fR commands if you want
to set or retrieve the value of the -image option for a specific image element.
@@ -1868,8 +1965,11 @@ Convert to floating-point values and use floating comparison.
This command sets or retrieves the number of columns that a style covers.
If no \fIcolumn\fR is specified, the return value is a list of spans, one per column.
If no \fInumColumns\fR is specified, the return value is the span for \fIcolumn\fR.
+.sp
If one or more \fIcolumn\fR-\fInumColumns\fR pairs is specified, the
-span for each \fIcolumn\fR is set to \fInumColumns\fR.
+span for each \fIcolumn\fR is set to \fInumColumns\fR. In this case \fIitemDesc\fR
+may refer to multiple items and each \fIcolumn\fR may refer to multiple
+columns.
.TP
\fIpathName\fR \fBitem state\fR \fIcommand\fR \fIitemDesc\fR ?\fIarg ...\fR?
This command is used to manipulate the states of an item.
@@ -1883,6 +1983,9 @@ Just like \fBitem state set\fR but manipulates dynamic states for a single
item column, not the item as a whole. If \fIstateDescList\fR is unspecified,
this command returns a list containing the names of all the dynamic states
which are switched on in \fIcolumn\fR.
+.sp
+If \fIstateDescList\fR is specified, then \fIitemDesc\fR may refer to multiple
+items and \fIcolumn\fR may refer to multiple columns.
.TP
\fIpathName\fR \fBitem state get\fR \fIitemDesc\fR ?\fIstateName\fR?
If no \fIstateName\fR is specified, returns a list containing
@@ -1901,9 +2004,9 @@ item described by \fIitemDesc\fR,
every state with a leading \fB~\fR will be toggled, and
every state without leading \fB!\fR or \fB~\fR will be switched on.
If \fIlastItem\fR is specified, the state changes will be made for all items
-in the range betwen \fIitemDesc\fR and \fIlastItem\fR.
-If \fIItemDesc\fR is the string \fBall\fR,
-then the state changes are made for all items of the treectrl widget.
+in the range between \fIitemDesc\fR and \fIlastItem\fR.
+If \fIlastItem\fR unspecified,
+then the state changes are made for all items described by \fIitemDesc\fR.
.RE
.TP
\fIpathName\fR \fBitem style\fR \fIcommand\fR \fIitemDesc\fR ?\fIarg ...\fR?
@@ -1928,6 +2031,8 @@ to elements in the new style specified by \fIstyle\fR.
\fIelementOld\fR is an element in the current style, and \fIelementNew\fR is
an element in the style specified by \fIstyle\fR. Both \fIelementOld\fR and
\fIelementNew\fR must be of the same type (\fBbitmap\fR, \fBtext\fR etc).
+\fIItemDesc\fR may refer to multiple items and \fIcolumn\fR may refer to
+multiple columns.
.TP
\fIpathName\fR \fBitem style set\fR \fIitemDesc\fR ?\fIcolumn\fR? ?\fIstyle\fR? ?\fIcolumn style ...\fR?
This command sets or retrieves the style assigned to one or more columns.
@@ -1936,8 +2041,44 @@ styles set for all columns of the item described by \fIitemDesc\fR.
If no \fIstyle\fR is specified, this command
returns the name of the style set for the item described by
\fIitemDesc\fR in \fIcolumn\fR.
+.sp
If one or more \fIcolumn\fR-\fIstyle\fR pairs is specified,
-then the style in each \fIcolumn\fR is set to \fIstyle\fR.
+then the style in each \fIcolumn\fR is set to \fIstyle\fR. In this case
+\fIitemDesc\fR may refer to multiple items and each \fIcolumn\fR may refer to
+multiple columns.
+.RE
+.TP
+\fIpathName\fR \fBitem tag\fR \fIoption\fR ?\fIarg arg ...\fR?
+This command is used to manipulate tags on items.
+The exact behavior of the command depends on the \fIoption\fR argument
+that follows the \fBitem tag\fR argument.
+The following forms of the command are supported:
+.RS
+.TP
+\fIpathName\fR \fBitem tag add\fR \fIitemDesc\fR \fItagList\fR
+Adds each tag in \fItagList\fR to the items specified by the
+\fBitem description\fR \fIitemDesc\fR.
+Duplicate tags are ignored. The list of tags for an item can also be
+changed via an item's \fB-tags\fR option.
+.TP
+\fIpathName\fR \fBitem tag expr\fR \fIitemDesc\fR \fItagExpr\fR
+Evaluates the tag expression \fItagExpr\fR against every item
+specified by the \fBitem description\fR
+\fIitemDesc\fR. The result is 1 if the tag expression evaluates to true
+for every item, 0 otherwise.
+.TP
+\fIpathName\fR \fBitem tag names\fR \fIitemDesc\fR
+Returns a list of tag names assigned to the items
+specified by the \fBitem description\fR
+\fIitemDesc\fR. The result is the union of any tags assigned to the
+items.
+.TP
+\fIpathName\fR \fBitem tag remove\fR \fIitemDesc\fR \fItagList\fR
+Removes each tag in \fItagList\fR from the items specified by the
+\fBitem description\fR \fIitemDesc\fR.
+It is not an error if any of the items do not use any of the tags.
+The list of tags for an item can also be changed via an item's
+\fB-tags\fR option.
.RE
.TP
\fIpathName\fR \fBitem text\fR \fIitemDesc\fR ?\fIcolumn\fR? ?\fItext\fR? ?\fIcolumn text ...\fR?
@@ -1946,8 +2087,12 @@ text element in one or more columns.
If no \fIcolumn\fR is specified, this command returns a list of values,
one per column.
If no \fItext\fR is specified, this command returns the value for \fIcolumn\fR.
+.sp
If one or more \fIcolumn\fR-\fItext\fR pairs is specified,
then the value of the -text option in each \fIcolumn\fR is set to \fItext\fR.
+In this case \fIitemDesc\fR may refer to multiple items and each \fIcolumn\fR
+may refer to multiple columns.
+.sp
Note that this command is provided as a convenience. Use the
\fBitem element configure\fR or \fBitem element cget\fR commands if you
want to set or retrieve the value of the -text option for a specific text element.
@@ -2283,12 +2428,14 @@ It has several forms, depending on \fIoption\fR:
.TP
\fIpathName\fR \fBselection add\fR \fIfirst\fR ?\fIlast\fR?
\fIFirst\fR and \fIlast\fR (if specified)
-must be the string \fBall\fR or a valid \fBitem description\fR.
-Adds every unselected item in the range between
+must be valid \fBitem descriptions\fR. If both
+\fIfirst\fR and \fIlast\fR are specified, then they may refer to a single
+item only; in this case
+the command adds every unselected item in the range between
\fIfirst\fR and \fIlast\fR, inclusive, to the selection
-without affecting the selection state of items outside that range.
-If one of the arguments is the string \fBall\fR,
-every unselected item in the treectrl widget is added to the selection.
+without affecting the selected state of items outside that range.
+If only \fIfirst\fR is specified, then
+every unselected item specified by \fIfirst\fR is added to the selection.
A \fB<Selection>\fR event is generated if any items were added to the
selection.
.TP
@@ -2299,17 +2446,19 @@ The selection anchor is the end of the selection that is fixed
while dragging out a selection with the mouse.
The item description \fBanchor\fR may be used to refer to the anchor item.
This command doesn't modify the selection state of any item.
-Returns the numerical id of the selection anchor item.
+Returns the unique id of the selection anchor item.
.TP
\fIpathName\fR \fBselection clear\fR ?\fIfirst\fR? ?\fIlast\fR?
\fIFirst\fR and \fIlast\fR (if specified)
-must be the string \fBall\fR or a valid \fBitem description\fR.
-If any of the items between \fIfirst\fR and \fIlast\fR
-(inclusive) are selected, they are deselected.
-The selection state is not changed for items outside this range.
-If no additional arguments are given,
-or if one of the arguments is the string \fBall\fR,
-then all items are removed from the selection.
+must be valid \fBitem descriptions\fR. If both
+\fIfirst\fR and \fIlast\fR are specified, then they may refer to a single
+item only; in this case any selected items between \fIfirst\fR and \fIlast\fR
+(inclusive) are removed from the selection without affecting
+the selected state of items outside that range.
+If only \fIfirst\fR is specified, then
+every selected item specified by \fIfirst\fR is removed from the selection.
+If neither \fIfirst\fR nor \fIlast\fR are specified,
+then all selected items are removed from the selection.
A \fB<Selection>\fR event is generated if any items were removed from the
selection.
.TP
@@ -2328,8 +2477,8 @@ Returns 1 if the item described by \fIitemDesc\fR is currently
selected, 0 if it isn't.
.TP
\fIpathName\fR \fBselection modify\fR \fIselect\fR \fIdeselect\fR
-Both arguments \fIselect\fR and \fIdeselect\fR must be
-the string \fBall\fR or a possibly-empty list of \fBitem descriptions\fR.
+Both arguments \fIselect\fR and \fIdeselect\fR are
+a possibly-empty list of \fBitem descriptions\fR.
Any unselected items in \fIselect\fR are added to the selection,
and any selected items in \fIdeselect\fR are removed from the selection (except
for those items which are also in \fIselect\fR).
@@ -2520,29 +2669,6 @@ around a piece of text.
Returns a list containing the names of all existing styles.
.RE
.TP
-\fIpathName\fR \fBtag\fR \fIoption\fR \fIargs\fR
-This command is used to manipulate \fBitem tags\fR.
-The following forms of the command are supported:
-.RS
-.TP
-\fIpathName\fR \fBtag add\fR \fIitemDesc\fR \fItagList\fR
-Adds each tag in \fItagList\fR to the item(s) described by \fIitemDesc\fR.
-Duplicate tags are never added to an item.
-.TP
-\fIpathName\fR \fBtag expr\fR \fIitemDesc\fR \fItagExpr\fR
-Returns a boolean indicating if the item(s) described by \fIitemDesc\fR
-meet the tag expression \fItagExpr\fR. This command can be used to test
-whether an item has (or doesn't have) a certain tag.
-.TP
-\fIpathName\fR \fBtag names\fR \fIitemDesc\fR
-Returns a list of tag names that any of the items described by \fIitemDesc\fR
-have.
-.TP
-\fIpathName\fR \fBtag remove\fR \fIitemDesc\fR \fItagList\fR
-Removes each tag in \fItagList\fR from the item(s) described by \fIitemDesc\fR.
-If an item doesn't have one of the tags, then nothing bad happens.
-.RE
-.TP
\fIpathName\fR \fBtoggle\fR ?\fB-recurse\fR? ?\fIitemDesc ...\fR?
Use \fBitem toggle\fR instead.
.TP
@@ -2733,6 +2859,11 @@ See also the \fB-backgroundmode\fR widget option for more on this.
This option determines how the items (and the title) line up with each other.
Must be one of \fBleft\fR (the default), \fBcenter\fR, or \fBright\fR.
.TP
+\fB\fB-lock\fR\fR \fIlock\fR
+This option allows a column to stick to the left or right edge of the window.
+A locked column scrolls vertically but not horizontally.
+Must be one of \fBnone\fR (the default), \fBleft\fR, or \fBright\fR.
+.TP
\fB\fB-maxwidth\fR\fR \fIsize\fR
Specifies the maximum size, in screen units, that will be permitted for this column.
If \fIsize\fR is an empty string, then there is no limit on the maximum size of the column.
@@ -2763,9 +2894,9 @@ The pressed state is used when the mouse button is pressed in the header.
\fB\fB-stepwidth\fR\fR \fIsize\fR
Deprecated. Use the treectrl's \fB-itemwidthmultiple\fR option instead.
.TP
-\fB\fB-tag\fR\fR \fItag\fR
-Defines a unique name for the column which can be used
-whenever a column must be specified.
+\fB\fB-tags\fR\fR \fItagList\fR
+\fITagList\fR is a list of tag names that can be used to identify the column.
+See also the \fBcolumn tag\fR command.
.TP
\fB\fB-text\fR\fR \fItext\fR
Specifies a text string to be displayed as the column title.
@@ -2823,31 +2954,49 @@ Specifies the unique column identifier, where \fIid\fR should be
the return value of a prior call of the \fBcolumn create\fR widget command.
See also the \fB-columnprefix\fR option.
.TP
-\fItag\fR
-Specifies the value of a column's -tag option.
+\fItagExpr\fR \fIQUALIFIERS\fR
+\fITagExpr\fR is a tag expression (see \fBITEM AND COLUMN TAGS\fR) against which
+every column's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single column is
+matched. You may run into trouble if \fItagExpr\fR looks like a column id
+or other keyword; also, \fItagExpr\fR must look like a single list element
+since column descriptions are properly-formed lists. To be safe you may want to
+use the \fBtag\fR keyword.
.TP
-\fBall\fR
-Indicates every column, including the tail column. Not all commands accept this.
+\fBall\fR \fIQUALIFIERS\fR
+Indicates every column, including the tail column, which match \fIQUALIFIERS\fR.
.TP
-\fBfirst\fR ?\fBvisible\fR?
-Indicates the leftmost column of the treectrl.
-If \fBvisible\fR is specified, the leftmost column whose -visible option
-is true is used.
+\fBfirst\fR \fIQUALIFIERS\fR
+Indicates the leftmost column of the treectrl which matches \fIQUALIFIERS\fR.
.TP
-\fBend\fR ?\fBvisible\fR?
+\fBend\fR \fIQUALIFIERS\fR
.TP
-\fBlast\fR ?\fBvisible\fR?
-Indicates the rightmost column of the treectrl (but not the tail column).
-If \fBvisible\fR is specified, the rightmost column whose -visible option
-is true is used.
+\fBlast\fR \fIQUALIFIERS\fR
+Indicates the rightmost column of the treectrl (but not the tail column)
+which matches \fIQUALIFIERS\fR.
.TP
-\fBorder\fR \fIn\fR ?\fBvisible\fR?
+\fBlist\fR \fIcolumnDescs\fR
+\fIColumnDescs\fR is a list (a single argument, i.e. "list {a b c}" not "list a b c")
+of other column descriptions.
+This keyword cannot be followed by any modifiers unless a single column is specified.
+.TP
+\fBorder\fR \fIn\fR \fIQUALIFIERS\fR
Indicates the \fIn\fRth column in the list of columns as returned by the
\fBcolumn order\fR command.
.TP
+\fBrange\fR \fIfirst last\fR \fIQUALIFIERS\fR
+\fIFirst\fR and \fIlast\fR specify a range of columns.
+This keyword cannot be followed by any modifiers unless a single column is specified.
+.TP
\fBtail\fR
Indicates the ever-present tail column of the treectrl.
.TP
+\fBtag\fR \fItagExpr\fR \fIQUALIFIERS\fR
+\fITagExpr\fR is a tag expression (see \fBITEM AND COLUMN TAGS\fR) against which
+every column's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single column is
+matched.
+.TP
\fBtree\fR
Indicates the column specified by the -treecolumn option of the treectrl.
.PP
@@ -2857,13 +3006,30 @@ A modifier changes the column used relative to
the description up to this point.
It may be specified in any of the following forms:
.TP
-\fBnext\fR ?\fBvisible\fR?
-Use the column to the right, or the column to the right whose -visible option
-is true.
+\fBnext\fR \fIQUALIFIERS\fR
+Use the column to the right matching \fIQUALIFIERS\fR.
.TP
-\fBprev\fR ?\fBvisible\fR?
-Use the column to the left, or the column to the left whose -visible option
-is true.
+\fBprev\fR \fIQUALIFIERS\fR
+Use the column to the left matching \fIQUALIFIERS\fR.
+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 column state names.
+Only columns that have the given states set (or unset if the '!' prefix is used)
+are considered.
+.TP
+\fBtag\fR \fItagExpr\fR
+\fITagExpr\fR is a tag expression (see \fBITEM AND COLUMN TAGS\fR) against which
+every column's tags are tested for a match.
+.TP
+\fBvisible\fR
+When this qualifier is given, only columns whose \fB-visible\fR option is
+TRUE are considered.
+.TP
+\fB!visible\fR
+When this qualifier is given, only columns whose \fB-visible\fR option is
+FALSE are considered.
.SH "STATES"
For every item a set of boolean states is managed. These states play an
integral role in the appearance of each item.
@@ -3228,6 +3394,15 @@ the return value of a prior call of the \fBitem create\fR widget command,
or \fB0\fR to specify the ever-present root item. See also the
\fB-itemprefix\fR option.
.TP
+\fItagExpr\fR
+\fITagExpr\fR is a tag expression (see \fBITEM AND COLUMN TAGS\fR) against which
+every item's tags are tested for a match.
+This keyword cannot be followed by any modifiers unless a single item is
+matched. You may run into trouble if \fItagExpr\fR looks like an item id
+or other keyword; also, \fItagExpr\fR must look like a single list element
+since item descriptions are properly-formed lists. To be safe you may want to
+use the \fBtag\fR keyword.
+.TP
\fBactive\fR
Indicates the item that is currently active, i.e. normally
the item specified as argument of the last successful \fBactivate\fR
@@ -3276,7 +3451,7 @@ This keyword cannot be followed by any modifiers.
Indicates the root item of the treectrl.
.TP
\fBtag\fR \fItagExpr\fR \fIQUALIFIERS\fR
-\fITagExpr\fR is a tag expression (see \fBITEM TAGS\fR) against which
+\fITagExpr\fR is a tag expression (see \fBITEM AND COLUMN TAGS\fR) against which
every item's tags are tested for a match.
This keyword cannot be followed by any modifiers unless a single item is
matched.
@@ -3364,7 +3539,7 @@ Only items that have the given states set (or unset if the '!' prefix is used)
are considered.
.TP
\fBtag\fR \fItagExpr\fR
-\fITagExpr\fR is a tag expression (see \fBITEM TAGS\fR) against which
+\fITagExpr\fR is a tag expression (see \fBITEM AND COLUMN TAGS\fR) against which
every item's tags are tested for a match.
.TP
\fBvisible\fR