tk 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1060) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.travis.yml +6 -0
  4. data/BSDL +22 -0
  5. data/ChangeLog.tkextlib +949 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE.txt +56 -0
  8. data/MANUAL_tcltklib.eng +467 -0
  9. data/MANUAL_tcltklib.ja +578 -0
  10. data/README.1st +19 -0
  11. data/README.ActiveTcl +62 -0
  12. data/README.fork +34 -0
  13. data/README.macosx-aqua +67 -0
  14. data/README.md +33 -0
  15. data/README.tcltklib +152 -0
  16. data/Rakefile +16 -0
  17. data/bin/console +14 -0
  18. data/bin/setup +8 -0
  19. data/ext/tk/config_list.in +41 -0
  20. data/ext/tk/extconf.rb +2098 -0
  21. data/ext/tk/old-extconf.rb +441 -0
  22. data/ext/tk/stubs.c +592 -0
  23. data/ext/tk/stubs.h +33 -0
  24. data/ext/tk/tcltklib.c +11066 -0
  25. data/ext/tk/tkutil/extconf.rb +14 -0
  26. data/ext/tk/tkutil/tkutil.c +1900 -0
  27. data/lib/README +30 -0
  28. data/lib/multi-tk.rb +3743 -0
  29. data/lib/remote-tk.rb +527 -0
  30. data/lib/tcltk.rb +369 -0
  31. data/lib/tk.rb +5758 -0
  32. data/lib/tk/after.rb +7 -0
  33. data/lib/tk/autoload.rb +763 -0
  34. data/lib/tk/bgerror.rb +30 -0
  35. data/lib/tk/bindtag.rb +139 -0
  36. data/lib/tk/busy.rb +119 -0
  37. data/lib/tk/button.rb +32 -0
  38. data/lib/tk/canvas.rb +847 -0
  39. data/lib/tk/canvastag.rb +460 -0
  40. data/lib/tk/checkbutton.rb +33 -0
  41. data/lib/tk/clipboard.rb +76 -0
  42. data/lib/tk/clock.rb +72 -0
  43. data/lib/tk/composite.rb +485 -0
  44. data/lib/tk/console.rb +53 -0
  45. data/lib/tk/dialog.rb +327 -0
  46. data/lib/tk/encodedstr.rb +188 -0
  47. data/lib/tk/entry.rb +121 -0
  48. data/lib/tk/event.rb +563 -0
  49. data/lib/tk/font.rb +2352 -0
  50. data/lib/tk/fontchooser.rb +181 -0
  51. data/lib/tk/frame.rb +133 -0
  52. data/lib/tk/grid.rb +280 -0
  53. data/lib/tk/image.rb +396 -0
  54. data/lib/tk/itemconfig.rb +1222 -0
  55. data/lib/tk/itemfont.rb +328 -0
  56. data/lib/tk/kinput.rb +72 -0
  57. data/lib/tk/label.rb +23 -0
  58. data/lib/tk/labelframe.rb +32 -0
  59. data/lib/tk/listbox.rb +285 -0
  60. data/lib/tk/macpkg.rb +81 -0
  61. data/lib/tk/menu.rb +719 -0
  62. data/lib/tk/menubar.rb +138 -0
  63. data/lib/tk/menuspec.rb +457 -0
  64. data/lib/tk/message.rb +25 -0
  65. data/lib/tk/mngfocus.rb +34 -0
  66. data/lib/tk/msgcat.rb +300 -0
  67. data/lib/tk/namespace.rb +547 -0
  68. data/lib/tk/optiondb.rb +372 -0
  69. data/lib/tk/optionobj.rb +213 -0
  70. data/lib/tk/pack.rb +108 -0
  71. data/lib/tk/package.rb +144 -0
  72. data/lib/tk/palette.rb +56 -0
  73. data/lib/tk/panedwindow.rb +261 -0
  74. data/lib/tk/place.rb +129 -0
  75. data/lib/tk/radiobutton.rb +74 -0
  76. data/lib/tk/root.rb +96 -0
  77. data/lib/tk/scale.rb +113 -0
  78. data/lib/tk/scrollable.rb +83 -0
  79. data/lib/tk/scrollbar.rb +184 -0
  80. data/lib/tk/scrollbox.rb +40 -0
  81. data/lib/tk/selection.rb +87 -0
  82. data/lib/tk/spinbox.rb +145 -0
  83. data/lib/tk/tagfont.rb +44 -0
  84. data/lib/tk/text.rb +1605 -0
  85. data/lib/tk/textimage.rb +89 -0
  86. data/lib/tk/textmark.rb +205 -0
  87. data/lib/tk/texttag.rb +322 -0
  88. data/lib/tk/textwindow.rb +155 -0
  89. data/lib/tk/timer.rb +666 -0
  90. data/lib/tk/tk_mac.rb +159 -0
  91. data/lib/tk/toplevel.rb +265 -0
  92. data/lib/tk/ttk_selector.rb +99 -0
  93. data/lib/tk/txtwin_abst.rb +40 -0
  94. data/lib/tk/validation.rb +398 -0
  95. data/lib/tk/variable.rb +1797 -0
  96. data/lib/tk/virtevent.rb +140 -0
  97. data/lib/tk/winfo.rb +393 -0
  98. data/lib/tk/winpkg.rb +157 -0
  99. data/lib/tk/wm.rb +553 -0
  100. data/lib/tk/xim.rb +123 -0
  101. data/lib/tkafter.rb +5 -0
  102. data/lib/tkbgerror.rb +5 -0
  103. data/lib/tkcanvas.rb +5 -0
  104. data/lib/tkclass.rb +48 -0
  105. data/lib/tkconsole.rb +5 -0
  106. data/lib/tkdialog.rb +5 -0
  107. data/lib/tkentry.rb +5 -0
  108. data/lib/tkextlib/ICONS.rb +14 -0
  109. data/lib/tkextlib/ICONS/icons.rb +130 -0
  110. data/lib/tkextlib/ICONS/setup.rb +9 -0
  111. data/lib/tkextlib/SUPPORT_STATUS +193 -0
  112. data/lib/tkextlib/blt.rb +190 -0
  113. data/lib/tkextlib/blt/barchart.rb +80 -0
  114. data/lib/tkextlib/blt/bitmap.rb +113 -0
  115. data/lib/tkextlib/blt/busy.rb +84 -0
  116. data/lib/tkextlib/blt/component.rb +2219 -0
  117. data/lib/tkextlib/blt/container.rb +29 -0
  118. data/lib/tkextlib/blt/cutbuffer.rb +24 -0
  119. data/lib/tkextlib/blt/dragdrop.rb +270 -0
  120. data/lib/tkextlib/blt/eps.rb +33 -0
  121. data/lib/tkextlib/blt/graph.rb +68 -0
  122. data/lib/tkextlib/blt/htext.rb +113 -0
  123. data/lib/tkextlib/blt/setup.rb +9 -0
  124. data/lib/tkextlib/blt/spline.rb +24 -0
  125. data/lib/tkextlib/blt/stripchart.rb +75 -0
  126. data/lib/tkextlib/blt/table.rb +413 -0
  127. data/lib/tkextlib/blt/tabnotebook.rb +111 -0
  128. data/lib/tkextlib/blt/tabset.rb +505 -0
  129. data/lib/tkextlib/blt/ted.rb +69 -0
  130. data/lib/tkextlib/blt/tile.rb +26 -0
  131. data/lib/tkextlib/blt/tile/button.rb +17 -0
  132. data/lib/tkextlib/blt/tile/checkbutton.rb +18 -0
  133. data/lib/tkextlib/blt/tile/frame.rb +17 -0
  134. data/lib/tkextlib/blt/tile/label.rb +17 -0
  135. data/lib/tkextlib/blt/tile/radiobutton.rb +18 -0
  136. data/lib/tkextlib/blt/tile/scrollbar.rb +17 -0
  137. data/lib/tkextlib/blt/tile/toplevel.rb +17 -0
  138. data/lib/tkextlib/blt/tree.rb +1059 -0
  139. data/lib/tkextlib/blt/treeview.rb +1288 -0
  140. data/lib/tkextlib/blt/unix_dnd.rb +142 -0
  141. data/lib/tkextlib/blt/vector.rb +257 -0
  142. data/lib/tkextlib/blt/watch.rb +176 -0
  143. data/lib/tkextlib/blt/win_printer.rb +62 -0
  144. data/lib/tkextlib/blt/winop.rb +108 -0
  145. data/lib/tkextlib/bwidget.rb +154 -0
  146. data/lib/tkextlib/bwidget/arrowbutton.rb +22 -0
  147. data/lib/tkextlib/bwidget/bitmap.rb +22 -0
  148. data/lib/tkextlib/bwidget/button.rb +32 -0
  149. data/lib/tkextlib/bwidget/buttonbox.rb +91 -0
  150. data/lib/tkextlib/bwidget/combobox.rb +63 -0
  151. data/lib/tkextlib/bwidget/dialog.rb +195 -0
  152. data/lib/tkextlib/bwidget/dragsite.rb +32 -0
  153. data/lib/tkextlib/bwidget/dropsite.rb +40 -0
  154. data/lib/tkextlib/bwidget/dynamichelp.rb +64 -0
  155. data/lib/tkextlib/bwidget/entry.rb +44 -0
  156. data/lib/tkextlib/bwidget/label.rb +42 -0
  157. data/lib/tkextlib/bwidget/labelentry.rb +81 -0
  158. data/lib/tkextlib/bwidget/labelframe.rb +53 -0
  159. data/lib/tkextlib/bwidget/listbox.rb +362 -0
  160. data/lib/tkextlib/bwidget/mainframe.rb +133 -0
  161. data/lib/tkextlib/bwidget/messagedlg.rb +193 -0
  162. data/lib/tkextlib/bwidget/notebook.rb +167 -0
  163. data/lib/tkextlib/bwidget/pagesmanager.rb +74 -0
  164. data/lib/tkextlib/bwidget/panedwindow.rb +43 -0
  165. data/lib/tkextlib/bwidget/panelframe.rb +68 -0
  166. data/lib/tkextlib/bwidget/passwddlg.rb +45 -0
  167. data/lib/tkextlib/bwidget/progressbar.rb +21 -0
  168. data/lib/tkextlib/bwidget/progressdlg.rb +59 -0
  169. data/lib/tkextlib/bwidget/scrollableframe.rb +41 -0
  170. data/lib/tkextlib/bwidget/scrolledwindow.rb +49 -0
  171. data/lib/tkextlib/bwidget/scrollview.rb +26 -0
  172. data/lib/tkextlib/bwidget/selectcolor.rb +74 -0
  173. data/lib/tkextlib/bwidget/selectfont.rb +92 -0
  174. data/lib/tkextlib/bwidget/separator.rb +21 -0
  175. data/lib/tkextlib/bwidget/setup.rb +9 -0
  176. data/lib/tkextlib/bwidget/spinbox.rb +99 -0
  177. data/lib/tkextlib/bwidget/statusbar.rb +63 -0
  178. data/lib/tkextlib/bwidget/titleframe.rb +34 -0
  179. data/lib/tkextlib/bwidget/tree.rb +501 -0
  180. data/lib/tkextlib/bwidget/widget.rb +130 -0
  181. data/lib/tkextlib/itcl.rb +14 -0
  182. data/lib/tkextlib/itcl/incr_tcl.rb +179 -0
  183. data/lib/tkextlib/itcl/setup.rb +14 -0
  184. data/lib/tkextlib/itk.rb +14 -0
  185. data/lib/tkextlib/itk/incr_tk.rb +447 -0
  186. data/lib/tkextlib/itk/setup.rb +14 -0
  187. data/lib/tkextlib/iwidgets.rb +95 -0
  188. data/lib/tkextlib/iwidgets/buttonbox.rb +122 -0
  189. data/lib/tkextlib/iwidgets/calendar.rb +126 -0
  190. data/lib/tkextlib/iwidgets/canvasprintbox.rb +54 -0
  191. data/lib/tkextlib/iwidgets/canvasprintdialog.rb +39 -0
  192. data/lib/tkextlib/iwidgets/checkbox.rb +131 -0
  193. data/lib/tkextlib/iwidgets/combobox.rb +105 -0
  194. data/lib/tkextlib/iwidgets/dateentry.rb +21 -0
  195. data/lib/tkextlib/iwidgets/datefield.rb +59 -0
  196. data/lib/tkextlib/iwidgets/dialog.rb +21 -0
  197. data/lib/tkextlib/iwidgets/dialogshell.rb +122 -0
  198. data/lib/tkextlib/iwidgets/disjointlistbox.rb +51 -0
  199. data/lib/tkextlib/iwidgets/entryfield.rb +186 -0
  200. data/lib/tkextlib/iwidgets/extbutton.rb +41 -0
  201. data/lib/tkextlib/iwidgets/extfileselectionbox.rb +47 -0
  202. data/lib/tkextlib/iwidgets/extfileselectiondialog.rb +34 -0
  203. data/lib/tkextlib/iwidgets/feedback.rb +36 -0
  204. data/lib/tkextlib/iwidgets/fileselectionbox.rb +47 -0
  205. data/lib/tkextlib/iwidgets/fileselectiondialog.rb +34 -0
  206. data/lib/tkextlib/iwidgets/finddialog.rb +43 -0
  207. data/lib/tkextlib/iwidgets/hierarchy.rb +366 -0
  208. data/lib/tkextlib/iwidgets/hyperhelp.rb +51 -0
  209. data/lib/tkextlib/iwidgets/labeledframe.rb +40 -0
  210. data/lib/tkextlib/iwidgets/labeledwidget.rb +46 -0
  211. data/lib/tkextlib/iwidgets/mainwindow.rb +68 -0
  212. data/lib/tkextlib/iwidgets/menubar.rb +213 -0
  213. data/lib/tkextlib/iwidgets/messagebox.rb +94 -0
  214. data/lib/tkextlib/iwidgets/messagedialog.rb +21 -0
  215. data/lib/tkextlib/iwidgets/notebook.rb +176 -0
  216. data/lib/tkextlib/iwidgets/optionmenu.rb +93 -0
  217. data/lib/tkextlib/iwidgets/panedwindow.rb +135 -0
  218. data/lib/tkextlib/iwidgets/promptdialog.rb +132 -0
  219. data/lib/tkextlib/iwidgets/pushbutton.rb +36 -0
  220. data/lib/tkextlib/iwidgets/radiobox.rb +122 -0
  221. data/lib/tkextlib/iwidgets/scopedobject.rb +25 -0
  222. data/lib/tkextlib/iwidgets/scrolledcanvas.rb +354 -0
  223. data/lib/tkextlib/iwidgets/scrolledframe.rb +60 -0
  224. data/lib/tkextlib/iwidgets/scrolledhtml.rb +59 -0
  225. data/lib/tkextlib/iwidgets/scrolledlistbox.rb +208 -0
  226. data/lib/tkextlib/iwidgets/scrolledtext.rb +569 -0
  227. data/lib/tkextlib/iwidgets/scrolledwidget.rb +21 -0
  228. data/lib/tkextlib/iwidgets/selectionbox.rb +103 -0
  229. data/lib/tkextlib/iwidgets/selectiondialog.rb +93 -0
  230. data/lib/tkextlib/iwidgets/setup.rb +9 -0
  231. data/lib/tkextlib/iwidgets/shell.rb +39 -0
  232. data/lib/tkextlib/iwidgets/spindate.rb +49 -0
  233. data/lib/tkextlib/iwidgets/spinint.rb +31 -0
  234. data/lib/tkextlib/iwidgets/spinner.rb +170 -0
  235. data/lib/tkextlib/iwidgets/spintime.rb +49 -0
  236. data/lib/tkextlib/iwidgets/tabnotebook.rb +182 -0
  237. data/lib/tkextlib/iwidgets/tabset.rb +146 -0
  238. data/lib/tkextlib/iwidgets/timeentry.rb +26 -0
  239. data/lib/tkextlib/iwidgets/timefield.rb +59 -0
  240. data/lib/tkextlib/iwidgets/toolbar.rb +113 -0
  241. data/lib/tkextlib/iwidgets/watch.rb +57 -0
  242. data/lib/tkextlib/pkg_checker.rb +185 -0
  243. data/lib/tkextlib/setup.rb +9 -0
  244. data/lib/tkextlib/tcllib.rb +106 -0
  245. data/lib/tkextlib/tcllib/README +135 -0
  246. data/lib/tkextlib/tcllib/autoscroll.rb +159 -0
  247. data/lib/tkextlib/tcllib/calendar.rb +56 -0
  248. data/lib/tkextlib/tcllib/canvas_sqmap.rb +37 -0
  249. data/lib/tkextlib/tcllib/canvas_zoom.rb +22 -0
  250. data/lib/tkextlib/tcllib/chatwidget.rb +152 -0
  251. data/lib/tkextlib/tcllib/crosshair.rb +118 -0
  252. data/lib/tkextlib/tcllib/ctext.rb +161 -0
  253. data/lib/tkextlib/tcllib/cursor.rb +98 -0
  254. data/lib/tkextlib/tcllib/dateentry.rb +63 -0
  255. data/lib/tkextlib/tcllib/datefield.rb +58 -0
  256. data/lib/tkextlib/tcllib/diagrams.rb +225 -0
  257. data/lib/tkextlib/tcllib/dialog.rb +85 -0
  258. data/lib/tkextlib/tcllib/getstring.rb +135 -0
  259. data/lib/tkextlib/tcllib/history.rb +74 -0
  260. data/lib/tkextlib/tcllib/ico.rb +147 -0
  261. data/lib/tkextlib/tcllib/ip_entry.rb +76 -0
  262. data/lib/tkextlib/tcllib/khim.rb +69 -0
  263. data/lib/tkextlib/tcllib/menuentry.rb +48 -0
  264. data/lib/tkextlib/tcllib/ntext.rb +147 -0
  265. data/lib/tkextlib/tcllib/panelframe.rb +79 -0
  266. data/lib/tkextlib/tcllib/plotchart.rb +1405 -0
  267. data/lib/tkextlib/tcllib/ruler.rb +66 -0
  268. data/lib/tkextlib/tcllib/screenruler.rb +69 -0
  269. data/lib/tkextlib/tcllib/scrolledwindow.rb +58 -0
  270. data/lib/tkextlib/tcllib/scrollwin.rb +62 -0
  271. data/lib/tkextlib/tcllib/setup.rb +9 -0
  272. data/lib/tkextlib/tcllib/statusbar.rb +80 -0
  273. data/lib/tkextlib/tcllib/style.rb +62 -0
  274. data/lib/tkextlib/tcllib/superframe.rb +52 -0
  275. data/lib/tkextlib/tcllib/swaplist.rb +151 -0
  276. data/lib/tkextlib/tcllib/tablelist.rb +29 -0
  277. data/lib/tkextlib/tcllib/tablelist_core.rb +1073 -0
  278. data/lib/tkextlib/tcllib/tablelist_tile.rb +44 -0
  279. data/lib/tkextlib/tcllib/tkpiechart.rb +315 -0
  280. data/lib/tkextlib/tcllib/toolbar.rb +176 -0
  281. data/lib/tkextlib/tcllib/tooltip.rb +105 -0
  282. data/lib/tkextlib/tcllib/validator.rb +66 -0
  283. data/lib/tkextlib/tcllib/widget.rb +83 -0
  284. data/lib/tkextlib/tclx.rb +14 -0
  285. data/lib/tkextlib/tclx/setup.rb +9 -0
  286. data/lib/tkextlib/tclx/tclx.rb +75 -0
  287. data/lib/tkextlib/tile.rb +450 -0
  288. data/lib/tkextlib/tile/dialog.rb +103 -0
  289. data/lib/tkextlib/tile/setup.rb +9 -0
  290. data/lib/tkextlib/tile/sizegrip.rb +33 -0
  291. data/lib/tkextlib/tile/style.rb +337 -0
  292. data/lib/tkextlib/tile/tbutton.rb +35 -0
  293. data/lib/tkextlib/tile/tcheckbutton.rb +39 -0
  294. data/lib/tkextlib/tile/tcombobox.rb +56 -0
  295. data/lib/tkextlib/tile/tentry.rb +50 -0
  296. data/lib/tkextlib/tile/tframe.rb +35 -0
  297. data/lib/tkextlib/tile/tlabel.rb +35 -0
  298. data/lib/tkextlib/tile/tlabelframe.rb +39 -0
  299. data/lib/tkextlib/tile/tmenubutton.rb +39 -0
  300. data/lib/tkextlib/tile/tnotebook.rb +148 -0
  301. data/lib/tkextlib/tile/tpaned.rb +246 -0
  302. data/lib/tkextlib/tile/tprogressbar.rb +58 -0
  303. data/lib/tkextlib/tile/tradiobutton.rb +39 -0
  304. data/lib/tkextlib/tile/treeview.rb +1337 -0
  305. data/lib/tkextlib/tile/tscale.rb +57 -0
  306. data/lib/tkextlib/tile/tscrollbar.rb +64 -0
  307. data/lib/tkextlib/tile/tseparator.rb +35 -0
  308. data/lib/tkextlib/tile/tspinbox.rb +108 -0
  309. data/lib/tkextlib/tile/tsquare.rb +31 -0
  310. data/lib/tkextlib/tkDND.rb +19 -0
  311. data/lib/tkextlib/tkDND/setup.rb +9 -0
  312. data/lib/tkextlib/tkDND/shape.rb +126 -0
  313. data/lib/tkextlib/tkDND/tkdnd.rb +183 -0
  314. data/lib/tkextlib/tkHTML.rb +14 -0
  315. data/lib/tkextlib/tkHTML/htmlwidget.rb +454 -0
  316. data/lib/tkextlib/tkHTML/setup.rb +9 -0
  317. data/lib/tkextlib/tkimg.rb +37 -0
  318. data/lib/tkextlib/tkimg/README +26 -0
  319. data/lib/tkextlib/tkimg/bmp.rb +34 -0
  320. data/lib/tkextlib/tkimg/dted.rb +34 -0
  321. data/lib/tkextlib/tkimg/gif.rb +34 -0
  322. data/lib/tkextlib/tkimg/ico.rb +34 -0
  323. data/lib/tkextlib/tkimg/jpeg.rb +34 -0
  324. data/lib/tkextlib/tkimg/pcx.rb +34 -0
  325. data/lib/tkextlib/tkimg/pixmap.rb +45 -0
  326. data/lib/tkextlib/tkimg/png.rb +34 -0
  327. data/lib/tkextlib/tkimg/ppm.rb +34 -0
  328. data/lib/tkextlib/tkimg/ps.rb +34 -0
  329. data/lib/tkextlib/tkimg/raw.rb +34 -0
  330. data/lib/tkextlib/tkimg/setup.rb +9 -0
  331. data/lib/tkextlib/tkimg/sgi.rb +34 -0
  332. data/lib/tkextlib/tkimg/sun.rb +34 -0
  333. data/lib/tkextlib/tkimg/tga.rb +34 -0
  334. data/lib/tkextlib/tkimg/tiff.rb +34 -0
  335. data/lib/tkextlib/tkimg/window.rb +34 -0
  336. data/lib/tkextlib/tkimg/xbm.rb +34 -0
  337. data/lib/tkextlib/tkimg/xpm.rb +34 -0
  338. data/lib/tkextlib/tktable.rb +15 -0
  339. data/lib/tkextlib/tktable/setup.rb +9 -0
  340. data/lib/tkextlib/tktable/tktable.rb +967 -0
  341. data/lib/tkextlib/tktrans.rb +15 -0
  342. data/lib/tkextlib/tktrans/setup.rb +9 -0
  343. data/lib/tkextlib/tktrans/tktrans.rb +65 -0
  344. data/lib/tkextlib/treectrl.rb +14 -0
  345. data/lib/tkextlib/treectrl/setup.rb +9 -0
  346. data/lib/tkextlib/treectrl/tktreectrl.rb +2523 -0
  347. data/lib/tkextlib/trofs.rb +14 -0
  348. data/lib/tkextlib/trofs/setup.rb +9 -0
  349. data/lib/tkextlib/trofs/trofs.rb +52 -0
  350. data/lib/tkextlib/version.rb +7 -0
  351. data/lib/tkextlib/vu.rb +49 -0
  352. data/lib/tkextlib/vu/bargraph.rb +62 -0
  353. data/lib/tkextlib/vu/charts.rb +54 -0
  354. data/lib/tkextlib/vu/dial.rb +103 -0
  355. data/lib/tkextlib/vu/pie.rb +287 -0
  356. data/lib/tkextlib/vu/setup.rb +9 -0
  357. data/lib/tkextlib/vu/spinbox.rb +23 -0
  358. data/lib/tkextlib/winico.rb +15 -0
  359. data/lib/tkextlib/winico/setup.rb +9 -0
  360. data/lib/tkextlib/winico/winico.rb +225 -0
  361. data/lib/tkfont.rb +5 -0
  362. data/lib/tkmacpkg.rb +5 -0
  363. data/lib/tkmenubar.rb +5 -0
  364. data/lib/tkmngfocus.rb +5 -0
  365. data/lib/tkpalette.rb +5 -0
  366. data/lib/tkscrollbox.rb +5 -0
  367. data/lib/tktext.rb +5 -0
  368. data/lib/tkvirtevent.rb +5 -0
  369. data/lib/tkwinpkg.rb +5 -0
  370. data/old-README.tcltklib.ja +159 -0
  371. data/sample/24hr_clock.rb +287 -0
  372. data/sample/binding_sample.rb +88 -0
  373. data/sample/bindtag_sample.rb +128 -0
  374. data/sample/binstr_usage.rb +46 -0
  375. data/sample/btn_with_frame.rb +21 -0
  376. data/sample/cd_timer.rb +82 -0
  377. data/sample/cmd_res_test.rb +18 -0
  378. data/sample/cmd_resource +5 -0
  379. data/sample/demos-en/ChangeLog +64 -0
  380. data/sample/demos-en/ChangeLog.prev +9 -0
  381. data/sample/demos-en/README +138 -0
  382. data/sample/demos-en/README.1st +18 -0
  383. data/sample/demos-en/README.tkencoding +29 -0
  384. data/sample/demos-en/anilabel.rb +175 -0
  385. data/sample/demos-en/aniwave.rb +119 -0
  386. data/sample/demos-en/arrow.rb +250 -0
  387. data/sample/demos-en/bind.rb +128 -0
  388. data/sample/demos-en/bitmap.rb +76 -0
  389. data/sample/demos-en/browse1 +63 -0
  390. data/sample/demos-en/browse2 +82 -0
  391. data/sample/demos-en/button.rb +85 -0
  392. data/sample/demos-en/check.rb +73 -0
  393. data/sample/demos-en/check2.rb +110 -0
  394. data/sample/demos-en/clrpick.rb +88 -0
  395. data/sample/demos-en/colors.rb +159 -0
  396. data/sample/demos-en/combo.rb +97 -0
  397. data/sample/demos-en/cscroll.rb +137 -0
  398. data/sample/demos-en/ctext.rb +208 -0
  399. data/sample/demos-en/dialog1.rb +39 -0
  400. data/sample/demos-en/dialog2.rb +42 -0
  401. data/sample/demos-en/doc.org/README +7 -0
  402. data/sample/demos-en/doc.org/README.JP +14 -0
  403. data/sample/demos-en/doc.org/README.tk80 +46 -0
  404. data/sample/demos-en/doc.org/license.terms +39 -0
  405. data/sample/demos-en/doc.org/license.terms.tk80 +39 -0
  406. data/sample/demos-en/entry1.rb +59 -0
  407. data/sample/demos-en/entry2.rb +94 -0
  408. data/sample/demos-en/entry3.rb +221 -0
  409. data/sample/demos-en/filebox.rb +103 -0
  410. data/sample/demos-en/floor.rb +1724 -0
  411. data/sample/demos-en/floor2.rb +1723 -0
  412. data/sample/demos-en/form.rb +65 -0
  413. data/sample/demos-en/goldberg.rb +2007 -0
  414. data/sample/demos-en/hello +14 -0
  415. data/sample/demos-en/hscale.rb +76 -0
  416. data/sample/demos-en/icon.rb +106 -0
  417. data/sample/demos-en/image1.rb +66 -0
  418. data/sample/demos-en/image2.rb +108 -0
  419. data/sample/demos-en/image3.rb +126 -0
  420. data/sample/demos-en/items.rb +382 -0
  421. data/sample/demos-en/ixset +333 -0
  422. data/sample/demos-en/ixset2 +367 -0
  423. data/sample/demos-en/knightstour.rb +272 -0
  424. data/sample/demos-en/label.rb +73 -0
  425. data/sample/demos-en/labelframe.rb +96 -0
  426. data/sample/demos-en/mclist.rb +118 -0
  427. data/sample/demos-en/menu.rb +197 -0
  428. data/sample/demos-en/menu84.rb +216 -0
  429. data/sample/demos-en/menubu.rb +238 -0
  430. data/sample/demos-en/msgbox.rb +91 -0
  431. data/sample/demos-en/msgbox2.rb +92 -0
  432. data/sample/demos-en/paned1.rb +48 -0
  433. data/sample/demos-en/paned2.rb +95 -0
  434. data/sample/demos-en/pendulum.rb +241 -0
  435. data/sample/demos-en/plot.rb +125 -0
  436. data/sample/demos-en/puzzle.rb +135 -0
  437. data/sample/demos-en/radio.rb +87 -0
  438. data/sample/demos-en/radio2.rb +110 -0
  439. data/sample/demos-en/radio3.rb +118 -0
  440. data/sample/demos-en/rmt +268 -0
  441. data/sample/demos-en/rolodex +320 -0
  442. data/sample/demos-en/ruler.rb +206 -0
  443. data/sample/demos-en/sayings.rb +107 -0
  444. data/sample/demos-en/search.rb +188 -0
  445. data/sample/demos-en/spin.rb +66 -0
  446. data/sample/demos-en/square +81 -0
  447. data/sample/demos-en/states.rb +81 -0
  448. data/sample/demos-en/style.rb +232 -0
  449. data/sample/demos-en/tcolor +526 -0
  450. data/sample/demos-en/text.rb +129 -0
  451. data/sample/demos-en/textpeer.rb +77 -0
  452. data/sample/demos-en/timer +136 -0
  453. data/sample/demos-en/tkencoding.rb +43 -0
  454. data/sample/demos-en/toolbar.rb +131 -0
  455. data/sample/demos-en/tree.rb +120 -0
  456. data/sample/demos-en/ttkbut.rb +140 -0
  457. data/sample/demos-en/ttkmenu.rb +86 -0
  458. data/sample/demos-en/ttknote.rb +90 -0
  459. data/sample/demos-en/ttkpane.rb +214 -0
  460. data/sample/demos-en/ttkprogress.rb +67 -0
  461. data/sample/demos-en/twind.rb +292 -0
  462. data/sample/demos-en/twind2.rb +385 -0
  463. data/sample/demos-en/unicodeout.rb +115 -0
  464. data/sample/demos-en/vscale.rb +80 -0
  465. data/sample/demos-en/widget +1087 -0
  466. data/sample/demos-jp/README +54 -0
  467. data/sample/demos-jp/README.1st +20 -0
  468. data/sample/demos-jp/anilabel.rb +178 -0
  469. data/sample/demos-jp/aniwave.rb +121 -0
  470. data/sample/demos-jp/arrow.rb +248 -0
  471. data/sample/demos-jp/bind.rb +126 -0
  472. data/sample/demos-jp/bitmap.rb +75 -0
  473. data/sample/demos-jp/browse1 +63 -0
  474. data/sample/demos-jp/browse2 +82 -0
  475. data/sample/demos-jp/button.rb +84 -0
  476. data/sample/demos-jp/check.rb +71 -0
  477. data/sample/demos-jp/check2.rb +111 -0
  478. data/sample/demos-jp/clrpick.rb +85 -0
  479. data/sample/demos-jp/colors.rb +156 -0
  480. data/sample/demos-jp/combo.rb +99 -0
  481. data/sample/demos-jp/cscroll.rb +135 -0
  482. data/sample/demos-jp/ctext.rb +205 -0
  483. data/sample/demos-jp/dialog1.rb +40 -0
  484. data/sample/demos-jp/dialog2.rb +44 -0
  485. data/sample/demos-jp/doc.org/README +7 -0
  486. data/sample/demos-jp/doc.org/README.JP +14 -0
  487. data/sample/demos-jp/doc.org/README.tk80 +46 -0
  488. data/sample/demos-jp/doc.org/license.terms +39 -0
  489. data/sample/demos-jp/doc.org/license.terms.tk80 +39 -0
  490. data/sample/demos-jp/entry1.rb +61 -0
  491. data/sample/demos-jp/entry2.rb +92 -0
  492. data/sample/demos-jp/entry3.rb +226 -0
  493. data/sample/demos-jp/filebox.rb +103 -0
  494. data/sample/demos-jp/floor.rb +1722 -0
  495. data/sample/demos-jp/floor2.rb +1720 -0
  496. data/sample/demos-jp/form.rb +67 -0
  497. data/sample/demos-jp/goldberg.rb +2012 -0
  498. data/sample/demos-jp/hello +10 -0
  499. data/sample/demos-jp/hscale.rb +79 -0
  500. data/sample/demos-jp/icon.rb +104 -0
  501. data/sample/demos-jp/image1.rb +65 -0
  502. data/sample/demos-jp/image2.rb +107 -0
  503. data/sample/demos-jp/image3.rb +128 -0
  504. data/sample/demos-jp/items.rb +380 -0
  505. data/sample/demos-jp/ixset +333 -0
  506. data/sample/demos-jp/ixset2 +369 -0
  507. data/sample/demos-jp/knightstour.rb +274 -0
  508. data/sample/demos-jp/label.rb +70 -0
  509. data/sample/demos-jp/labelframe.rb +103 -0
  510. data/sample/demos-jp/mclist.rb +122 -0
  511. data/sample/demos-jp/menu.rb +202 -0
  512. data/sample/demos-jp/menu84.rb +214 -0
  513. data/sample/demos-jp/menu8x.rb +234 -0
  514. data/sample/demos-jp/menubu.rb +239 -0
  515. data/sample/demos-jp/msgbox.rb +90 -0
  516. data/sample/demos-jp/msgbox2.rb +91 -0
  517. data/sample/demos-jp/paned1.rb +53 -0
  518. data/sample/demos-jp/paned2.rb +101 -0
  519. data/sample/demos-jp/pendulum.rb +243 -0
  520. data/sample/demos-jp/plot.rb +127 -0
  521. data/sample/demos-jp/puzzle.rb +132 -0
  522. data/sample/demos-jp/radio.rb +85 -0
  523. data/sample/demos-jp/radio2.rb +113 -0
  524. data/sample/demos-jp/radio3.rb +120 -0
  525. data/sample/demos-jp/rmt +268 -0
  526. data/sample/demos-jp/rolodex +320 -0
  527. data/sample/demos-jp/rolodex-j +300 -0
  528. data/sample/demos-jp/ruler.rb +204 -0
  529. data/sample/demos-jp/sayings.rb +104 -0
  530. data/sample/demos-jp/search.rb +185 -0
  531. data/sample/demos-jp/spin.rb +72 -0
  532. data/sample/demos-jp/square +81 -0
  533. data/sample/demos-jp/states.rb +75 -0
  534. data/sample/demos-jp/style.rb +271 -0
  535. data/sample/demos-jp/tcolor +534 -0
  536. data/sample/demos-jp/text.rb +121 -0
  537. data/sample/demos-jp/textpeer.rb +83 -0
  538. data/sample/demos-jp/timer +136 -0
  539. data/sample/demos-jp/toolbar.rb +137 -0
  540. data/sample/demos-jp/tree.rb +121 -0
  541. data/sample/demos-jp/ttkbut.rb +146 -0
  542. data/sample/demos-jp/ttkmenu.rb +92 -0
  543. data/sample/demos-jp/ttknote.rb +98 -0
  544. data/sample/demos-jp/ttkpane.rb +217 -0
  545. data/sample/demos-jp/ttkprogress.rb +72 -0
  546. data/sample/demos-jp/twind.rb +293 -0
  547. data/sample/demos-jp/twind2.rb +385 -0
  548. data/sample/demos-jp/unicodeout.rb +120 -0
  549. data/sample/demos-jp/vscale.rb +81 -0
  550. data/sample/demos-jp/widget +1122 -0
  551. data/sample/editable_listbox.rb +149 -0
  552. data/sample/encstr_usage.rb +31 -0
  553. data/sample/figmemo_sample.rb +457 -0
  554. data/sample/images/earth.gif +0 -0
  555. data/sample/images/earthris.gif +0 -0
  556. data/sample/images/face.xbm +173 -0
  557. data/sample/images/flagdown.xbm +27 -0
  558. data/sample/images/flagup.xbm +27 -0
  559. data/sample/images/gray25.xbm +6 -0
  560. data/sample/images/grey.25 +6 -0
  561. data/sample/images/grey.5 +6 -0
  562. data/sample/images/letters.xbm +27 -0
  563. data/sample/images/noletter.xbm +27 -0
  564. data/sample/images/pattern.xbm +6 -0
  565. data/sample/images/tcllogo.gif +0 -0
  566. data/sample/images/teapot.ppm +31 -0
  567. data/sample/irbtk.rb +31 -0
  568. data/sample/irbtkw.rbw +156 -0
  569. data/sample/iso2022-kr.txt +2 -0
  570. data/sample/menubar1.rb +52 -0
  571. data/sample/menubar2.rb +57 -0
  572. data/sample/menubar3.rb +73 -0
  573. data/sample/msgs_rb/README +3 -0
  574. data/sample/msgs_rb/cs.msg +84 -0
  575. data/sample/msgs_rb/de.msg +88 -0
  576. data/sample/msgs_rb/el.msg +98 -0
  577. data/sample/msgs_rb/en.msg +83 -0
  578. data/sample/msgs_rb/en_gb.msg +7 -0
  579. data/sample/msgs_rb/eo.msg +87 -0
  580. data/sample/msgs_rb/es.msg +84 -0
  581. data/sample/msgs_rb/fr.msg +84 -0
  582. data/sample/msgs_rb/it.msg +84 -0
  583. data/sample/msgs_rb/ja.msg +13 -0
  584. data/sample/msgs_rb/nl.msg +123 -0
  585. data/sample/msgs_rb/pl.msg +87 -0
  586. data/sample/msgs_rb/ru.msg +87 -0
  587. data/sample/msgs_rb2/README +5 -0
  588. data/sample/msgs_rb2/de.msg +88 -0
  589. data/sample/msgs_rb2/ja.msg +85 -0
  590. data/sample/msgs_tk/README +4 -0
  591. data/sample/msgs_tk/cs.msg +84 -0
  592. data/sample/msgs_tk/de.msg +88 -0
  593. data/sample/msgs_tk/el.msg +103 -0
  594. data/sample/msgs_tk/en.msg +83 -0
  595. data/sample/msgs_tk/en_gb.msg +7 -0
  596. data/sample/msgs_tk/eo.msg +87 -0
  597. data/sample/msgs_tk/es.msg +84 -0
  598. data/sample/msgs_tk/fr.msg +84 -0
  599. data/sample/msgs_tk/it.msg +84 -0
  600. data/sample/msgs_tk/ja.msg +13 -0
  601. data/sample/msgs_tk/license.terms +39 -0
  602. data/sample/msgs_tk/nl.msg +123 -0
  603. data/sample/msgs_tk/pl.msg +87 -0
  604. data/sample/msgs_tk/ru.msg +87 -0
  605. data/sample/multi-ip_sample.rb +104 -0
  606. data/sample/multi-ip_sample2.rb +30 -0
  607. data/sample/optobj_sample.rb +68 -0
  608. data/sample/propagate.rb +31 -0
  609. data/sample/remote-ip_sample.rb +34 -0
  610. data/sample/remote-ip_sample2.rb +57 -0
  611. data/sample/resource.en +13 -0
  612. data/sample/resource.ja +13 -0
  613. data/sample/safe-tk.rb +132 -0
  614. data/sample/scrollframe.rb +250 -0
  615. data/sample/tcltklib/batsu.gif +0 -0
  616. data/sample/tcltklib/lines0.tcl +42 -0
  617. data/sample/tcltklib/lines1.rb +51 -0
  618. data/sample/tcltklib/lines2.rb +55 -0
  619. data/sample/tcltklib/lines3.rb +55 -0
  620. data/sample/tcltklib/lines4.rb +55 -0
  621. data/sample/tcltklib/maru.gif +0 -0
  622. data/sample/tcltklib/safeTk.rb +23 -0
  623. data/sample/tcltklib/sample0.rb +40 -0
  624. data/sample/tcltklib/sample1.rb +635 -0
  625. data/sample/tcltklib/sample2.rb +452 -0
  626. data/sample/tkalignbox.rb +236 -0
  627. data/sample/tkballoonhelp.rb +221 -0
  628. data/sample/tkbiff.rb +156 -0
  629. data/sample/tkbrowse.rb +80 -0
  630. data/sample/tkcombobox.rb +498 -0
  631. data/sample/tkdialog.rb +62 -0
  632. data/sample/tkextlib/ICONS/Orig_LICENSE.txt +61 -0
  633. data/sample/tkextlib/ICONS/tkIcons +195 -0
  634. data/sample/tkextlib/ICONS/tkIcons-sample.kde +658 -0
  635. data/sample/tkextlib/ICONS/tkIcons.kde +195 -0
  636. data/sample/tkextlib/ICONS/viewIcons.rb +330 -0
  637. data/sample/tkextlib/blt/barchart5.rb +102 -0
  638. data/sample/tkextlib/blt/calendar.rb +118 -0
  639. data/sample/tkextlib/blt/graph6.rb +2223 -0
  640. data/sample/tkextlib/blt/graph7.rb +41 -0
  641. data/sample/tkextlib/blt/graph7a.rb +64 -0
  642. data/sample/tkextlib/blt/graph7b.rb +42 -0
  643. data/sample/tkextlib/blt/graph7c.rb +46 -0
  644. data/sample/tkextlib/blt/images/buckskin.gif +0 -0
  645. data/sample/tkextlib/blt/images/chalk.gif +0 -0
  646. data/sample/tkextlib/blt/images/qv100.t.gif +0 -0
  647. data/sample/tkextlib/blt/images/rain.gif +0 -0
  648. data/sample/tkextlib/blt/images/sample.gif +0 -0
  649. data/sample/tkextlib/blt/pareto.rb +91 -0
  650. data/sample/tkextlib/blt/plot1.rb +10 -0
  651. data/sample/tkextlib/blt/plot1b.rb +11 -0
  652. data/sample/tkextlib/blt/readme.txt +2 -0
  653. data/sample/tkextlib/blt/scripts/stipples.rb +157 -0
  654. data/sample/tkextlib/blt/winop1.rb +41 -0
  655. data/sample/tkextlib/blt/winop2.rb +29 -0
  656. data/sample/tkextlib/bwidget/Orig_LICENSE.txt +53 -0
  657. data/sample/tkextlib/bwidget/basic.rb +199 -0
  658. data/sample/tkextlib/bwidget/bwidget.xbm +46 -0
  659. data/sample/tkextlib/bwidget/demo.rb +244 -0
  660. data/sample/tkextlib/bwidget/dnd.rb +47 -0
  661. data/sample/tkextlib/bwidget/manager.rb +151 -0
  662. data/sample/tkextlib/bwidget/select.rb +83 -0
  663. data/sample/tkextlib/bwidget/tmpldlg.rb +222 -0
  664. data/sample/tkextlib/bwidget/tree.rb +290 -0
  665. data/sample/tkextlib/bwidget/x1.xbm +2258 -0
  666. data/sample/tkextlib/iwidgets/catalog_demo/Orig_LICENSE.txt +42 -0
  667. data/sample/tkextlib/iwidgets/catalog_demo/images/box.xbm +14 -0
  668. data/sample/tkextlib/iwidgets/catalog_demo/images/clear.gif +0 -0
  669. data/sample/tkextlib/iwidgets/catalog_demo/images/close.gif +0 -0
  670. data/sample/tkextlib/iwidgets/catalog_demo/images/copy.gif +0 -0
  671. data/sample/tkextlib/iwidgets/catalog_demo/images/cut.gif +0 -0
  672. data/sample/tkextlib/iwidgets/catalog_demo/images/exit.gif +0 -0
  673. data/sample/tkextlib/iwidgets/catalog_demo/images/find.gif +0 -0
  674. data/sample/tkextlib/iwidgets/catalog_demo/images/help.gif +0 -0
  675. data/sample/tkextlib/iwidgets/catalog_demo/images/line.xbm +14 -0
  676. data/sample/tkextlib/iwidgets/catalog_demo/images/mag.gif +0 -0
  677. data/sample/tkextlib/iwidgets/catalog_demo/images/new.gif +0 -0
  678. data/sample/tkextlib/iwidgets/catalog_demo/images/open.gif +0 -0
  679. data/sample/tkextlib/iwidgets/catalog_demo/images/oval.xbm +14 -0
  680. data/sample/tkextlib/iwidgets/catalog_demo/images/paste.gif +0 -0
  681. data/sample/tkextlib/iwidgets/catalog_demo/images/points.xbm +14 -0
  682. data/sample/tkextlib/iwidgets/catalog_demo/images/poly.gif +0 -0
  683. data/sample/tkextlib/iwidgets/catalog_demo/images/print.gif +0 -0
  684. data/sample/tkextlib/iwidgets/catalog_demo/images/ruler.gif +0 -0
  685. data/sample/tkextlib/iwidgets/catalog_demo/images/save.gif +0 -0
  686. data/sample/tkextlib/iwidgets/catalog_demo/images/select.gif +0 -0
  687. data/sample/tkextlib/iwidgets/catalog_demo/images/text.xbm +14 -0
  688. data/sample/tkextlib/iwidgets/sample/buttonbox.rb +23 -0
  689. data/sample/tkextlib/iwidgets/sample/calendar.rb +11 -0
  690. data/sample/tkextlib/iwidgets/sample/canvasprintbox.rb +9 -0
  691. data/sample/tkextlib/iwidgets/sample/canvasprintdialog.rb +9 -0
  692. data/sample/tkextlib/iwidgets/sample/checkbox.rb +13 -0
  693. data/sample/tkextlib/iwidgets/sample/combobox.rb +33 -0
  694. data/sample/tkextlib/iwidgets/sample/dateentry.rb +8 -0
  695. data/sample/tkextlib/iwidgets/sample/datefield.rb +9 -0
  696. data/sample/tkextlib/iwidgets/sample/dialog.rb +21 -0
  697. data/sample/tkextlib/iwidgets/sample/dialogshell.rb +15 -0
  698. data/sample/tkextlib/iwidgets/sample/disjointlistbox.rb +17 -0
  699. data/sample/tkextlib/iwidgets/sample/entryfield-1.rb +40 -0
  700. data/sample/tkextlib/iwidgets/sample/entryfield-2.rb +45 -0
  701. data/sample/tkextlib/iwidgets/sample/entryfield-3.rb +41 -0
  702. data/sample/tkextlib/iwidgets/sample/extbutton.rb +21 -0
  703. data/sample/tkextlib/iwidgets/sample/extfileselectionbox.rb +9 -0
  704. data/sample/tkextlib/iwidgets/sample/extfileselectiondialog.rb +30 -0
  705. data/sample/tkextlib/iwidgets/sample/feedback.rb +11 -0
  706. data/sample/tkextlib/iwidgets/sample/fileselectionbox.rb +9 -0
  707. data/sample/tkextlib/iwidgets/sample/fileselectiondialog.rb +29 -0
  708. data/sample/tkextlib/iwidgets/sample/finddialog.rb +16 -0
  709. data/sample/tkextlib/iwidgets/sample/hierarchy.rb +26 -0
  710. data/sample/tkextlib/iwidgets/sample/hyperhelp.rb +15 -0
  711. data/sample/tkextlib/iwidgets/sample/labeledframe.rb +15 -0
  712. data/sample/tkextlib/iwidgets/sample/labeledwidget.rb +14 -0
  713. data/sample/tkextlib/iwidgets/sample/mainwindow.rb +65 -0
  714. data/sample/tkextlib/iwidgets/sample/menubar.rb +125 -0
  715. data/sample/tkextlib/iwidgets/sample/menubar2.rb +45 -0
  716. data/sample/tkextlib/iwidgets/sample/messagebox1.rb +20 -0
  717. data/sample/tkextlib/iwidgets/sample/messagebox2.rb +20 -0
  718. data/sample/tkextlib/iwidgets/sample/messagedialog.rb +45 -0
  719. data/sample/tkextlib/iwidgets/sample/notebook.rb +31 -0
  720. data/sample/tkextlib/iwidgets/sample/notebook2.rb +31 -0
  721. data/sample/tkextlib/iwidgets/sample/optionmenu.rb +15 -0
  722. data/sample/tkextlib/iwidgets/sample/panedwindow.rb +23 -0
  723. data/sample/tkextlib/iwidgets/sample/panedwindow2.rb +23 -0
  724. data/sample/tkextlib/iwidgets/sample/promptdialog.rb +18 -0
  725. data/sample/tkextlib/iwidgets/sample/pushbutton.rb +10 -0
  726. data/sample/tkextlib/iwidgets/sample/radiobox.rb +14 -0
  727. data/sample/tkextlib/iwidgets/sample/scrolledcanvas.rb +14 -0
  728. data/sample/tkextlib/iwidgets/sample/scrolledframe.rb +19 -0
  729. data/sample/tkextlib/iwidgets/sample/scrolledhtml.rb +16 -0
  730. data/sample/tkextlib/iwidgets/sample/scrolledlistbox.rb +23 -0
  731. data/sample/tkextlib/iwidgets/sample/scrolledtext.rb +12 -0
  732. data/sample/tkextlib/iwidgets/sample/selectionbox.rb +20 -0
  733. data/sample/tkextlib/iwidgets/sample/selectiondialog.rb +13 -0
  734. data/sample/tkextlib/iwidgets/sample/shell.rb +18 -0
  735. data/sample/tkextlib/iwidgets/sample/spindate.rb +8 -0
  736. data/sample/tkextlib/iwidgets/sample/spinint.rb +11 -0
  737. data/sample/tkextlib/iwidgets/sample/spinner.rb +34 -0
  738. data/sample/tkextlib/iwidgets/sample/spintime.rb +8 -0
  739. data/sample/tkextlib/iwidgets/sample/tabnotebook.rb +27 -0
  740. data/sample/tkextlib/iwidgets/sample/tabnotebook2.rb +31 -0
  741. data/sample/tkextlib/iwidgets/sample/tabset.rb +35 -0
  742. data/sample/tkextlib/iwidgets/sample/timeentry.rb +8 -0
  743. data/sample/tkextlib/iwidgets/sample/timefield.rb +9 -0
  744. data/sample/tkextlib/iwidgets/sample/toolbar.rb +153 -0
  745. data/sample/tkextlib/iwidgets/sample/watch.rb +19 -0
  746. data/sample/tkextlib/tcllib/Orig_LICENSE.txt +46 -0
  747. data/sample/tkextlib/tcllib/datefield.rb +30 -0
  748. data/sample/tkextlib/tcllib/plotdemos1.rb +159 -0
  749. data/sample/tkextlib/tcllib/plotdemos2.rb +72 -0
  750. data/sample/tkextlib/tcllib/plotdemos3.rb +84 -0
  751. data/sample/tkextlib/tcllib/xyplot.rb +18 -0
  752. data/sample/tkextlib/tile/Orig_LICENSE.txt +30 -0
  753. data/sample/tkextlib/tile/demo.rb +984 -0
  754. data/sample/tkextlib/tile/iconlib.tcl +110 -0
  755. data/sample/tkextlib/tile/readme.txt +2 -0
  756. data/sample/tkextlib/tile/repeater.tcl +117 -0
  757. data/sample/tkextlib/tile/themes/blue/blue.tcl +149 -0
  758. data/sample/tkextlib/tile/themes/blue/blue/arrowdown-h.gif +0 -0
  759. data/sample/tkextlib/tile/themes/blue/blue/arrowdown-p.gif +0 -0
  760. data/sample/tkextlib/tile/themes/blue/blue/arrowdown.gif +0 -0
  761. data/sample/tkextlib/tile/themes/blue/blue/arrowleft-h.gif +0 -0
  762. data/sample/tkextlib/tile/themes/blue/blue/arrowleft-p.gif +0 -0
  763. data/sample/tkextlib/tile/themes/blue/blue/arrowleft.gif +0 -0
  764. data/sample/tkextlib/tile/themes/blue/blue/arrowright-h.gif +0 -0
  765. data/sample/tkextlib/tile/themes/blue/blue/arrowright-p.gif +0 -0
  766. data/sample/tkextlib/tile/themes/blue/blue/arrowright.gif +0 -0
  767. data/sample/tkextlib/tile/themes/blue/blue/arrowup-h.gif +0 -0
  768. data/sample/tkextlib/tile/themes/blue/blue/arrowup-p.gif +0 -0
  769. data/sample/tkextlib/tile/themes/blue/blue/arrowup.gif +0 -0
  770. data/sample/tkextlib/tile/themes/blue/blue/button-h.gif +0 -0
  771. data/sample/tkextlib/tile/themes/blue/blue/button-n.gif +0 -0
  772. data/sample/tkextlib/tile/themes/blue/blue/button-n.xcf +0 -0
  773. data/sample/tkextlib/tile/themes/blue/blue/button-p.gif +0 -0
  774. data/sample/tkextlib/tile/themes/blue/blue/check-hc.gif +0 -0
  775. data/sample/tkextlib/tile/themes/blue/blue/check-hu.gif +0 -0
  776. data/sample/tkextlib/tile/themes/blue/blue/check-nc.gif +0 -0
  777. data/sample/tkextlib/tile/themes/blue/blue/check-nu.gif +0 -0
  778. data/sample/tkextlib/tile/themes/blue/blue/radio-hc.gif +0 -0
  779. data/sample/tkextlib/tile/themes/blue/blue/radio-hu.gif +0 -0
  780. data/sample/tkextlib/tile/themes/blue/blue/radio-nc.gif +0 -0
  781. data/sample/tkextlib/tile/themes/blue/blue/radio-nu.gif +0 -0
  782. data/sample/tkextlib/tile/themes/blue/blue/sb-thumb-p.gif +0 -0
  783. data/sample/tkextlib/tile/themes/blue/blue/sb-thumb.gif +0 -0
  784. data/sample/tkextlib/tile/themes/blue/blue/sb-vthumb-p.gif +0 -0
  785. data/sample/tkextlib/tile/themes/blue/blue/sb-vthumb.gif +0 -0
  786. data/sample/tkextlib/tile/themes/blue/blue/slider-p.gif +0 -0
  787. data/sample/tkextlib/tile/themes/blue/blue/slider.gif +0 -0
  788. data/sample/tkextlib/tile/themes/blue/blue/vslider-p.gif +0 -0
  789. data/sample/tkextlib/tile/themes/blue/blue/vslider.gif +0 -0
  790. data/sample/tkextlib/tile/themes/blue/pkgIndex.tcl +6 -0
  791. data/sample/tkextlib/tile/themes/keramik/keramik.tcl +194 -0
  792. data/sample/tkextlib/tile/themes/keramik/keramik/arrowdown-n.gif +0 -0
  793. data/sample/tkextlib/tile/themes/keramik/keramik/arrowdown-p.gif +0 -0
  794. data/sample/tkextlib/tile/themes/keramik/keramik/arrowleft-n.gif +0 -0
  795. data/sample/tkextlib/tile/themes/keramik/keramik/arrowleft-p.gif +0 -0
  796. data/sample/tkextlib/tile/themes/keramik/keramik/arrowright-n.gif +0 -0
  797. data/sample/tkextlib/tile/themes/keramik/keramik/arrowright-p.gif +0 -0
  798. data/sample/tkextlib/tile/themes/keramik/keramik/arrowup-n.gif +0 -0
  799. data/sample/tkextlib/tile/themes/keramik/keramik/arrowup-p.gif +0 -0
  800. data/sample/tkextlib/tile/themes/keramik/keramik/button-d.gif +0 -0
  801. data/sample/tkextlib/tile/themes/keramik/keramik/button-h.gif +0 -0
  802. data/sample/tkextlib/tile/themes/keramik/keramik/button-n.gif +0 -0
  803. data/sample/tkextlib/tile/themes/keramik/keramik/button-p.gif +0 -0
  804. data/sample/tkextlib/tile/themes/keramik/keramik/button-s.gif +0 -0
  805. data/sample/tkextlib/tile/themes/keramik/keramik/check-c.gif +0 -0
  806. data/sample/tkextlib/tile/themes/keramik/keramik/check-u.gif +0 -0
  807. data/sample/tkextlib/tile/themes/keramik/keramik/hsb-n.gif +0 -0
  808. data/sample/tkextlib/tile/themes/keramik/keramik/hsb-p.gif +0 -0
  809. data/sample/tkextlib/tile/themes/keramik/keramik/hslider-n.gif +0 -0
  810. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-a.gif +0 -0
  811. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-arrow-n.gif +0 -0
  812. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-d.gif +0 -0
  813. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-n.gif +0 -0
  814. data/sample/tkextlib/tile/themes/keramik/keramik/radio-c.gif +0 -0
  815. data/sample/tkextlib/tile/themes/keramik/keramik/radio-u.gif +0 -0
  816. data/sample/tkextlib/tile/themes/keramik/keramik/tab-n.gif +0 -0
  817. data/sample/tkextlib/tile/themes/keramik/keramik/tab-p.gif +0 -0
  818. data/sample/tkextlib/tile/themes/keramik/keramik/tbar-a.gif +0 -0
  819. data/sample/tkextlib/tile/themes/keramik/keramik/tbar-n.gif +0 -0
  820. data/sample/tkextlib/tile/themes/keramik/keramik/tbar-p.gif +0 -0
  821. data/sample/tkextlib/tile/themes/keramik/keramik/vsb-n.gif +0 -0
  822. data/sample/tkextlib/tile/themes/keramik/keramik/vsb-p.gif +0 -0
  823. data/sample/tkextlib/tile/themes/keramik/keramik/vslider-n.gif +0 -0
  824. data/sample/tkextlib/tile/themes/keramik/pkgIndex.tcl +15 -0
  825. data/sample/tkextlib/tile/themes/kroc.rb +227 -0
  826. data/sample/tkextlib/tile/themes/kroc/kroc.tcl +163 -0
  827. data/sample/tkextlib/tile/themes/kroc/kroc/button-h.gif +0 -0
  828. data/sample/tkextlib/tile/themes/kroc/kroc/button-n.gif +0 -0
  829. data/sample/tkextlib/tile/themes/kroc/kroc/button-p.gif +0 -0
  830. data/sample/tkextlib/tile/themes/kroc/kroc/check-hc.gif +0 -0
  831. data/sample/tkextlib/tile/themes/kroc/kroc/check-hu.gif +0 -0
  832. data/sample/tkextlib/tile/themes/kroc/kroc/check-nc.gif +0 -0
  833. data/sample/tkextlib/tile/themes/kroc/kroc/check-nu.gif +0 -0
  834. data/sample/tkextlib/tile/themes/kroc/kroc/radio-hc.gif +0 -0
  835. data/sample/tkextlib/tile/themes/kroc/kroc/radio-hu.gif +0 -0
  836. data/sample/tkextlib/tile/themes/kroc/kroc/radio-nc.gif +0 -0
  837. data/sample/tkextlib/tile/themes/kroc/kroc/radio-nu.gif +0 -0
  838. data/sample/tkextlib/tile/themes/kroc/pkgIndex.tcl +15 -0
  839. data/sample/tkextlib/tile/themes/plastik/pkgIndex.tcl +16 -0
  840. data/sample/tkextlib/tile/themes/plastik/plastik.tcl +125 -0
  841. data/sample/tkextlib/tile/themes/plastik/plastik/arrowdown-n.gif +0 -0
  842. data/sample/tkextlib/tile/themes/plastik/plastik/arrowdown-p.gif +0 -0
  843. data/sample/tkextlib/tile/themes/plastik/plastik/arrowleft-n.gif +0 -0
  844. data/sample/tkextlib/tile/themes/plastik/plastik/arrowleft-p.gif +0 -0
  845. data/sample/tkextlib/tile/themes/plastik/plastik/arrowright-n.gif +0 -0
  846. data/sample/tkextlib/tile/themes/plastik/plastik/arrowright-p.gif +0 -0
  847. data/sample/tkextlib/tile/themes/plastik/plastik/arrowup-n.gif +0 -0
  848. data/sample/tkextlib/tile/themes/plastik/plastik/arrowup-p.gif +0 -0
  849. data/sample/tkextlib/tile/themes/plastik/plastik/button-h.gif +0 -0
  850. data/sample/tkextlib/tile/themes/plastik/plastik/button-n.gif +0 -0
  851. data/sample/tkextlib/tile/themes/plastik/plastik/button-p.gif +0 -0
  852. data/sample/tkextlib/tile/themes/plastik/plastik/check-hc.gif +0 -0
  853. data/sample/tkextlib/tile/themes/plastik/plastik/check-hu.gif +0 -0
  854. data/sample/tkextlib/tile/themes/plastik/plastik/check-nc.gif +0 -0
  855. data/sample/tkextlib/tile/themes/plastik/plastik/check-nu.gif +0 -0
  856. data/sample/tkextlib/tile/themes/plastik/plastik/check-pc.gif +0 -0
  857. data/sample/tkextlib/tile/themes/plastik/plastik/hsb-n.gif +0 -0
  858. data/sample/tkextlib/tile/themes/plastik/plastik/hslider-n.gif +0 -0
  859. data/sample/tkextlib/tile/themes/plastik/plastik/radio-hc.gif +0 -0
  860. data/sample/tkextlib/tile/themes/plastik/plastik/radio-hu.gif +0 -0
  861. data/sample/tkextlib/tile/themes/plastik/plastik/radio-nc.gif +0 -0
  862. data/sample/tkextlib/tile/themes/plastik/plastik/radio-nu.gif +0 -0
  863. data/sample/tkextlib/tile/themes/plastik/plastik/radio-pc.gif +0 -0
  864. data/sample/tkextlib/tile/themes/plastik/plastik/vsb-n.gif +0 -0
  865. data/sample/tkextlib/tile/themes/plastik/plastik/vslider-n.gif +0 -0
  866. data/sample/tkextlib/tile/toolbutton.tcl +152 -0
  867. data/sample/tkextlib/tkHTML/Orig_COPYRIGHT.txt +12 -0
  868. data/sample/tkextlib/tkHTML/README +12 -0
  869. data/sample/tkextlib/tkHTML/hv.rb +314 -0
  870. data/sample/tkextlib/tkHTML/page1/image1 +0 -0
  871. data/sample/tkextlib/tkHTML/page1/image10 +0 -0
  872. data/sample/tkextlib/tkHTML/page1/image11 +0 -0
  873. data/sample/tkextlib/tkHTML/page1/image12 +0 -0
  874. data/sample/tkextlib/tkHTML/page1/image13 +0 -0
  875. data/sample/tkextlib/tkHTML/page1/image14 +0 -0
  876. data/sample/tkextlib/tkHTML/page1/image2 +0 -0
  877. data/sample/tkextlib/tkHTML/page1/image3 +0 -0
  878. data/sample/tkextlib/tkHTML/page1/image4 +0 -0
  879. data/sample/tkextlib/tkHTML/page1/image5 +0 -0
  880. data/sample/tkextlib/tkHTML/page1/image6 +0 -0
  881. data/sample/tkextlib/tkHTML/page1/image7 +0 -0
  882. data/sample/tkextlib/tkHTML/page1/image8 +0 -0
  883. data/sample/tkextlib/tkHTML/page1/image9 +0 -0
  884. data/sample/tkextlib/tkHTML/page1/index.html +115 -0
  885. data/sample/tkextlib/tkHTML/page2/image1 +0 -0
  886. data/sample/tkextlib/tkHTML/page2/image10 +0 -0
  887. data/sample/tkextlib/tkHTML/page2/image11 +0 -0
  888. data/sample/tkextlib/tkHTML/page2/image12 +0 -0
  889. data/sample/tkextlib/tkHTML/page2/image13 +0 -0
  890. data/sample/tkextlib/tkHTML/page2/image14 +0 -0
  891. data/sample/tkextlib/tkHTML/page2/image15 +0 -0
  892. data/sample/tkextlib/tkHTML/page2/image16 +0 -0
  893. data/sample/tkextlib/tkHTML/page2/image17 +0 -0
  894. data/sample/tkextlib/tkHTML/page2/image18 +0 -0
  895. data/sample/tkextlib/tkHTML/page2/image19 +0 -0
  896. data/sample/tkextlib/tkHTML/page2/image2 +0 -0
  897. data/sample/tkextlib/tkHTML/page2/image20 +0 -0
  898. data/sample/tkextlib/tkHTML/page2/image21 +0 -0
  899. data/sample/tkextlib/tkHTML/page2/image22 +0 -0
  900. data/sample/tkextlib/tkHTML/page2/image23 +0 -0
  901. data/sample/tkextlib/tkHTML/page2/image24 +0 -0
  902. data/sample/tkextlib/tkHTML/page2/image25 +0 -0
  903. data/sample/tkextlib/tkHTML/page2/image26 +0 -0
  904. data/sample/tkextlib/tkHTML/page2/image27 +0 -0
  905. data/sample/tkextlib/tkHTML/page2/image28 +0 -0
  906. data/sample/tkextlib/tkHTML/page2/image29 +0 -0
  907. data/sample/tkextlib/tkHTML/page2/image3 +0 -0
  908. data/sample/tkextlib/tkHTML/page2/image30 +0 -0
  909. data/sample/tkextlib/tkHTML/page2/image31 +0 -0
  910. data/sample/tkextlib/tkHTML/page2/image32 +0 -0
  911. data/sample/tkextlib/tkHTML/page2/image33 +0 -0
  912. data/sample/tkextlib/tkHTML/page2/image34 +0 -0
  913. data/sample/tkextlib/tkHTML/page2/image35 +0 -0
  914. data/sample/tkextlib/tkHTML/page2/image36 +0 -0
  915. data/sample/tkextlib/tkHTML/page2/image37 +0 -0
  916. data/sample/tkextlib/tkHTML/page2/image38 +0 -0
  917. data/sample/tkextlib/tkHTML/page2/image39 +0 -0
  918. data/sample/tkextlib/tkHTML/page2/image4 +0 -0
  919. data/sample/tkextlib/tkHTML/page2/image5 +0 -0
  920. data/sample/tkextlib/tkHTML/page2/image6 +0 -0
  921. data/sample/tkextlib/tkHTML/page2/image7 +0 -0
  922. data/sample/tkextlib/tkHTML/page2/image8 +0 -0
  923. data/sample/tkextlib/tkHTML/page2/image9 +0 -0
  924. data/sample/tkextlib/tkHTML/page2/index.html +433 -0
  925. data/sample/tkextlib/tkHTML/page3/image1 +0 -0
  926. data/sample/tkextlib/tkHTML/page3/image10 +0 -0
  927. data/sample/tkextlib/tkHTML/page3/image11 +0 -0
  928. data/sample/tkextlib/tkHTML/page3/image12 +0 -0
  929. data/sample/tkextlib/tkHTML/page3/image13 +0 -0
  930. data/sample/tkextlib/tkHTML/page3/image14 +0 -0
  931. data/sample/tkextlib/tkHTML/page3/image2 +0 -0
  932. data/sample/tkextlib/tkHTML/page3/image3 +0 -0
  933. data/sample/tkextlib/tkHTML/page3/image4 +0 -0
  934. data/sample/tkextlib/tkHTML/page3/image5 +0 -0
  935. data/sample/tkextlib/tkHTML/page3/image6 +0 -0
  936. data/sample/tkextlib/tkHTML/page3/image7 +0 -0
  937. data/sample/tkextlib/tkHTML/page3/image8 +0 -0
  938. data/sample/tkextlib/tkHTML/page3/image9 +0 -0
  939. data/sample/tkextlib/tkHTML/page3/index.html +2787 -0
  940. data/sample/tkextlib/tkHTML/page4/image1 +0 -0
  941. data/sample/tkextlib/tkHTML/page4/image2 +0 -0
  942. data/sample/tkextlib/tkHTML/page4/image3 +0 -0
  943. data/sample/tkextlib/tkHTML/page4/image4 +0 -0
  944. data/sample/tkextlib/tkHTML/page4/image5 +0 -0
  945. data/sample/tkextlib/tkHTML/page4/image6 +0 -0
  946. data/sample/tkextlib/tkHTML/page4/image7 +0 -0
  947. data/sample/tkextlib/tkHTML/page4/image8 +0 -0
  948. data/sample/tkextlib/tkHTML/page4/image9 +0 -0
  949. data/sample/tkextlib/tkHTML/page4/index.html +768 -0
  950. data/sample/tkextlib/tkHTML/ss.rb +437 -0
  951. data/sample/tkextlib/tkimg/demo.rb +1479 -0
  952. data/sample/tkextlib/tkimg/license_terms_of_Img_extension +41 -0
  953. data/sample/tkextlib/tkimg/readme.txt +3 -0
  954. data/sample/tkextlib/tktable/Orig_LICENSE.txt +52 -0
  955. data/sample/tkextlib/tktable/basic.rb +61 -0
  956. data/sample/tkextlib/tktable/buttons.rb +77 -0
  957. data/sample/tkextlib/tktable/command.rb +90 -0
  958. data/sample/tkextlib/tktable/debug.rb +102 -0
  959. data/sample/tkextlib/tktable/dynarows.rb +100 -0
  960. data/sample/tkextlib/tktable/maxsize.rb +68 -0
  961. data/sample/tkextlib/tktable/spreadsheet.rb +138 -0
  962. data/sample/tkextlib/tktable/tcllogo.gif +0 -0
  963. data/sample/tkextlib/tktable/valid.rb +89 -0
  964. data/sample/tkextlib/treectrl/bitmaps.rb +77 -0
  965. data/sample/tkextlib/treectrl/demo.rb +1306 -0
  966. data/sample/tkextlib/treectrl/explorer.rb +431 -0
  967. data/sample/tkextlib/treectrl/help.rb +405 -0
  968. data/sample/tkextlib/treectrl/imovie.rb +131 -0
  969. data/sample/tkextlib/treectrl/layout.rb +160 -0
  970. data/sample/tkextlib/treectrl/mailwasher.rb +270 -0
  971. data/sample/tkextlib/treectrl/outlook-folders.rb +125 -0
  972. data/sample/tkextlib/treectrl/outlook-newgroup.rb +449 -0
  973. data/sample/tkextlib/treectrl/pics/big-dll.gif +0 -0
  974. data/sample/tkextlib/treectrl/pics/big-exe.gif +0 -0
  975. data/sample/tkextlib/treectrl/pics/big-file.gif +0 -0
  976. data/sample/tkextlib/treectrl/pics/big-folder.gif +0 -0
  977. data/sample/tkextlib/treectrl/pics/big-txt.gif +0 -0
  978. data/sample/tkextlib/treectrl/pics/checked.gif +0 -0
  979. data/sample/tkextlib/treectrl/pics/file.gif +0 -0
  980. data/sample/tkextlib/treectrl/pics/folder-closed.gif +0 -0
  981. data/sample/tkextlib/treectrl/pics/folder-open.gif +0 -0
  982. data/sample/tkextlib/treectrl/pics/help-book-closed.gif +0 -0
  983. data/sample/tkextlib/treectrl/pics/help-book-open.gif +0 -0
  984. data/sample/tkextlib/treectrl/pics/help-page.gif +0 -0
  985. data/sample/tkextlib/treectrl/pics/imovie-01.gif +0 -0
  986. data/sample/tkextlib/treectrl/pics/imovie-02.gif +0 -0
  987. data/sample/tkextlib/treectrl/pics/imovie-03.gif +0 -0
  988. data/sample/tkextlib/treectrl/pics/imovie-04.gif +0 -0
  989. data/sample/tkextlib/treectrl/pics/imovie-05.gif +0 -0
  990. data/sample/tkextlib/treectrl/pics/imovie-06.gif +0 -0
  991. data/sample/tkextlib/treectrl/pics/imovie-07.gif +0 -0
  992. data/sample/tkextlib/treectrl/pics/internet-check-off.gif +0 -0
  993. data/sample/tkextlib/treectrl/pics/internet-check-on.gif +0 -0
  994. data/sample/tkextlib/treectrl/pics/internet-print.gif +0 -0
  995. data/sample/tkextlib/treectrl/pics/internet-radio-off.gif +0 -0
  996. data/sample/tkextlib/treectrl/pics/internet-radio-on.gif +0 -0
  997. data/sample/tkextlib/treectrl/pics/internet-search.gif +0 -0
  998. data/sample/tkextlib/treectrl/pics/internet-security.gif +0 -0
  999. data/sample/tkextlib/treectrl/pics/mac-collapse.gif +0 -0
  1000. data/sample/tkextlib/treectrl/pics/mac-expand.gif +0 -0
  1001. data/sample/tkextlib/treectrl/pics/outlook-arrow.gif +0 -0
  1002. data/sample/tkextlib/treectrl/pics/outlook-clip.gif +0 -0
  1003. data/sample/tkextlib/treectrl/pics/outlook-deleted.gif +0 -0
  1004. data/sample/tkextlib/treectrl/pics/outlook-draft.gif +0 -0
  1005. data/sample/tkextlib/treectrl/pics/outlook-folder.gif +0 -0
  1006. data/sample/tkextlib/treectrl/pics/outlook-group.gif +0 -0
  1007. data/sample/tkextlib/treectrl/pics/outlook-inbox.gif +0 -0
  1008. data/sample/tkextlib/treectrl/pics/outlook-local.gif +0 -0
  1009. data/sample/tkextlib/treectrl/pics/outlook-main.gif +0 -0
  1010. data/sample/tkextlib/treectrl/pics/outlook-outbox.gif +0 -0
  1011. data/sample/tkextlib/treectrl/pics/outlook-read-2.gif +0 -0
  1012. data/sample/tkextlib/treectrl/pics/outlook-read.gif +0 -0
  1013. data/sample/tkextlib/treectrl/pics/outlook-sent.gif +0 -0
  1014. data/sample/tkextlib/treectrl/pics/outlook-server.gif +0 -0
  1015. data/sample/tkextlib/treectrl/pics/outlook-unread.gif +0 -0
  1016. data/sample/tkextlib/treectrl/pics/outlook-watch.gif +0 -0
  1017. data/sample/tkextlib/treectrl/pics/sky.gif +0 -0
  1018. data/sample/tkextlib/treectrl/pics/small-dll.gif +0 -0
  1019. data/sample/tkextlib/treectrl/pics/small-exe.gif +0 -0
  1020. data/sample/tkextlib/treectrl/pics/small-file.gif +0 -0
  1021. data/sample/tkextlib/treectrl/pics/small-folder.gif +0 -0
  1022. data/sample/tkextlib/treectrl/pics/small-txt.gif +0 -0
  1023. data/sample/tkextlib/treectrl/pics/unchecked.gif +0 -0
  1024. data/sample/tkextlib/treectrl/random.rb +509 -0
  1025. data/sample/tkextlib/treectrl/readme.txt +2 -0
  1026. data/sample/tkextlib/treectrl/www-options.rb +304 -0
  1027. data/sample/tkextlib/vu/Orig_LICENSE.txt +51 -0
  1028. data/sample/tkextlib/vu/README.txt +50 -0
  1029. data/sample/tkextlib/vu/canvItems.rb +91 -0
  1030. data/sample/tkextlib/vu/canvSticker.rb +83 -0
  1031. data/sample/tkextlib/vu/canvSticker2.rb +102 -0
  1032. data/sample/tkextlib/vu/dial_demo.rb +114 -0
  1033. data/sample/tkextlib/vu/m128_000.xbm +174 -0
  1034. data/sample/tkextlib/vu/oscilloscope.rb +69 -0
  1035. data/sample/tkextlib/vu/pie.rb +57 -0
  1036. data/sample/tkextlib/vu/vu_demo.rb +68 -0
  1037. data/sample/tkfrom.rb +133 -0
  1038. data/sample/tkhello.rb +11 -0
  1039. data/sample/tkline.rb +48 -0
  1040. data/sample/tkmenubutton.rb +136 -0
  1041. data/sample/tkmsgcat-load_rb.rb +103 -0
  1042. data/sample/tkmsgcat-load_rb2.rb +103 -0
  1043. data/sample/tkmsgcat-load_tk.rb +119 -0
  1044. data/sample/tkmulticolumnlist.rb +744 -0
  1045. data/sample/tkmultilistbox.rb +655 -0
  1046. data/sample/tkmultilistframe.rb +941 -0
  1047. data/sample/tkoptdb-safeTk.rb +74 -0
  1048. data/sample/tkoptdb.rb +107 -0
  1049. data/sample/tkrttimer.rb +78 -0
  1050. data/sample/tksleep_sample.rb +30 -0
  1051. data/sample/tktextframe.rb +282 -0
  1052. data/sample/tktextio.rb +1061 -0
  1053. data/sample/tktimer.rb +51 -0
  1054. data/sample/tktimer2.rb +48 -0
  1055. data/sample/tktimer3.rb +60 -0
  1056. data/sample/tktree.rb +104 -0
  1057. data/sample/tktree.tcl +305 -0
  1058. data/sample/ttk_wrapper.rb +155 -0
  1059. data/tk.gemspec +24 -0
  1060. metadata +1144 -0
@@ -0,0 +1,103 @@
1
+ # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: false
3
+ #
4
+ # widget demo prompts the user to select a file (called by 'widget')
5
+ #
6
+
7
+ # toplevel widget が存在すれば削除する
8
+ if defined?($filebox_demo) && $entry2_demo
9
+ $filebox_demo.destroy
10
+ $filebox_demo = nil
11
+ end
12
+
13
+ # demo 用の toplevel widget を生成
14
+ $filebox_demo = TkToplevel.new {|w|
15
+ title("File Selection Dialogs")
16
+ iconname("filebox")
17
+ positionWindow(w)
18
+ }
19
+
20
+ base_frame = TkFrame.new($filebox_demo).pack(:fill=>:both, :expand=>true)
21
+
22
+ # label 生成
23
+ TkLabel.new(base_frame,'font'=>$font,'wraplength'=>'4i','justify'=>'left',
24
+ 'text'=>"エントリにファイル名を直接入力するか、\"Browse\" ボタンを押してファイル選択ダイアログからファイル名を選んで下さい。").pack('side'=>'top')
25
+
26
+ # frame 生成
27
+ TkFrame.new(base_frame) {|frame|
28
+ TkButton.new(frame) {
29
+ #text '了解'
30
+ text '閉じる'
31
+ command proc{
32
+ tmppath = $filebox_demo
33
+ $filebox_demo = nil
34
+ tmppath.destroy
35
+ }
36
+ }.pack('side'=>'left', 'expand'=>'yes')
37
+
38
+ TkButton.new(frame) {
39
+ text 'コード参照'
40
+ command proc{showCode 'filebox'}
41
+ }.pack('side'=>'left', 'expand'=>'yes')
42
+ }.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>'2m')
43
+
44
+ # frame 生成
45
+ ['開く', '保存'].each{|type|
46
+ TkFrame.new(base_frame) {|f|
47
+ TkLabel.new(f, 'text'=>"ファイルを#{type}: ", 'anchor'=>'e')\
48
+ .pack('side'=>'left')
49
+
50
+ TkEntry.new(f, 'width'=>20) {|e|
51
+ pack('side'=>'left', 'expand'=>'yes', 'fill'=>'x')
52
+
53
+ TkButton.new(f, 'text'=>'Browse ...',
54
+ 'command'=>proc{fileDialog base_frame,e,type})\
55
+ .pack('side'=>'left')
56
+ }
57
+
58
+ pack('fill'=>'x', 'padx'=>'1c', 'pady'=>3)
59
+ }
60
+ }
61
+
62
+ $tk_strictMotif = TkVarAccess.new('tk_strictMotif')
63
+ if ($tk_platform['platform'] == 'unix')
64
+ TkCheckButton.new(base_frame,
65
+ 'text'=>'Motifスタイルのダイアログを用いる',
66
+ 'variable'=>$tk_strictMotif,
67
+ 'onvalue'=>1, 'offvalue'=>0 ).pack('anchor'=>'c')
68
+ end
69
+
70
+ def fileDialog(w,ent,operation)
71
+ # Type names Extension(s) Mac File Type(s)
72
+ #
73
+ #--------------------------------------------------------
74
+ types = [
75
+ ['Text files', ['.txt','.doc'] ],
76
+ ['Text files', [], 'TEXT' ],
77
+ ['Ruby Scripts', ['.rb'], 'TEXT' ],
78
+ ['Tcl Scripts', ['.tcl'], 'TEXT' ],
79
+ ['C Source Files', ['.c','.h'] ],
80
+ ['All Source Files', ['.rb','.tcl','.c','.h'] ],
81
+ ['Image Files', ['.gif'] ],
82
+ ['Image Files', ['.jpeg','.jpg'] ],
83
+ ['Image Files', [], ['GIFF','JPEG']],
84
+ ['All files', '*' ]
85
+ ]
86
+
87
+ if operation == '開く'
88
+ file = Tk.getOpenFile('filetypes'=>types, 'parent'=>w)
89
+ else
90
+ file = Tk.getSaveFile('filetypes'=>types, 'parent'=>w,
91
+ 'initialfile'=>'Untitled',
92
+ 'defaultextension'=>'.txt')
93
+ end
94
+ if file != ""
95
+ ent.delete 0, 'end'
96
+ ent.insert 0, file
97
+ # ent.xview 'end'
98
+ Tk.update_idletasks # need this for Tk::Tile::Entry
99
+ # (to find right position of 'xview').
100
+ ent.xview(ent.index('end'))
101
+ end
102
+ end
103
+
@@ -0,0 +1,1722 @@
1
+ # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: false
3
+ #
4
+ # floorDisplay widget demo (called by 'widget')
5
+ #
6
+
7
+ # floorDisplay --
8
+ # Recreate the floorplan display in the canvas given by "w". The
9
+ # floor given by "active" is displayed on top with its office structure
10
+ # visible.
11
+ #
12
+ # Arguments:
13
+ # w - Name of the canvas window.
14
+ # active - Number of active floor (1, 2, or 3).
15
+
16
+ def floorDisplay(w,active)
17
+ return if $activeFloor == active
18
+
19
+ w.delete('all')
20
+ $activeFloor = active
21
+
22
+ # First go through the three floors, displaying the backgrounds for
23
+ # each floor.
24
+
25
+ floor_bg1(w,$floor_colors['bg1'],$floor_colors['outline1'])
26
+ floor_bg2(w,$floor_colors['bg2'],$floor_colors['outline2'])
27
+ floor_bg3(w,$floor_colors['bg3'],$floor_colors['outline3'])
28
+
29
+ # Raise the background for the active floor so that it's on top.
30
+
31
+ w.raise("floor#{active}")
32
+
33
+ # Create a dummy item just to mark this point in the display list,
34
+ # so we can insert highlights here.
35
+
36
+ TkcRectangle.new(w,0,100,1,101, 'fill'=>'', 'outline'=>'', 'tags'=>'marker')
37
+
38
+ # Add the walls and labels for the active floor, along with
39
+ # transparent polygons that define the rooms on the floor.
40
+ # Make sure that the room polygons are on top.
41
+
42
+ $floorLabels.clear
43
+ $floorItems.clear
44
+ send("floor_fg#{active}", w, $floor_colors['offices'])
45
+ w.raise('room')
46
+
47
+ # Offset the floors diagonally from each other.
48
+
49
+ w.move('floor1', '2c', '2c')
50
+ w.move('floor2', '1c', '1c')
51
+
52
+ # Create items for the room entry and its label.
53
+ TkcWindow.new(w, 600, 100, 'anchor'=>'w', 'window'=>$floor_entry)
54
+ TkcText.new(w, 600, 100, 'anchor'=>'e', 'text'=>"部屋番号: ")
55
+ w['scrollregion'] = w.bbox('all')
56
+ end
57
+
58
+ # newRoom --
59
+ # This method is invoked whenever the mouse enters a room
60
+ # in the floorplan. It changes tags so that the current room is
61
+ # highlighted.
62
+ #
63
+ # Arguments:
64
+ # w - The name of the canvas window.
65
+
66
+ def newRoom(w)
67
+ id = w.find_withtag('current')[0]
68
+ $currentRoom.value = $floorLabels[id.id] if id != ""
69
+ Tk.update(true)
70
+ end
71
+
72
+ # roomChanged --
73
+ # This method is invoked whenever the currentRoom variable changes.
74
+ # It highlights the current room and unhighlights any previous room.
75
+ #
76
+ # Arguments:
77
+ # w - The canvas window displaying the floorplan.
78
+ # args - Not used.
79
+
80
+ def roomChanged(w,*args)
81
+ w.delete('highlight')
82
+ item = $floorItems[$currentRoom.value]
83
+ return if item == nil
84
+ new = TkcPolygon.new(w, *(w.coords(item)))
85
+ new.configure('fill'=>$floor_colors['active'], 'tags'=>'highlight')
86
+ w.raise(new, 'marker')
87
+ end
88
+
89
+ # floor_bg1 --
90
+ # This method represents part of the floorplan database. When
91
+ # invoked, it instantiates the background information for the first
92
+ # floor.
93
+ #
94
+ # Arguments:
95
+ # w - The canvas window.
96
+ # fill - Fill color to use for the floor's background.
97
+ # outline - Color to use for the floor's outline.
98
+
99
+ def floor_bg1(w,fill,outline)
100
+ TkcPolygon.new(w,347,80,349,82,351,84,353,85,363,92,375,99,386,104,
101
+ 386,129,398,129,398,162,484,162,484,129,559,129,559,133,725,
102
+ 133,725,129,802,129,802,389,644,389,644,391,559,391,559,327,
103
+ 508,327,508,311,484,311,484,278,395,278,395,288,400,288,404,
104
+ 288,409,290,413,292,418,297,421,302,422,309,421,318,417,325,
105
+ 411,330,405,332,397,333,344,333,340,334,336,336,335,338,332,
106
+ 342,331,347,332,351,334,354,336,357,341,359,340,360,335,363,
107
+ 331,365,326,366,304,366,304,355,258,355,258,387,60,387,60,391,
108
+ 0,391,0,337,3,337,3,114,8,114,8,25,30,25,30,5,93,5,98,5,104,7,
109
+ 110,10,116,16,119,20,122,28,123,32,123,68,220,68,220,34,221,
110
+ 22,223,17,227,13,231,8,236,4,242,2,246,0,260,0,283,1,300,5,
111
+ 321,14,335,22,348,25,365,29,363,39,358,48,352,56,337,70,
112
+ 344,76,347,80, 'tags'=>['floor1','bg'], 'fill'=>fill)
113
+ TkcLine.new(w,386,129,398,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
114
+ TkcLine.new(w,258,355,258,387, 'fill'=>outline, 'tags'=>['floor1','bg'])
115
+ TkcLine.new(w,60,387,60,391, 'fill'=>outline, 'tags'=>['floor1','bg'])
116
+ TkcLine.new(w,0,337,0,391, 'fill'=>outline, 'tags'=>['floor1','bg'])
117
+ TkcLine.new(w,60,391,0,391, 'fill'=>outline, 'tags'=>['floor1','bg'])
118
+ TkcLine.new(w,3,114,3,337, 'fill'=>outline, 'tags'=>['floor1','bg'])
119
+ TkcLine.new(w,258,387,60,387, 'fill'=>outline, 'tags'=>['floor1','bg'])
120
+ TkcLine.new(w,484,162,398,162, 'fill'=>outline, 'tags'=>['floor1','bg'])
121
+ TkcLine.new(w,398,162,398,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
122
+ TkcLine.new(w,484,278,484,311, 'fill'=>outline, 'tags'=>['floor1','bg'])
123
+ TkcLine.new(w,484,311,508,311, 'fill'=>outline, 'tags'=>['floor1','bg'])
124
+ TkcLine.new(w,508,327,508,311, 'fill'=>outline, 'tags'=>['floor1','bg'])
125
+ TkcLine.new(w,559,327,508,327, 'fill'=>outline, 'tags'=>['floor1','bg'])
126
+ TkcLine.new(w,644,391,559,391, 'fill'=>outline, 'tags'=>['floor1','bg'])
127
+ TkcLine.new(w,644,389,644,391, 'fill'=>outline, 'tags'=>['floor1','bg'])
128
+ TkcLine.new(w,559,129,484,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
129
+ TkcLine.new(w,484,162,484,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
130
+ TkcLine.new(w,725,133,559,133, 'fill'=>outline, 'tags'=>['floor1','bg'])
131
+ TkcLine.new(w,559,129,559,133, 'fill'=>outline, 'tags'=>['floor1','bg'])
132
+ TkcLine.new(w,725,129,802,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
133
+ TkcLine.new(w,802,389,802,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
134
+ TkcLine.new(w,3,337,0,337, 'fill'=>outline, 'tags'=>['floor1','bg'])
135
+ TkcLine.new(w,559,391,559,327, 'fill'=>outline, 'tags'=>['floor1','bg'])
136
+ TkcLine.new(w,802,389,644,389, 'fill'=>outline, 'tags'=>['floor1','bg'])
137
+ TkcLine.new(w,725,133,725,129, 'fill'=>outline, 'tags'=>['floor1','bg'])
138
+ TkcLine.new(w,8,25,8,114, 'fill'=>outline, 'tags'=>['floor1','bg'])
139
+ TkcLine.new(w,8,114,3,114, 'fill'=>outline, 'tags'=>['floor1','bg'])
140
+ TkcLine.new(w,30,25,8,25, 'fill'=>outline, 'tags'=>['floor1','bg'])
141
+ TkcLine.new(w,484,278,395,278, 'fill'=>outline, 'tags'=>['floor1','bg'])
142
+ TkcLine.new(w,30,25,30,5, 'fill'=>outline, 'tags'=>['floor1','bg'])
143
+ TkcLine.new(w,93,5,30,5, 'fill'=>outline, 'tags'=>['floor1','bg'])
144
+ TkcLine.new(w,98,5,93,5, 'fill'=>outline, 'tags'=>['floor1','bg'])
145
+ TkcLine.new(w,104,7,98,5, 'fill'=>outline, 'tags'=>['floor1','bg'])
146
+ TkcLine.new(w,110,10,104,7, 'fill'=>outline, 'tags'=>['floor1','bg'])
147
+ TkcLine.new(w,116,16,110,10, 'fill'=>outline, 'tags'=>['floor1','bg'])
148
+ TkcLine.new(w,119,20,116,16, 'fill'=>outline, 'tags'=>['floor1','bg'])
149
+ TkcLine.new(w,122,28,119,20, 'fill'=>outline, 'tags'=>['floor1','bg'])
150
+ TkcLine.new(w,123,32,122,28, 'fill'=>outline, 'tags'=>['floor1','bg'])
151
+ TkcLine.new(w,123,68,123,32, 'fill'=>outline, 'tags'=>['floor1','bg'])
152
+ TkcLine.new(w,220,68,123,68, 'fill'=>outline, 'tags'=>['floor1','bg'])
153
+ TkcLine.new(w,386,129,386,104, 'fill'=>outline, 'tags'=>['floor1','bg'])
154
+ TkcLine.new(w,386,104,375,99, 'fill'=>outline, 'tags'=>['floor1','bg'])
155
+ TkcLine.new(w,375,99,363,92, 'fill'=>outline, 'tags'=>['floor1','bg'])
156
+ TkcLine.new(w,353,85,363,92, 'fill'=>outline, 'tags'=>['floor1','bg'])
157
+ TkcLine.new(w,220,68,220,34, 'fill'=>outline, 'tags'=>['floor1','bg'])
158
+ TkcLine.new(w,337,70,352,56, 'fill'=>outline, 'tags'=>['floor1','bg'])
159
+ TkcLine.new(w,352,56,358,48, 'fill'=>outline, 'tags'=>['floor1','bg'])
160
+ TkcLine.new(w,358,48,363,39, 'fill'=>outline, 'tags'=>['floor1','bg'])
161
+ TkcLine.new(w,363,39,365,29, 'fill'=>outline, 'tags'=>['floor1','bg'])
162
+ TkcLine.new(w,365,29,348,25, 'fill'=>outline, 'tags'=>['floor1','bg'])
163
+ TkcLine.new(w,348,25,335,22, 'fill'=>outline, 'tags'=>['floor1','bg'])
164
+ TkcLine.new(w,335,22,321,14, 'fill'=>outline, 'tags'=>['floor1','bg'])
165
+ TkcLine.new(w,321,14,300,5, 'fill'=>outline, 'tags'=>['floor1','bg'])
166
+ TkcLine.new(w,300,5,283,1, 'fill'=>outline, 'tags'=>['floor1','bg'])
167
+ TkcLine.new(w,283,1,260,0, 'fill'=>outline, 'tags'=>['floor1','bg'])
168
+ TkcLine.new(w,260,0,246,0, 'fill'=>outline, 'tags'=>['floor1','bg'])
169
+ TkcLine.new(w,246,0,242,2, 'fill'=>outline, 'tags'=>['floor1','bg'])
170
+ TkcLine.new(w,242,2,236,4, 'fill'=>outline, 'tags'=>['floor1','bg'])
171
+ TkcLine.new(w,236,4,231,8, 'fill'=>outline, 'tags'=>['floor1','bg'])
172
+ TkcLine.new(w,231,8,227,13, 'fill'=>outline, 'tags'=>['floor1','bg'])
173
+ TkcLine.new(w,223,17,227,13, 'fill'=>outline, 'tags'=>['floor1','bg'])
174
+ TkcLine.new(w,221,22,223,17, 'fill'=>outline, 'tags'=>['floor1','bg'])
175
+ TkcLine.new(w,220,34,221,22, 'fill'=>outline, 'tags'=>['floor1','bg'])
176
+ TkcLine.new(w,340,360,335,363, 'fill'=>outline, 'tags'=>['floor1','bg'])
177
+ TkcLine.new(w,335,363,331,365, 'fill'=>outline, 'tags'=>['floor1','bg'])
178
+ TkcLine.new(w,331,365,326,366, 'fill'=>outline, 'tags'=>['floor1','bg'])
179
+ TkcLine.new(w,326,366,304,366, 'fill'=>outline, 'tags'=>['floor1','bg'])
180
+ TkcLine.new(w,304,355,304,366, 'fill'=>outline, 'tags'=>['floor1','bg'])
181
+ TkcLine.new(w,395,288,400,288, 'fill'=>outline, 'tags'=>['floor1','bg'])
182
+ TkcLine.new(w,404,288,400,288, 'fill'=>outline, 'tags'=>['floor1','bg'])
183
+ TkcLine.new(w,409,290,404,288, 'fill'=>outline, 'tags'=>['floor1','bg'])
184
+ TkcLine.new(w,413,292,409,290, 'fill'=>outline, 'tags'=>['floor1','bg'])
185
+ TkcLine.new(w,418,297,413,292, 'fill'=>outline, 'tags'=>['floor1','bg'])
186
+ TkcLine.new(w,421,302,418,297, 'fill'=>outline, 'tags'=>['floor1','bg'])
187
+ TkcLine.new(w,422,309,421,302, 'fill'=>outline, 'tags'=>['floor1','bg'])
188
+ TkcLine.new(w,421,318,422,309, 'fill'=>outline, 'tags'=>['floor1','bg'])
189
+ TkcLine.new(w,421,318,417,325, 'fill'=>outline, 'tags'=>['floor1','bg'])
190
+ TkcLine.new(w,417,325,411,330, 'fill'=>outline, 'tags'=>['floor1','bg'])
191
+ TkcLine.new(w,411,330,405,332, 'fill'=>outline, 'tags'=>['floor1','bg'])
192
+ TkcLine.new(w,405,332,397,333, 'fill'=>outline, 'tags'=>['floor1','bg'])
193
+ TkcLine.new(w,397,333,344,333, 'fill'=>outline, 'tags'=>['floor1','bg'])
194
+ TkcLine.new(w,344,333,340,334, 'fill'=>outline, 'tags'=>['floor1','bg'])
195
+ TkcLine.new(w,340,334,336,336, 'fill'=>outline, 'tags'=>['floor1','bg'])
196
+ TkcLine.new(w,336,336,335,338, 'fill'=>outline, 'tags'=>['floor1','bg'])
197
+ TkcLine.new(w,335,338,332,342, 'fill'=>outline, 'tags'=>['floor1','bg'])
198
+ TkcLine.new(w,331,347,332,342, 'fill'=>outline, 'tags'=>['floor1','bg'])
199
+ TkcLine.new(w,332,351,331,347, 'fill'=>outline, 'tags'=>['floor1','bg'])
200
+ TkcLine.new(w,334,354,332,351, 'fill'=>outline, 'tags'=>['floor1','bg'])
201
+ TkcLine.new(w,336,357,334,354, 'fill'=>outline, 'tags'=>['floor1','bg'])
202
+ TkcLine.new(w,341,359,336,357, 'fill'=>outline, 'tags'=>['floor1','bg'])
203
+ TkcLine.new(w,341,359,340,360, 'fill'=>outline, 'tags'=>['floor1','bg'])
204
+ TkcLine.new(w,395,288,395,278, 'fill'=>outline, 'tags'=>['floor1','bg'])
205
+ TkcLine.new(w,304,355,258,355, 'fill'=>outline, 'tags'=>['floor1','bg'])
206
+ TkcLine.new(w,347,80,344,76, 'fill'=>outline, 'tags'=>['floor1','bg'])
207
+ TkcLine.new(w,344,76,337,70, 'fill'=>outline, 'tags'=>['floor1','bg'])
208
+ TkcLine.new(w,349,82,347,80, 'fill'=>outline, 'tags'=>['floor1','bg'])
209
+ TkcLine.new(w,351,84,349,82, 'fill'=>outline, 'tags'=>['floor1','bg'])
210
+ TkcLine.new(w,353,85,351,84, 'fill'=>outline, 'tags'=>['floor1','bg'])
211
+ end
212
+
213
+ # floor_bg2 --
214
+ # This method represents part of the floorplan database. When
215
+ # invoked, it instantiates the background information for the first
216
+ # floor.
217
+ #
218
+ # Arguments:
219
+ # w - The canvas window.
220
+ # fill - Fill color to use for the floor's background.
221
+ # outline - Color to use for the floor's outline.
222
+
223
+ def floor_bg2(w,fill,outline)
224
+ TkcPolygon.new(w,559,129,484,129,484,162,398,162,398,129,315,129,
225
+ 315,133,176,133,176,129,96,129,96,133,3,133,3,339,0,339,0,391,
226
+ 60,391,60,387,258,387,258,329,350,329,350,311,395,311,395,280,
227
+ 484,280,484,311,508,311,508,327,558,327,558,391,644,391,644,
228
+ 367,802,367,802,129,725,129,725,133,559,133,559,129,
229
+ 'tags'=>['floor2','bg'], 'fill'=>fill)
230
+ TkcLine.new(w,350,311,350,329, 'fill'=>outline, 'tags'=>['floor2','bg'])
231
+ TkcLine.new(w,398,129,398,162, 'fill'=>outline, 'tags'=>['floor2','bg'])
232
+ TkcLine.new(w,802,367,802,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
233
+ TkcLine.new(w,802,129,725,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
234
+ TkcLine.new(w,725,133,725,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
235
+ TkcLine.new(w,559,129,559,133, 'fill'=>outline, 'tags'=>['floor2','bg'])
236
+ TkcLine.new(w,559,133,725,133, 'fill'=>outline, 'tags'=>['floor2','bg'])
237
+ TkcLine.new(w,484,162,484,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
238
+ TkcLine.new(w,559,129,484,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
239
+ TkcLine.new(w,802,367,644,367, 'fill'=>outline, 'tags'=>['floor2','bg'])
240
+ TkcLine.new(w,644,367,644,391, 'fill'=>outline, 'tags'=>['floor2','bg'])
241
+ TkcLine.new(w,644,391,558,391, 'fill'=>outline, 'tags'=>['floor2','bg'])
242
+ TkcLine.new(w,558,327,558,391, 'fill'=>outline, 'tags'=>['floor2','bg'])
243
+ TkcLine.new(w,558,327,508,327, 'fill'=>outline, 'tags'=>['floor2','bg'])
244
+ TkcLine.new(w,508,327,508,311, 'fill'=>outline, 'tags'=>['floor2','bg'])
245
+ TkcLine.new(w,484,311,508,311, 'fill'=>outline, 'tags'=>['floor2','bg'])
246
+ TkcLine.new(w,484,280,484,311, 'fill'=>outline, 'tags'=>['floor2','bg'])
247
+ TkcLine.new(w,398,162,484,162, 'fill'=>outline, 'tags'=>['floor2','bg'])
248
+ TkcLine.new(w,484,280,395,280, 'fill'=>outline, 'tags'=>['floor2','bg'])
249
+ TkcLine.new(w,395,280,395,311, 'fill'=>outline, 'tags'=>['floor2','bg'])
250
+ TkcLine.new(w,258,387,60,387, 'fill'=>outline, 'tags'=>['floor2','bg'])
251
+ TkcLine.new(w,3,133,3,339, 'fill'=>outline, 'tags'=>['floor2','bg'])
252
+ TkcLine.new(w,3,339,0,339, 'fill'=>outline, 'tags'=>['floor2','bg'])
253
+ TkcLine.new(w,60,391,0,391, 'fill'=>outline, 'tags'=>['floor2','bg'])
254
+ TkcLine.new(w,0,339,0,391, 'fill'=>outline, 'tags'=>['floor2','bg'])
255
+ TkcLine.new(w,60,387,60,391, 'fill'=>outline, 'tags'=>['floor2','bg'])
256
+ TkcLine.new(w,258,329,258,387, 'fill'=>outline, 'tags'=>['floor2','bg'])
257
+ TkcLine.new(w,350,329,258,329, 'fill'=>outline, 'tags'=>['floor2','bg'])
258
+ TkcLine.new(w,395,311,350,311, 'fill'=>outline, 'tags'=>['floor2','bg'])
259
+ TkcLine.new(w,398,129,315,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
260
+ TkcLine.new(w,176,133,315,133, 'fill'=>outline, 'tags'=>['floor2','bg'])
261
+ TkcLine.new(w,176,129,96,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
262
+ TkcLine.new(w,3,133,96,133, 'fill'=>outline, 'tags'=>['floor2','bg'])
263
+ TkcLine.new(w,315,133,315,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
264
+ TkcLine.new(w,176,133,176,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
265
+ TkcLine.new(w,96,133,96,129, 'fill'=>outline, 'tags'=>['floor2','bg'])
266
+ end
267
+
268
+ # floor_bg3 --
269
+ # This method represents part of the floorplan database. When
270
+ # invoked, it instantiates the background information for the first
271
+ # floor.
272
+ #
273
+ # Arguments:
274
+ # w - The canvas window.
275
+ # fill - Fill color to use for the floor's background.
276
+ # outline - Color to use for the floor's outline.
277
+
278
+ def floor_bg3(w,fill,outline)
279
+ TkcPolygon.new(w,159,300,107,300,107,248,159,248,159,129,96,129,96,
280
+ 133,21,133,21,331,0,331,0,391,60,391,60,370,159,370,159,300,
281
+ 'tags'=>['floor3','bg'], 'fill'=>fill)
282
+ TkcPolygon.new(w,258,370,258,329,350,329,350,311,399,311,399,129,
283
+ 315,129,315,133,176,133,176,129,159,129,159,370,258,370,
284
+ 'tags'=>['floor3','bg'], 'fill'=>fill)
285
+ TkcLine.new(w,96,133,96,129, 'fill'=>outline, 'tags'=>['floor3','bg'])
286
+ TkcLine.new(w,176,129,96,129, 'fill'=>outline, 'tags'=>['floor3','bg'])
287
+ TkcLine.new(w,176,129,176,133, 'fill'=>outline, 'tags'=>['floor3','bg'])
288
+ TkcLine.new(w,315,133,176,133, 'fill'=>outline, 'tags'=>['floor3','bg'])
289
+ TkcLine.new(w,315,133,315,129, 'fill'=>outline, 'tags'=>['floor3','bg'])
290
+ TkcLine.new(w,399,129,315,129, 'fill'=>outline, 'tags'=>['floor3','bg'])
291
+ TkcLine.new(w,399,311,399,129, 'fill'=>outline, 'tags'=>['floor3','bg'])
292
+ TkcLine.new(w,399,311,350,311, 'fill'=>outline, 'tags'=>['floor3','bg'])
293
+ TkcLine.new(w,350,329,350,311, 'fill'=>outline, 'tags'=>['floor3','bg'])
294
+ TkcLine.new(w,350,329,258,329, 'fill'=>outline, 'tags'=>['floor3','bg'])
295
+ TkcLine.new(w,258,370,258,329, 'fill'=>outline, 'tags'=>['floor3','bg'])
296
+ TkcLine.new(w,60,370,258,370, 'fill'=>outline, 'tags'=>['floor3','bg'])
297
+ TkcLine.new(w,60,370,60,391, 'fill'=>outline, 'tags'=>['floor3','bg'])
298
+ TkcLine.new(w,60,391,0,391, 'fill'=>outline, 'tags'=>['floor3','bg'])
299
+ TkcLine.new(w,0,391,0,331, 'fill'=>outline, 'tags'=>['floor3','bg'])
300
+ TkcLine.new(w,21,331,0,331, 'fill'=>outline, 'tags'=>['floor3','bg'])
301
+ TkcLine.new(w,21,331,21,133, 'fill'=>outline, 'tags'=>['floor3','bg'])
302
+ TkcLine.new(w,96,133,21,133, 'fill'=>outline, 'tags'=>['floor3','bg'])
303
+ TkcLine.new(w,107,300,159,300,159,248,107,248,107,300,
304
+ 'fill'=>outline, 'tags'=>['floor3','bg'])
305
+ end
306
+
307
+ # floor_fg1 --
308
+ # This method represents part of the floorplan database. When
309
+ # invoked, it instantiates the foreground information for the first
310
+ # floor (office outlines and numbers).
311
+ #
312
+ # Arguments:
313
+ # w - The canvas window.
314
+ # color - Color to use for drawing foreground information.
315
+
316
+ def floor_fg1(w,color)
317
+ i = TkcPolygon.new(w,375,246,375,172,341,172,341,246,
318
+ 'fill'=>'', 'tags'=>['floor1','room'])
319
+ $floorLabels[i.id] = '101'
320
+ $floorItems['101'] = i
321
+ TkcText.new(w,358,209, 'text'=>'101', 'fill'=>color,
322
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
323
+ i = TkcPolygon.new(w,307,240,339,240,339,206,307,206,
324
+ 'fill'=>'', 'tags'=>['floor1','room'])
325
+ $floorLabels[i.id] = 'Pub Lift1'
326
+ $floorItems['Pub Lift1'] = i
327
+ TkcText.new(w,323,223, 'text'=>'Pub Lift1', 'fill'=>color,
328
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
329
+ i = TkcPolygon.new(w,339,205,307,205,307,171,339,171,
330
+ 'fill'=>'', 'tags'=>['floor1','room'])
331
+ $floorLabels[i.id] = 'Priv Lift1'
332
+ $floorItems['Priv Lift1'] = i
333
+ TkcText.new(w,323,188, 'text'=>'Priv Lift1', 'fill'=>color,
334
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
335
+ i = TkcPolygon.new(w,42,389,42,337,1,337,1,389,
336
+ 'fill'=>'', 'tags'=>['floor1','room'])
337
+ $floorLabels[i.id] = '110'
338
+ $floorItems['110'] = i
339
+ TkcText.new(w,21.5,363, 'text'=>'110', 'fill'=>color,
340
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
341
+ i = TkcPolygon.new(w,59,389,59,385,90,385,90,337,44,337,44,389,
342
+ 'fill'=>'', 'tags'=>['floor1','room'])
343
+ $floorLabels[i.id] = '109'
344
+ $floorItems['109'] = i
345
+ TkcText.new(w,67,363, 'text'=>'109', 'fill'=>color,
346
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
347
+ i = TkcPolygon.new(w,51,300,51,253,6,253,6,300,
348
+ 'fill'=>'', 'tags'=>['floor1','room'])
349
+ $floorLabels[i.id] = '111'
350
+ $floorItems['111'] = i
351
+ TkcText.new(w,28.5,276.5, 'text'=>'111', 'fill'=>color,
352
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
353
+ i = TkcPolygon.new(w,98,248,98,309,79,309,79,248,
354
+ 'fill'=>'', 'tags'=>['floor1','room'])
355
+ $floorLabels[i.id] = '117B'
356
+ $floorItems['117B'] = i
357
+ TkcText.new(w,88.5,278.5, 'text'=>'117B', 'fill'=>color,
358
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
359
+ i = TkcPolygon.new(w,51,251,51,204,6,204,6,251,
360
+ 'fill'=>'', 'tags'=>['floor1','room'])
361
+ $floorLabels[i.id] = '112'
362
+ $floorItems['112'] = i
363
+ TkcText.new(w,28.5,227.5, 'text'=>'112', 'fill'=>color,
364
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
365
+ i = TkcPolygon.new(w,6,156,51,156,51,203,6,203,
366
+ 'fill'=>'', 'tags'=>['floor1','room'])
367
+ $floorLabels[i.id] = '113'
368
+ $floorItems['113'] = i
369
+ TkcText.new(w,28.5,179.5, 'text'=>'113', 'fill'=>color,
370
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
371
+ i = TkcPolygon.new(w,85,169,79,169,79,192,85,192,
372
+ 'fill'=>'', 'tags'=>['floor1','room'])
373
+ $floorLabels[i.id] = '117A'
374
+ $floorItems['117A'] = i
375
+ TkcText.new(w,82,180.5, 'text'=>'117A', 'fill'=>color,
376
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
377
+ i = TkcPolygon.new(w,77,302,77,168,53,168,53,302,
378
+ 'fill'=>'', 'tags'=>['floor1','room'])
379
+ $floorLabels[i.id] = '117'
380
+ $floorItems['117'] = i
381
+ TkcText.new(w,65,235, 'text'=>'117', 'fill'=>color,
382
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
383
+ i = TkcPolygon.new(w,51,155,51,115,6,115,6,155,
384
+ 'fill'=>'', 'tags'=>['floor1','room'])
385
+ $floorLabels[i.id] = '114'
386
+ $floorItems['114'] = i
387
+ TkcText.new(w,28.5,135, 'text'=>'114', 'fill'=>color,
388
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
389
+ i = TkcPolygon.new(w,95,115,53,115,53,168,95,168,
390
+ 'fill'=>'', 'tags'=>['floor1','room'])
391
+ $floorLabels[i.id] = '115'
392
+ $floorItems['115'] = i
393
+ TkcText.new(w,74,141.5, 'text'=>'115', 'fill'=>color,
394
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
395
+ i = TkcPolygon.new(w,87,113,87,27,10,27,10,113,
396
+ 'fill'=>'', 'tags'=>['floor1','room'])
397
+ $floorLabels[i.id] = '116'
398
+ $floorItems['116'] = i
399
+ TkcText.new(w,48.5,70, 'text'=>'116', 'fill'=>color,
400
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
401
+ i = TkcPolygon.new(w,89,91,128,91,128,113,89,131,
402
+ 'fill'=>'', 'tags'=>['floor1','room'])
403
+ $floorLabels[i.id] = '118'
404
+ $floorItems['118'] = i
405
+ TkcText.new(w,108.5,102, 'text'=>'118', 'fill'=>color,
406
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
407
+ i = TkcPolygon.new(w,178,128,178,132,216,132,216,91,
408
+ 163,91,163,112,149,112,149,128,
409
+ 'fill'=>'', 'tags'=>['floor1','room'])
410
+ $floorLabels[i.id] = '120'
411
+ $floorItems['120'] = i
412
+ TkcText.new(w,189.5,111.5, 'text'=>'120', 'fill'=>color,
413
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
414
+ i = TkcPolygon.new(w,79,193,87,193,87,169,136,169,136,192,
415
+ 156,192,156,169,175,169,175,246,79,246,
416
+ 'fill'=>'', 'tags'=>['floor1','room'])
417
+ $floorLabels[i.id] = '122'
418
+ $floorItems['122'] = i
419
+ TkcText.new(w,131,207.5, 'text'=>'122', 'fill'=>color,
420
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
421
+ i = TkcPolygon.new(w,138,169,154,169,154,191,138,191,
422
+ 'fill'=>'', 'tags'=>['floor1','room'])
423
+ $floorLabels[i.id] = '121'
424
+ $floorItems['121'] = i
425
+ TkcText.new(w,146,180, 'text'=>'121', 'fill'=>color,
426
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
427
+ i = TkcPolygon.new(w,99,300,126,300,126,309,99,309,
428
+ 'fill'=>'', 'tags'=>['floor1','room'])
429
+ $floorLabels[i.id] = '106A'
430
+ $floorItems['106A'] = i
431
+ TkcText.new(w,112.5,304.5, 'text'=>'106A', 'fill'=>color,
432
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
433
+ i = TkcPolygon.new(w,128,299,128,309,150,309,150,248,99,248,99,299,
434
+ 'fill'=>'', 'tags'=>['floor1','room'])
435
+ $floorLabels[i.id] = '105'
436
+ $floorItems['105'] = i
437
+ TkcText.new(w,124.5,278.5, 'text'=>'105', 'fill'=>color,
438
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
439
+ i = TkcPolygon.new(w,174,309,174,300,152,300,152,309,
440
+ 'fill'=>'', 'tags'=>['floor1','room'])
441
+ $floorLabels[i.id] = '106B'
442
+ $floorItems['106B'] = i
443
+ TkcText.new(w,163,304.5, 'text'=>'106B', 'fill'=>color,
444
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
445
+ i = TkcPolygon.new(w,176,299,176,309,216,309,216,248,152,248,152,299,
446
+ 'fill'=>'', 'tags'=>['floor1','room'])
447
+ $floorLabels[i.id] = '104'
448
+ $floorItems['104'] = i
449
+ TkcText.new(w,184,278.5, 'text'=>'104', 'fill'=>color,
450
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
451
+ i = TkcPolygon.new(w,138,385,138,337,91,337,91,385,
452
+ 'fill'=>'', 'tags'=>['floor1','room'])
453
+ $floorLabels[i.id] = '108'
454
+ $floorItems['108'] = i
455
+ TkcText.new(w,114.5,361, 'text'=>'108', 'fill'=>color,
456
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
457
+ i = TkcPolygon.new(w,256,337,140,337,140,385,256,385,
458
+ 'fill'=>'', 'tags'=>['floor1','room'])
459
+ $floorLabels[i.id] = '107'
460
+ $floorItems['107'] = i
461
+ TkcText.new(w,198,361, 'text'=>'107', 'fill'=>color,
462
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
463
+ i = TkcPolygon.new(w,300,353,300,329,260,329,260,353,
464
+ 'fill'=>'', 'tags'=>['floor1','room'])
465
+ $floorLabels[i.id] = 'Smoking'
466
+ $floorItems['Smoking'] = i
467
+ TkcText.new(w,280,341, 'text'=>'Smoking', 'fill'=>color,
468
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
469
+ i = TkcPolygon.new(w,314,135,314,170,306,170,306,246,177,246,177,135,
470
+ 'fill'=>'', 'tags'=>['floor1','room'])
471
+ $floorLabels[i.id] = '123'
472
+ $floorItems['123'] = i
473
+ TkcText.new(w,245.5,190.5, 'text'=>'123', 'fill'=>color,
474
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
475
+ i = TkcPolygon.new(w,217,248,301,248,301,326,257,326,257,310,217,310,
476
+ 'fill'=>'', 'tags'=>['floor1','room'])
477
+ $floorLabels[i.id] = '103'
478
+ $floorItems['103'] = i
479
+ TkcText.new(w,259,287, 'text'=>'103', 'fill'=>color,
480
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
481
+ i = TkcPolygon.new(w,396,188,377,188,377,169,316,169,316,131,396,131,
482
+ 'fill'=>'', 'tags'=>['floor1','room'])
483
+ $floorLabels[i.id] = '124'
484
+ $floorItems['124'] = i
485
+ TkcText.new(w,356,150, 'text'=>'124', 'fill'=>color,
486
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
487
+ i = TkcPolygon.new(w,397,226,407,226,407,189,377,189,377,246,397,246,
488
+ 'fill'=>'', 'tags'=>['floor1','room'])
489
+ $floorLabels[i.id] = '125'
490
+ $floorItems['125'] = i
491
+ TkcText.new(w,392,217.5, 'text'=>'125', 'fill'=>color,
492
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
493
+ i = TkcPolygon.new(w,399,187,409,187,409,207,474,207,474,164,399,164,
494
+ 'fill'=>'', 'tags'=>['floor1','room'])
495
+ $floorLabels[i.id] = '126'
496
+ $floorItems['126'] = i
497
+ TkcText.new(w,436.5,185.5, 'text'=>'126', 'fill'=>color,
498
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
499
+ i = TkcPolygon.new(w,409,209,409,229,399,229,399,253,
500
+ 486,253,486,239,474,239,474,209,
501
+ 'fill'=>'', 'tags'=>['floor1','room'])
502
+ $floorLabels[i.id] = '127'
503
+ $floorItems['127'] = i
504
+ TkcText.new(w,436.5,'231', 'text'=>'127', 'fill'=>color,
505
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
506
+ i = TkcPolygon.new(w,501,164,501,174,495,174,495,188,
507
+ 490,188,490,204,476,204,476,164,
508
+ 'fill'=>'', 'tags'=>['floor1','room'])
509
+ $floorLabels[i.id] = 'MShower'
510
+ $floorItems['MShower'] = i
511
+ TkcText.new(w,488.5,'184', 'text'=>'MShower', 'fill'=>color,
512
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
513
+ i = TkcPolygon.new(w,497,176,513,176,513,204,492,204,492,190,497,190,
514
+ 'fill'=>'', 'tags'=>['floor1','room'])
515
+ $floorLabels[i.id] = 'Closet'
516
+ $floorItems['Closet'] = i
517
+ TkcText.new(w,502.5,190, 'text'=>'Closet', 'fill'=>color,
518
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
519
+ i = TkcPolygon.new(w,476,237,476,206,513,206,513,254,488,254,488,237,
520
+ 'fill'=>'', 'tags'=>['floor1','room'])
521
+ $floorLabels[i.id] = 'WShower'
522
+ $floorItems['WShower'] = i
523
+ TkcText.new(w,494.5,230, 'text'=>'WShower', 'fill'=>color,
524
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
525
+ i = TkcPolygon.new(w,486,131,558,131,558,135,724,135,724,166,
526
+ 697,166,697,275,553,275,531,254,515,254,
527
+ 515,174,503,174,503,161,486,161,
528
+ 'fill'=>'', 'tags'=>['floor1','room'])
529
+ $floorLabels[i.id] = '130'
530
+ $floorItems['130'] = i
531
+ TkcText.new(w,638.5,205, 'text'=>'130', 'fill'=>color,
532
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
533
+ i = TkcPolygon.new(w,308,242,339,242,339,248,342,248,
534
+ 342,246,397,246,397,276,393,276,
535
+ 393,309,300,309,300,248,308,248,
536
+ 'fill'=>'', 'tags'=>['floor1','room'])
537
+ $floorLabels[i.id] = '102'
538
+ $floorItems['102'] = i
539
+ TkcText.new(w,367.5,278.5, 'text'=>'102', 'fill'=>color,
540
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
541
+ i = TkcPolygon.new(w,397,255,486,255,486,276,397,276,
542
+ 'fill'=>'', 'tags'=>['floor1','room'])
543
+ $floorLabels[i.id] = '128'
544
+ $floorItems['128'] = i
545
+ TkcText.new(w,441.5,265.5, 'text'=>'128', 'fill'=>color,
546
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
547
+ i = TkcPolygon.new(w,510,309,486,309,486,255,530,255,
548
+ 552,277,561,277,561,325,510,325,
549
+ 'fill'=>'', 'tags'=>['floor1','room'])
550
+ $floorLabels[i.id] = '129'
551
+ $floorItems['129'] = i
552
+ TkcText.new(w,535.5,293, 'text'=>'129', 'fill'=>color,
553
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
554
+ i = TkcPolygon.new(w,696,281,740,281,740,387,642,387,
555
+ 642,389,561,389,561,277,696,277,
556
+ 'fill'=>'', 'tags'=>['floor1','room'])
557
+ $floorLabels[i.id] = '133'
558
+ $floorItems['133'] = i
559
+ TkcText.new(w,628.5,335, 'text'=>'133', 'fill'=>color,
560
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
561
+ i = TkcPolygon.new(w,742,387,742,281,800,281,800,387,
562
+ 'fill'=>'', 'tags'=>['floor1','room'])
563
+ $floorLabels[i.id] = '132'
564
+ $floorItems['132'] = i
565
+ TkcText.new(w,771,334, 'text'=>'132', 'fill'=>color,
566
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
567
+ i = TkcPolygon.new(w,800,168,800,280,699,280,699,168,
568
+ 'fill'=>'', 'tags'=>['floor1','room'])
569
+ $floorLabels[i.id] = '134'
570
+ $floorItems['134'] = i
571
+ TkcText.new(w,749.5,224, 'text'=>'134', 'fill'=>color,
572
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
573
+ i = TkcPolygon.new(w,726,131,726,166,800,166,800,131,
574
+ 'fill'=>'', 'tags'=>['floor1','room'])
575
+ $floorLabels[i.id] = '135'
576
+ $floorItems['135'] = i
577
+ TkcText.new(w,763,148.5, 'text'=>'135', 'fill'=>color,
578
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
579
+ i = TkcPolygon.new(w,340,360,335,363,331,365,326,366,304,366,
580
+ 304,312,396,312,396,288,400,288,404,288,
581
+ 409,290,413,292,418,297,421,302,422,309,
582
+ 421,318,417,325,411,330,405,332,397,333,
583
+ 344,333,340,334,336,336,335,338,332,342,
584
+ 331,347,332,351,334,354,336,357,341,359,
585
+ 'fill'=>'', 'tags'=>['floor1','room'])
586
+ $floorLabels[i.id] = 'Ramona Stair'
587
+ $floorItems['Ramona Stair'] = i
588
+ TkcText.new(w,368,323, 'text'=>'Ramona Stair', 'fill'=>color,
589
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
590
+ i = TkcPolygon.new(w,30,23,30,5,93,5,98,5,104,7,110,10,116,16,119,20,
591
+ 122,28,123,32,123,68,220,68,220,87,90,87,90,23,
592
+ 'fill'=>'', 'tags'=>['floor1','room'])
593
+ $floorLabels[i.id] = 'University Stair'
594
+ $floorItems['University Stair'] = i
595
+ TkcText.new(w,155,77.5, 'text'=>'University Stair', 'fill'=>color,
596
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
597
+ i = TkcPolygon.new(w,282,37,295,40,312,49,323,56,337,70,352,56,
598
+ 358,48,363,39,365,29,348,25,335,22,321,14,
599
+ 300,5,283,1,260,0,246,0,242,2,236,4,231,8,
600
+ 227,13,223,17,221,22,220,34,260,34,
601
+ 'fill'=>'', 'tags'=>['floor1','room'])
602
+ $floorLabels[i.id] = 'Plaza Stair'
603
+ $floorItems['Plaza Stair'] = i
604
+ TkcText.new(w,317.5,28.5, 'text'=>'Plaza Stair', 'fill'=>color,
605
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
606
+ i = TkcPolygon.new(w,220,34,260,34,282,37,295,40,312,49,
607
+ 323,56,337,70,350,83,365,94,377,100,
608
+ 386,104,386,128,220,128,
609
+ 'fill'=>'', 'tags'=>['floor1','room'])
610
+ $floorLabels[i.id] = 'Plaza Deck'
611
+ $floorItems['Plaza Deck'] = i
612
+ TkcText.new(w,303,81, 'text'=>'Plaza Deck', 'fill'=>color,
613
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
614
+ i = TkcPolygon.new(w,257,336,77,336,6,336,6,301,77,301,77,310,257,310,
615
+ 'fill'=>'', 'tags'=>['floor1','room'])
616
+ $floorLabels[i.id] = '106'
617
+ $floorItems['106'] = i
618
+ TkcText.new(w,131.5,318.5, 'text'=>'106', 'fill'=>color,
619
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
620
+ i = TkcPolygon.new(w,146,110,162,110,162,91,130,91,130,115,95,115,
621
+ 95,128,114,128,114,151,157,151,157,153,112,153,
622
+ 112,130,97,130,97,168,175,168,175,131,146,131,
623
+ 'fill'=>'', 'tags'=>['floor1','room'])
624
+ $floorLabels[i.id] = '119'
625
+ $floorItems['119'] = i
626
+ TkcText.new(w,143.5,133, 'text'=>'119', 'fill'=>color,
627
+ 'anchor'=>'c', 'tags'=>['floor1','label'])
628
+ TkcLine.new(w,155,191,155,189, 'fill'=>color, 'tags'=>['floor1','wall'])
629
+ TkcLine.new(w,155,177,155,169, 'fill'=>color, 'tags'=>['floor1','wall'])
630
+ TkcLine.new(w,96,129,96,169, 'fill'=>color, 'tags'=>['floor1','wall'])
631
+ TkcLine.new(w,78,169,176,169, 'fill'=>color, 'tags'=>['floor1','wall'])
632
+ TkcLine.new(w,176,247,176,129, 'fill'=>color, 'tags'=>['floor1','wall'])
633
+ TkcLine.new(w,340,206,307,206, 'fill'=>color, 'tags'=>['floor1','wall'])
634
+ TkcLine.new(w,340,187,340,170, 'fill'=>color, 'tags'=>['floor1','wall'])
635
+ TkcLine.new(w,340,210,340,201, 'fill'=>color, 'tags'=>['floor1','wall'])
636
+ TkcLine.new(w,340,247,340,224, 'fill'=>color, 'tags'=>['floor1','wall'])
637
+ TkcLine.new(w,340,241,307,241, 'fill'=>color, 'tags'=>['floor1','wall'])
638
+ TkcLine.new(w,376,246,376,170, 'fill'=>color, 'tags'=>['floor1','wall'])
639
+ TkcLine.new(w,307,247,307,170, 'fill'=>color, 'tags'=>['floor1','wall'])
640
+ TkcLine.new(w,376,170,307,170, 'fill'=>color, 'tags'=>['floor1','wall'])
641
+ TkcLine.new(w,315,129,315,170, 'fill'=>color, 'tags'=>['floor1','wall'])
642
+ TkcLine.new(w,147,129,176,129, 'fill'=>color, 'tags'=>['floor1','wall'])
643
+ TkcLine.new(w,202,133,176,133, 'fill'=>color, 'tags'=>['floor1','wall'])
644
+ TkcLine.new(w,398,129,315,129, 'fill'=>color, 'tags'=>['floor1','wall'])
645
+ TkcLine.new(w,258,352,258,387, 'fill'=>color, 'tags'=>['floor1','wall'])
646
+ TkcLine.new(w,60,387,60,391, 'fill'=>color, 'tags'=>['floor1','wall'])
647
+ TkcLine.new(w,0,337,0,391, 'fill'=>color, 'tags'=>['floor1','wall'])
648
+ TkcLine.new(w,60,391,0,391, 'fill'=>color, 'tags'=>['floor1','wall'])
649
+ TkcLine.new(w,3,114,3,337, 'fill'=>color, 'tags'=>['floor1','wall'])
650
+ TkcLine.new(w,258,387,60,387, 'fill'=>color, 'tags'=>['floor1','wall'])
651
+ TkcLine.new(w,52,237,52,273, 'fill'=>color, 'tags'=>['floor1','wall'])
652
+ TkcLine.new(w,52,189,52,225, 'fill'=>color, 'tags'=>['floor1','wall'])
653
+ TkcLine.new(w,52,140,52,177, 'fill'=>color, 'tags'=>['floor1','wall'])
654
+ TkcLine.new(w,395,306,395,311, 'fill'=>color, 'tags'=>['floor1','wall'])
655
+ TkcLine.new(w,531,254,398,254, 'fill'=>color, 'tags'=>['floor1','wall'])
656
+ TkcLine.new(w,475,178,475,238, 'fill'=>color, 'tags'=>['floor1','wall'])
657
+ TkcLine.new(w,502,162,398,162, 'fill'=>color, 'tags'=>['floor1','wall'])
658
+ TkcLine.new(w,398,129,398,188, 'fill'=>color, 'tags'=>['floor1','wall'])
659
+ TkcLine.new(w,383,188,376,188, 'fill'=>color, 'tags'=>['floor1','wall'])
660
+ TkcLine.new(w,408,188,408,194, 'fill'=>color, 'tags'=>['floor1','wall'])
661
+ TkcLine.new(w,398,227,398,254, 'fill'=>color, 'tags'=>['floor1','wall'])
662
+ TkcLine.new(w,408,227,398,227, 'fill'=>color, 'tags'=>['floor1','wall'])
663
+ TkcLine.new(w,408,222,408,227, 'fill'=>color, 'tags'=>['floor1','wall'])
664
+ TkcLine.new(w,408,206,408,210, 'fill'=>color, 'tags'=>['floor1','wall'])
665
+ TkcLine.new(w,408,208,475,208, 'fill'=>color, 'tags'=>['floor1','wall'])
666
+ TkcLine.new(w,484,278,484,311, 'fill'=>color, 'tags'=>['floor1','wall'])
667
+ TkcLine.new(w,484,311,508,311, 'fill'=>color, 'tags'=>['floor1','wall'])
668
+ TkcLine.new(w,508,327,508,311, 'fill'=>color, 'tags'=>['floor1','wall'])
669
+ TkcLine.new(w,559,327,508,327, 'fill'=>color, 'tags'=>['floor1','wall'])
670
+ TkcLine.new(w,644,391,559,391, 'fill'=>color, 'tags'=>['floor1','wall'])
671
+ TkcLine.new(w,644,389,644,391, 'fill'=>color, 'tags'=>['floor1','wall'])
672
+ TkcLine.new(w,514,205,475,205, 'fill'=>color, 'tags'=>['floor1','wall'])
673
+ TkcLine.new(w,496,189,496,187, 'fill'=>color, 'tags'=>['floor1','wall'])
674
+ TkcLine.new(w,559,129,484,129, 'fill'=>color, 'tags'=>['floor1','wall'])
675
+ TkcLine.new(w,484,162,484,129, 'fill'=>color, 'tags'=>['floor1','wall'])
676
+ TkcLine.new(w,725,133,559,133, 'fill'=>color, 'tags'=>['floor1','wall'])
677
+ TkcLine.new(w,559,129,559,133, 'fill'=>color, 'tags'=>['floor1','wall'])
678
+ TkcLine.new(w,725,149,725,167, 'fill'=>color, 'tags'=>['floor1','wall'])
679
+ TkcLine.new(w,725,129,802,129, 'fill'=>color, 'tags'=>['floor1','wall'])
680
+ TkcLine.new(w,802,389,802,129, 'fill'=>color, 'tags'=>['floor1','wall'])
681
+ TkcLine.new(w,739,167,802,167, 'fill'=>color, 'tags'=>['floor1','wall'])
682
+ TkcLine.new(w,396,188,408,188, 'fill'=>color, 'tags'=>['floor1','wall'])
683
+ TkcLine.new(w,0,337,9,337, 'fill'=>color, 'tags'=>['floor1','wall'])
684
+ TkcLine.new(w,58,337,21,337, 'fill'=>color, 'tags'=>['floor1','wall'])
685
+ TkcLine.new(w,43,391,43,337, 'fill'=>color, 'tags'=>['floor1','wall'])
686
+ TkcLine.new(w,105,337,75,337, 'fill'=>color, 'tags'=>['floor1','wall'])
687
+ TkcLine.new(w,91,387,91,337, 'fill'=>color, 'tags'=>['floor1','wall'])
688
+ TkcLine.new(w,154,337,117,337, 'fill'=>color, 'tags'=>['floor1','wall'])
689
+ TkcLine.new(w,139,387,139,337, 'fill'=>color, 'tags'=>['floor1','wall'])
690
+ TkcLine.new(w,227,337,166,337, 'fill'=>color, 'tags'=>['floor1','wall'])
691
+ TkcLine.new(w,258,337,251,337, 'fill'=>color, 'tags'=>['floor1','wall'])
692
+ TkcLine.new(w,258,328,302,328, 'fill'=>color, 'tags'=>['floor1','wall'])
693
+ TkcLine.new(w,302,355,302,311, 'fill'=>color, 'tags'=>['floor1','wall'])
694
+ TkcLine.new(w,395,311,302,311, 'fill'=>color, 'tags'=>['floor1','wall'])
695
+ TkcLine.new(w,484,278,395,278, 'fill'=>color, 'tags'=>['floor1','wall'])
696
+ TkcLine.new(w,395,294,395,278, 'fill'=>color, 'tags'=>['floor1','wall'])
697
+ TkcLine.new(w,473,278,473,275, 'fill'=>color, 'tags'=>['floor1','wall'])
698
+ TkcLine.new(w,473,256,473,254, 'fill'=>color, 'tags'=>['floor1','wall'])
699
+ TkcLine.new(w,533,257,531,254, 'fill'=>color, 'tags'=>['floor1','wall'])
700
+ TkcLine.new(w,553,276,551,274, 'fill'=>color, 'tags'=>['floor1','wall'])
701
+ TkcLine.new(w,698,276,553,276, 'fill'=>color, 'tags'=>['floor1','wall'])
702
+ TkcLine.new(w,559,391,559,327, 'fill'=>color, 'tags'=>['floor1','wall'])
703
+ TkcLine.new(w,802,389,644,389, 'fill'=>color, 'tags'=>['floor1','wall'])
704
+ TkcLine.new(w,741,314,741,389, 'fill'=>color, 'tags'=>['floor1','wall'])
705
+ TkcLine.new(w,698,280,698,167, 'fill'=>color, 'tags'=>['floor1','wall'])
706
+ TkcLine.new(w,707,280,698,280, 'fill'=>color, 'tags'=>['floor1','wall'])
707
+ TkcLine.new(w,802,280,731,280, 'fill'=>color, 'tags'=>['floor1','wall'])
708
+ TkcLine.new(w,741,280,741,302, 'fill'=>color, 'tags'=>['floor1','wall'])
709
+ TkcLine.new(w,698,167,727,167, 'fill'=>color, 'tags'=>['floor1','wall'])
710
+ TkcLine.new(w,725,137,725,129, 'fill'=>color, 'tags'=>['floor1','wall'])
711
+ TkcLine.new(w,514,254,514,175, 'fill'=>color, 'tags'=>['floor1','wall'])
712
+ TkcLine.new(w,496,175,514,175, 'fill'=>color, 'tags'=>['floor1','wall'])
713
+ TkcLine.new(w,502,175,502,162, 'fill'=>color, 'tags'=>['floor1','wall'])
714
+ TkcLine.new(w,475,166,475,162, 'fill'=>color, 'tags'=>['floor1','wall'])
715
+ TkcLine.new(w,496,176,496,175, 'fill'=>color, 'tags'=>['floor1','wall'])
716
+ TkcLine.new(w,491,189,496,189, 'fill'=>color, 'tags'=>['floor1','wall'])
717
+ TkcLine.new(w,491,205,491,189, 'fill'=>color, 'tags'=>['floor1','wall'])
718
+ TkcLine.new(w,487,238,475,238, 'fill'=>color, 'tags'=>['floor1','wall'])
719
+ TkcLine.new(w,487,240,487,238, 'fill'=>color, 'tags'=>['floor1','wall'])
720
+ TkcLine.new(w,487,252,487,254, 'fill'=>color, 'tags'=>['floor1','wall'])
721
+ TkcLine.new(w,315,133,304,133, 'fill'=>color, 'tags'=>['floor1','wall'])
722
+ TkcLine.new(w,256,133,280,133, 'fill'=>color, 'tags'=>['floor1','wall'])
723
+ TkcLine.new(w,78,247,270,247, 'fill'=>color, 'tags'=>['floor1','wall'])
724
+ TkcLine.new(w,307,247,294,247, 'fill'=>color, 'tags'=>['floor1','wall'])
725
+ TkcLine.new(w,214,133,232,133, 'fill'=>color, 'tags'=>['floor1','wall'])
726
+ TkcLine.new(w,217,247,217,266, 'fill'=>color, 'tags'=>['floor1','wall'])
727
+ TkcLine.new(w,217,309,217,291, 'fill'=>color, 'tags'=>['floor1','wall'])
728
+ TkcLine.new(w,217,309,172,309, 'fill'=>color, 'tags'=>['floor1','wall'])
729
+ TkcLine.new(w,154,309,148,309, 'fill'=>color, 'tags'=>['floor1','wall'])
730
+ TkcLine.new(w,175,300,175,309, 'fill'=>color, 'tags'=>['floor1','wall'])
731
+ TkcLine.new(w,151,300,175,300, 'fill'=>color, 'tags'=>['floor1','wall'])
732
+ TkcLine.new(w,151,247,151,309, 'fill'=>color, 'tags'=>['floor1','wall'])
733
+ TkcLine.new(w,78,237,78,265, 'fill'=>color, 'tags'=>['floor1','wall'])
734
+ TkcLine.new(w,78,286,78,309, 'fill'=>color, 'tags'=>['floor1','wall'])
735
+ TkcLine.new(w,106,309,78,309, 'fill'=>color, 'tags'=>['floor1','wall'])
736
+ TkcLine.new(w,130,309,125,309, 'fill'=>color, 'tags'=>['floor1','wall'])
737
+ TkcLine.new(w,99,309,99,247, 'fill'=>color, 'tags'=>['floor1','wall'])
738
+ TkcLine.new(w,127,299,99,299, 'fill'=>color, 'tags'=>['floor1','wall'])
739
+ TkcLine.new(w,127,309,127,299, 'fill'=>color, 'tags'=>['floor1','wall'])
740
+ TkcLine.new(w,155,191,137,191, 'fill'=>color, 'tags'=>['floor1','wall'])
741
+ TkcLine.new(w,137,169,137,191, 'fill'=>color, 'tags'=>['floor1','wall'])
742
+ TkcLine.new(w,78,171,78,169, 'fill'=>color, 'tags'=>['floor1','wall'])
743
+ TkcLine.new(w,78,190,78,218, 'fill'=>color, 'tags'=>['floor1','wall'])
744
+ TkcLine.new(w,86,192,86,169, 'fill'=>color, 'tags'=>['floor1','wall'])
745
+ TkcLine.new(w,86,192,78,192, 'fill'=>color, 'tags'=>['floor1','wall'])
746
+ TkcLine.new(w,52,301,3,301, 'fill'=>color, 'tags'=>['floor1','wall'])
747
+ TkcLine.new(w,52,286,52,301, 'fill'=>color, 'tags'=>['floor1','wall'])
748
+ TkcLine.new(w,52,252,3,252, 'fill'=>color, 'tags'=>['floor1','wall'])
749
+ TkcLine.new(w,52,203,3,203, 'fill'=>color, 'tags'=>['floor1','wall'])
750
+ TkcLine.new(w,3,156,52,156, 'fill'=>color, 'tags'=>['floor1','wall'])
751
+ TkcLine.new(w,8,25,8,114, 'fill'=>color, 'tags'=>['floor1','wall'])
752
+ TkcLine.new(w,63,114,3,114, 'fill'=>color, 'tags'=>['floor1','wall'])
753
+ TkcLine.new(w,75,114,97,114, 'fill'=>color, 'tags'=>['floor1','wall'])
754
+ TkcLine.new(w,108,114,129,114, 'fill'=>color, 'tags'=>['floor1','wall'])
755
+ TkcLine.new(w,129,114,129,89, 'fill'=>color, 'tags'=>['floor1','wall'])
756
+ TkcLine.new(w,52,114,52,128, 'fill'=>color, 'tags'=>['floor1','wall'])
757
+ TkcLine.new(w,132,89,88,89, 'fill'=>color, 'tags'=>['floor1','wall'])
758
+ TkcLine.new(w,88,25,88,89, 'fill'=>color, 'tags'=>['floor1','wall'])
759
+ TkcLine.new(w,88,114,88,89, 'fill'=>color, 'tags'=>['floor1','wall'])
760
+ TkcLine.new(w,218,89,144,89, 'fill'=>color, 'tags'=>['floor1','wall'])
761
+ TkcLine.new(w,147,111,147,129, 'fill'=>color, 'tags'=>['floor1','wall'])
762
+ TkcLine.new(w,162,111,147,111, 'fill'=>color, 'tags'=>['floor1','wall'])
763
+ TkcLine.new(w,162,109,162,111, 'fill'=>color, 'tags'=>['floor1','wall'])
764
+ TkcLine.new(w,162,96,162,89, 'fill'=>color, 'tags'=>['floor1','wall'])
765
+ TkcLine.new(w,218,89,218,94, 'fill'=>color, 'tags'=>['floor1','wall'])
766
+ TkcLine.new(w,218,89,218,119, 'fill'=>color, 'tags'=>['floor1','wall'])
767
+ TkcLine.new(w,8,25,88,25, 'fill'=>color, 'tags'=>['floor1','wall'])
768
+ TkcLine.new(w,258,337,258,328, 'fill'=>color, 'tags'=>['floor1','wall'])
769
+ TkcLine.new(w,113,129,96,129, 'fill'=>color, 'tags'=>['floor1','wall'])
770
+ TkcLine.new(w,302,355,258,355, 'fill'=>color, 'tags'=>['floor1','wall'])
771
+ TkcLine.new(w,386,104,386,129, 'fill'=>color, 'tags'=>['floor1','wall'])
772
+ TkcLine.new(w,377,100,386,104, 'fill'=>color, 'tags'=>['floor1','wall'])
773
+ TkcLine.new(w,365,94,377,100, 'fill'=>color, 'tags'=>['floor1','wall'])
774
+ TkcLine.new(w,350,83,365,94, 'fill'=>color, 'tags'=>['floor1','wall'])
775
+ TkcLine.new(w,337,70,350,83, 'fill'=>color, 'tags'=>['floor1','wall'])
776
+ TkcLine.new(w,337,70,323,56, 'fill'=>color, 'tags'=>['floor1','wall'])
777
+ TkcLine.new(w,312,49,323,56, 'fill'=>color, 'tags'=>['floor1','wall'])
778
+ TkcLine.new(w,295,40,312,49, 'fill'=>color, 'tags'=>['floor1','wall'])
779
+ TkcLine.new(w,282,37,295,40, 'fill'=>color, 'tags'=>['floor1','wall'])
780
+ TkcLine.new(w,260,34,282,37, 'fill'=>color, 'tags'=>['floor1','wall'])
781
+ TkcLine.new(w,253,34,260,34, 'fill'=>color, 'tags'=>['floor1','wall'])
782
+ TkcLine.new(w,386,128,386,104, 'fill'=>color, 'tags'=>['floor1','wall'])
783
+ TkcLine.new(w,113,152,156,152, 'fill'=>color, 'tags'=>['floor1','wall'])
784
+ TkcLine.new(w,113,152,156,152, 'fill'=>color, 'tags'=>['floor1','wall'])
785
+ TkcLine.new(w,113,152,113,129, 'fill'=>color, 'tags'=>['floor1','wall'])
786
+ end
787
+
788
+ # floor_fg2 --
789
+ # This method represents part of the floorplan database. When
790
+ # invoked, it instantiates the foreground information for the second
791
+ # floor (office outlines and numbers).
792
+ #
793
+ # Arguments:
794
+ # w - The canvas window.
795
+ # color - Color to use for drawing foreground information.
796
+
797
+ def floor_fg2(w,color)
798
+ i = TkcPolygon.new(w,748,188,755,188,755,205,758,205,758,222,
799
+ 800,222,800,168,748,168,
800
+ 'fill'=>'', 'tags'=>['floor2','room'])
801
+ $floorLabels[i.id] = '238'
802
+ $floorItems['238'] = i
803
+ TkcText.new(w,774,195, 'text'=>'238', 'fill'=>color,
804
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
805
+ i = TkcPolygon.new(w,726,188,746,188,746,166,800,166,800,131,726,131,
806
+ 'fill'=>'', 'tags'=>['floor2','room'])
807
+ $floorLabels[i.id] = '237'
808
+ $floorItems['237'] = i
809
+ TkcText.new(w,763,148.5, 'text'=>'237', 'fill'=>color,
810
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
811
+ i = TkcPolygon.new(w,497,187,497,204,559,204,559,324,641,324,
812
+ 643,324,643,291,641,291,641,205,696,205,
813
+ 696,291,694,291,694,314,715,314,715,291,
814
+ 715,205,755,205,755,190,724,190,724,187,
815
+ 'fill'=>'', 'tags'=>['floor2','room'])
816
+ $floorLabels[i.id] = '246'
817
+ $floorItems['246'] = i
818
+ TkcText.new(w,600,264, 'text'=>'246', 'fill'=>color,
819
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
820
+ i = TkcPolygon.new(w,694,279,643,279,643,314,694,314,
821
+ 'fill'=>'', 'tags'=>['floor2','room'])
822
+ $floorLabels[i.id] = '247'
823
+ $floorItems['247'] = i
824
+ TkcText.new(w,668.5,296.5, 'text'=>'247', 'fill'=>color,
825
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
826
+ i = TkcPolygon.new(w,232,250,308,250,308,242,339,242,339,246,
827
+ 397,246,397,255,476,255,476,250,482,250,559,250,
828
+ 559,274,482,274,482,278,396,278,396,274,232,274,
829
+ 'fill'=>'', 'tags'=>['floor2','room'])
830
+ $floorLabels[i.id] = '202'
831
+ $floorItems['202'] = i
832
+ TkcText.new(w,285.5,260, 'text'=>'202', 'fill'=>color,
833
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
834
+ i = TkcPolygon.new(w,53,228,53,338,176,338,233,338,233,196,
835
+ 306,196,306,180,175,180,175,169,156,169,
836
+ 156,196,176,196,176,228,
837
+ 'fill'=>'', 'tags'=>['floor2','room'])
838
+ $floorLabels[i.id] = '206'
839
+ $floorItems['206'] = i
840
+ TkcText.new(w,143,267, 'text'=>'206', 'fill'=>color,
841
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
842
+ i = TkcPolygon.new(w,51,277,6,277,6,338,51,338,
843
+ 'fill'=>'', 'tags'=>['floor2','room'])
844
+ $floorLabels[i.id] = '212'
845
+ $floorItems['212'] = i
846
+ TkcText.new(w,28.5,307.5, 'text'=>'212', 'fill'=>color,
847
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
848
+ i = TkcPolygon.new(w,557,276,486,276,486,309,510,309,510,325,557,325,
849
+ 'fill'=>'', 'tags'=>['floor2','room'])
850
+ $floorLabels[i.id] = '245'
851
+ $floorItems['245'] = i
852
+ TkcText.new(w,521.5,300.5, 'text'=>'245', 'fill'=>color,
853
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
854
+ i = TkcPolygon.new(w,560,389,599,389,599,326,560,326,
855
+ 'fill'=>'', 'tags'=>['floor2','room'])
856
+ $floorLabels[i.id] = '244'
857
+ $floorItems['244'] = i
858
+ TkcText.new(w,579.5,357.5, 'text'=>'244', 'fill'=>color,
859
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
860
+ i = TkcPolygon.new(w,601,389,601,326,643,326,643,389,
861
+ 'fill'=>'', 'tags'=>['floor2','room'])
862
+ $floorLabels[i.id] = '243'
863
+ $floorItems['243'] = i
864
+ TkcText.new(w,622,357.5, 'text'=>'243', 'fill'=>color,
865
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
866
+ i = TkcPolygon.new(w,688,316,645,316,645,365,688,365,
867
+ 'fill'=>'', 'tags'=>['floor2','room'])
868
+ $floorLabels[i.id] = '242'
869
+ $floorItems['242'] = i
870
+ TkcText.new(w,666.5,340.5, 'text'=>'242', 'fill'=>color,
871
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
872
+ i = TkcPolygon.new(w,802,367,759,367,759,226,802,226,
873
+ 'fill'=>'', 'tags'=>['floor2','room'])
874
+ $floorLabels[i.id] = 'Barbecue Deck'
875
+ $floorItems['Barbecue Deck'] = i
876
+ TkcText.new(w,780.5,296.5, 'text'=>'Barbecue Deck', 'fill'=>color,
877
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
878
+ i = TkcPolygon.new(w,755,262,755,314,717,314,717,262,
879
+ 'fill'=>'', 'tags'=>['floor2','room'])
880
+ $floorLabels[i.id] = '240'
881
+ $floorItems['240'] = i
882
+ TkcText.new(w,736,288, 'text'=>'240', 'fill'=>color,
883
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
884
+ i = TkcPolygon.new(w,755,316,689,316,689,365,755,365,
885
+ 'fill'=>'', 'tags'=>['floor2','room'])
886
+ $floorLabels[i.id] = '241'
887
+ $floorItems['241'] = i
888
+ TkcText.new(w,722,340.5, 'text'=>'241', 'fill'=>color,
889
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
890
+ i = TkcPolygon.new(w,755,206,717,206,717,261,755,261,
891
+ 'fill'=>'', 'tags'=>['floor2','room'])
892
+ $floorLabels[i.id] = '239'
893
+ $floorItems['239'] = i
894
+ TkcText.new(w,736,233.5, 'text'=>'239', 'fill'=>color,
895
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
896
+ i = TkcPolygon.new(w,695,277,643,277,643,206,695,206,
897
+ 'fill'=>'', 'tags'=>['floor2','room'])
898
+ $floorLabels[i.id] = '248'
899
+ $floorItems['248'] = i
900
+ TkcText.new(w,669,241.5, 'text'=>'248', 'fill'=>color,
901
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
902
+ i = TkcPolygon.new(w,676,135,676,185,724,185,724,135,
903
+ 'fill'=>'', 'tags'=>['floor2','room'])
904
+ $floorLabels[i.id] = '236'
905
+ $floorItems['236'] = i
906
+ TkcText.new(w,700,160, 'text'=>'236', 'fill'=>color,
907
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
908
+ i = TkcPolygon.new(w,675,135,635,135,635,145,628,145,628,185,675,185,
909
+ 'fill'=>'', 'tags'=>['floor2','room'])
910
+ $floorLabels[i.id] = '235'
911
+ $floorItems['235'] = i
912
+ TkcText.new(w,651.5,160, 'text'=>'235', 'fill'=>color,
913
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
914
+ i = TkcPolygon.new(w,626,143,633,143,633,135,572,135,
915
+ 572,143,579,143,579,185,626,185,
916
+ 'fill'=>'', 'tags'=>['floor2','room'])
917
+ $floorLabels[i.id] = '234'
918
+ $floorItems['234'] = i
919
+ TkcText.new(w,606,160, 'text'=>'234', 'fill'=>color,
920
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
921
+ i = TkcPolygon.new(w,557,135,571,135,571,145,578,145,
922
+ 578,185,527,185,527,131,557,131,
923
+ 'fill'=>'', 'tags'=>['floor2','room'])
924
+ $floorLabels[i.id] = '233'
925
+ $floorItems['233'] = i
926
+ TkcText.new(w,552.5,158, 'text'=>'233', 'fill'=>color,
927
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
928
+ i = TkcPolygon.new(w,476,249,557,249,557,205,476,205,
929
+ 'fill'=>'', 'tags'=>['floor2','room'])
930
+ $floorLabels[i.id] = '230'
931
+ $floorItems['230'] = i
932
+ TkcText.new(w,516.5,227, 'text'=>'230', 'fill'=>color,
933
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
934
+ i = TkcPolygon.new(w,476,164,486,164,486,131,525,131,525,185,476,185,
935
+ 'fill'=>'', 'tags'=>['floor2','room'])
936
+ $floorLabels[i.id] = '232'
937
+ $floorItems['232'] = i
938
+ TkcText.new(w,500.5,158, 'text'=>'232', 'fill'=>color,
939
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
940
+ i = TkcPolygon.new(w,476,186,495,186,495,204,476,204,
941
+ 'fill'=>'', 'tags'=>['floor2','room'])
942
+ $floorLabels[i.id] = '229'
943
+ $floorItems['229'] = i
944
+ TkcText.new(w,485.5,195, 'text'=>'229', 'fill'=>color,
945
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
946
+ i = TkcPolygon.new(w,474,207,409,207,409,187,399,187,399,164,474,164,
947
+ 'fill'=>'', 'tags'=>['floor2','room'])
948
+ $floorLabels[i.id] = '227'
949
+ $floorItems['227'] = i
950
+ TkcText.new(w,436.5,185.5, 'text'=>'227', 'fill'=>color,
951
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
952
+ i = TkcPolygon.new(w,399,228,399,253,474,253,474,209,409,209,409,228,
953
+ 'fill'=>'', 'tags'=>['floor2','room'])
954
+ $floorLabels[i.id] = '228'
955
+ $floorItems['228'] = i
956
+ TkcText.new(w,436.5,231, 'text'=>'228', 'fill'=>color,
957
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
958
+ i = TkcPolygon.new(w,397,246,397,226,407,226,407,189,377,189,377,246,
959
+ 'fill'=>'', 'tags'=>['floor2','room'])
960
+ $floorLabels[i.id] = '226'
961
+ $floorItems['226'] = i
962
+ TkcText.new(w,392,217.5, 'text'=>'226', 'fill'=>color,
963
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
964
+ i = TkcPolygon.new(w,377,169,316,169,316,131,397,131,397,188,377,188,
965
+ 'fill'=>'', 'tags'=>['floor2','room'])
966
+ $floorLabels[i.id] = '225'
967
+ $floorItems['225'] = i
968
+ TkcText.new(w,356.5,150, 'text'=>'225', 'fill'=>color,
969
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
970
+ i = TkcPolygon.new(w,234,198,306,198,306,249,234,249,
971
+ 'fill'=>'', 'tags'=>['floor2','room'])
972
+ $floorLabels[i.id] = '224'
973
+ $floorItems['224'] = i
974
+ TkcText.new(w,270,223.5, 'text'=>'224', 'fill'=>color,
975
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
976
+ i = TkcPolygon.new(w,270,179,306,179,306,170,314,170,314,135,270,135,
977
+ 'fill'=>'', 'tags'=>['floor2','room'])
978
+ $floorLabels[i.id] = '223'
979
+ $floorItems['223'] = i
980
+ TkcText.new(w,292,157, 'text'=>'223', 'fill'=>color,
981
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
982
+ i = TkcPolygon.new(w,268,179,221,179,221,135,268,135,
983
+ 'fill'=>'', 'tags'=>['floor2','room'])
984
+ $floorLabels[i.id] = '222'
985
+ $floorItems['222'] = i
986
+ TkcText.new(w,244.5,157, 'text'=>'222', 'fill'=>color,
987
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
988
+ i = TkcPolygon.new(w,177,179,219,179,219,135,177,135,
989
+ 'fill'=>'', 'tags'=>['floor2','room'])
990
+ $floorLabels[i.id] = '221'
991
+ $floorItems['221'] = i
992
+ TkcText.new(w,198,157, 'text'=>'221', 'fill'=>color,
993
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
994
+ i = TkcPolygon.new(w,299,327,349,327,349,284,341,284,341,276,299,276,
995
+ 'fill'=>'', 'tags'=>['floor2','room'])
996
+ $floorLabels[i.id] = '204'
997
+ $floorItems['204'] = i
998
+ TkcText.new(w,324,301.5, 'text'=>'204', 'fill'=>color,
999
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1000
+ i = TkcPolygon.new(w,234,276,297,276,297,327,257,327,257,338,234,338,
1001
+ 'fill'=>'', 'tags'=>['floor2','room'])
1002
+ $floorLabels[i.id] = '205'
1003
+ $floorItems['205'] = i
1004
+ TkcText.new(w,265.5,307, 'text'=>'205', 'fill'=>color,
1005
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1006
+ i = TkcPolygon.new(w,256,385,256,340,212,340,212,385,
1007
+ 'fill'=>'', 'tags'=>['floor2','room'])
1008
+ $floorLabels[i.id] = '207'
1009
+ $floorItems['207'] = i
1010
+ TkcText.new(w,234,362.5, 'text'=>'207', 'fill'=>color,
1011
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1012
+ i = TkcPolygon.new(w,210,340,164,340,164,385,210,385,
1013
+ 'fill'=>'', 'tags'=>['floor2','room'])
1014
+ $floorLabels[i.id] = '208'
1015
+ $floorItems['208'] = i
1016
+ TkcText.new(w,187,362.5, 'text'=>'208', 'fill'=>color,
1017
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1018
+ i = TkcPolygon.new(w,115,340,162,340,162,385,115,385,
1019
+ 'fill'=>'', 'tags'=>['floor2','room'])
1020
+ $floorLabels[i.id] = '209'
1021
+ $floorItems['209'] = i
1022
+ TkcText.new(w,138.5,362.5, 'text'=>'209', 'fill'=>color,
1023
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1024
+ i = TkcPolygon.new(w,89,228,89,156,53,156,53,228,
1025
+ 'fill'=>'', 'tags'=>['floor2','room'])
1026
+ $floorLabels[i.id] = '217'
1027
+ $floorItems['217'] = i
1028
+ TkcText.new(w,71,192, 'text'=>'217', 'fill'=>color,
1029
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1030
+ i = TkcPolygon.new(w,89,169,97,169,97,190,89,190,
1031
+ 'fill'=>'', 'tags'=>['floor2','room'])
1032
+ $floorLabels[i.id] = '217A'
1033
+ $floorItems['217A'] = i
1034
+ TkcText.new(w,93,179.5, 'text'=>'217A', 'fill'=>color,
1035
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1036
+ i = TkcPolygon.new(w,89,156,89,168,95,168,95,135,53,135,53,156,
1037
+ 'fill'=>'', 'tags'=>['floor2','room'])
1038
+ $floorLabels[i.id] = '216'
1039
+ $floorItems['216'] = i
1040
+ TkcText.new(w,71,145.5, 'text'=>'216', 'fill'=>color,
1041
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1042
+ i = TkcPolygon.new(w,51,179,51,135,6,135,6,179,
1043
+ 'fill'=>'', 'tags'=>['floor2','room'])
1044
+ $floorLabels[i.id] = '215'
1045
+ $floorItems['215'] = i
1046
+ TkcText.new(w,28.5,157, 'text'=>'215', 'fill'=>color,
1047
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1048
+ i = TkcPolygon.new(w,51,227,6,227,6,180,51,180,
1049
+ 'fill'=>'', 'tags'=>['floor2','room'])
1050
+ $floorLabels[i.id] = '214'
1051
+ $floorItems['214'] = i
1052
+ TkcText.new(w,28.5,203.5, 'text'=>'214', 'fill'=>color,
1053
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1054
+ i = TkcPolygon.new(w,51,275,6,275,6,229,51,229,
1055
+ 'fill'=>'', 'tags'=>['floor2','room'])
1056
+ $floorLabels[i.id] = '213'
1057
+ $floorItems['213'] = i
1058
+ TkcText.new(w,28.5,252, 'text'=>'213', 'fill'=>color,
1059
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1060
+ i = TkcPolygon.new(w,114,340,67,340,67,385,114,385,
1061
+ 'fill'=>'', 'tags'=>['floor2','room'])
1062
+ $floorLabels[i.id] = '210'
1063
+ $floorItems['210'] = i
1064
+ TkcText.new(w,90.5,362.5, 'text'=>'210', 'fill'=>color,
1065
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1066
+ i = TkcPolygon.new(w,59,389,59,385,65,385,65,340,1,340,1,389,
1067
+ 'fill'=>'', 'tags'=>['floor2','room'])
1068
+ $floorLabels[i.id] = '211'
1069
+ $floorItems['211'] = i
1070
+ TkcText.new(w,33,364.5, 'text'=>'211', 'fill'=>color,
1071
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1072
+ i = TkcPolygon.new(w,393,309,350,309,350,282,342,282,342,276,393,276,
1073
+ 'fill'=>'', 'tags'=>['floor2','room'])
1074
+ $floorLabels[i.id] = '203'
1075
+ $floorItems['203'] = i
1076
+ TkcText.new(w,367.5,292.5, 'text'=>'203', 'fill'=>color,
1077
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1078
+ i = TkcPolygon.new(w,99,191,91,191,91,226,174,226,174,198,
1079
+ 154,198,154,192,109,192,109,169,99,169,
1080
+ 'fill'=>'', 'tags'=>['floor2','room'])
1081
+ $floorLabels[i.id] = '220'
1082
+ $floorItems['220'] = i
1083
+ TkcText.new(w,132.5,208.5, 'text'=>'220', 'fill'=>color,
1084
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1085
+ i = TkcPolygon.new(w,339,205,307,205,307,171,339,171,
1086
+ 'fill'=>'', 'tags'=>['floor2','room'])
1087
+ $floorLabels[i.id] = 'Priv Lift2'
1088
+ $floorItems['Priv Lift2'] = i
1089
+ TkcText.new(w,323,188, 'text'=>'Priv Lift2', 'fill'=>color,
1090
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1091
+ i = TkcPolygon.new(w,307,240,339,240,339,206,307,206,
1092
+ 'fill'=>'', 'tags'=>['floor2','room'])
1093
+ $floorLabels[i.id] = 'Pub Lift 2'
1094
+ $floorItems['Pub Lift 2'] = i
1095
+ TkcText.new(w,323,223, 'text'=>'Pub Lift 2', 'fill'=>color,
1096
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1097
+ i = TkcPolygon.new(w,175,168,97,168,97,131,175,131,
1098
+ 'fill'=>'', 'tags'=>['floor2','room'])
1099
+ $floorLabels[i.id] = '218'
1100
+ $floorItems['218'] = i
1101
+ TkcText.new(w,136,149.5, 'text'=>'218', 'fill'=>color,
1102
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1103
+ i = TkcPolygon.new(w,154,191,111,191,111,169,154,169,
1104
+ 'fill'=>'', 'tags'=>['floor2','room'])
1105
+ $floorLabels[i.id] = '219'
1106
+ $floorItems['219'] = i
1107
+ TkcText.new(w,132.5,180, 'text'=>'219', 'fill'=>color,
1108
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1109
+ i = TkcPolygon.new(w,375,246,375,172,341,172,341,246,
1110
+ 'fill'=>'', 'tags'=>['floor2','room'])
1111
+ $floorLabels[i.id] = '201'
1112
+ $floorItems['201'] = i
1113
+ TkcText.new(w,358,209, 'text'=>'201', 'fill'=>color,
1114
+ 'anchor'=>'c', 'tags'=>['floor2','label'])
1115
+ TkcLine.new(w,641,186,678,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1116
+ TkcLine.new(w,757,350,757,367, 'fill'=>color, 'tags'=>['floor2','wall'])
1117
+ TkcLine.new(w,634,133,634,144, 'fill'=>color, 'tags'=>['floor2','wall'])
1118
+ TkcLine.new(w,634,144,627,144, 'fill'=>color, 'tags'=>['floor2','wall'])
1119
+ TkcLine.new(w,572,133,572,144, 'fill'=>color, 'tags'=>['floor2','wall'])
1120
+ TkcLine.new(w,572,144,579,144, 'fill'=>color, 'tags'=>['floor2','wall'])
1121
+ TkcLine.new(w,398,129,398,162, 'fill'=>color, 'tags'=>['floor2','wall'])
1122
+ TkcLine.new(w,174,197,175,197, 'fill'=>color, 'tags'=>['floor2','wall'])
1123
+ TkcLine.new(w,175,197,175,227, 'fill'=>color, 'tags'=>['floor2','wall'])
1124
+ TkcLine.new(w,757,206,757,221, 'fill'=>color, 'tags'=>['floor2','wall'])
1125
+ TkcLine.new(w,396,188,408,188, 'fill'=>color, 'tags'=>['floor2','wall'])
1126
+ TkcLine.new(w,727,189,725,189, 'fill'=>color, 'tags'=>['floor2','wall'])
1127
+ TkcLine.new(w,747,167,802,167, 'fill'=>color, 'tags'=>['floor2','wall'])
1128
+ TkcLine.new(w,747,167,747,189, 'fill'=>color, 'tags'=>['floor2','wall'])
1129
+ TkcLine.new(w,755,189,739,189, 'fill'=>color, 'tags'=>['floor2','wall'])
1130
+ TkcLine.new(w,769,224,757,224, 'fill'=>color, 'tags'=>['floor2','wall'])
1131
+ TkcLine.new(w,802,224,802,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1132
+ TkcLine.new(w,802,129,725,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1133
+ TkcLine.new(w,725,189,725,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1134
+ TkcLine.new(w,725,186,690,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1135
+ TkcLine.new(w,676,133,676,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1136
+ TkcLine.new(w,627,144,627,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1137
+ TkcLine.new(w,629,186,593,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1138
+ TkcLine.new(w,579,144,579,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1139
+ TkcLine.new(w,559,129,559,133, 'fill'=>color, 'tags'=>['floor2','wall'])
1140
+ TkcLine.new(w,725,133,559,133, 'fill'=>color, 'tags'=>['floor2','wall'])
1141
+ TkcLine.new(w,484,162,484,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1142
+ TkcLine.new(w,559,129,484,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1143
+ TkcLine.new(w,526,129,526,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1144
+ TkcLine.new(w,540,186,581,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1145
+ TkcLine.new(w,528,186,523,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1146
+ TkcLine.new(w,511,186,475,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1147
+ TkcLine.new(w,496,190,496,186, 'fill'=>color, 'tags'=>['floor2','wall'])
1148
+ TkcLine.new(w,496,205,496,202, 'fill'=>color, 'tags'=>['floor2','wall'])
1149
+ TkcLine.new(w,475,205,527,205, 'fill'=>color, 'tags'=>['floor2','wall'])
1150
+ TkcLine.new(w,558,205,539,205, 'fill'=>color, 'tags'=>['floor2','wall'])
1151
+ TkcLine.new(w,558,205,558,249, 'fill'=>color, 'tags'=>['floor2','wall'])
1152
+ TkcLine.new(w,558,249,475,249, 'fill'=>color, 'tags'=>['floor2','wall'])
1153
+ TkcLine.new(w,662,206,642,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1154
+ TkcLine.new(w,695,206,675,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1155
+ TkcLine.new(w,695,278,642,278, 'fill'=>color, 'tags'=>['floor2','wall'])
1156
+ TkcLine.new(w,642,291,642,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1157
+ TkcLine.new(w,695,291,695,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1158
+ TkcLine.new(w,716,208,716,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1159
+ TkcLine.new(w,757,206,716,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1160
+ TkcLine.new(w,757,221,757,224, 'fill'=>color, 'tags'=>['floor2','wall'])
1161
+ TkcLine.new(w,793,224,802,224, 'fill'=>color, 'tags'=>['floor2','wall'])
1162
+ TkcLine.new(w,757,262,716,262, 'fill'=>color, 'tags'=>['floor2','wall'])
1163
+ TkcLine.new(w,716,220,716,264, 'fill'=>color, 'tags'=>['floor2','wall'])
1164
+ TkcLine.new(w,716,315,716,276, 'fill'=>color, 'tags'=>['floor2','wall'])
1165
+ TkcLine.new(w,757,315,703,315, 'fill'=>color, 'tags'=>['floor2','wall'])
1166
+ TkcLine.new(w,757,325,757,224, 'fill'=>color, 'tags'=>['floor2','wall'])
1167
+ TkcLine.new(w,757,367,644,367, 'fill'=>color, 'tags'=>['floor2','wall'])
1168
+ TkcLine.new(w,689,367,689,315, 'fill'=>color, 'tags'=>['floor2','wall'])
1169
+ TkcLine.new(w,647,315,644,315, 'fill'=>color, 'tags'=>['floor2','wall'])
1170
+ TkcLine.new(w,659,315,691,315, 'fill'=>color, 'tags'=>['floor2','wall'])
1171
+ TkcLine.new(w,600,325,600,391, 'fill'=>color, 'tags'=>['floor2','wall'])
1172
+ TkcLine.new(w,627,325,644,325, 'fill'=>color, 'tags'=>['floor2','wall'])
1173
+ TkcLine.new(w,644,391,644,315, 'fill'=>color, 'tags'=>['floor2','wall'])
1174
+ TkcLine.new(w,615,325,575,325, 'fill'=>color, 'tags'=>['floor2','wall'])
1175
+ TkcLine.new(w,644,391,558,391, 'fill'=>color, 'tags'=>['floor2','wall'])
1176
+ TkcLine.new(w,563,325,558,325, 'fill'=>color, 'tags'=>['floor2','wall'])
1177
+ TkcLine.new(w,558,391,558,314, 'fill'=>color, 'tags'=>['floor2','wall'])
1178
+ TkcLine.new(w,558,327,508,327, 'fill'=>color, 'tags'=>['floor2','wall'])
1179
+ TkcLine.new(w,558,275,484,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1180
+ TkcLine.new(w,558,302,558,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1181
+ TkcLine.new(w,508,327,508,311, 'fill'=>color, 'tags'=>['floor2','wall'])
1182
+ TkcLine.new(w,484,311,508,311, 'fill'=>color, 'tags'=>['floor2','wall'])
1183
+ TkcLine.new(w,484,275,484,311, 'fill'=>color, 'tags'=>['floor2','wall'])
1184
+ TkcLine.new(w,475,208,408,208, 'fill'=>color, 'tags'=>['floor2','wall'])
1185
+ TkcLine.new(w,408,206,408,210, 'fill'=>color, 'tags'=>['floor2','wall'])
1186
+ TkcLine.new(w,408,222,408,227, 'fill'=>color, 'tags'=>['floor2','wall'])
1187
+ TkcLine.new(w,408,227,398,227, 'fill'=>color, 'tags'=>['floor2','wall'])
1188
+ TkcLine.new(w,398,227,398,254, 'fill'=>color, 'tags'=>['floor2','wall'])
1189
+ TkcLine.new(w,408,188,408,194, 'fill'=>color, 'tags'=>['floor2','wall'])
1190
+ TkcLine.new(w,383,188,376,188, 'fill'=>color, 'tags'=>['floor2','wall'])
1191
+ TkcLine.new(w,398,188,398,162, 'fill'=>color, 'tags'=>['floor2','wall'])
1192
+ TkcLine.new(w,398,162,484,162, 'fill'=>color, 'tags'=>['floor2','wall'])
1193
+ TkcLine.new(w,475,162,475,254, 'fill'=>color, 'tags'=>['floor2','wall'])
1194
+ TkcLine.new(w,398,254,475,254, 'fill'=>color, 'tags'=>['floor2','wall'])
1195
+ TkcLine.new(w,484,280,395,280, 'fill'=>color, 'tags'=>['floor2','wall'])
1196
+ TkcLine.new(w,395,311,395,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1197
+ TkcLine.new(w,307,197,293,197, 'fill'=>color, 'tags'=>['floor2','wall'])
1198
+ TkcLine.new(w,278,197,233,197, 'fill'=>color, 'tags'=>['floor2','wall'])
1199
+ TkcLine.new(w,233,197,233,249, 'fill'=>color, 'tags'=>['floor2','wall'])
1200
+ TkcLine.new(w,307,179,284,179, 'fill'=>color, 'tags'=>['floor2','wall'])
1201
+ TkcLine.new(w,233,249,278,249, 'fill'=>color, 'tags'=>['floor2','wall'])
1202
+ TkcLine.new(w,269,179,269,133, 'fill'=>color, 'tags'=>['floor2','wall'])
1203
+ TkcLine.new(w,220,179,220,133, 'fill'=>color, 'tags'=>['floor2','wall'])
1204
+ TkcLine.new(w,155,191,110,191, 'fill'=>color, 'tags'=>['floor2','wall'])
1205
+ TkcLine.new(w,90,190,98,190, 'fill'=>color, 'tags'=>['floor2','wall'])
1206
+ TkcLine.new(w,98,169,98,190, 'fill'=>color, 'tags'=>['floor2','wall'])
1207
+ TkcLine.new(w,52,133,52,165, 'fill'=>color, 'tags'=>['floor2','wall'])
1208
+ TkcLine.new(w,52,214,52,177, 'fill'=>color, 'tags'=>['floor2','wall'])
1209
+ TkcLine.new(w,52,226,52,262, 'fill'=>color, 'tags'=>['floor2','wall'])
1210
+ TkcLine.new(w,52,274,52,276, 'fill'=>color, 'tags'=>['floor2','wall'])
1211
+ TkcLine.new(w,234,275,234,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1212
+ TkcLine.new(w,226,339,258,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1213
+ TkcLine.new(w,211,387,211,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1214
+ TkcLine.new(w,214,339,177,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1215
+ TkcLine.new(w,258,387,60,387, 'fill'=>color, 'tags'=>['floor2','wall'])
1216
+ TkcLine.new(w,3,133,3,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1217
+ TkcLine.new(w,165,339,129,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1218
+ TkcLine.new(w,117,339,80,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1219
+ TkcLine.new(w,68,339,59,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1220
+ TkcLine.new(w,0,339,46,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1221
+ TkcLine.new(w,60,391,0,391, 'fill'=>color, 'tags'=>['floor2','wall'])
1222
+ TkcLine.new(w,0,339,0,391, 'fill'=>color, 'tags'=>['floor2','wall'])
1223
+ TkcLine.new(w,60,387,60,391, 'fill'=>color, 'tags'=>['floor2','wall'])
1224
+ TkcLine.new(w,258,329,258,387, 'fill'=>color, 'tags'=>['floor2','wall'])
1225
+ TkcLine.new(w,350,329,258,329, 'fill'=>color, 'tags'=>['floor2','wall'])
1226
+ TkcLine.new(w,395,311,350,311, 'fill'=>color, 'tags'=>['floor2','wall'])
1227
+ TkcLine.new(w,398,129,315,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1228
+ TkcLine.new(w,176,133,315,133, 'fill'=>color, 'tags'=>['floor2','wall'])
1229
+ TkcLine.new(w,176,129,96,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1230
+ TkcLine.new(w,3,133,96,133, 'fill'=>color, 'tags'=>['floor2','wall'])
1231
+ TkcLine.new(w,66,387,66,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1232
+ TkcLine.new(w,115,387,115,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1233
+ TkcLine.new(w,163,387,163,339, 'fill'=>color, 'tags'=>['floor2','wall'])
1234
+ TkcLine.new(w,234,275,276,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1235
+ TkcLine.new(w,288,275,309,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1236
+ TkcLine.new(w,298,275,298,329, 'fill'=>color, 'tags'=>['floor2','wall'])
1237
+ TkcLine.new(w,341,283,350,283, 'fill'=>color, 'tags'=>['floor2','wall'])
1238
+ TkcLine.new(w,321,275,341,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1239
+ TkcLine.new(w,375,275,395,275, 'fill'=>color, 'tags'=>['floor2','wall'])
1240
+ TkcLine.new(w,315,129,315,170, 'fill'=>color, 'tags'=>['floor2','wall'])
1241
+ TkcLine.new(w,376,170,307,170, 'fill'=>color, 'tags'=>['floor2','wall'])
1242
+ TkcLine.new(w,307,250,307,170, 'fill'=>color, 'tags'=>['floor2','wall'])
1243
+ TkcLine.new(w,376,245,376,170, 'fill'=>color, 'tags'=>['floor2','wall'])
1244
+ TkcLine.new(w,340,241,307,241, 'fill'=>color, 'tags'=>['floor2','wall'])
1245
+ TkcLine.new(w,340,245,340,224, 'fill'=>color, 'tags'=>['floor2','wall'])
1246
+ TkcLine.new(w,340,210,340,201, 'fill'=>color, 'tags'=>['floor2','wall'])
1247
+ TkcLine.new(w,340,187,340,170, 'fill'=>color, 'tags'=>['floor2','wall'])
1248
+ TkcLine.new(w,340,206,307,206, 'fill'=>color, 'tags'=>['floor2','wall'])
1249
+ TkcLine.new(w,293,250,307,250, 'fill'=>color, 'tags'=>['floor2','wall'])
1250
+ TkcLine.new(w,271,179,238,179, 'fill'=>color, 'tags'=>['floor2','wall'])
1251
+ TkcLine.new(w,226,179,195,179, 'fill'=>color, 'tags'=>['floor2','wall'])
1252
+ TkcLine.new(w,176,129,176,179, 'fill'=>color, 'tags'=>['floor2','wall'])
1253
+ TkcLine.new(w,182,179,176,179, 'fill'=>color, 'tags'=>['floor2','wall'])
1254
+ TkcLine.new(w,174,169,176,169, 'fill'=>color, 'tags'=>['floor2','wall'])
1255
+ TkcLine.new(w,162,169,90,169, 'fill'=>color, 'tags'=>['floor2','wall'])
1256
+ TkcLine.new(w,96,169,96,129, 'fill'=>color, 'tags'=>['floor2','wall'])
1257
+ TkcLine.new(w,175,227,90,227, 'fill'=>color, 'tags'=>['floor2','wall'])
1258
+ TkcLine.new(w,90,190,90,227, 'fill'=>color, 'tags'=>['floor2','wall'])
1259
+ TkcLine.new(w,52,179,3,179, 'fill'=>color, 'tags'=>['floor2','wall'])
1260
+ TkcLine.new(w,52,228,3,228, 'fill'=>color, 'tags'=>['floor2','wall'])
1261
+ TkcLine.new(w,52,276,3,276, 'fill'=>color, 'tags'=>['floor2','wall'])
1262
+ TkcLine.new(w,155,177,155,169, 'fill'=>color, 'tags'=>['floor2','wall'])
1263
+ TkcLine.new(w,110,191,110,169, 'fill'=>color, 'tags'=>['floor2','wall'])
1264
+ TkcLine.new(w,155,189,155,197, 'fill'=>color, 'tags'=>['floor2','wall'])
1265
+ TkcLine.new(w,350,283,350,329, 'fill'=>color, 'tags'=>['floor2','wall'])
1266
+ TkcLine.new(w,162,197,155,197, 'fill'=>color, 'tags'=>['floor2','wall'])
1267
+ TkcLine.new(w,341,275,341,283, 'fill'=>color, 'tags'=>['floor2','wall'])
1268
+ end
1269
+
1270
+ # floor_fg3 --
1271
+ # This method represents part of the floorplan database. When
1272
+ # invoked, it instantiates the foreground information for the third
1273
+ # floor (office outlines and numbers).
1274
+ #
1275
+ # Arguments:
1276
+ # w - The canvas window.
1277
+ # color - Color to use for drawing foreground information.
1278
+
1279
+ def floor_fg3(w,color)
1280
+ i = TkcPolygon.new(w,89,228,89,180,70,180,70,228,
1281
+ 'fill'=>'', 'tags'=>['floor3','room'])
1282
+ $floorLabels[i.id] = '316'
1283
+ $floorItems['316'] = i
1284
+ TkcText.new(w,79.5,204, 'text'=>'316', 'fill'=>color,
1285
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1286
+ i = TkcPolygon.new(w,115,368,162,368,162,323,115,323,
1287
+ 'fill'=>'', 'tags'=>['floor3','room'])
1288
+ $floorLabels[i.id] = '309'
1289
+ $floorItems['309'] = i
1290
+ TkcText.new(w,138.5,345.5, 'text'=>'309', 'fill'=>color,
1291
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1292
+ i = TkcPolygon.new(w,164,323,164,368,211,368,211,323,
1293
+ 'fill'=>'', 'tags'=>['floor3','room'])
1294
+ $floorLabels[i.id] = '308'
1295
+ $floorItems['308'] = i
1296
+ TkcText.new(w,187.5,345.5, 'text'=>'308', 'fill'=>color,
1297
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1298
+ i = TkcPolygon.new(w,256,368,212,368,212,323,256,323,
1299
+ 'fill'=>'', 'tags'=>['floor3','room'])
1300
+ $floorLabels[i.id] = '307'
1301
+ $floorItems['307'] = i
1302
+ TkcText.new(w,234,345.5, 'text'=>'307', 'fill'=>color,
1303
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1304
+ i = TkcPolygon.new(w,244,276,297,276,297,327,260,327,260,321,244,321,
1305
+ 'fill'=>'', 'tags'=>['floor3','room'])
1306
+ $floorLabels[i.id] = '305'
1307
+ $floorItems['305'] = i
1308
+ TkcText.new(w,270.5,301.5, 'text'=>'305', 'fill'=>color,
1309
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1310
+ i = TkcPolygon.new(w,251,219,251,203,244,203,244,219,
1311
+ 'fill'=>'', 'tags'=>['floor3','room'])
1312
+ $floorLabels[i.id] = '324B'
1313
+ $floorItems['324B'] = i
1314
+ TkcText.new(w,247.5,211, 'text'=>'324B', 'fill'=>color,
1315
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1316
+ i = TkcPolygon.new(w,251,249,244,249,244,232,251,232,
1317
+ 'fill'=>'', 'tags'=>['floor3','room'])
1318
+ $floorLabels[i.id] = '324A'
1319
+ $floorItems['324A'] = i
1320
+ TkcText.new(w,247.5,240.5, 'text'=>'324A', 'fill'=>color,
1321
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1322
+ i = TkcPolygon.new(w,223,135,223,179,177,179,177,135,
1323
+ 'fill'=>'', 'tags'=>['floor3','room'])
1324
+ $floorLabels[i.id] = '320'
1325
+ $floorItems['320'] = i
1326
+ TkcText.new(w,200,157, 'text'=>'320', 'fill'=>color,
1327
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1328
+ i = TkcPolygon.new(w,114,368,114,323,67,323,67,368,
1329
+ 'fill'=>'', 'tags'=>['floor3','room'])
1330
+ $floorLabels[i.id] = '310'
1331
+ $floorItems['310'] = i
1332
+ TkcText.new(w,90.5,345.5, 'text'=>'310', 'fill'=>color,
1333
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1334
+ i = TkcPolygon.new(w,23,277,23,321,68,321,68,277,
1335
+ 'fill'=>'', 'tags'=>['floor3','room'])
1336
+ $floorLabels[i.id] = '312'
1337
+ $floorItems['312'] = i
1338
+ TkcText.new(w,45.5,299, 'text'=>'312', 'fill'=>color,
1339
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1340
+ i = TkcPolygon.new(w,23,229,68,229,68,275,23,275,
1341
+ 'fill'=>'', 'tags'=>['floor3','room'])
1342
+ $floorLabels[i.id] = '313'
1343
+ $floorItems['313'] = i
1344
+ TkcText.new(w,45.5,252, 'text'=>'313', 'fill'=>color,
1345
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1346
+ i = TkcPolygon.new(w,68,227,23,227,23,180,68,180,
1347
+ 'fill'=>'', 'tags'=>['floor3','room'])
1348
+ $floorLabels[i.id] = '314'
1349
+ $floorItems['314'] = i
1350
+ TkcText.new(w,40.5,203.5, 'text'=>'314', 'fill'=>color,
1351
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1352
+ i = TkcPolygon.new(w,95,179,95,135,23,135,23,179,
1353
+ 'fill'=>'', 'tags'=>['floor3','room'])
1354
+ $floorLabels[i.id] = '315'
1355
+ $floorItems['315'] = i
1356
+ TkcText.new(w,59,157, 'text'=>'315', 'fill'=>color,
1357
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1358
+ i = TkcPolygon.new(w,99,226,99,204,91,204,91,226,
1359
+ 'fill'=>'', 'tags'=>['floor3','room'])
1360
+ $floorLabels[i.id] = '316B'
1361
+ $floorItems['316B'] = i
1362
+ TkcText.new(w,95,215, 'text'=>'316B', 'fill'=>color,
1363
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1364
+ i = TkcPolygon.new(w,91,202,99,202,99,180,91,180,
1365
+ 'fill'=>'', 'tags'=>['floor3','room'])
1366
+ $floorLabels[i.id] = '316A'
1367
+ $floorItems['316A'] = i
1368
+ TkcText.new(w,95,191, 'text'=>'316A', 'fill'=>color,
1369
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1370
+ i = TkcPolygon.new(w,97,169,109,169,109,192,154,192,154,198,
1371
+ 174,198,174,226,101,226,101,179,97,179,
1372
+ 'fill'=>'', 'tags'=>['floor3','room'])
1373
+ $floorLabels[i.id] = '319'
1374
+ $floorItems['319'] = i
1375
+ TkcText.new(w,141.5,209, 'text'=>'319', 'fill'=>color,
1376
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1377
+ i = TkcPolygon.new(w,65,368,58,368,58,389,1,389,1,333,23,333,23,323,65,323,
1378
+ 'fill'=>'', 'tags'=>['floor3','room'])
1379
+ $floorLabels[i.id] = '311'
1380
+ $floorItems['311'] = i
1381
+ TkcText.new(w,29.5,361, 'text'=>'311', 'fill'=>color,
1382
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1383
+ i = TkcPolygon.new(w,154,191,111,191,111,169,154,169,
1384
+ 'fill'=>'', 'tags'=>['floor3','room'])
1385
+ $floorLabels[i.id] = '318'
1386
+ $floorItems['318'] = i
1387
+ TkcText.new(w,132.5,180, 'text'=>'318', 'fill'=>color,
1388
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1389
+ i = TkcPolygon.new(w,175,168,97,168,97,131,175,131,
1390
+ 'fill'=>'', 'tags'=>['floor3','room'])
1391
+ $floorLabels[i.id] = '317'
1392
+ $floorItems['317'] = i
1393
+ TkcText.new(w,136,149.5, 'text'=>'317', 'fill'=>color,
1394
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1395
+ i = TkcPolygon.new(w,274,194,274,221,306,221,306,194,
1396
+ 'fill'=>'', 'tags'=>['floor3','room'])
1397
+ $floorLabels[i.id] = '323'
1398
+ $floorItems['323'] = i
1399
+ TkcText.new(w,290,207.5, 'text'=>'323', 'fill'=>color,
1400
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1401
+ i = TkcPolygon.new(w,306,222,274,222,274,249,306,249,
1402
+ 'fill'=>'', 'tags'=>['floor3','room'])
1403
+ $floorLabels[i.id] = '325'
1404
+ $floorItems['325'] = i
1405
+ TkcText.new(w,290,235.5, 'text'=>'325', 'fill'=>color,
1406
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1407
+ i = TkcPolygon.new(w,263,179,224,179,224,135,263,135,
1408
+ 'fill'=>'', 'tags'=>['floor3','room'])
1409
+ $floorLabels[i.id] = '321'
1410
+ $floorItems['321'] = i
1411
+ TkcText.new(w,243.5,157, 'text'=>'321', 'fill'=>color,
1412
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1413
+ i = TkcPolygon.new(w,314,169,306,169,306,192,273,192,
1414
+ 264,181,264,135,314,135,
1415
+ 'fill'=>'', 'tags'=>['floor3','room'])
1416
+ $floorLabels[i.id] = '322'
1417
+ $floorItems['322'] = i
1418
+ TkcText.new(w,293.5,163.5, 'text'=>'322', 'fill'=>color,
1419
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1420
+ i = TkcPolygon.new(w,307,240,339,240,339,206,307,206,
1421
+ 'fill'=>'', 'tags'=>['floor3','room'])
1422
+ $floorLabels[i.id] = 'Pub Lift3'
1423
+ $floorItems['Pub Lift3'] = i
1424
+ TkcText.new(w,323,223, 'text'=>'Pub Lift3', 'fill'=>color,
1425
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1426
+ i = TkcPolygon.new(w,339,205,307,205,307,171,339,171,
1427
+ 'fill'=>'', 'tags'=>['floor3','room'])
1428
+ $floorLabels[i.id] = 'Priv Lift3'
1429
+ $floorItems['Priv Lift3'] = i
1430
+ TkcText.new(w,323,188, 'text'=>'Priv Lift3', 'fill'=>color,
1431
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1432
+ i = TkcPolygon.new(w,350,284,376,284,376,276,397,276,397,309,350,309,
1433
+ 'fill'=>'', 'tags'=>['floor3','room'])
1434
+ $floorLabels[i.id] = '303'
1435
+ $floorItems['303'] = i
1436
+ TkcText.new(w,373.5,292.5, 'text'=>'303', 'fill'=>color,
1437
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1438
+ i = TkcPolygon.new(w,272,203,272,249,252,249,252,230,
1439
+ 244,230,244,221,252,221,252,203,
1440
+ 'fill'=>'', 'tags'=>['floor3','room'])
1441
+ $floorLabels[i.id] = '324'
1442
+ $floorItems['324'] = i
1443
+ TkcText.new(w,262,226, 'text'=>'324', 'fill'=>color,
1444
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1445
+ i = TkcPolygon.new(w,299,276,299,327,349,327,349,284,341,284,341,276,
1446
+ 'fill'=>'', 'tags'=>['floor3','room'])
1447
+ $floorLabels[i.id] = '304'
1448
+ $floorItems['304'] = i
1449
+ TkcText.new(w,324,301.5, 'text'=>'304', 'fill'=>color,
1450
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1451
+ i = TkcPolygon.new(w,375,246,375,172,341,172,341,246,
1452
+ 'fill'=>'', 'tags'=>['floor3','room'])
1453
+ $floorLabels[i.id] = '301'
1454
+ $floorItems['301'] = i
1455
+ TkcText.new(w,358,209, 'text'=>'301', 'fill'=>color,
1456
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1457
+ i = TkcPolygon.new(w,397,246,377,246,377,185,397,185,
1458
+ 'fill'=>'', 'tags'=>['floor3','room'])
1459
+ $floorLabels[i.id] = '327'
1460
+ $floorItems['327'] = i
1461
+ TkcText.new(w,387,215.5, 'text'=>'327', 'fill'=>color,
1462
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1463
+ i = TkcPolygon.new(w,316,131,316,169,377,169,377,185,397,185,397,131,
1464
+ 'fill'=>'', 'tags'=>['floor3','room'])
1465
+ $floorLabels[i.id] = '326'
1466
+ $floorItems['326'] = i
1467
+ TkcText.new(w,365.5,150, 'text'=>'326', 'fill'=>color,
1468
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1469
+ i = TkcPolygon.new(w,308,251,242,251,242,274,342,274,342,282,375, 282,
1470
+ 375,274,397,274,397,248,339,248,339,242,308,242,
1471
+ 'fill'=>'', 'tags'=>['floor3','room'])
1472
+ $floorLabels[i.id] = '302'
1473
+ $floorItems['302'] = i
1474
+ TkcText.new(w,319.5,261, 'text'=>'302', 'fill'=>color,
1475
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1476
+ i = TkcPolygon.new(w,70,321,242,321,242,200,259,200,259,203,272,203,
1477
+ 272,193,263,180,242,180,175,180,175,169,156,169,
1478
+ 156,196,177,196,177,228,107,228,70,228,70,275,107,275,
1479
+ 107,248,160,248,160,301,107,301,107,275,70,275,
1480
+ 'fill'=>'', 'tags'=>['floor3','room'])
1481
+ $floorLabels[i.id] = '306'
1482
+ $floorItems['306'] = i
1483
+ TkcText.new(w,200.5,284.5, 'text'=>'306', 'fill'=>color,
1484
+ 'anchor'=>'c', 'tags'=>['floor3','label'])
1485
+ TkcLine.new(w,341,275,341,283, 'fill'=>color, 'tags'=>['floor3','wall'])
1486
+ TkcLine.new(w,162,197,155,197, 'fill'=>color, 'tags'=>['floor3','wall'])
1487
+ TkcLine.new(w,396,247,399,247, 'fill'=>color, 'tags'=>['floor3','wall'])
1488
+ TkcLine.new(w,399,129,399,311, 'fill'=>color, 'tags'=>['floor3','wall'])
1489
+ TkcLine.new(w,258,202,243,202, 'fill'=>color, 'tags'=>['floor3','wall'])
1490
+ TkcLine.new(w,350,283,350,329, 'fill'=>color, 'tags'=>['floor3','wall'])
1491
+ TkcLine.new(w,251,231,243,231, 'fill'=>color, 'tags'=>['floor3','wall'])
1492
+ TkcLine.new(w,243,220,251,220, 'fill'=>color, 'tags'=>['floor3','wall'])
1493
+ TkcLine.new(w,243,250,243,202, 'fill'=>color, 'tags'=>['floor3','wall'])
1494
+ TkcLine.new(w,155,197,155,190, 'fill'=>color, 'tags'=>['floor3','wall'])
1495
+ TkcLine.new(w,110,192,110,169, 'fill'=>color, 'tags'=>['floor3','wall'])
1496
+ TkcLine.new(w,155,192,110,192, 'fill'=>color, 'tags'=>['floor3','wall'])
1497
+ TkcLine.new(w,155,177,155,169, 'fill'=>color, 'tags'=>['floor3','wall'])
1498
+ TkcLine.new(w,176,197,176,227, 'fill'=>color, 'tags'=>['floor3','wall'])
1499
+ TkcLine.new(w,69,280,69,274, 'fill'=>color, 'tags'=>['floor3','wall'])
1500
+ TkcLine.new(w,21,276,69,276, 'fill'=>color, 'tags'=>['floor3','wall'])
1501
+ TkcLine.new(w,69,262,69,226, 'fill'=>color, 'tags'=>['floor3','wall'])
1502
+ TkcLine.new(w,21,228,69,228, 'fill'=>color, 'tags'=>['floor3','wall'])
1503
+ TkcLine.new(w,21,179,75,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1504
+ TkcLine.new(w,69,179,69,214, 'fill'=>color, 'tags'=>['floor3','wall'])
1505
+ TkcLine.new(w,90,220,90,227, 'fill'=>color, 'tags'=>['floor3','wall'])
1506
+ TkcLine.new(w,90,204,90,202, 'fill'=>color, 'tags'=>['floor3','wall'])
1507
+ TkcLine.new(w,90,203,100,203, 'fill'=>color, 'tags'=>['floor3','wall'])
1508
+ TkcLine.new(w,90,187,90,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1509
+ TkcLine.new(w,90,227,176,227, 'fill'=>color, 'tags'=>['floor3','wall'])
1510
+ TkcLine.new(w,100,179,100,227, 'fill'=>color, 'tags'=>['floor3','wall'])
1511
+ TkcLine.new(w,100,179,87,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1512
+ TkcLine.new(w,96,179,96,129, 'fill'=>color, 'tags'=>['floor3','wall'])
1513
+ TkcLine.new(w,162,169,96,169, 'fill'=>color, 'tags'=>['floor3','wall'])
1514
+ TkcLine.new(w,173,169,176,169, 'fill'=>color, 'tags'=>['floor3','wall'])
1515
+ TkcLine.new(w,182,179,176,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1516
+ TkcLine.new(w,176,129,176,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1517
+ TkcLine.new(w,195,179,226,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1518
+ TkcLine.new(w,224,133,224,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1519
+ TkcLine.new(w,264,179,264,133, 'fill'=>color, 'tags'=>['floor3','wall'])
1520
+ TkcLine.new(w,238,179,264,179, 'fill'=>color, 'tags'=>['floor3','wall'])
1521
+ TkcLine.new(w,273,207,273,193, 'fill'=>color, 'tags'=>['floor3','wall'])
1522
+ TkcLine.new(w,273,235,273,250, 'fill'=>color, 'tags'=>['floor3','wall'])
1523
+ TkcLine.new(w,273,224,273,219, 'fill'=>color, 'tags'=>['floor3','wall'])
1524
+ TkcLine.new(w,273,193,307,193, 'fill'=>color, 'tags'=>['floor3','wall'])
1525
+ TkcLine.new(w,273,222,307,222, 'fill'=>color, 'tags'=>['floor3','wall'])
1526
+ TkcLine.new(w,273,250,307,250, 'fill'=>color, 'tags'=>['floor3','wall'])
1527
+ TkcLine.new(w,384,247,376,247, 'fill'=>color, 'tags'=>['floor3','wall'])
1528
+ TkcLine.new(w,340,206,307,206, 'fill'=>color, 'tags'=>['floor3','wall'])
1529
+ TkcLine.new(w,340,187,340,170, 'fill'=>color, 'tags'=>['floor3','wall'])
1530
+ TkcLine.new(w,340,210,340,201, 'fill'=>color, 'tags'=>['floor3','wall'])
1531
+ TkcLine.new(w,340,247,340,224, 'fill'=>color, 'tags'=>['floor3','wall'])
1532
+ TkcLine.new(w,340,241,307,241, 'fill'=>color, 'tags'=>['floor3','wall'])
1533
+ TkcLine.new(w,376,247,376,170, 'fill'=>color, 'tags'=>['floor3','wall'])
1534
+ TkcLine.new(w,307,250,307,170, 'fill'=>color, 'tags'=>['floor3','wall'])
1535
+ TkcLine.new(w,376,170,307,170, 'fill'=>color, 'tags'=>['floor3','wall'])
1536
+ TkcLine.new(w,315,129,315,170, 'fill'=>color, 'tags'=>['floor3','wall'])
1537
+ TkcLine.new(w,376,283,366,283, 'fill'=>color, 'tags'=>['floor3','wall'])
1538
+ TkcLine.new(w,376,283,376,275, 'fill'=>color, 'tags'=>['floor3','wall'])
1539
+ TkcLine.new(w,399,275,376,275, 'fill'=>color, 'tags'=>['floor3','wall'])
1540
+ TkcLine.new(w,341,275,320,275, 'fill'=>color, 'tags'=>['floor3','wall'])
1541
+ TkcLine.new(w,341,283,350,283, 'fill'=>color, 'tags'=>['floor3','wall'])
1542
+ TkcLine.new(w,298,275,298,329, 'fill'=>color, 'tags'=>['floor3','wall'])
1543
+ TkcLine.new(w,308,275,298,275, 'fill'=>color, 'tags'=>['floor3','wall'])
1544
+ TkcLine.new(w,243,322,243,275, 'fill'=>color, 'tags'=>['floor3','wall'])
1545
+ TkcLine.new(w,243,275,284,275, 'fill'=>color, 'tags'=>['floor3','wall'])
1546
+ TkcLine.new(w,258,322,226,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1547
+ TkcLine.new(w,212,370,212,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1548
+ TkcLine.new(w,214,322,177,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1549
+ TkcLine.new(w,163,370,163,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1550
+ TkcLine.new(w,165,322,129,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1551
+ TkcLine.new(w,84,322,117,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1552
+ TkcLine.new(w,71,322,64,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1553
+ TkcLine.new(w,115,322,115,370, 'fill'=>color, 'tags'=>['floor3','wall'])
1554
+ TkcLine.new(w,66,322,66,370, 'fill'=>color, 'tags'=>['floor3','wall'])
1555
+ TkcLine.new(w,52,322,21,322, 'fill'=>color, 'tags'=>['floor3','wall'])
1556
+ TkcLine.new(w,21,331,0,331, 'fill'=>color, 'tags'=>['floor3','wall'])
1557
+ TkcLine.new(w,21,331,21,133, 'fill'=>color, 'tags'=>['floor3','wall'])
1558
+ TkcLine.new(w,96,133,21,133, 'fill'=>color, 'tags'=>['floor3','wall'])
1559
+ TkcLine.new(w,176,129,96,129, 'fill'=>color, 'tags'=>['floor3','wall'])
1560
+ TkcLine.new(w,315,133,176,133, 'fill'=>color, 'tags'=>['floor3','wall'])
1561
+ TkcLine.new(w,315,129,399,129, 'fill'=>color, 'tags'=>['floor3','wall'])
1562
+ TkcLine.new(w,399,311,350,311, 'fill'=>color, 'tags'=>['floor3','wall'])
1563
+ TkcLine.new(w,350,329,258,329, 'fill'=>color, 'tags'=>['floor3','wall'])
1564
+ TkcLine.new(w,258,322,258,370, 'fill'=>color, 'tags'=>['floor3','wall'])
1565
+ TkcLine.new(w,60,370,258,370, 'fill'=>color, 'tags'=>['floor3','wall'])
1566
+ TkcLine.new(w,60,370,60,391, 'fill'=>color, 'tags'=>['floor3','wall'])
1567
+ TkcLine.new(w,0,391,0,331, 'fill'=>color, 'tags'=>['floor3','wall'])
1568
+ TkcLine.new(w,60,391,0,391, 'fill'=>color, 'tags'=>['floor3','wall'])
1569
+ TkcLine.new(w,307,250,307,242, 'fill'=>color, 'tags'=>['floor3','wall'])
1570
+ TkcLine.new(w,273,250,307,250, 'fill'=>color, 'tags'=>['floor3','wall'])
1571
+ TkcLine.new(w,258,250,243,250, 'fill'=>color, 'tags'=>['floor3','wall'])
1572
+ end
1573
+
1574
+ # Below is the "main program" that creates the floorplan demonstration.
1575
+
1576
+ # toplevel widget が存在すれば削除する
1577
+ if defined?($floor_demo) && $floor_demo
1578
+ $floor_demo.destroy
1579
+ $floor_demo = nil
1580
+ end
1581
+
1582
+ # demo 用の toplevel widget を生成
1583
+ $floor_demo = TkToplevel.new {|w|
1584
+ title("Floorplan Canvas Demonstration")
1585
+ iconname("Floorplan")
1586
+ positionWindow(w)
1587
+ geometry('+20+20')
1588
+ minsize(100,100)
1589
+ }
1590
+
1591
+ base_frame = TkFrame.new($floor_demo).pack(:fill=>:both, :expand=>true)
1592
+
1593
+ # label 生成
1594
+ TkLabel.new(base_frame, 'font'=>$font, 'wraplength'=>'8i', 'justify'=>'left',
1595
+ 'text'=>"このウィンドウにはディジタルエクイップメント社のウェスタンリサーチラボラトリ (DECWRL) の間取りが書かれたキャンバス widget が入っています。これは 3階建てで、常にそのうちの1階分が選択、つまりその間取りが表示されるようになっています。ある階を選択するには、その上でマウスの左ボタンをクリックしてください。マウスが選択されている階の上を動くと、その下にある部屋の色が変わり、部屋番号が「部屋番号:」エントリに表示されます。また、エントリに部屋番号を書くとその部屋の色が変わります。"){
1596
+ pack('side'=>'top')
1597
+ }
1598
+
1599
+ # frame 生成
1600
+ $floor_buttons = TkFrame.new(base_frame) {|frame|
1601
+ TkButton.new(frame) {
1602
+ #text '了解'
1603
+ text '閉じる'
1604
+ command proc{
1605
+ tmppath = $floor_demo
1606
+ $floor_demo = nil
1607
+ tmppath.destroy
1608
+ }
1609
+ }.pack('side'=>'left', 'expand'=>'yes')
1610
+
1611
+ TkButton.new(frame) {
1612
+ text 'コード参照'
1613
+ command proc{showCode 'floor'}
1614
+ }.pack('side'=>'left', 'expand'=>'yes')
1615
+ }
1616
+ $floor_buttons.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>'2m')
1617
+
1618
+ # 変数設定
1619
+ $floorLabels = {}
1620
+ $floorItems = {}
1621
+
1622
+ # canvas 設定
1623
+ if $tk_version =~ /^4\.[01]/
1624
+ $floor_canvas_frame = TkFrame.new(base_frame,'bd'=>2,'relief'=>'sunken',
1625
+ 'highlightthickness'=>2)
1626
+ $floor_canvas = TkCanvas.new($floor_canvas_frame,
1627
+ 'width'=>900, 'height'=>500, 'borderwidth'=>0,
1628
+ 'highlightthickness'=>0) {|c|
1629
+ TkScrollbar.new(base_frame, 'orient'=>'horiz',
1630
+ 'command'=>proc{|*args| c.xview(*args)}){|hs|
1631
+ c.xscrollcommand(proc{|first,last| hs.set first,last})
1632
+ pack('side'=>'bottom', 'fill'=>'x')
1633
+ }
1634
+ TkScrollbar.new(base_frame, 'command'=>proc{|*args| c.yview(*args)}){|vs|
1635
+ c.yscrollcommand(proc{|first,last| vs.set first,last})
1636
+ pack('side'=>'right', 'fill'=>'y')
1637
+ }
1638
+ }
1639
+ $floor_canvas_frame.pack('side'=>'top','fill'=>'both', 'expand'=>'yes')
1640
+ $floor_canvas.pack('expand'=>'yes', 'fill'=>'both')
1641
+
1642
+ else
1643
+ TkFrame.new(base_frame) {|f|
1644
+ pack('side'=>'top', 'fill'=>'both', 'expand'=>'yes')
1645
+
1646
+ h = TkScrollbar.new(f, 'highlightthickness'=>0, 'orient'=>'horizontal')
1647
+ v = TkScrollbar.new(f, 'highlightthickness'=>0, 'orient'=>'vertical')
1648
+
1649
+ TkFrame.new(f, 'bd'=>2, 'relief'=>'sunken') {|f1|
1650
+ $floor_canvas = TkCanvas.new(f1, 'width'=>900, 'height'=>500,
1651
+ 'borderwidth'=>0,
1652
+ 'highlightthickness'=>0) {
1653
+ xscrollcommand(proc{|first,last| h.set first,last})
1654
+ yscrollcommand(proc{|first,last| v.set first,last})
1655
+ pack('expand'=>'yes', 'fill'=>'both')
1656
+ }
1657
+ grid('padx'=>1, 'pady'=>1, 'row'=>0, 'column'=>0,
1658
+ 'rowspan'=>1, 'columnspan'=>1, 'sticky'=>'news')
1659
+ }
1660
+
1661
+ v.grid('padx'=>1, 'pady'=>1, 'row'=>0, 'column'=>1,
1662
+ 'rowspan'=>1, 'columnspan'=>1, 'sticky'=>'news')
1663
+ h.grid('padx'=>1, 'pady'=>1, 'row'=>1, 'column'=>0,
1664
+ 'rowspan'=>1, 'columnspan'=>1, 'sticky'=>'news')
1665
+
1666
+ TkGrid.rowconfigure(f, 0, 'weight'=>1, 'minsize'=>0)
1667
+ TkGrid.columnconfigure(f, 0, 'weight'=>1, 'minsize'=>0)
1668
+
1669
+ pack('expand'=>'yes', 'fill'=>'both', 'padx'=>1, 'pady'=>1)
1670
+
1671
+ v.command(proc{|*args| $floor_canvas.yview(*args)})
1672
+ h.command(proc{|*args| $floor_canvas.xview(*args)})
1673
+ }
1674
+ end
1675
+
1676
+
1677
+ # Create an entry for displaying and typing in current room.
1678
+
1679
+ $currentRoom = TkVariable.new
1680
+ $floor_entry = TkEntry.new($floor_canvas, 'width'=>10, 'relief'=>'sunken',
1681
+ 'bd'=>2, 'textvariable'=>$currentRoom)
1682
+
1683
+ # Choose colors, then fill in the floorplan.
1684
+
1685
+ $floor_colors = {}
1686
+ if TkWinfo.depth($floor_canvas) > 1
1687
+ $floor_colors['bg1'] = '#a9c1da'
1688
+ $floor_colors['outline1'] = '#77889a'
1689
+ $floor_colors['bg2'] = '#9ab0c6'
1690
+ $floor_colors['outline2'] = '#687786'
1691
+ $floor_colors['bg3'] = '#8ba0b3'
1692
+ $floor_colors['outline3'] = '#596673'
1693
+ $floor_colors['offices'] = 'Black'
1694
+ $floor_colors['active'] = '#c4d1df'
1695
+ else
1696
+ $floor_colors['bg1'] = 'white'
1697
+ $floor_colors['outline1'] = 'black'
1698
+ $floor_colors['bg2'] = 'white'
1699
+ $floor_colors['outline2'] = 'black'
1700
+ $floor_colors['bg3'] = 'white'
1701
+ $floor_colors['outline3'] = 'black'
1702
+ $floor_colors['offices'] = 'Black'
1703
+ $floor_colors['active'] = 'black'
1704
+ end
1705
+
1706
+ $activeFloor = ''
1707
+ floorDisplay $floor_canvas,3
1708
+
1709
+ # Set up event bindings for canvas:
1710
+
1711
+ $floor_canvas.itembind('floor1', '1', proc{floorDisplay $floor_canvas,1})
1712
+ $floor_canvas.itembind('floor2', '1', proc{floorDisplay $floor_canvas,2})
1713
+ $floor_canvas.itembind('floor3', '1', proc{floorDisplay $floor_canvas,3})
1714
+ $floor_canvas.itembind('room', 'Enter', proc{newRoom $floor_canvas})
1715
+ $floor_canvas.itembind('room', 'Leave', proc{$currentRoom.value = ''})
1716
+ $floor_canvas.bind('2', proc{|x,y| $floor_canvas.scan_mark x,y}, '%x %y')
1717
+ $floor_canvas.bind('B2-Motion',
1718
+ proc{|x,y| $floor_canvas.scan_dragto x,y}, '%x %y')
1719
+ $floor_canvas.bind('Destroy', proc{$currentRoom.unset})
1720
+ $currentRoom.value = ''
1721
+ $currentRoom.trace('w',proc{roomChanged $floor_canvas})
1722
+