arcadia 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. data/README +126 -123
  2. data/arcadia.rb +770 -756
  3. data/base/a-contracts.rb +130 -93
  4. data/base/a-ext.rb +280 -280
  5. data/base/a-libs.rb +5 -11
  6. data/base/a-utils.rb +235 -44
  7. data/conf/arcadia.conf +20 -16
  8. data/conf/arcadia.init.rb +0 -0
  9. data/conf/arcadia.res.rb +74 -0
  10. data/ext/ae-complete-code/ae-complete-code.conf +0 -0
  11. data/ext/ae-complete-code/ae-complete-code.rb +80 -79
  12. data/ext/ae-debug/ae-debug.conf +0 -0
  13. data/ext/ae-debug/ae-debug.rb +2 -6
  14. data/ext/ae-debug/debug1.57.rb +0 -0
  15. data/ext/ae-doc-code/ae-doc-code.conf +15 -0
  16. data/ext/ae-doc-code/ae-doc-code.rb +289 -0
  17. data/ext/ae-editor/ae-editor.conf +17 -8
  18. data/ext/ae-editor/ae-editor.rb +738 -396
  19. data/ext/ae-event-log/ae-event-log.conf +0 -0
  20. data/ext/ae-event-log/ae-event-log.rb +0 -0
  21. data/ext/ae-file-history/ae-file-history.conf +2 -2
  22. data/ext/ae-file-history/ae-file-history.rb +286 -290
  23. data/ext/ae-inspector/ae-inspector.conf +0 -0
  24. data/ext/ae-inspector/ae-inspector.rb +0 -0
  25. data/ext/ae-output-event/ae-output-event.conf +2 -2
  26. data/ext/ae-output/ae-output.conf +2 -2
  27. data/ext/ae-output/ae-output.rb +173 -178
  28. data/ext/ae-palette/ae-palette.conf +0 -0
  29. data/ext/ae-palette/ae-palette.rb +0 -0
  30. data/ext/ae-shell/ae-shell.conf +0 -0
  31. data/ext/ae-shell/ae-shell.rb +54 -54
  32. data/lib/tk/al-tk.rb +3076 -3082
  33. data/lib/tk/al-tk.res.rb +0 -0
  34. data/lib/tk/al-tkarcadia.rb +0 -0
  35. data/lib/tk/al-tkcustom.rb +0 -0
  36. data/lib/tkext/al-bwidget.rb +0 -0
  37. data/lib/tkext/al-iwidgets.rb +0 -0
  38. data/lib/tkext/al-tile.rb +0 -0
  39. data/lib/tkext/al-tktable.rb +0 -0
  40. data/tcl/BWidget-1.8.0/BWman/ArrowButton.html +276 -0
  41. data/tcl/BWidget-1.8.0/BWman/BWidget.html +228 -0
  42. data/tcl/BWidget-1.8.0/BWman/Button.html +273 -0
  43. data/tcl/BWidget-1.8.0/BWman/ButtonBox.html +264 -0
  44. data/tcl/BWidget-1.8.0/BWman/ComboBox.html +402 -0
  45. data/tcl/BWidget-1.8.0/BWman/Dialog.html +314 -0
  46. data/tcl/BWidget-1.8.0/BWman/DragSite.html +139 -0
  47. data/tcl/BWidget-1.8.0/BWman/DropSite.html +254 -0
  48. data/tcl/BWidget-1.8.0/BWman/DynamicHelp.html +248 -0
  49. data/tcl/BWidget-1.8.0/BWman/Entry.html +341 -0
  50. data/tcl/BWidget-1.8.0/BWman/Label.html +331 -0
  51. data/tcl/BWidget-1.8.0/BWman/LabelEntry.html +194 -0
  52. data/tcl/BWidget-1.8.0/BWman/LabelFrame.html +144 -0
  53. data/tcl/BWidget-1.8.0/BWman/ListBox.html +678 -0
  54. data/tcl/BWidget-1.8.0/BWman/MainFrame.html +283 -0
  55. data/tcl/BWidget-1.8.0/BWman/MessageDlg.html +218 -0
  56. data/tcl/BWidget-1.8.0/BWman/NoteBook.html +374 -0
  57. data/tcl/BWidget-1.8.0/BWman/PagesManager.html +180 -0
  58. data/tcl/BWidget-1.8.0/BWman/PanedWindow.html +142 -0
  59. data/tcl/BWidget-1.8.0/BWman/PanelFrame.html +153 -0
  60. data/tcl/BWidget-1.8.0/BWman/PasswdDlg.html +214 -0
  61. data/tcl/BWidget-1.8.0/BWman/ProgressBar.html +152 -0
  62. data/tcl/BWidget-1.8.0/BWman/ProgressDlg.html +145 -0
  63. data/tcl/BWidget-1.8.0/BWman/ScrollView.html +130 -0
  64. data/tcl/BWidget-1.8.0/BWman/ScrollableFrame.html +191 -0
  65. data/tcl/BWidget-1.8.0/BWman/ScrolledWindow.html +116 -0
  66. data/tcl/BWidget-1.8.0/BWman/SelectColor.html +164 -0
  67. data/tcl/BWidget-1.8.0/BWman/SelectFont.html +152 -0
  68. data/tcl/BWidget-1.8.0/BWman/Separator.html +77 -0
  69. data/tcl/BWidget-1.8.0/BWman/SpinBox.html +250 -0
  70. data/tcl/BWidget-1.8.0/BWman/StatusBar.html +147 -0
  71. data/tcl/BWidget-1.8.0/BWman/TitleFrame.html +107 -0
  72. data/tcl/BWidget-1.8.0/BWman/Tree.html +947 -0
  73. data/tcl/BWidget-1.8.0/BWman/Widget.html +502 -0
  74. data/tcl/BWidget-1.8.0/BWman/contents.html +84 -0
  75. data/tcl/BWidget-1.8.0/BWman/index.html +7 -0
  76. data/tcl/BWidget-1.8.0/BWman/navtree.html +41 -0
  77. data/tcl/BWidget-1.8.0/BWman/options.htm +458 -0
  78. data/tcl/BWidget-1.8.0/CHANGES.txt +266 -0
  79. data/tcl/BWidget-1.8.0/ChangeLog +1641 -0
  80. data/tcl/BWidget-1.8.0/LICENSE.txt +41 -0
  81. data/tcl/BWidget-1.8.0/README.txt +127 -0
  82. data/tcl/BWidget-1.8.0/arrow.tcl +551 -0
  83. data/tcl/BWidget-1.8.0/bitmap.tcl +94 -0
  84. data/tcl/BWidget-1.8.0/button.tcl +324 -0
  85. data/tcl/BWidget-1.8.0/buttonbox.tcl +403 -0
  86. data/tcl/BWidget-1.8.0/color.tcl +493 -0
  87. data/tcl/BWidget-1.8.0/combobox.tcl +809 -0
  88. data/tcl/BWidget-1.8.0/demo/basic.tcl +199 -0
  89. data/tcl/BWidget-1.8.0/demo/bwidget.xbm +46 -0
  90. data/tcl/BWidget-1.8.0/demo/demo.tcl +212 -0
  91. data/tcl/BWidget-1.8.0/demo/dnd.tcl +42 -0
  92. data/tcl/BWidget-1.8.0/demo/manager.tcl +141 -0
  93. data/tcl/BWidget-1.8.0/demo/select.tcl +59 -0
  94. data/tcl/BWidget-1.8.0/demo/tmpldlg.tcl +214 -0
  95. data/tcl/BWidget-1.8.0/demo/tree.tcl +260 -0
  96. data/tcl/BWidget-1.8.0/demo/x1.xbm +2258 -0
  97. data/tcl/BWidget-1.8.0/dialog.tcl +345 -0
  98. data/tcl/BWidget-1.8.0/dragsite.tcl +197 -0
  99. data/tcl/BWidget-1.8.0/dropsite.tcl +455 -0
  100. data/tcl/BWidget-1.8.0/dynhelp.tcl +625 -0
  101. data/tcl/BWidget-1.8.0/entry.tcl +469 -0
  102. data/tcl/BWidget-1.8.0/font.tcl +566 -0
  103. data/tcl/BWidget-1.8.0/images/bold.gif +0 -0
  104. data/tcl/BWidget-1.8.0/images/copy.gif +0 -0
  105. data/tcl/BWidget-1.8.0/images/cut.gif +0 -0
  106. data/tcl/BWidget-1.8.0/images/dragfile.gif +0 -0
  107. data/tcl/BWidget-1.8.0/images/dragicon.gif +0 -0
  108. data/tcl/BWidget-1.8.0/images/error.gif +0 -0
  109. data/tcl/BWidget-1.8.0/images/file.gif +0 -0
  110. data/tcl/BWidget-1.8.0/images/folder.gif +0 -0
  111. data/tcl/BWidget-1.8.0/images/hourglass.gif +0 -0
  112. data/tcl/BWidget-1.8.0/images/info.gif +0 -0
  113. data/tcl/BWidget-1.8.0/images/italic.gif +0 -0
  114. data/tcl/BWidget-1.8.0/images/minus.xbm +5 -0
  115. data/tcl/BWidget-1.8.0/images/new.gif +0 -0
  116. data/tcl/BWidget-1.8.0/images/opcopy.xbm +5 -0
  117. data/tcl/BWidget-1.8.0/images/open.gif +0 -0
  118. data/tcl/BWidget-1.8.0/images/openfold.gif +0 -0
  119. data/tcl/BWidget-1.8.0/images/oplink.xbm +5 -0
  120. data/tcl/BWidget-1.8.0/images/opmove.xbm +5 -0
  121. data/tcl/BWidget-1.8.0/images/overstrike.gif +0 -0
  122. data/tcl/BWidget-1.8.0/images/palette.gif +0 -0
  123. data/tcl/BWidget-1.8.0/images/passwd.gif +0 -0
  124. data/tcl/BWidget-1.8.0/images/paste.gif +0 -0
  125. data/tcl/BWidget-1.8.0/images/plus.xbm +5 -0
  126. data/tcl/BWidget-1.8.0/images/print.gif +0 -0
  127. data/tcl/BWidget-1.8.0/images/question.gif +0 -0
  128. data/tcl/BWidget-1.8.0/images/redo.gif +0 -0
  129. data/tcl/BWidget-1.8.0/images/save.gif +0 -0
  130. data/tcl/BWidget-1.8.0/images/target.xbm +9 -0
  131. data/tcl/BWidget-1.8.0/images/underline.gif +0 -0
  132. data/tcl/BWidget-1.8.0/images/undo.gif +0 -0
  133. data/tcl/BWidget-1.8.0/images/warning.gif +0 -0
  134. data/tcl/BWidget-1.8.0/init.tcl +40 -0
  135. data/tcl/BWidget-1.8.0/label.tcl +271 -0
  136. data/tcl/BWidget-1.8.0/labelentry.tcl +100 -0
  137. data/tcl/BWidget-1.8.0/labelframe.tcl +160 -0
  138. data/tcl/BWidget-1.8.0/lang/da.rc +52 -0
  139. data/tcl/BWidget-1.8.0/lang/de.rc +52 -0
  140. data/tcl/BWidget-1.8.0/lang/en.rc +52 -0
  141. data/tcl/BWidget-1.8.0/lang/es.rc +53 -0
  142. data/tcl/BWidget-1.8.0/lang/fr.rc +52 -0
  143. data/tcl/BWidget-1.8.0/listbox.tcl +1638 -0
  144. data/tcl/BWidget-1.8.0/mainframe.tcl +711 -0
  145. data/tcl/BWidget-1.8.0/messagedlg.tcl +128 -0
  146. data/tcl/BWidget-1.8.0/notebook.tcl +1164 -0
  147. data/tcl/BWidget-1.8.0/pagesmgr.tcl +294 -0
  148. data/tcl/BWidget-1.8.0/panedw.tcl +381 -0
  149. data/tcl/BWidget-1.8.0/panelframe.tcl +246 -0
  150. data/tcl/BWidget-1.8.0/passwddlg.tcl +178 -0
  151. data/tcl/BWidget-1.8.0/pkgIndex.tcl +47 -0
  152. data/tcl/BWidget-1.8.0/progressbar.tcl +208 -0
  153. data/tcl/BWidget-1.8.0/progressdlg.tcl +87 -0
  154. data/tcl/BWidget-1.8.0/scrollframe.tcl +226 -0
  155. data/tcl/BWidget-1.8.0/scrollview.tcl +254 -0
  156. data/tcl/BWidget-1.8.0/scrollw.tcl +280 -0
  157. data/tcl/BWidget-1.8.0/separator.tcl +75 -0
  158. data/tcl/BWidget-1.8.0/spinbox.tcl +331 -0
  159. data/tcl/BWidget-1.8.0/statusbar.tcl +422 -0
  160. data/tcl/BWidget-1.8.0/tests/entry.test +173 -0
  161. data/tcl/BWidget-1.8.0/titleframe.tcl +170 -0
  162. data/tcl/BWidget-1.8.0/tree.tcl +2228 -0
  163. data/tcl/BWidget-1.8.0/utils.tcl +645 -0
  164. data/tcl/BWidget-1.8.0/widget.tcl +1576 -0
  165. data/tcl/BWidget-1.8.0/wizard.tcl +1028 -0
  166. data/tcl/BWidget-1.8.0/xpm2image.tcl +115 -0
  167. metadata +141 -5
@@ -0,0 +1,947 @@
1
+ <HTML>
2
+ <HEAD><TITLE>Tree</TITLE></HEAD>
3
+ <BODY BGCOLOR=white>
4
+ <DL><DT><I><A HREF="#descr">NAME</A></I></DT>
5
+ <DD><B>Tree</B>
6
+ - Tree widget
7
+ </DD></DL>
8
+ <DL>
9
+ <DT><I>CREATION</I></DT>
10
+ <DD><A HREF="#descr"><B>Tree</B></A> <I>pathName</I> ?<I>option value...</I>?</DD>
11
+ </DL>
12
+ <DL>
13
+ <DT><I>STANDARD OPTIONS</I></DT>
14
+ <DD><TABLE CELLSPACING=0 CELLSPACING=0 BORDER=0>
15
+ <TR>
16
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-background">-background or -bg</A></TD>
17
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-borderwidth">-borderwidth or -bd</A></TD>
18
+ </TR>
19
+ <TR>
20
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-cursor">-cursor</A></TD>
21
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-highlightbackground">-highlightbackground</A></TD>
22
+ </TR>
23
+ <TR>
24
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-highlightcolor">-highlightcolor</A></TD>
25
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-highlightthickness">-highlightthickness</A></TD>
26
+ </TR>
27
+ <TR>
28
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-relief">-relief</A></TD>
29
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-selectbackground">-selectbackground</A></TD>
30
+ </TR>
31
+ <TR>
32
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-selectforeground">-selectforeground</A></TD>
33
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-takefocus">-takefocus</A></TD>
34
+ </TR>
35
+ <TR>
36
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-xscrollcommand">-xscrollcommand</A></TD>
37
+ <TD>&nbsp;&nbsp;<A HREF="options.htm#M-yscrollcommand">-yscrollcommand</A></TD>
38
+ </TR>
39
+ </TABLE></DD>
40
+ </DL>
41
+ <DL>
42
+ <DT><I><A HREF="#wso">WIDGET-SPECIFIC OPTIONS</A></I></DT>
43
+ <DD><TABLE CELLSPACING=0 CELLSPACING=0 BORDER=0>
44
+ <TR>
45
+ <TD>&nbsp;&nbsp;<A HREF="#-closecmd">-closecmd</A></TD>
46
+ <TD>&nbsp;&nbsp;<A HREF="#-crossfill">-crossfill</A></TD>
47
+ <TR>
48
+ <TD>&nbsp;&nbsp;<A HREF="#-crossclosebitmap">-crossclosebitmap</A></TD>
49
+ <TD>&nbsp;&nbsp;<A HREF="#-crosscloseimage">-crosscloseimage</A></TD>
50
+ </TR>
51
+ <TR>
52
+ <TD>&nbsp;&nbsp;<A HREF="#-crossopenbitmap">-crossopenbitmap</A></TD>
53
+ <TD>&nbsp;&nbsp;<A HREF="#-crossopenimage">-crossopenimage</A></TD>
54
+ </TR>
55
+ <TR>
56
+ <TD>&nbsp;&nbsp;<A HREF="#-deltax">-deltax</A></TD>
57
+ <TD>&nbsp;&nbsp;<A HREF="#-deltay">-deltay</A></TD>
58
+ </TR>
59
+ <TR>
60
+ <TD>&nbsp;&nbsp;<A HREF="#-dragenabled">-dragenabled</A></TD>
61
+ <TD>&nbsp;&nbsp;<A HREF="#-dragendcmd">-dragendcmd</A></TD>
62
+ </TR>
63
+ <TR>
64
+ <TD>&nbsp;&nbsp;<A HREF="#-dragevent">-dragevent</A></TD>
65
+ <TD>&nbsp;&nbsp;<A HREF="#-draginitcmd">-draginitcmd</A></TD>
66
+ </TR>
67
+ <TR>
68
+ <TD>&nbsp;&nbsp;<A HREF="#-dragtype">-dragtype</A></TD>
69
+ <TD>&nbsp;&nbsp;<A HREF="#-dropcmd">-dropcmd</A></TD>
70
+ </TR>
71
+ <TR>
72
+ <TD>&nbsp;&nbsp;<A HREF="#-dropenabled">-dropenabled</A></TD>
73
+ <TD>&nbsp;&nbsp;<A HREF="#-dropovercmd">-dropovercmd</A></TD>
74
+ </TR>
75
+ <TR>
76
+ <TD>&nbsp;&nbsp;<A HREF="#-dropovermode">-dropovermode</A></TD>
77
+ <TD>&nbsp;&nbsp;<A HREF="#-droptypes">-droptypes</A></TD>
78
+ </TR>
79
+ <TR>
80
+ <TD>&nbsp;&nbsp;<A HREF="#-height">-height</A></TD>
81
+ <TD>&nbsp;&nbsp;<A HREF="#-linesfill">-linesfill</A></TD>
82
+ </TR>
83
+ <TR>
84
+ <TD>&nbsp;&nbsp;<A HREF="#-linestipple">-linestipple</A></TD>
85
+ <TD>&nbsp;&nbsp;<A HREF="#-opencmd">-opencmd</A></TD>
86
+ </TR>
87
+ <TR>
88
+ <TD>&nbsp;&nbsp;<A HREF="#-padx">-padx</A></TD>
89
+ <TD>&nbsp;&nbsp;<A HREF="#-redraw">-redraw</A></TD>
90
+ </TR>
91
+ <TR>
92
+ <TD>&nbsp;&nbsp;<A HREF="#-selectcommand">-selectcommand</A></TD>
93
+ <TD>&nbsp;&nbsp;<A HREF="#-selectfill">-selectfill</A></TD>
94
+ </TR>
95
+ <TR>
96
+ <TD>&nbsp;&nbsp;<A HREF="#-showlines">-showlines</A></TD>
97
+ <TD>&nbsp;&nbsp;<A HREF="#-width">-width</A></TD>
98
+ </TR>
99
+ </TABLE></DD>
100
+ </DL>
101
+
102
+ <DL>
103
+ <DT><I><A HREF="#wc">WIDGET COMMAND</A></I></DT>
104
+ <DD><I>pathName</I> <A HREF="#bindArea"><B>bindArea</B></A>
105
+ <I>event</I>
106
+ <I>script</I>
107
+ </DD>
108
+ <DD><I>pathName</I> <A HREF="#bindImage"><B>bindImage</B></A>
109
+ <I>event</I>
110
+ <I>script</I>
111
+ </DD>
112
+ <DD><I>pathName</I> <A HREF="#bindText"><B>bindText</B></A>
113
+ <I>event</I>
114
+ <I>script</I>
115
+ </DD>
116
+ <DD><I>pathName</I> <A HREF="#cget"><B>cget</B></A>
117
+ <I>option</I>
118
+ </DD>
119
+ <DD><I>pathName</I> <A HREF="#closetree"><B>closetree</B></A>
120
+ <I>node</I>
121
+ </DD>
122
+ <DD><I>pathName</I> <A HREF="#configure"><B>configure</B></A>
123
+ ?<I>option</I>? ?<I>value</I> <I>option</I> <I>value</I> ...?
124
+ </DD>
125
+ <DD><I>pathName</I> <A HREF="#delete"><B>delete</B></A>
126
+ ?<I>arg...</I>?
127
+ </DD>
128
+ <DD><I>pathName</I> <A HREF="#edit"><B>edit</B></A>
129
+ <I>node</I>
130
+ <I>text</I>
131
+ ?<I>verifycmd</I>?
132
+ ?<I>clickres</I>?
133
+ ?<I>select</I>?
134
+ </DD>
135
+ <DD><I>pathName</I> <A HREF="#exists"><B>exists</B></A>
136
+ <I>node</I>
137
+ </DD>
138
+ <DD><I>pathName</I> <A HREF="#find"><B>find</B></A>
139
+ <I>findinfo</I>
140
+ ?<I>confine</I>?
141
+ </DD>
142
+ <DD><I>pathName</I> <A HREF="#index"><B>index</B></A>
143
+ <I>node</I>
144
+ </DD>
145
+ <DD><I>pathName</I> <A HREF="#insert"><B>insert</B></A>
146
+ <I>index</I>
147
+ <I>parent</I>
148
+ <I>node</I>
149
+ ?<I>option value...</I>?
150
+ </DD>
151
+ <DD><I>pathName</I> <A HREF="#itemcget"><B>itemcget</B></A>
152
+ <I>node</I>
153
+ <I>option</I>
154
+ </DD>
155
+ <DD><I>pathName</I> <A HREF="#itemconfigure"><B>itemconfigure</B></A>
156
+ <I>node</I>
157
+ ?<I>option</I>? ?<I>value</I> <I>option</I> <I>value</I> ...?
158
+ </DD>
159
+ <DD><I>pathName</I> <A HREF="#line"><B>line</B></A>
160
+ <I>node</I>
161
+ </DD>
162
+ <DD><I>pathName</I> <A HREF="#move"><B>move</B></A>
163
+ <I>parent</I>
164
+ <I>node</I>
165
+ <I>index</I>
166
+ </DD>
167
+ <DD><I>pathName</I> <A HREF="#nodes"><B>nodes</B></A>
168
+ <I>node</I>
169
+ ?<I>first</I>?
170
+ ?<I>last</I>?
171
+ </DD>
172
+ <DD><I>pathName</I> <A HREF="#opentree"><B>opentree</B></A>
173
+ <I>node</I>
174
+ </DD>
175
+ <DD><I>pathName</I> <A HREF="#parent"><B>parent</B></A>
176
+ <I>node</I>
177
+ </DD>
178
+ <DD><I>pathName</I> <A HREF="#reorder"><B>reorder</B></A>
179
+ <I>node</I>
180
+ <I>neworder</I>
181
+ </DD>
182
+ <DD><I>pathName</I> <A HREF="#see"><B>see</B></A>
183
+ <I>node</I>
184
+ </DD>
185
+ <DD><I>pathName</I> <A HREF="#selection"><B>selection</B></A>
186
+ <I>cmd</I>
187
+ ?<I>arg...</I>?
188
+ </DD>
189
+ <DD><I>pathName</I> <A HREF="#toggle"><B>toggle</B></A>
190
+ <I>node</I>
191
+ </DD>
192
+ <DD><I>pathName</I> <A HREF="#visible"><B>visible</B></A>
193
+ <I>node</I>
194
+ </DD>
195
+ <DD><I>pathName</I> <A HREF="#xview"><B>xview</B></A>
196
+ ?<I>arg...</I>?
197
+ </DD>
198
+ <DD><I>pathName</I> <A HREF="#yview"><B>yview</B></A>
199
+ ?<I>arg...</I>?
200
+ </DD>
201
+ </DL>
202
+ <BR><HR WIDTH="100%"><BR>
203
+ <B><A NAME="descr"></A>DESCRIPTION</B><BR>
204
+ <P>
205
+
206
+ <B>Tree</B> widget uses canvas to display a hierarchical list of items (called nodes).
207
+ Each node is composed of a label with its own font and foreground attributes, and an optional
208
+ image or window. Each node can have a list of subnodes, which can be collapsed or expanded.
209
+ Each node is drawn in a single line, whose height is defined by the
210
+ <B>deltay</B> option, so they must have at most this height.
211
+ A node is uniquely identified by a string given at creation (by the
212
+ <B>insert</B> command). The node named <I>root</I> is the root of
213
+ the tree and is not drawn.
214
+ The tree structure is directly maintained by the widget.
215
+
216
+ </P>
217
+ <BR><HR WIDTH="50%"><BR>
218
+ <B><A NAME="wso">WIDGET-SPECIFIC OPTIONS</A></B><BR>
219
+ <DL><DT><A NAME="-closecmd"><B>-closecmd</B></A></DT>
220
+ <DD>
221
+
222
+ Specifies a command to be called when user close a node. The
223
+ closed node is appended to the command.
224
+
225
+ </DD>
226
+ </DL>
227
+
228
+ <DL>
229
+ <DT><A NAME="-crossfill"><B>-crossfill</B></A></DT>
230
+ <DD>
231
+ Specifies a foreground color for the cross bitmap.
232
+ </DD>
233
+ </DL>
234
+
235
+ <DL><DT><A NAME="-crossclosebitmap"><B>-crossclosebitmap</B></A></DT>
236
+ <DD>
237
+ Specifies a bitmap to be displayed in place of the standard cross
238
+ when a node is closed.
239
+ </DD>
240
+ </DL>
241
+
242
+ <DL><DT><A NAME="-crosscloseimage"><B>-crosscloseimage</B></A></DT>
243
+ <DD>
244
+ Specifies an image to be displayed in place of the standard cross
245
+ when a node is closed. Overrides the -crossclosebitmap option.
246
+ </DD>
247
+ </DL>
248
+
249
+ <DL><DT><A NAME="-crossopenbitmap"><B>-crossopenbitmap</B></A></DT>
250
+ <DD>
251
+ Specifies a bitmap to be displayed in place of the standard cross
252
+ when a node is open.
253
+ </DD>
254
+ </DL>
255
+
256
+ <DL><DT><A NAME="-crossopenimage"><B>-crossopenimage</B></A></DT>
257
+ <DD>
258
+ Specifies an image to be displayed in place of the standard cross
259
+ when a node is open. Overrides the -crossopenbitmap option.
260
+ </DD>
261
+ </DL>
262
+
263
+ <DL><DT><A NAME="-deltax"><B>-deltax</B></A></DT>
264
+ <DD>
265
+
266
+ Specifies horizontal indentation between a node and its children.
267
+
268
+ </DD>
269
+ </DL>
270
+ <DL><DT><A NAME="-deltay"><B>-deltay</B></A></DT>
271
+ <DD>
272
+
273
+ Specifies vertical size of the nodes.
274
+
275
+ </DD>
276
+ </DL>
277
+ <DL><DT><A NAME="-dragenabled"><B>-dragenabled</B></A></DT>
278
+ <DD>
279
+ A boolean specifying if drag is enabled.
280
+ </DD>
281
+ </DL>
282
+ <DL><DT><A NAME="-dragendcmd"><B>-dragendcmd</B></A></DT>
283
+ <DD>
284
+
285
+ Specifies a command to be called when drag ended.
286
+ <B>dragendcmd</B> must be a command conforming to the description of the
287
+ option <B>dragendcmd</B> of <B>DragSite::<A HREF="DragSite.html#register">register</A></B>.
288
+
289
+ </DD>
290
+ </DL>
291
+ <DL><DT><A NAME="-dragevent"><B>-dragevent</B></A></DT>
292
+ <DD>
293
+
294
+ Specifies the number of the mouse button associated to the drag.
295
+ Must be <B>1</B>, <B>2</B> or <B>3</B>.
296
+
297
+ </DD>
298
+ </DL>
299
+ <DL><DT><A NAME="-draginitcmd"><B>-draginitcmd</B></A></DT>
300
+ <DD>
301
+
302
+ Tree has a command wrapper for <I>drag-init</I> events. This command refused the drag
303
+ if no node is designated. In other cases:
304
+ <BR>If <B>draginitcmd</B> is empty, it returns:
305
+ <UL>
306
+ <LI>the value of option <B>dragtype</B> or <I>TREE_NODE</I> if empty as the data type,
307
+ <LI><I>{copy move link}</I> as the operations,
308
+ <LI>the node identifier as the data.
309
+ </UL>
310
+ If <B>draginitcmd</B> is not empty, it is called with the following arguments:
311
+ <UL>
312
+ <LI>the pathname of the tree,
313
+ <LI>the identifier of the dragged node,
314
+ <LI>the toplevel created to represent dragged data.
315
+ </UL>
316
+ and must return a value conforming to <B>draginitcmd</B> option described in
317
+ <B>DragSite::<A HREF="DragSite.html#register">register</A></B>.
318
+
319
+ </DD>
320
+ </DL>
321
+ <DL><DT><A NAME="-dragtype"><B>-dragtype</B></A></DT>
322
+ <DD>
323
+
324
+ Specifies an alternate type of dragged object.
325
+
326
+ </DD>
327
+ </DL>
328
+ <DL><DT><A NAME="-dropcmd"><B>-dropcmd</B></A></DT>
329
+ <DD>
330
+
331
+ Tree has a command wrapper for <I>drop</I> events. This command stops auto scrolling
332
+ and extract node and position.
333
+ <BR>If <B>dropcmd</B> is not empty, it is called with the following arguments:
334
+ <UL>
335
+ <LI>the pathname of the tree,
336
+ <LI>the pathname of the drag source,
337
+ <LI>a list describing where the drop occurs. It can be:
338
+ <UL>
339
+ <LI><I>{</I><B>widget</B><I>}</I>,
340
+ <LI><I>{</I><B>node</B> <I>node}</I> or
341
+ <LI><I>{</I><B>position</B> <I>node index}</I>.
342
+ </UL>
343
+ <LI>the current operation,
344
+ <LI>the data type,
345
+ <LI>the data.
346
+ </UL>
347
+
348
+
349
+ </DD>
350
+ </DL>
351
+ <DL><DT><A NAME="-dropenabled"><B>-dropenabled</B></A></DT>
352
+ <DD>
353
+ A boolean specifying if drop is enabled.
354
+ </DD>
355
+ </DL>
356
+ <DL><DT><A NAME="-dropovercmd"><B>-dropovercmd</B></A></DT>
357
+ <DD>
358
+
359
+ Tree has a command wrapper for <I>drag-over</I> events. This command enables auto scrolling
360
+ and position extraction during the <I>drag-over</I>.
361
+ If <B>dropovercmd</B> is not empty, the command is called with the following aguments:
362
+ <UL>
363
+ <LI>the pathname of the tree,
364
+ <LI>the pathname of the drag source,
365
+ <LI>a list describing where the drop can occur, whose elements are:
366
+ <UL>
367
+ <LI>the string <I>widget</I> if <B>dropovertype</B> option contains <I>w</I>, else empty string.
368
+ <LI>the targeted node if drag icon points a node and <B>dropovertype</B> option contains <I>n</I>, else empty string.
369
+ <LI>a list containing a node and the position within the children of the node where drag
370
+ icon points to if <B>dropovertype</B> option contains <I>p</I>, else empty string.
371
+ <LI>optionally, the preferred method if drop can occur both inside a node and between two
372
+ nodes. The value is <I>position</I> or <I>node</I>.
373
+ </UL>
374
+ <LI>the current operation,
375
+ <LI>the data type,
376
+ <LI>the data.
377
+ </UL>
378
+ The command must return a list with two elements:
379
+ <UL>
380
+ <LI>the drop status, conforming to those described in <B>dropovercmd</B> option of
381
+ <B>DropSite::<A HREF="DropSite.html#register">register</A></B>,
382
+ <LI>the choosen method: <I>widget</I>, <I>node</I> or <I>position</I>.
383
+ </UL>
384
+
385
+ </DD>
386
+ </DL>
387
+ <DL><DT><A NAME="-dropovermode"><B>-dropovermode</B></A></DT>
388
+ <DD>
389
+
390
+ Specifies the type of <I>drop-over</I> interaction. Must be a combination of
391
+ <B>w</B>, which specifies that drop can occurs everywhere on widget,
392
+ <B>p</B>, which specifies that drop can occurs between two nodes,
393
+ and <B>n</B>, which specifies that drop occurs inside nodes.
394
+
395
+ </DD>
396
+ </DL>
397
+ <DL><DT><A NAME="-droptypes"><B>-droptypes</B></A></DT>
398
+ <DD>
399
+
400
+ Specifies a list of accepted dropped object/operation.
401
+ See option <B>droptypes</B> of
402
+ <B>DropSite::<A HREF="DropSite.html#register">register</A></B>.
403
+ for more infromation.
404
+
405
+ <BR>Default is <I>TREE_NODE</I> with operations <B>copy</B> and <B>move</B>.
406
+
407
+ </DD>
408
+ </DL>
409
+ <DL><DT><A NAME="-height"><B>-height</B></A></DT>
410
+ <DD>
411
+
412
+ Specifies the desired height for the tree in units of <B>deltay</B> pixels.
413
+
414
+ </DD>
415
+ </DL>
416
+ <DL><DT><A NAME="-linesfill"><B>-linesfill</B></A></DT>
417
+ <DD>
418
+
419
+ Specifies a foreground color for the lines between nodes.
420
+
421
+ </DD>
422
+ </DL>
423
+ <DL><DT><A NAME="-linestipple"><B>-linestipple</B></A></DT>
424
+ <DD>
425
+
426
+ Specifies a stipple bitmap for the lines between nodes.
427
+
428
+ </DD>
429
+ </DL>
430
+ <DL><DT><A NAME="-opencmd"><B>-opencmd</B></A></DT>
431
+ <DD>
432
+
433
+ Specifies a command to be called when the user opens a node. The name
434
+ of the opened node is appended to the command.
435
+
436
+ </DD>
437
+ </DL>
438
+ <DL><DT><A NAME="-padx"><B>-padx</B></A></DT>
439
+ <DD>
440
+
441
+ Specifies distance between image or window and text of the nodes.
442
+
443
+ </DD>
444
+ </DL>
445
+ <DL><DT><A NAME="-redraw"><B>-redraw</B></A></DT>
446
+ <DD>
447
+
448
+ Specifies wether or not the tree should be redrawn when entering idle.
449
+ Set it to false if you call <B>update</B> while modifying the tree.
450
+
451
+ </DD>
452
+ </DL>
453
+ <DL><DT><A NAME="-selectcommand"><B>-selectcommand</B></A></DT>
454
+ <DD>
455
+
456
+ Specifies a command to be called when the selection is changed. The
457
+ path of the tree widget and the selected nodes are appended to the
458
+ command.
459
+
460
+ </DD>
461
+ </DL>
462
+
463
+ <DL><DT><A NAME="-selectfill"><B>-selectfill</B></A></DT>
464
+ <DD>
465
+ If true, the selection box will be drawn across the entire tree from
466
+ left-to-right instead of just around the item text.
467
+ </DD>
468
+ </DL>
469
+
470
+ <DL><DT><A NAME="-showlines"><B>-showlines</B></A></DT>
471
+ <DD>
472
+
473
+ Specifies whether or not lines should be drawn between nodes.
474
+
475
+ </DD>
476
+ </DL>
477
+ <DL><DT><A NAME="-width"><B>-width</B></A></DT>
478
+ <DD>
479
+
480
+ Specifies the desired width for the tree in units of 8 pixels.
481
+
482
+ </DD>
483
+ </DL>
484
+ <HR WIDTH="50%"><BR>
485
+
486
+ <B><A NAME="nodes">NODE NAMES</A></B><BR>
487
+ <p>
488
+ Certain special characters in node names are automatically substituted
489
+ by the tree during operation. These characters are <b>&amp; | ^ !</b>.
490
+ They are all substituted with a <b>_</b> character. This is only to
491
+ avoid errors because the characters are special to the tree widget.
492
+ </p>
493
+
494
+ <B><A NAME="wc">WIDGET COMMAND</A></B><BR>
495
+ <DL><DT><A NAME="bindArea"><I>pathName</I> <B>bindArea</B></A>
496
+ <I>event</I>
497
+ <I>script</I>
498
+ </DT><DD>
499
+
500
+ This command associates a command to execute whenever the event
501
+ sequence given by <I>event</I> occurs anywhere within the Tree area.
502
+
503
+ <p>
504
+ Any occurrence of <b>%W</b> in script is substituted with the path of
505
+ the tree. <em><a href="#bug">(See note below about this behavior.)</a></em>
506
+ </p>
507
+
508
+ </DD></DL>
509
+ <DL><DT><A NAME="bindImage"><I>pathName</I> <B>bindImage</B></A>
510
+ <I>event</I>
511
+ <I>script</I>
512
+ </DT><DD>
513
+
514
+ This command associates a command to execute whenever the event
515
+ sequence given by <I>event</I> occurs on the image of a node.
516
+ The node idenfier on which the event occurs is appended to the command.
517
+
518
+ <p>
519
+ Any occurrence of <b>%W</b> in script is substituted with the path of
520
+ the tree. <em><a href="#bug">(See note below about this behavior.)</a></em>
521
+ </p>
522
+
523
+ </DD></DL>
524
+ <DL><DT><A NAME="bindText"><I>pathName</I> <B>bindText</B></A>
525
+ <I>event</I>
526
+ <I>script</I>
527
+ </DT><DD>
528
+
529
+ This command associates a command to execute whenever the event
530
+ sequence given by <I>event</I> occurs on the label of a node.
531
+ The node idenfier on which the event occurs is appended to the command.
532
+
533
+ <p>
534
+ Any occurrence of <b>%W</b> in script is substituted with the path of
535
+ the tree. <em><a href="#bug">(See note below about this behavior.)</a></em>
536
+ </p>
537
+
538
+ </DD></DL>
539
+ <DL><DT><A NAME="cget"><I>pathName</I> <B>cget</B></A>
540
+ <I>option</I>
541
+ </DT><DD>
542
+
543
+ Returns the current value of the configuration option given by <I>option</I>.
544
+ <I>Option</I> may have any of the values accepted by the creation command.
545
+ </DD></DL>
546
+ <DL><DT><A NAME="closetree"><I>pathName</I> <B>closetree</B></A> <I>node</I>
547
+ ?<I>recurse</I>?
548
+ </DT><DD>
549
+
550
+ This command close all the subtree given by <I>node</I>. Recurse
551
+ through the tree starting at <I>node</I> and set <B>open</B> option to 0
552
+ depending on <I>recurse</I>. Default value of <I>recurse</I> is <I>true</I>.
553
+
554
+ </DD></DL>
555
+ <DL><DT><A NAME="configure"><I>pathName</I> <B>configure</B></A>
556
+ ?<I>option</I>? ?<I>value</I> <I>option</I> <I>value</I> ...?
557
+ </DT><DD>
558
+
559
+ Query or modify the configuration options of the widget. If no <I>option</I> is
560
+ specified, returns a list describing all of the available options for
561
+ <I>pathName</I>. If <I>option</I> is specified with no <I>value</I>, then the
562
+ command returns a list describing the one named <I>option</I> (this list will
563
+ be identical to the corresponding sublist of the value returned if no
564
+ <I>option</I> is specified). If one or more <I>option-value</I> pairs are
565
+ specified, then the command modifies the given widget option(s) to have the
566
+ given value(s); in this case the command returns an empty string.
567
+ <I>Option</I> may have any of the values accepted by the creation command.
568
+ Read-only options are not be modified.
569
+
570
+ </DD></DL>
571
+ <DL><DT><A NAME="delete"><I>pathName</I> <B>delete</B></A>
572
+ ?<I>arg...</I>?
573
+ </DT><DD>
574
+
575
+ Deletes all nodes (and children of them) in <I>arg</I>. <I>arg</I> can be a list
576
+ of nodes or a list of list of nodes.
577
+ To delete all the tree, do <I>$pathName delete [$pathName nodes root]</I>.
578
+
579
+ </DD></DL>
580
+ <DL><DT><A NAME="edit"><I>pathName</I> <B>edit</B></A>
581
+ <I>node</I>
582
+ <I>text</I>
583
+ ?<I>verifycmd</I>?
584
+ ?<I>clickres</I>?
585
+ ?<I>select</I>?
586
+ </DT><DD>
587
+
588
+ Provides a way for the user to edit in place the label of a node. This is
589
+ possible only if <I>node</I> is visible (all its parents are open).
590
+ <BR>The command takes the initial text as argument and does not modify the label of the
591
+ edited node, but returns an empty string if edition is canceled, or the typed text
592
+ if edition is accepted.
593
+ <BR>When editing, the user can cancel by pressing Escape, or accept by pressing Return.
594
+ <BR><I>clickres</I> specifies what to do if the user click outside the editable area.
595
+ If <I>clickres</I> is 0 (the default), the edition is canceled.
596
+ If <I>clickres</I> is 1, the edition is accepted.
597
+ In all other case, the edition continues.
598
+ <BR>If edition is accepted and <I>modifycmd</I> is not empty, then it is called with
599
+ the new text as argument and must return 1 to accept the new text, 0 to refuse it
600
+ and continue edition.
601
+ <BR><I>select</I> specifies wether or not the initial text should be selected. Default is 1.
602
+
603
+ </DD></DL>
604
+ <DL><DT><A NAME="exists"><I>pathName</I> <B>exists</B></A>
605
+ <I>node</I>
606
+ </DT><DD>
607
+
608
+ Returns whether or not <I>node</I> exists in the tree.
609
+
610
+ </DD></DL>
611
+ <DL><DT><A NAME="find"><I>pathName</I> <B>find</B></A>
612
+ <I>findinfo</I>
613
+ ?<I>confine</I>?
614
+ </DT><DD>
615
+
616
+ <p>
617
+ Returns the node given by the position <I>findinfo</I>.
618
+ <I>findinfo</I> can take the form of a pixel position <I>@x,y</I> or
619
+ of the line number of a currently visible Tree node. The first line
620
+ of the Tree has the value of zero.
621
+ </p>
622
+
623
+ <p>
624
+ If <I>confine</I> is non-empty, then confine <I>findinfo</I> to only
625
+ match pixel positions for the area consumed by Tree labels, not just
626
+ anywhere on their lines. (<I>confine</I> has no effect if
627
+ <I>findinfo</I> is a line number.)
628
+ </p>
629
+
630
+ </DD></DL>
631
+ <DL><DT><A NAME="index"><I>pathName</I> <B>index</B></A>
632
+ <I>node</I>
633
+ </DT><DD>
634
+
635
+ Returns the position of <I>node</I> in its parent.
636
+
637
+ </DD></DL>
638
+ <DL><DT><A NAME="insert"><I>pathName</I> <B>insert</B></A>
639
+ <I>index</I>
640
+ <I>parent</I>
641
+ <I>node</I>
642
+ ?<I>option value...</I>?
643
+ </DT><DD>
644
+
645
+ <p>
646
+ Inserts a new node identified by <I>node</I> in the children list of
647
+ <I>parent</I> at position <I>index</I>.
648
+ </p>
649
+
650
+ <p>
651
+ Any instance of <i>#auto</i> within the node name will be replaced by the
652
+ number of the item in the order of insertion.
653
+ </p>
654
+
655
+
656
+ <P>
657
+ <DL><DT><A NAME="Node-anchor"><B>-anchor</B></A></DT>
658
+ <DD>
659
+ Specifies the anchor of the image or window of the node. Defaults to w.
660
+ </DD>
661
+ </DL>
662
+
663
+ <DL><DT><A NAME="Node-data"><B>-data</B></A></DT>
664
+ <DD>
665
+
666
+ User data associated to the node.
667
+
668
+ </DD>
669
+ </DL>
670
+ <DL><DT><A NAME="-deltax"><B>-deltax</B></A></DT>
671
+ <DD>
672
+
673
+ Specifies the horizontal indentation of the node. If the value is -1, the
674
+ node will be drawn with the deltax for the entire tree.
675
+
676
+ </DD>
677
+ </DL>
678
+ <DL><DT><A NAME="Node-drawcross"><B>-drawcross</B></A></DT>
679
+ <DD>
680
+
681
+ Specifies how the cross used to expand or collapse the children of a node
682
+ should be drawn.
683
+ Must be one of <B>auto</B>, <B>always</B> or <B>never</B>.
684
+ <BR>If <B>auto</B>, the cross is drawn only if the node has children.
685
+ If <B>always</B>, the cross is always drawn.
686
+ If <B>never</B>, the cross is never drawn.
687
+ To maintain compatibility with older versions of this widget,
688
+ <B>allways</B> is a deprecated synonym to <B>always</B>.
689
+
690
+ </DD>
691
+ </DL>
692
+ <DL><DT><A NAME="Node-fill"><B>-fill</B></A></DT>
693
+ <DD>
694
+
695
+ Specifies the foreground color of the label of the node.
696
+
697
+ </DD>
698
+ </DL>
699
+ <DL><DT><A NAME="Node-font"><B>-font</B></A></DT>
700
+ <DD>
701
+
702
+ Specifies a font for the label of the node.
703
+
704
+ </DD>
705
+ </DL>
706
+ <DL><DT><A NAME="-helptext"><B>-helptext</B></A></DT>
707
+ <DD>
708
+
709
+ Text for dynamic help. If empty, no help is available for this widget.
710
+ See also <A HREF="DynamicHelp.html">DynamicHelp</A>.
711
+ </DD>
712
+ </DL>
713
+ <DL><DT><A NAME="-helptype"><B>-helptype</B></A></DT>
714
+ <DD>
715
+ Type of dynamic help. Use <I>balloon</I> or <I>variable</I>.
716
+ See also <A HREF="DynamicHelp.html">DynamicHelp</A>.
717
+ </DD>
718
+ </DL>
719
+ <DL><DT><A NAME="-helpvar"><B>-helpvar</B></A></DT>
720
+ <DD>
721
+ Variable to use when <B>helptype</B> option is <I>variable</I>.
722
+ See also <A HREF="DynamicHelp.html">DynamicHelp</A>.
723
+ </DD>
724
+ </DL>
725
+ <DL><DT><A NAME="Node-image"><B>-image</B></A></DT>
726
+ <DD>
727
+
728
+ Specifies an image to display at the left of the label of the node.
729
+ <B>window</B> option override <B>image</B>.
730
+ </DD>
731
+ </DL>
732
+ <DL><DT><A NAME="Node-open"><B>-open</B></A></DT>
733
+ <DD>
734
+
735
+ Specifies wether or not the children of the node should be drawn.
736
+
737
+ </DD>
738
+ </DL>
739
+ <DL><DT><A NAME="-padx"><B>-padx</B></A></DT>
740
+ <DD>
741
+
742
+ Specifies the distance between image or window and the text of the node. If
743
+ the value is -1, the node will be drawn with the padx for the entire tree.
744
+
745
+ </DD>
746
+ </DL>
747
+ <DL><DT><A NAME="Node-selectable"><B>-selectable</B></A></DT>
748
+ <DD>
749
+
750
+ Specifies if the node can be selected or not.
751
+
752
+ </DD>
753
+ </DL>
754
+ <DL><DT><A NAME="Node-text"><B>-text</B></A></DT>
755
+ <DD>
756
+
757
+ Specifies the label of the node.
758
+
759
+ </DD>
760
+ </DL>
761
+ <DL><DT><A NAME="Node-window"><B>-window</B></A></DT>
762
+ <DD>
763
+
764
+ Specifies a pathname to display at the left of the label of the node.
765
+ <B>window</B> option override <B>image</B>.
766
+ </DD>
767
+ </DL>
768
+ </DD></DL>
769
+ <DL><DT><A NAME="itemcget"><I>pathName</I> <B>itemcget</B></A>
770
+ <I>node</I>
771
+ <I>option</I>
772
+ </DT><DD>
773
+
774
+ Returns the current value of a configuration option for the item.
775
+ <I>Option</I> may have any of the values accepted by the item creation command.
776
+
777
+ </DD></DL>
778
+ <DL><DT><A NAME="itemconfigure"><I>pathName</I> <B>itemconfigure</B></A>
779
+ <I>node</I>
780
+ ?<I>option</I>? ?<I>value</I> <I>option</I> <I>value</I> ...?
781
+ </DT><DD>
782
+
783
+ This command is similar to the <B>configure</B> command, except that it applies to the
784
+ options for an individual item, whereas <B>configure</B> applies to the options for
785
+ the widget as a whole. <B>Options</B> may have any of the values accepted by the
786
+ item creation widget command. If options are specified, options are modified as indicated
787
+ in the command and the command returns an empty string. If no options are specified,
788
+ returns a list describing the current options for the item.
789
+ Read-only options are not be modified.
790
+
791
+ </DD></DL>
792
+ <DL><DT><A NAME="line"><I>pathName</I> <B>line</B></A>
793
+ <I>node</I>
794
+ </DT><DD>
795
+
796
+ <p>
797
+ Returns the line number where <I>node</I> was drawn. If the node is
798
+ not visible then return -1. The first line of the tree has the value
799
+ of 0.
800
+ </p>
801
+
802
+ </DD></DL>
803
+ <DL><DT><A NAME="move"><I>pathName</I> <B>move</B></A>
804
+ <I>parent</I>
805
+ <I>node</I>
806
+ <I>index</I>
807
+ </DT><DD>
808
+
809
+ Moves <I>node</I> to the children list of <I>parent</I> at position <I>index</I>.
810
+ <I>parent</I> can not be a descendant of <I>node</I>.
811
+
812
+ </DD></DL>
813
+ <DL><DT><A NAME="nodes"><I>pathName</I> <B>nodes</B></A>
814
+ <I>node</I>
815
+ ?<I>first</I>?
816
+ ?<I>last</I>?
817
+ </DT><DD>
818
+
819
+ Returns parts of the children of <I>node</I>, following <I>first</I> and <I>last</I>.<BR>
820
+ If <I>first</I> and <I>last</I> are omitted, returns the list of all children.
821
+ If <I>first</I> is specified and <I>last</I> omitted, returns the child at index
822
+ <I>first</I>, or an empty string if <I>first</I> refers to a non-existent element.
823
+ If <I>first</I> and <I>last</I> are specified, the command returns a list whose elements
824
+ are all of the children between <I>first</I> and <I>last</I>,
825
+ inclusive. Both <I>first</I> and <I>last</I> may have any of the standard
826
+ forms for indices.
827
+
828
+ </DD></DL>
829
+ <DL><DT><A NAME="opentree"><I>pathName</I> <B>opentree</B></A> <I>node</I> ?<I>recurse</I>?
830
+
831
+ </DT><DD>
832
+
833
+ This command open all the subtree given by <I>node</I>. Recurse through the
834
+ tree starting at <I>node</I> and set <B>open</B> option to 1 depending on value
835
+ of <I>recurse</I>. Default value of <I>recurse</I> is <I>true</I>.
836
+
837
+ </DD></DL>
838
+ <DL><DT><A NAME="parent"><I>pathName</I> <B>parent</B></A>
839
+ <I>node</I>
840
+ </DT><DD>
841
+
842
+ Returns the parent of <I>node</I>.
843
+
844
+ </DD></DL>
845
+ <DL><DT><A NAME="reorder"><I>pathName</I> <B>reorder</B></A>
846
+ <I>node</I>
847
+ <I>neworder</I>
848
+ </DT><DD>
849
+
850
+ Modifies the order of children of <I>node</I> given by <I>neworder</I>. Children of
851
+ <I>node</I> that do not appear in <I>neworder</I> are no moved.
852
+
853
+ </DD></DL>
854
+ <DL><DT><A NAME="see"><I>pathName</I> <B>see</B></A>
855
+ <I>node</I>
856
+ </DT><DD>
857
+
858
+ Arrange the scrolling area to make <I>node</I> visible.
859
+
860
+ </DD></DL>
861
+ <DL><DT><A NAME="selection"><I>pathName</I> <B>selection</B></A>
862
+ <I>cmd</I>
863
+ ?<I>arg...</I>?
864
+ </DT><DD>
865
+
866
+ Modifies the list of selected nodes following <I>cmd</I>:
867
+ <DL>
868
+ <DT><B>add</B>
869
+ <DD>Adds all nodes in <I>arg</I> to the selection.
870
+ <DT><B>clear</B>
871
+ <DD>Removes all nodes from the selection.
872
+ <DT><B>get</B>
873
+ <DD>Returns a list containing the indices of current selected nodes.
874
+ <DT><B>includes</B>
875
+ <DD>Tests if the specified node is selected. Returns true if the answer is yes, and false else.
876
+ <DT><B>range</B>
877
+ <DD>Sets the selection to all nodes between the two specified ones.
878
+ <DT><B>remove</B>
879
+ <DD>Removes all nodes in <I>arg</I> from the selection.
880
+ <DT><B>set</B>
881
+ <DD>Sets the selection to all nodes in <I>arg</I>.
882
+ <DT><B>toggle</B>
883
+ <DD>Toggles the selection status of all nodes in <I>arg</I>.
884
+ </DL>
885
+
886
+ The subcommands <B>add</B>, <B>range</B>, and <B>set</B> silently
887
+ ignore nodes which are declared unselectable. See the node option
888
+ <a href="#Node-selectable">-selectable</a> to influence this.
889
+
890
+ </DD></DL>
891
+
892
+ </DD></DL>
893
+
894
+ <DL><DT><A NAME="toggle"><I>pathName</I> <B>toggle</B></A>
895
+ <I>node</I>
896
+ </DT><DD>
897
+ Toggle the open/close status of the given <i>node</i>.
898
+ </DD></DL>
899
+
900
+ <DL><DT><A NAME="visible"><I>pathName</I> <B>visible</B></A>
901
+ <I>node</I>
902
+ </DT><DD>
903
+
904
+ Returns whether or not <I>node</I> is visible (all its parents are open).
905
+
906
+ </DD></DL>
907
+ <DL><DT><A NAME="xview"><I>pathName</I> <B>xview</B></A>
908
+ ?<I>arg...</I>?
909
+ </DT><DD>
910
+
911
+ Standard command to enable horizontal scrolling of <I>pathName</I>.
912
+
913
+ </DD></DL>
914
+ <DL><DT><A NAME="yview"><I>pathName</I> <B>yview</B></A>
915
+ ?<I>arg...</I>?
916
+ </DT><DD>
917
+
918
+ Standard command to enable vertical scrolling of <I>pathName</I>.
919
+
920
+ </DD></DL>
921
+
922
+ <B><A NAME="nodes">BINDINGS</A></B><BR>
923
+
924
+ <p>
925
+ A <b>&lt;&lt;TreeSelect&gt;&gt;</b> virtual event is generated any time the
926
+ selection in the tree changes. This is the default behavior of an
927
+ item in the tree, but it can be overridden with the bindText or
928
+ bindImage command. If the button 1 binding is overridden, this event may
929
+ not be generated.
930
+ </p>
931
+
932
+ <p>
933
+ The tree has all the standard mouse wheel bindings when it has focus.
934
+ </p>
935
+
936
+ <B><A NAME="bug">CURRENT BUG WITH BINDS</A></B><BR>
937
+
938
+ <p>
939
+ There currently exists a bug with the Tree's <B>bindArea</B>,
940
+ <B>bindImage</B>, and <B>bindText</B> commands. Contrary to the given
941
+ text, occurrences of <B>%W</B> within scripts do <em>not</em>
942
+ substitute the Tree's path, but rather the Tree's underlying canvas.
943
+ A future release of BWidget will fix this error. For now it is
944
+ recommended that you do not use <B>%W</B> within your scripts.
945
+ </p>
946
+
947
+ </BODY></HTML>