From ee847af93c1065c5d9fa6d49fd0eda252d194ed0 Mon Sep 17 00:00:00 2001 From: Julian Noble Date: Sat, 29 Jul 2023 23:58:11 +1000 Subject: [PATCH] add various libs to punk86.vfs BWidget,gridplus,itcl,itk,iwidgets,kettle,tclx,tdot,tklib,treectrl --- .../lib/BWidget1.9.16/BWman/ArrowButton.html | 276 + .../lib/BWidget1.9.16/BWman/BWidget.html | 228 + .../lib/BWidget1.9.16/BWman/Button.html | 307 + .../lib/BWidget1.9.16/BWman/ButtonBox.html | 266 + .../lib/BWidget1.9.16/BWman/ComboBox.html | 410 + .../lib/BWidget1.9.16/BWman/Dialog.html | 328 + .../lib/BWidget1.9.16/BWman/DragSite.html | 141 + .../lib/BWidget1.9.16/BWman/DropSite.html | 266 + .../lib/BWidget1.9.16/BWman/DynamicHelp.html | 251 + .../lib/BWidget1.9.16/BWman/Entry.html | 366 + .../lib/BWidget1.9.16/BWman/Label.html | 362 + .../lib/BWidget1.9.16/BWman/LabelEntry.html | 194 + .../lib/BWidget1.9.16/BWman/LabelFrame.html | 144 + .../lib/BWidget1.9.16/BWman/ListBox.html | 675 ++ .../lib/BWidget1.9.16/BWman/MainFrame.html | 323 + .../lib/BWidget1.9.16/BWman/MessageDlg.html | 221 + .../lib/BWidget1.9.16/BWman/NoteBook.html | 483 + .../lib/BWidget1.9.16/BWman/PagesManager.html | 180 + .../lib/BWidget1.9.16/BWman/PanedWindow.html | 158 + .../lib/BWidget1.9.16/BWman/PanelFrame.html | 153 + .../lib/BWidget1.9.16/BWman/PasswdDlg.html | 214 + .../lib/BWidget1.9.16/BWman/ProgressBar.html | 152 + .../lib/BWidget1.9.16/BWman/ProgressDlg.html | 145 + .../lib/BWidget1.9.16/BWman/ScrollView.html | 130 + .../BWidget1.9.16/BWman/ScrollableFrame.html | 194 + .../BWidget1.9.16/BWman/ScrolledWindow.html | 160 + .../lib/BWidget1.9.16/BWman/SelectColor.html | 211 + .../lib/BWidget1.9.16/BWman/SelectFont.html | 152 + .../lib/BWidget1.9.16/BWman/Separator.html | 77 + .../lib/BWidget1.9.16/BWman/SpinBox.html | 250 + .../lib/BWidget1.9.16/BWman/StatusBar.html | 147 + .../lib/BWidget1.9.16/BWman/TitleFrame.html | 107 + .../lib/BWidget1.9.16/BWman/Tree.html | 937 ++ .../lib/BWidget1.9.16/BWman/Widget.html | 505 + .../lib/BWidget1.9.16/BWman/contents.html | 95 + .../lib/BWidget1.9.16/BWman/index.html | 7 + .../lib/BWidget1.9.16/BWman/navtree.html | 41 + .../lib/BWidget1.9.16/BWman/options.htm | 458 + src/punk86.vfs/lib/BWidget1.9.16/CHANGES.txt | 266 + src/punk86.vfs/lib/BWidget1.9.16/ChangeLog | 2481 +++++ src/punk86.vfs/lib/BWidget1.9.16/LICENSE.txt | 41 + src/punk86.vfs/lib/BWidget1.9.16/README.txt | 127 + src/punk86.vfs/lib/BWidget1.9.16/arrow.tcl | 551 + src/punk86.vfs/lib/BWidget1.9.16/bitmap.tcl | 94 + src/punk86.vfs/lib/BWidget1.9.16/button.tcl | 397 + .../lib/BWidget1.9.16/buttonbox.tcl | 419 + src/punk86.vfs/lib/BWidget1.9.16/color.tcl | 918 ++ src/punk86.vfs/lib/BWidget1.9.16/combobox.tcl | 955 ++ .../lib/BWidget1.9.16/demo/basic.tcl | 199 + .../lib/BWidget1.9.16/demo/bwidget.xbm | 46 + .../lib/BWidget1.9.16/demo/demo.tcl | 272 + src/punk86.vfs/lib/BWidget1.9.16/demo/dnd.tcl | 42 + .../lib/BWidget1.9.16/demo/manager.tcl | 141 + .../lib/BWidget1.9.16/demo/select.tcl | 59 + .../lib/BWidget1.9.16/demo/tmpldlg.tcl | 215 + .../lib/BWidget1.9.16/demo/tree.tcl | 260 + src/punk86.vfs/lib/BWidget1.9.16/demo/x1.xbm | 2258 +++++ src/punk86.vfs/lib/BWidget1.9.16/dialog.tcl | 361 + src/punk86.vfs/lib/BWidget1.9.16/dragsite.tcl | 197 + src/punk86.vfs/lib/BWidget1.9.16/dropsite.tcl | 461 + src/punk86.vfs/lib/BWidget1.9.16/dynhelp.tcl | 796 ++ src/punk86.vfs/lib/BWidget1.9.16/entry.tcl | 525 + src/punk86.vfs/lib/BWidget1.9.16/font.tcl | 571 ++ .../lib/BWidget1.9.16/images/bold.gif | Bin 0 -> 118 bytes .../lib/BWidget1.9.16/images/copy.gif | Bin 0 -> 145 bytes .../lib/BWidget1.9.16/images/cut.gif | Bin 0 -> 130 bytes .../lib/BWidget1.9.16/images/dragfile.gif | Bin 0 -> 949 bytes .../lib/BWidget1.9.16/images/dragicon.gif | Bin 0 -> 1012 bytes .../lib/BWidget1.9.16/images/error.gif | Bin 0 -> 259 bytes .../lib/BWidget1.9.16/images/file.gif | Bin 0 -> 860 bytes .../lib/BWidget1.9.16/images/folder.gif | Bin 0 -> 139 bytes .../lib/BWidget1.9.16/images/hourglass.gif | Bin 0 -> 211 bytes .../lib/BWidget1.9.16/images/info.gif | Bin 0 -> 256 bytes .../lib/BWidget1.9.16/images/italic.gif | Bin 0 -> 111 bytes .../lib/BWidget1.9.16/images/minus.xbm | 5 + .../lib/BWidget1.9.16/images/new.gif | Bin 0 -> 131 bytes .../lib/BWidget1.9.16/images/opcopy.xbm | 5 + .../lib/BWidget1.9.16/images/open.gif | Bin 0 -> 139 bytes .../lib/BWidget1.9.16/images/openfold.gif | Bin 0 -> 146 bytes .../lib/BWidget1.9.16/images/oplink.xbm | 5 + .../lib/BWidget1.9.16/images/opmove.xbm | 5 + .../lib/BWidget1.9.16/images/overstrike.gif | Bin 0 -> 119 bytes .../lib/BWidget1.9.16/images/palette.gif | Bin 0 -> 151 bytes .../lib/BWidget1.9.16/images/passwd.gif | Bin 0 -> 481 bytes .../lib/BWidget1.9.16/images/paste.gif | Bin 0 -> 159 bytes .../lib/BWidget1.9.16/images/plus.xbm | 5 + .../lib/BWidget1.9.16/images/print.gif | Bin 0 -> 140 bytes .../lib/BWidget1.9.16/images/question.gif | Bin 0 -> 265 bytes .../lib/BWidget1.9.16/images/redo.gif | Bin 0 -> 70 bytes .../lib/BWidget1.9.16/images/save.gif | Bin 0 -> 138 bytes .../lib/BWidget1.9.16/images/target.xbm | 9 + .../lib/BWidget1.9.16/images/underline.gif | Bin 0 -> 119 bytes .../lib/BWidget1.9.16/images/undo.gif | Bin 0 -> 115 bytes .../lib/BWidget1.9.16/images/warning.gif | Bin 0 -> 254 bytes src/punk86.vfs/lib/BWidget1.9.16/init.tcl | 55 + src/punk86.vfs/lib/BWidget1.9.16/label.tcl | 327 + .../lib/BWidget1.9.16/labelentry.tcl | 105 + .../lib/BWidget1.9.16/labelframe.tcl | 168 + src/punk86.vfs/lib/BWidget1.9.16/lang/da.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/lang/de.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/lang/en.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/lang/es.rc | 69 + src/punk86.vfs/lib/BWidget1.9.16/lang/fr.rc | 69 + src/punk86.vfs/lib/BWidget1.9.16/lang/hu.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/lang/nl.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/lang/no.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/lang/pl.rc | 67 + src/punk86.vfs/lib/BWidget1.9.16/listbox.tcl | 1779 ++++ .../lib/BWidget1.9.16/mainframe.tcl | 857 ++ .../lib/BWidget1.9.16/messagedlg.tcl | 128 + src/punk86.vfs/lib/BWidget1.9.16/notebook.tcl | 1302 +++ src/punk86.vfs/lib/BWidget1.9.16/pagesmgr.tcl | 298 + src/punk86.vfs/lib/BWidget1.9.16/panedw.tcl | 385 + .../lib/BWidget1.9.16/panelframe.tcl | 246 + .../lib/BWidget1.9.16/passwddlg.tcl | 182 + src/punk86.vfs/lib/BWidget1.9.16/pkgIndex.tcl | 48 + .../lib/BWidget1.9.16/progressbar.tcl | 208 + .../lib/BWidget1.9.16/progressdlg.tcl | 87 + .../lib/BWidget1.9.16/scrollframe.tcl | 272 + .../lib/BWidget1.9.16/scrollview.tcl | 254 + src/punk86.vfs/lib/BWidget1.9.16/scrollw.tcl | 296 + .../lib/BWidget1.9.16/separator.tcl | 75 + src/punk86.vfs/lib/BWidget1.9.16/spinbox.tcl | 346 + .../lib/BWidget1.9.16/statusbar.tcl | 422 + .../lib/BWidget1.9.16/tests/entry.test | 173 + .../lib/BWidget1.9.16/titleframe.tcl | 170 + src/punk86.vfs/lib/BWidget1.9.16/tree.tcl | 2245 +++++ src/punk86.vfs/lib/BWidget1.9.16/utils.tcl | 709 ++ src/punk86.vfs/lib/BWidget1.9.16/widget.tcl | 1715 ++++ src/punk86.vfs/lib/BWidget1.9.16/wizard.tcl | 1028 ++ .../lib/BWidget1.9.16/xpm2image.tcl | 177 + .../lib/gridplus2.11/LICENSE.GRIDPLUS | 36 + src/punk86.vfs/lib/gridplus2.11/gridplus.tcl | 6871 +++++++++++++ src/punk86.vfs/lib/gridplus2.11/pkgIndex.tcl | 1 + src/punk86.vfs/lib/itcl4.2.3/itcl.tcl | 151 + src/punk86.vfs/lib/itcl4.2.3/itcl423.dll | Bin 0 -> 265728 bytes src/punk86.vfs/lib/itcl4.2.3/itclConfig.sh | 67 + src/punk86.vfs/lib/itcl4.2.3/itclHullCmds.tcl | 562 ++ src/punk86.vfs/lib/itcl4.2.3/itclWidget.tcl | 447 + src/punk86.vfs/lib/itcl4.2.3/libitclstub423.a | Bin 0 -> 1778 bytes src/punk86.vfs/lib/itcl4.2.3/pkgIndex.tcl | 14 + src/punk86.vfs/lib/itk4.1.0/Archetype.itk | 93 + src/punk86.vfs/lib/itk4.1.0/Toplevel.itk | 82 + src/punk86.vfs/lib/itk4.1.0/Widget.itk | 79 + src/punk86.vfs/lib/itk4.1.0/itk.tcl | 153 + src/punk86.vfs/lib/itk4.1.0/itk410.dll | Bin 0 -> 55296 bytes src/punk86.vfs/lib/itk4.1.0/pkgIndex.tcl | 6 + src/punk86.vfs/lib/itk4.1.0/tclIndex | 11 + .../lib/iwidgets4.1.1/demos/buttonbox | 13 + .../lib/iwidgets4.1.1/demos/calendar | 26 + .../lib/iwidgets4.1.1/demos/canvasprintbox | 22 + .../lib/iwidgets4.1.1/demos/canvasprintdialog | 31 + .../lib/iwidgets4.1.1/demos/catalog | 412 + .../lib/iwidgets4.1.1/demos/checkbox | 12 + .../lib/iwidgets4.1.1/demos/combobox | 16 + .../lib/iwidgets4.1.1/demos/dateentry | 12 + .../lib/iwidgets4.1.1/demos/datefield | 12 + .../lib/iwidgets4.1.1/demos/demo.html | 42 + src/punk86.vfs/lib/iwidgets4.1.1/demos/dialog | 47 + .../lib/iwidgets4.1.1/demos/dialogshell | 35 + .../lib/iwidgets4.1.1/demos/disjointlistbox | 9 + .../lib/iwidgets4.1.1/demos/entryfield | 33 + .../lib/iwidgets4.1.1/demos/extbutton | 15 + .../iwidgets4.1.1/demos/extfileselectionbox | 9 + .../demos/extfileselectiondialog | 15 + .../lib/iwidgets4.1.1/demos/feedback | 18 + .../lib/iwidgets4.1.1/demos/fileselectionbox | 9 + .../iwidgets4.1.1/demos/fileselectiondialog | 15 + .../lib/iwidgets4.1.1/demos/finddialog | 222 + .../lib/iwidgets4.1.1/demos/hierarchy | 154 + .../iwidgets4.1.1/demos/html/buttonbox.n.html | 217 + .../iwidgets4.1.1/demos/html/calendar.n.html | 363 + .../demos/html/canvasprintbox.n.html | 303 + .../demos/html/canvasprintdialog.n.html | 250 + .../iwidgets4.1.1/demos/html/checkbox.n.html | 209 + .../iwidgets4.1.1/demos/html/combobox.n.html | 484 + .../iwidgets4.1.1/demos/html/dateentry.n.html | 238 + .../iwidgets4.1.1/demos/html/datefield.n.html | 248 + .../iwidgets4.1.1/demos/html/dialog.n.html | 199 + .../demos/html/dialogshell.n.html | 269 + .../demos/html/disjointlistbox.n.html | 361 + .../demos/html/entryfield.n.html | 340 + .../iwidgets4.1.1/demos/html/extbutton.n.html | 160 + .../demos/html/extfileselectionbox.n.html | 467 + .../demos/html/extfileselectiondialog.n.html | 375 + .../iwidgets4.1.1/demos/html/feedback.n.html | 168 + .../demos/html/fileselectionbox.n.html | 456 + .../demos/html/fileselectiondialog.n.html | 339 + .../demos/html/finddialog.n.html | 392 + .../iwidgets4.1.1/demos/html/hierarchy.n.html | 673 ++ .../iwidgets4.1.1/demos/html/hyperhelp.n.html | 258 + .../demos/html/iwidgets4.0.0UserCmds.html | 66 + .../demos/html/labeledframe.n.html | 210 + .../demos/html/labeledwidget.n.html | 224 + .../demos/html/mainwindow.n.html | 373 + .../iwidgets4.1.1/demos/html/menubar.n.html | 686 ++ .../demos/html/messagebox.n.html | 358 + .../demos/html/messagedialog.n.html | 279 + .../iwidgets4.1.1/demos/html/notebook.n.html | 509 + .../demos/html/optionmenu.n.html | 316 + .../demos/html/panedwindow.n.html | 352 + .../demos/html/promptdialog.n.html | 313 + .../demos/html/pushbutton.n.html | 175 + .../iwidgets4.1.1/demos/html/radiobox.n.html | 211 + .../demos/html/scopedobject.n.html | 96 + .../demos/html/scrolledcanvas.n.html | 343 + .../demos/html/scrolledframe.n.html | 258 + .../demos/html/scrolledhtml.n.html | 406 + .../demos/html/scrolledlistbox.n.html | 452 + .../demos/html/scrolledtext.n.html | 367 + .../demos/html/selectionbox.n.html | 389 + .../demos/html/selectiondialog.n.html | 314 + .../lib/iwidgets4.1.1/demos/html/shell.n.html | 219 + .../iwidgets4.1.1/demos/html/spindate.n.html | 614 ++ .../iwidgets4.1.1/demos/html/spinint.n.html | 269 + .../iwidgets4.1.1/demos/html/spinner.n.html | 308 + .../iwidgets4.1.1/demos/html/spintime.n.html | 604 ++ .../demos/html/tabnotebook.n.html | 860 ++ .../iwidgets4.1.1/demos/html/tabset.n.html | 681 ++ .../iwidgets4.1.1/demos/html/timeentry.n.html | 256 + .../iwidgets4.1.1/demos/html/timefield.n.html | 206 + .../iwidgets4.1.1/demos/html/toolbar.n.html | 351 + .../lib/iwidgets4.1.1/demos/html/watch.n.html | 324 + .../lib/iwidgets4.1.1/demos/hyperhelp | 14 + .../lib/iwidgets4.1.1/demos/images/box.xbm | 14 + .../lib/iwidgets4.1.1/demos/images/clear.gif | Bin 0 -> 279 bytes .../lib/iwidgets4.1.1/demos/images/close.gif | Bin 0 -> 249 bytes .../lib/iwidgets4.1.1/demos/images/copy.gif | Bin 0 -> 269 bytes .../lib/iwidgets4.1.1/demos/images/cut.gif | Bin 0 -> 179 bytes .../lib/iwidgets4.1.1/demos/images/exit.gif | Bin 0 -> 396 bytes .../lib/iwidgets4.1.1/demos/images/find.gif | Bin 0 -> 386 bytes .../lib/iwidgets4.1.1/demos/images/help.gif | Bin 0 -> 591 bytes .../lib/iwidgets4.1.1/demos/images/line.xbm | 14 + .../lib/iwidgets4.1.1/demos/images/mag.gif | Bin 0 -> 183 bytes .../lib/iwidgets4.1.1/demos/images/new.gif | Bin 0 -> 212 bytes .../lib/iwidgets4.1.1/demos/images/open.gif | Bin 0 -> 258 bytes .../lib/iwidgets4.1.1/demos/images/oval.xbm | 14 + .../lib/iwidgets4.1.1/demos/images/paste.gif | Bin 0 -> 376 bytes .../lib/iwidgets4.1.1/demos/images/points.xbm | 14 + .../lib/iwidgets4.1.1/demos/images/poly.gif | Bin 0 -> 141 bytes .../lib/iwidgets4.1.1/demos/images/print.gif | Bin 0 -> 263 bytes .../lib/iwidgets4.1.1/demos/images/ruler.gif | Bin 0 -> 174 bytes .../lib/iwidgets4.1.1/demos/images/save.gif | Bin 0 -> 270 bytes .../lib/iwidgets4.1.1/demos/images/select.gif | Bin 0 -> 124 bytes .../lib/iwidgets4.1.1/demos/images/text.xbm | 14 + .../lib/iwidgets4.1.1/demos/iwidgets.gif | Bin 0 -> 7727 bytes .../lib/iwidgets4.1.1/demos/labeledframe | 47 + .../lib/iwidgets4.1.1/demos/labeledwidget | 23 + .../lib/iwidgets4.1.1/demos/mainwindow | 163 + .../lib/iwidgets4.1.1/demos/menubar | 76 + .../lib/iwidgets4.1.1/demos/messagebox | 32 + .../lib/iwidgets4.1.1/demos/messagedialog | 20 + .../lib/iwidgets4.1.1/demos/notebook | 71 + .../lib/iwidgets4.1.1/demos/optionmenu | 12 + .../lib/iwidgets4.1.1/demos/panedwindow | 30 + .../lib/iwidgets4.1.1/demos/promptdialog | 21 + .../lib/iwidgets4.1.1/demos/pushbutton | 17 + .../lib/iwidgets4.1.1/demos/radiobox | 14 + .../lib/iwidgets4.1.1/demos/scopedobject | 16 + .../lib/iwidgets4.1.1/demos/scrolledcanvas | 45 + .../lib/iwidgets4.1.1/demos/scrolledframe | 29 + .../lib/iwidgets4.1.1/demos/scrolledhtml | 14 + .../lib/iwidgets4.1.1/demos/scrolledlistbox | 30 + .../lib/iwidgets4.1.1/demos/scrolledtext | 13 + .../lib/iwidgets4.1.1/demos/selectionbox | 12 + .../lib/iwidgets4.1.1/demos/selectiondialog | 22 + src/punk86.vfs/lib/iwidgets4.1.1/demos/shell | 11 + .../lib/iwidgets4.1.1/demos/spindate | 9 + .../lib/iwidgets4.1.1/demos/spinint | 29 + .../lib/iwidgets4.1.1/demos/spinner | 28 + .../lib/iwidgets4.1.1/demos/spintime | 9 + .../lib/iwidgets4.1.1/demos/tabnotebook | 72 + src/punk86.vfs/lib/iwidgets4.1.1/demos/tabset | 16 + .../lib/iwidgets4.1.1/demos/timeentry | 7 + .../lib/iwidgets4.1.1/demos/timefield | 12 + .../lib/iwidgets4.1.1/demos/toolbar | 45 + src/punk86.vfs/lib/iwidgets4.1.1/demos/watch | 16 + src/punk86.vfs/lib/iwidgets4.1.1/iwidgets.tcl | 41 + .../lib/iwidgets4.1.1/license.terms | 31 + src/punk86.vfs/lib/iwidgets4.1.1/pkgIndex.tcl | 3 + .../lib/iwidgets4.1.1/scripts/buttonbox.itk | 571 ++ .../lib/iwidgets4.1.1/scripts/calendar.itk | 991 ++ .../iwidgets4.1.1/scripts/canvasprintbox.itk | 1111 ++ .../scripts/canvasprintdialog.itk | 155 + .../lib/iwidgets4.1.1/scripts/checkbox.itk | 341 + .../lib/iwidgets4.1.1/scripts/colors.itcl | 209 + .../lib/iwidgets4.1.1/scripts/combobox.itk | 1445 +++ .../lib/iwidgets4.1.1/scripts/dateentry.itk | 424 + .../lib/iwidgets4.1.1/scripts/datefield.itk | 1023 ++ .../lib/iwidgets4.1.1/scripts/dialog.itk | 92 + .../lib/iwidgets4.1.1/scripts/dialogshell.itk | 350 + .../iwidgets4.1.1/scripts/disjointlistbox.itk | 533 + .../lib/iwidgets4.1.1/scripts/entryfield.itk | 610 ++ .../lib/iwidgets4.1.1/scripts/extbutton.itk | 439 + .../scripts/extfileselectionbox.itk | 1187 +++ .../scripts/extfileselectiondialog.itk | 182 + .../lib/iwidgets4.1.1/scripts/feedback.itk | 212 + .../scripts/fileselectionbox.itk | 1296 +++ .../scripts/fileselectiondialog.itk | 181 + .../lib/iwidgets4.1.1/scripts/finddialog.itk | 488 + .../lib/iwidgets4.1.1/scripts/hierarchy.itk | 1986 ++++ .../lib/iwidgets4.1.1/scripts/hyperhelp.itk | 508 + .../iwidgets4.1.1/scripts/labeledframe.itk | 496 + .../iwidgets4.1.1/scripts/labeledwidget.itk | 445 + .../lib/iwidgets4.1.1/scripts/mainwindow.itk | 313 + .../lib/iwidgets4.1.1/scripts/menubar.itk | 2267 +++++ .../lib/iwidgets4.1.1/scripts/messagebox.itk | 399 + .../iwidgets4.1.1/scripts/messagedialog.itk | 144 + .../lib/iwidgets4.1.1/scripts/notebook.itk | 946 ++ .../lib/iwidgets4.1.1/scripts/optionmenu.itk | 664 ++ .../lib/iwidgets4.1.1/scripts/pane.itk | 128 + .../lib/iwidgets4.1.1/scripts/panedwindow.itk | 942 ++ .../iwidgets4.1.1/scripts/promptdialog.itk | 199 + .../lib/iwidgets4.1.1/scripts/pushbutton.itk | 361 + .../lib/iwidgets4.1.1/scripts/radiobox.itk | 427 + .../lib/iwidgets4.1.1/scripts/regexpfield.itk | 455 + .../lib/iwidgets4.1.1/scripts/roman.itcl | 29 + .../iwidgets4.1.1/scripts/scopedobject.itcl | 181 + .../iwidgets4.1.1/scripts/scrolledcanvas.itk | 477 + .../iwidgets4.1.1/scripts/scrolledframe.itk | 250 + .../iwidgets4.1.1/scripts/scrolledhtml.itk | 2521 +++++ .../iwidgets4.1.1/scripts/scrolledlistbox.itk | 732 ++ .../iwidgets4.1.1/scripts/scrolledtext.itk | 501 + .../iwidgets4.1.1/scripts/scrolledwidget.itk | 376 + .../iwidgets4.1.1/scripts/selectionbox.itk | 560 ++ .../iwidgets4.1.1/scripts/selectiondialog.itk | 233 + .../lib/iwidgets4.1.1/scripts/shell.itk | 387 + .../lib/iwidgets4.1.1/scripts/spindate.itk | 693 ++ .../lib/iwidgets4.1.1/scripts/spinint.itk | 237 + .../lib/iwidgets4.1.1/scripts/spinner.itk | 448 + .../lib/iwidgets4.1.1/scripts/spintime.itk | 527 + .../lib/iwidgets4.1.1/scripts/tabnotebook.itk | 1105 ++ .../lib/iwidgets4.1.1/scripts/tabset.itk | 2753 +++++ .../lib/iwidgets4.1.1/scripts/tclIndex | 1372 +++ .../lib/iwidgets4.1.1/scripts/timeentry.itk | 398 + .../lib/iwidgets4.1.1/scripts/timefield.itk | 1043 ++ .../lib/iwidgets4.1.1/scripts/toolbar.itk | 983 ++ .../iwidgets4.1.1/scripts/unknownimage.gif | Bin 0 -> 472 bytes .../lib/iwidgets4.1.1/scripts/watch.itk | 626 ++ src/punk86.vfs/lib/kettle1/app.tcl | 137 + src/punk86.vfs/lib/kettle1/atexit.tcl | 30 + src/punk86.vfs/lib/kettle1/benchmain.tcl | 102 + src/punk86.vfs/lib/kettle1/benchmarks.tcl | 642 ++ src/punk86.vfs/lib/kettle1/benchutilities.tcl | 407 + src/punk86.vfs/lib/kettle1/critcl.tcl | 303 + src/punk86.vfs/lib/kettle1/depend.tcl | 16 + src/punk86.vfs/lib/kettle1/doc.tcl | 356 + src/punk86.vfs/lib/kettle1/figures.tcl | 50 + src/punk86.vfs/lib/kettle1/gui.tcl | 198 + src/punk86.vfs/lib/kettle1/invoke.tcl | 256 + src/punk86.vfs/lib/kettle1/io.tcl | 326 + src/punk86.vfs/lib/kettle1/kettle.tcl | 148 + src/punk86.vfs/lib/kettle1/lambda.tcl | 7 + src/punk86.vfs/lib/kettle1/mdref.tcl | 482 + src/punk86.vfs/lib/kettle1/meta.tcl | 609 ++ src/punk86.vfs/lib/kettle1/options.tcl | 518 + src/punk86.vfs/lib/kettle1/ovalidate.tcl | 342 + src/punk86.vfs/lib/kettle1/path.tcl | 987 ++ src/punk86.vfs/lib/kettle1/pkgIndex.tcl | 1 + src/punk86.vfs/lib/kettle1/recipes.tcl | 208 + src/punk86.vfs/lib/kettle1/special.tcl | 41 + src/punk86.vfs/lib/kettle1/standard.tcl | 113 + src/punk86.vfs/lib/kettle1/status.tcl | 167 + src/punk86.vfs/lib/kettle1/stream.tcl | 147 + src/punk86.vfs/lib/kettle1/strutil.tcl | 115 + src/punk86.vfs/lib/kettle1/tcl.tcl | 165 + src/punk86.vfs/lib/kettle1/tclapp.tcl | 110 + src/punk86.vfs/lib/kettle1/teapot.txt | 30 + src/punk86.vfs/lib/kettle1/testmain.tcl | 214 + src/punk86.vfs/lib/kettle1/testsuite.tcl | 1181 +++ src/punk86.vfs/lib/kettle1/testutilities.tcl | 280 + src/punk86.vfs/lib/kettle1/tool.tcl | 93 + src/punk86.vfs/lib/kettle1/try.tcl | 188 + src/punk86.vfs/lib/tclx8.4/arrayprocs.tcl | 47 + src/punk86.vfs/lib/tclx8.4/autoload.tcl | 80 + src/punk86.vfs/lib/tclx8.4/buildhelp.tcl | 519 + src/punk86.vfs/lib/tclx8.4/compat.tcl | 359 + src/punk86.vfs/lib/tclx8.4/convlib.tcl | 111 + src/punk86.vfs/lib/tclx8.4/edprocs.tcl | 69 + src/punk86.vfs/lib/tclx8.4/events.tcl | 32 + src/punk86.vfs/lib/tclx8.4/fmath.tcl | 52 + src/punk86.vfs/lib/tclx8.4/forfile.tcl | 45 + src/punk86.vfs/lib/tclx8.4/globrecur.tcl | 96 + src/punk86.vfs/lib/tclx8.4/help.tcl | 364 + src/punk86.vfs/lib/tclx8.4/pkgIndex.tcl | 2 + src/punk86.vfs/lib/tclx8.4/profrep.tcl | 157 + src/punk86.vfs/lib/tclx8.4/pushd.tcl | 66 + src/punk86.vfs/lib/tclx8.4/setfuncs.tcl | 110 + src/punk86.vfs/lib/tclx8.4/showproc.tcl | 46 + src/punk86.vfs/lib/tclx8.4/stringfile.tcl | 49 + src/punk86.vfs/lib/tclx8.4/tcllib.tcl | 130 + src/punk86.vfs/lib/tclx8.4/tclx.tcl | 78 + src/punk86.vfs/lib/tclx8.4/tclx84.dll | Bin 0 -> 129024 bytes src/punk86.vfs/lib/tdot0.3.1/pkgIndex.tcl | 1 + src/punk86.vfs/lib/tdot0.3.1/tdot.html | 529 + src/punk86.vfs/lib/tdot0.3.1/tdot.md | 501 + src/punk86.vfs/lib/tdot0.3.1/tdot.tcl | 886 ++ .../lib/tklib0.7/autoscroll/autoscroll.tcl | 238 + .../lib/tklib0.7/autoscroll/pkgIndex.tcl | 13 + .../lib/tklib0.7/canvas/canvas_drag.tcl | 278 + .../lib/tklib0.7/canvas/canvas_epoints.tcl | 362 + .../lib/tklib0.7/canvas/canvas_epolyline.tcl | 487 + .../lib/tklib0.7/canvas/canvas_equad.tcl | 400 + .../lib/tklib0.7/canvas/canvas_gradient.tcl | 278 + .../lib/tklib0.7/canvas/canvas_highlight.tcl | 106 + .../lib/tklib0.7/canvas/canvas_mvg.tcl | 392 + .../lib/tklib0.7/canvas/canvas_snap.tcl | 111 + .../lib/tklib0.7/canvas/canvas_sqmap.tcl | 667 ++ .../lib/tklib0.7/canvas/canvas_tags.tcl | 70 + .../lib/tklib0.7/canvas/canvas_trlines.tcl | 95 + .../lib/tklib0.7/canvas/canvas_zoom.tcl | 181 + .../lib/tklib0.7/canvas/pkgIndex.tcl | 14 + .../lib/tklib0.7/chatwidget/chatwidget.tcl | 738 ++ .../lib/tklib0.7/chatwidget/pkgIndex.tcl | 1 + .../lib/tklib0.7/controlwidget/bindDown.tcl | 45 + .../tklib0.7/controlwidget/controlwidget.tcl | 17 + .../lib/tklib0.7/controlwidget/led.tcl | 127 + .../lib/tklib0.7/controlwidget/pkgIndex.tcl | 19 + .../tklib0.7/controlwidget/radioMatrix.tcl | 253 + .../lib/tklib0.7/controlwidget/rdial.tcl | 455 + .../lib/tklib0.7/controlwidget/tachometer.tcl | 389 + .../tklib0.7/controlwidget/vertical_meter.tcl | 1458 +++ .../lib/tklib0.7/controlwidget/voltmeter.tcl | 347 + .../lib/tklib0.7/crosshair/crosshair.tcl | 595 ++ .../lib/tklib0.7/crosshair/pkgIndex.tcl | 2 + src/punk86.vfs/lib/tklib0.7/ctext/ctext.tcl | 1113 ++ .../lib/tklib0.7/ctext/pkgIndex.tcl | 1 + src/punk86.vfs/lib/tklib0.7/cursor/cursor.tcl | 137 + .../lib/tklib0.7/cursor/pkgIndex.tcl | 1 + .../lib/tklib0.7/datefield/datefield.tcl | 456 + .../lib/tklib0.7/datefield/pkgIndex.tcl | 1 + .../lib/tklib0.7/diagrams/application.tcl | 470 + .../lib/tklib0.7/diagrams/attributes.tcl | 383 + .../lib/tklib0.7/diagrams/basic.tcl | 1279 +++ src/punk86.vfs/lib/tklib0.7/diagrams/core.tcl | 1120 +++ .../lib/tklib0.7/diagrams/diagram.tcl | 62 + .../lib/tklib0.7/diagrams/direction.tcl | 254 + .../lib/tklib0.7/diagrams/element.tcl | 298 + .../lib/tklib0.7/diagrams/navigation.tcl | 138 + .../lib/tklib0.7/diagrams/pkgIndex.tcl | 15 + .../lib/tklib0.7/diagrams/point.tcl | 184 + .../lib/tklib0.7/getstring/pkgIndex.tcl | 13 + .../lib/tklib0.7/getstring/tk_getString.tcl | 124 + .../lib/tklib0.7/history/history.tcl | 113 + .../lib/tklib0.7/history/pkgIndex.tcl | 13 + src/punk86.vfs/lib/tklib0.7/ico/ico.tcl | 1467 +++ src/punk86.vfs/lib/tklib0.7/ico/ico0.tcl | 1193 +++ src/punk86.vfs/lib/tklib0.7/ico/pkgIndex.tcl | 9 + .../lib/tklib0.7/ipentry/ipentry.tcl | 975 ++ .../lib/tklib0.7/ipentry/pkgIndex.tcl | 3 + src/punk86.vfs/lib/tklib0.7/khim/ROOT.msg | 74 + src/punk86.vfs/lib/tklib0.7/khim/cs.msg | 108 + src/punk86.vfs/lib/tklib0.7/khim/da.msg | 104 + src/punk86.vfs/lib/tklib0.7/khim/de.msg | 123 + src/punk86.vfs/lib/tklib0.7/khim/en.msg | 114 + src/punk86.vfs/lib/tklib0.7/khim/es.msg | 108 + src/punk86.vfs/lib/tklib0.7/khim/khim.tcl | 2028 ++++ src/punk86.vfs/lib/tklib0.7/khim/pkgIndex.tcl | 11 + src/punk86.vfs/lib/tklib0.7/khim/pl.msg | 113 + src/punk86.vfs/lib/tklib0.7/khim/ru.msg | 124 + src/punk86.vfs/lib/tklib0.7/khim/uk.msg | 117 + src/punk86.vfs/lib/tklib0.7/mentry/mentry.tcl | 13 + .../lib/tklib0.7/mentry/mentryPublic.tcl | 95 + .../lib/tklib0.7/mentry/mentry_tile.tcl | 24 + .../lib/tklib0.7/mentry/pkgIndex.tcl | 28 + .../mentry/scripts/mentryDateTime.tcl | 847 ++ .../mentry/scripts/mentryFixedPoint.tcl | 142 + .../tklib0.7/mentry/scripts/mentryIPAddr.tcl | 208 + .../mentry/scripts/mentryIPv6Addr.tcl | 246 + .../tklib0.7/mentry/scripts/mentryThemes.tcl | 638 ++ .../tklib0.7/mentry/scripts/mentryWidget.tcl | 2072 ++++ .../lib/tklib0.7/mentry/scripts/mwutil.tcl | 643 ++ .../lib/tklib0.7/mentry/scripts/tclIndex | 126 + src/punk86.vfs/lib/tklib0.7/menubar/debug.tcl | 226 + .../lib/tklib0.7/menubar/menubar.tcl | 1920 ++++ src/punk86.vfs/lib/tklib0.7/menubar/node.tcl | 161 + .../lib/tklib0.7/menubar/pkgIndex.tcl | 4 + src/punk86.vfs/lib/tklib0.7/menubar/tree.tcl | 1101 ++ .../tklib0.7/notifywindow/notifywindow.tcl | 105 + .../lib/tklib0.7/notifywindow/pkgIndex.tcl | 11 + src/punk86.vfs/lib/tklib0.7/ntext/ntext.tcl | 3603 +++++++ .../lib/tklib0.7/ntext/pkgIndex.tcl | 2 + .../persistentSelection.tcl | 907 ++ .../tklib0.7/persistentSelection/pkgIndex.tcl | 2 + src/punk86.vfs/lib/tklib0.7/pkgIndex.tcl | 44 + .../lib/tklib0.7/plotchart/pkgIndex.tcl | 7 + .../lib/tklib0.7/plotchart/plot3d.tcl | 431 + .../lib/tklib0.7/plotchart/plotanim.tcl | 607 ++ .../lib/tklib0.7/plotchart/plotannot.tcl | 450 + .../lib/tklib0.7/plotchart/plotaxis.tcl | 2170 ++++ .../lib/tklib0.7/plotchart/plotbind.tcl | 263 + .../lib/tklib0.7/plotchart/plotbusiness.tcl | 386 + .../lib/tklib0.7/plotchart/plotchart.tcl | 3146 ++++++ .../lib/tklib0.7/plotchart/plotcombined.tcl | 189 + .../lib/tklib0.7/plotchart/plotconfig.tcl | 435 + .../lib/tklib0.7/plotchart/plotcontour.tcl | 1861 ++++ .../lib/tklib0.7/plotchart/plotgantt.tcl | 345 + .../lib/tklib0.7/plotchart/plotobject.tcl | 274 + .../lib/tklib0.7/plotchart/plotpack.tcl | 377 + .../lib/tklib0.7/plotchart/plotpriv.tcl | 4566 +++++++++ .../lib/tklib0.7/plotchart/plotscada.tcl | 274 + .../lib/tklib0.7/plotchart/plotspecial.tcl | 214 + .../tklib0.7/plotchart/plotstatustimeline.tcl | 228 + .../lib/tklib0.7/plotchart/plottable.tcl | 327 + .../lib/tklib0.7/plotchart/scaling.tcl | 200 + .../lib/tklib0.7/plotchart/xyplot.tcl | 579 ++ .../lib/tklib0.7/scrollutil/pkgIndex.tcl | 27 + .../tklib0.7/scrollutil/scripts/mwutil.tcl | 643 ++ .../scrollutil/scripts/scrollableframe.tcl | 937 ++ .../scrollutil/scripts/scrollarea.tcl | 908 ++ .../scrollutil/scripts/scrollsync.tcl | 603 ++ .../lib/tklib0.7/scrollutil/scripts/tclIndex | 104 + .../scrollutil/scripts/wheelEvent.tcl | 656 ++ .../lib/tklib0.7/scrollutil/scrollutil.tcl | 19 + .../tklib0.7/scrollutil/scrollutilCommon.tcl | 84 + .../tklib0.7/scrollutil/scrollutil_tile.tcl | 23 + src/punk86.vfs/lib/tklib0.7/style/as.tcl | 514 + src/punk86.vfs/lib/tklib0.7/style/lobster.tcl | 90 + .../lib/tklib0.7/style/pkgIndex.tcl | 13 + src/punk86.vfs/lib/tklib0.7/style/style.tcl | 33 + .../lib/tklib0.7/swaplist/pkgIndex.tcl | 13 + .../lib/tklib0.7/swaplist/swaplist.tcl | 386 + .../lib/tklib0.7/tablelist/pkgIndex.tcl | 28 + .../lib/tklib0.7/tablelist/scripts/mwutil.tcl | 643 ++ .../lib/tklib0.7/tablelist/scripts/pencil.cur | Bin 0 -> 4286 bytes .../lib/tklib0.7/tablelist/scripts/repair.tcl | 84 + .../tablelist/scripts/tablelistBind.tcl | 4329 ++++++++ .../tablelist/scripts/tablelistConfig.tcl | 4252 ++++++++ .../tablelist/scripts/tablelistEdit.tcl | 3106 ++++++ .../tablelist/scripts/tablelistImages.tcl | 3094 ++++++ .../tablelist/scripts/tablelistMove.tcl | 585 ++ .../tablelist/scripts/tablelistSort.tcl | 734 ++ .../tablelist/scripts/tablelistThemes.tcl | 2138 ++++ .../tablelist/scripts/tablelistUtil.tcl | 6822 +++++++++++++ .../tablelist/scripts/tablelistWidget.tcl | 8905 +++++++++++++++++ .../lib/tklib0.7/tablelist/scripts/tclIndex | 662 ++ .../lib/tklib0.7/tablelist/tablelist.tcl | 14 + .../tklib0.7/tablelist/tablelistPublic.tcl | 107 + .../lib/tklib0.7/tablelist/tablelist_tile.tcl | 24 + .../lib/tklib0.7/tkpiechart/boxlabel.tcl | 141 + .../lib/tklib0.7/tkpiechart/canlabel.tcl | 206 + .../lib/tklib0.7/tkpiechart/labarray.tcl | 103 + .../lib/tklib0.7/tkpiechart/objselec.tcl | 37 + .../lib/tklib0.7/tkpiechart/perilabel.tcl | 222 + .../lib/tklib0.7/tkpiechart/pie.tcl | 391 + .../lib/tklib0.7/tkpiechart/pielabel.tcl | 41 + .../lib/tklib0.7/tkpiechart/pkgIndex.tcl | 3 + .../lib/tklib0.7/tkpiechart/relirect.tcl | 112 + .../lib/tklib0.7/tkpiechart/selector.tcl | 166 + .../lib/tklib0.7/tkpiechart/slice.tcl | 312 + .../lib/tklib0.7/tkpiechart/tkpiechart.tcl | 15 + .../lib/tklib0.7/tooltip/pkgIndex.tcl | 4 + .../lib/tklib0.7/tooltip/tipstack.tcl | 169 + .../lib/tklib0.7/tooltip/tooltip.tcl | 491 + src/punk86.vfs/lib/tklib0.7/wcb/pkgIndex.tcl | 15 + .../lib/tklib0.7/wcb/scripts/tclIndex | 47 + .../lib/tklib0.7/wcb/scripts/wcbCommon.tcl | 481 + .../lib/tklib0.7/wcb/scripts/wcbEntry.tcl | 339 + .../lib/tklib0.7/wcb/scripts/wcbListbox.tcl | 70 + .../lib/tklib0.7/wcb/scripts/wcbTablelist.tcl | 104 + .../lib/tklib0.7/wcb/scripts/wcbText.tcl | 214 + .../lib/tklib0.7/wcb/scripts/wcbTreeview.tcl | 87 + src/punk86.vfs/lib/tklib0.7/wcb/wcb.tcl | 59 + src/punk86.vfs/lib/tklib0.7/widget/arrowb.tcl | 126 + .../lib/tklib0.7/widget/calendar.tcl | 702 ++ .../lib/tklib0.7/widget/dateentry.tcl | 342 + src/punk86.vfs/lib/tklib0.7/widget/dialog.tcl | 473 + src/punk86.vfs/lib/tklib0.7/widget/mentry.tcl | 297 + .../lib/tklib0.7/widget/panelframe.tcl | 244 + .../lib/tklib0.7/widget/pkgIndex.tcl | 32 + src/punk86.vfs/lib/tklib0.7/widget/ruler.tcl | 645 ++ .../lib/tklib0.7/widget/scrollw.tcl | 258 + .../lib/tklib0.7/widget/statusbar.tcl | 287 + src/punk86.vfs/lib/tklib0.7/widget/stext.tcl | 77 + .../lib/tklib0.7/widget/superframe.tcl | 140 + .../lib/tklib0.7/widget/toolbar.tcl | 296 + src/punk86.vfs/lib/tklib0.7/widget/widget.tcl | 162 + .../lib/tklib0.7/widgetPlus/pkgIndex.tcl | 2 + .../lib/tklib0.7/widgetPlus/widgetPlus.tcl | 1677 ++++ .../lib/tklib0.7/widgetl/listentry.tcl | 1192 +++ .../lib/tklib0.7/widgetl/listsimple.tcl | 676 ++ .../lib/tklib0.7/widgetl/pkgIndex.tcl | 3 + .../lib/tklib0.7/widgetv/pkgIndex.tcl | 2 + .../lib/tklib0.7/widgetv/validator.tcl | 422 + .../lib/treectrl2.4.1/filelist-bindings.tcl | 1293 +++ .../htmldoc/What-is-New-in-TkTreeCtrl.html | 3604 +++++++ .../lib/treectrl2.4.1/htmldoc/treectrl.html | 4408 ++++++++ src/punk86.vfs/lib/treectrl2.4.1/pkgIndex.tcl | 8 + src/punk86.vfs/lib/treectrl2.4.1/treectrl.tcl | 1951 ++++ .../lib/treectrl2.4.1/treectrl24.dll | Bin 0 -> 455168 bytes 590 files changed, 233553 insertions(+) create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ArrowButton.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/BWidget.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Button.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ButtonBox.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ComboBox.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Dialog.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/DragSite.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/DropSite.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/DynamicHelp.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Entry.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Label.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelEntry.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelFrame.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ListBox.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/MainFrame.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/MessageDlg.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/NoteBook.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/PagesManager.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/PanedWindow.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/PanelFrame.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/PasswdDlg.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressBar.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressDlg.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollView.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollableFrame.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrolledWindow.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectColor.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectFont.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Separator.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/SpinBox.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/StatusBar.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/TitleFrame.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Tree.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/Widget.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/contents.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/index.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/navtree.html create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/BWman/options.htm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/CHANGES.txt create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/ChangeLog create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/LICENSE.txt create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/README.txt create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/arrow.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/bitmap.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/button.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/buttonbox.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/color.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/combobox.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/basic.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/bwidget.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/demo.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/dnd.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/manager.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/select.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/tmpldlg.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/tree.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/demo/x1.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/dialog.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/dragsite.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/dropsite.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/dynhelp.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/entry.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/font.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/bold.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/copy.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/cut.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/dragfile.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/dragicon.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/error.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/file.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/folder.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/hourglass.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/info.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/italic.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/minus.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/new.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/opcopy.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/open.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/openfold.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/oplink.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/opmove.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/overstrike.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/palette.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/passwd.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/paste.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/plus.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/print.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/question.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/redo.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/save.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/target.xbm create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/underline.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/undo.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/images/warning.gif create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/init.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/label.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/labelentry.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/labelframe.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/da.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/de.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/en.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/es.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/fr.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/hu.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/nl.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/no.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/lang/pl.rc create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/listbox.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/mainframe.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/messagedlg.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/notebook.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/pagesmgr.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/panedw.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/panelframe.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/passwddlg.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/progressbar.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/progressdlg.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/scrollframe.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/scrollview.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/scrollw.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/separator.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/spinbox.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/statusbar.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/tests/entry.test create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/titleframe.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/tree.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/utils.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/widget.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/wizard.tcl create mode 100644 src/punk86.vfs/lib/BWidget1.9.16/xpm2image.tcl create mode 100644 src/punk86.vfs/lib/gridplus2.11/LICENSE.GRIDPLUS create mode 100644 src/punk86.vfs/lib/gridplus2.11/gridplus.tcl create mode 100644 src/punk86.vfs/lib/gridplus2.11/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/itcl4.2.3/itcl.tcl create mode 100644 src/punk86.vfs/lib/itcl4.2.3/itcl423.dll create mode 100644 src/punk86.vfs/lib/itcl4.2.3/itclConfig.sh create mode 100644 src/punk86.vfs/lib/itcl4.2.3/itclHullCmds.tcl create mode 100644 src/punk86.vfs/lib/itcl4.2.3/itclWidget.tcl create mode 100644 src/punk86.vfs/lib/itcl4.2.3/libitclstub423.a create mode 100644 src/punk86.vfs/lib/itcl4.2.3/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/itk4.1.0/Archetype.itk create mode 100644 src/punk86.vfs/lib/itk4.1.0/Toplevel.itk create mode 100644 src/punk86.vfs/lib/itk4.1.0/Widget.itk create mode 100644 src/punk86.vfs/lib/itk4.1.0/itk.tcl create mode 100644 src/punk86.vfs/lib/itk4.1.0/itk410.dll create mode 100644 src/punk86.vfs/lib/itk4.1.0/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/itk4.1.0/tclIndex create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/buttonbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/calendar create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/canvasprintbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/canvasprintdialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/catalog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/checkbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/combobox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/dateentry create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/datefield create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/demo.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/dialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/dialogshell create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/disjointlistbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/entryfield create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/extbutton create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/extfileselectionbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/extfileselectiondialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/feedback create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/fileselectionbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/fileselectiondialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/finddialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/hierarchy create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/buttonbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/calendar.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/canvasprintbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/canvasprintdialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/checkbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/combobox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/dateentry.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/datefield.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/dialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/dialogshell.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/disjointlistbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/entryfield.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/extbutton.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/extfileselectionbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/extfileselectiondialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/feedback.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/fileselectionbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/fileselectiondialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/finddialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/hierarchy.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/hyperhelp.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/iwidgets4.0.0UserCmds.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/labeledframe.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/labeledwidget.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/mainwindow.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/menubar.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/messagebox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/messagedialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/notebook.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/optionmenu.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/panedwindow.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/promptdialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/pushbutton.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/radiobox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/scopedobject.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/scrolledcanvas.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/scrolledframe.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/scrolledhtml.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/scrolledlistbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/scrolledtext.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/selectionbox.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/selectiondialog.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/shell.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/spindate.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/spinint.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/spinner.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/spintime.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/tabnotebook.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/tabset.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/timeentry.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/timefield.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/toolbar.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/html/watch.n.html create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/hyperhelp create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/box.xbm create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/clear.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/close.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/copy.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/cut.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/exit.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/find.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/help.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/line.xbm create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/mag.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/new.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/open.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/oval.xbm create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/paste.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/points.xbm create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/poly.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/print.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/ruler.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/save.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/select.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/images/text.xbm create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/iwidgets.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/labeledframe create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/labeledwidget create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/mainwindow create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/menubar create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/messagebox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/messagedialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/notebook create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/optionmenu create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/panedwindow create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/promptdialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/pushbutton create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/radiobox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/scopedobject create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/scrolledcanvas create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/scrolledframe create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/scrolledhtml create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/scrolledlistbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/scrolledtext create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/selectionbox create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/selectiondialog create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/shell create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/spindate create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/spinint create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/spinner create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/spintime create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/tabnotebook create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/tabset create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/timeentry create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/timefield create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/toolbar create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/demos/watch create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/iwidgets.tcl create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/license.terms create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/buttonbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/calendar.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/canvasprintbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/canvasprintdialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/checkbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/colors.itcl create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/combobox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/dateentry.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/datefield.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/dialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/dialogshell.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/disjointlistbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/entryfield.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/extbutton.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/extfileselectionbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/extfileselectiondialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/feedback.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/fileselectionbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/fileselectiondialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/finddialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/hierarchy.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/hyperhelp.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/labeledframe.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/labeledwidget.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/mainwindow.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/menubar.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/messagebox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/messagedialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/notebook.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/optionmenu.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/pane.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/panedwindow.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/promptdialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/pushbutton.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/radiobox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/regexpfield.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/roman.itcl create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scopedobject.itcl create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scrolledcanvas.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scrolledframe.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scrolledhtml.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scrolledlistbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scrolledtext.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/scrolledwidget.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/selectionbox.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/selectiondialog.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/shell.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/spindate.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/spinint.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/spinner.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/spintime.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/tabnotebook.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/tabset.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/tclIndex create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/timeentry.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/timefield.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/toolbar.itk create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/unknownimage.gif create mode 100644 src/punk86.vfs/lib/iwidgets4.1.1/scripts/watch.itk create mode 100644 src/punk86.vfs/lib/kettle1/app.tcl create mode 100644 src/punk86.vfs/lib/kettle1/atexit.tcl create mode 100644 src/punk86.vfs/lib/kettle1/benchmain.tcl create mode 100644 src/punk86.vfs/lib/kettle1/benchmarks.tcl create mode 100644 src/punk86.vfs/lib/kettle1/benchutilities.tcl create mode 100644 src/punk86.vfs/lib/kettle1/critcl.tcl create mode 100644 src/punk86.vfs/lib/kettle1/depend.tcl create mode 100644 src/punk86.vfs/lib/kettle1/doc.tcl create mode 100644 src/punk86.vfs/lib/kettle1/figures.tcl create mode 100644 src/punk86.vfs/lib/kettle1/gui.tcl create mode 100644 src/punk86.vfs/lib/kettle1/invoke.tcl create mode 100644 src/punk86.vfs/lib/kettle1/io.tcl create mode 100644 src/punk86.vfs/lib/kettle1/kettle.tcl create mode 100644 src/punk86.vfs/lib/kettle1/lambda.tcl create mode 100644 src/punk86.vfs/lib/kettle1/mdref.tcl create mode 100644 src/punk86.vfs/lib/kettle1/meta.tcl create mode 100644 src/punk86.vfs/lib/kettle1/options.tcl create mode 100644 src/punk86.vfs/lib/kettle1/ovalidate.tcl create mode 100644 src/punk86.vfs/lib/kettle1/path.tcl create mode 100644 src/punk86.vfs/lib/kettle1/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/kettle1/recipes.tcl create mode 100644 src/punk86.vfs/lib/kettle1/special.tcl create mode 100644 src/punk86.vfs/lib/kettle1/standard.tcl create mode 100644 src/punk86.vfs/lib/kettle1/status.tcl create mode 100644 src/punk86.vfs/lib/kettle1/stream.tcl create mode 100644 src/punk86.vfs/lib/kettle1/strutil.tcl create mode 100644 src/punk86.vfs/lib/kettle1/tcl.tcl create mode 100644 src/punk86.vfs/lib/kettle1/tclapp.tcl create mode 100644 src/punk86.vfs/lib/kettle1/teapot.txt create mode 100644 src/punk86.vfs/lib/kettle1/testmain.tcl create mode 100644 src/punk86.vfs/lib/kettle1/testsuite.tcl create mode 100644 src/punk86.vfs/lib/kettle1/testutilities.tcl create mode 100644 src/punk86.vfs/lib/kettle1/tool.tcl create mode 100644 src/punk86.vfs/lib/kettle1/try.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/arrayprocs.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/autoload.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/buildhelp.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/compat.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/convlib.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/edprocs.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/events.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/fmath.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/forfile.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/globrecur.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/help.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/profrep.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/pushd.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/setfuncs.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/showproc.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/stringfile.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/tcllib.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/tclx.tcl create mode 100644 src/punk86.vfs/lib/tclx8.4/tclx84.dll create mode 100644 src/punk86.vfs/lib/tdot0.3.1/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tdot0.3.1/tdot.html create mode 100644 src/punk86.vfs/lib/tdot0.3.1/tdot.md create mode 100644 src/punk86.vfs/lib/tdot0.3.1/tdot.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/autoscroll/autoscroll.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/autoscroll/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_drag.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_epoints.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_epolyline.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_equad.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_gradient.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_highlight.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_mvg.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_snap.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_sqmap.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_tags.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_trlines.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/canvas_zoom.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/canvas/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/chatwidget/chatwidget.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/chatwidget/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/bindDown.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/controlwidget.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/led.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/radioMatrix.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/rdial.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/tachometer.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/vertical_meter.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/controlwidget/voltmeter.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/crosshair/crosshair.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/crosshair/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ctext/ctext.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ctext/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/cursor/cursor.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/cursor/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/datefield/datefield.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/datefield/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/application.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/attributes.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/basic.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/core.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/diagram.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/direction.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/element.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/navigation.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/diagrams/point.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/getstring/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/getstring/tk_getString.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/history/history.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/history/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ico/ico.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ico/ico0.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ico/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ipentry/ipentry.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ipentry/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/ROOT.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/cs.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/da.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/de.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/en.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/es.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/khim.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/pl.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/ru.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/khim/uk.msg create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/mentry.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/mentryPublic.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/mentry_tile.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mentryDateTime.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mentryFixedPoint.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mentryIPAddr.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mentryIPv6Addr.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mentryThemes.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mentryWidget.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/mwutil.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/mentry/scripts/tclIndex create mode 100644 src/punk86.vfs/lib/tklib0.7/menubar/debug.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/menubar/menubar.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/menubar/node.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/menubar/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/menubar/tree.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/notifywindow/notifywindow.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/notifywindow/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ntext/ntext.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/ntext/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/persistentSelection/persistentSelection.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/persistentSelection/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plot3d.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotanim.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotannot.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotaxis.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotbind.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotbusiness.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotchart.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotcombined.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotconfig.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotcontour.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotgantt.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotobject.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotpack.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotpriv.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotscada.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotspecial.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plotstatustimeline.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/plottable.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/scaling.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/plotchart/xyplot.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scripts/mwutil.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scripts/scrollableframe.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scripts/scrollarea.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scripts/scrollsync.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scripts/tclIndex create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scripts/wheelEvent.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scrollutil.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scrollutilCommon.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/scrollutil/scrollutil_tile.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/style/as.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/style/lobster.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/style/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/style/style.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/swaplist/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/swaplist/swaplist.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/mwutil.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/pencil.cur create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/repair.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistBind.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistConfig.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistEdit.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistImages.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistMove.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistSort.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistThemes.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistUtil.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tablelistWidget.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/scripts/tclIndex create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/tablelist.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/tablelistPublic.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tablelist/tablelist_tile.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/boxlabel.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/canlabel.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/labarray.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/objselec.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/perilabel.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/pie.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/pielabel.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/relirect.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/selector.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/slice.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tkpiechart/tkpiechart.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tooltip/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tooltip/tipstack.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/tooltip/tooltip.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/tclIndex create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/wcbCommon.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/wcbEntry.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/wcbListbox.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/wcbTablelist.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/wcbText.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/scripts/wcbTreeview.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/wcb/wcb.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/arrowb.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/calendar.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/dateentry.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/dialog.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/mentry.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/panelframe.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/ruler.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/scrollw.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/statusbar.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/stext.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/superframe.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/toolbar.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widget/widget.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetPlus/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetPlus/widgetPlus.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetl/listentry.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetl/listsimple.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetl/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetv/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/tklib0.7/widgetv/validator.tcl create mode 100644 src/punk86.vfs/lib/treectrl2.4.1/filelist-bindings.tcl create mode 100644 src/punk86.vfs/lib/treectrl2.4.1/htmldoc/What-is-New-in-TkTreeCtrl.html create mode 100644 src/punk86.vfs/lib/treectrl2.4.1/htmldoc/treectrl.html create mode 100644 src/punk86.vfs/lib/treectrl2.4.1/pkgIndex.tcl create mode 100644 src/punk86.vfs/lib/treectrl2.4.1/treectrl.tcl create mode 100644 src/punk86.vfs/lib/treectrl2.4.1/treectrl24.dll diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ArrowButton.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ArrowButton.html new file mode 100644 index 00000000..3969d3db --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ArrowButton.html @@ -0,0 +1,276 @@ + +ArrowButton + +
NAME
+
ArrowButton + - Button widget with an arrow shape. +
+
+
CREATION
+
ArrowButton pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -activebackground
  -activeforeground
  -background or -bg  -borderwidth or -bd
  -disabledforeground
  -foreground or -fg
  -highlightbackground
  -highlightcolor
  -highlightthickness
  -relief
  -repeatdelay
  -repeatinterval
  -takefocus
  -troughcolor
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -armcommand
  -arrowbd
  -arrowrelief
  -clean
  -command
  -dir
  -disarmcommand
  -height
  -helptext
  -helptype
  -helpvar
  -ipadx
  -ipady
  -state
  -type
  -width
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName invoke +
+
+


+DESCRIPTION
+

+ +ArrowButton can be of two types following type option: +for button type, it is standard button with an arrow drawn on it; +for arrow type, it is an arrow like scrollbar's arrow. +

+


+WIDGET-SPECIFIC OPTIONS
+
-armcommand
+
+ +Specifies a Tcl command to associate with the ArrowButton when mouse button 1 is pressed +over the ArrowButton. When repeatdelay or repeatinterval option is positive +integer, this command is repeatedly called if mouse pointer is over the button and until +mouse button 1 is released. +
+
+
-arrowbd
+
+ +When ArrowButton type is arrow, specifies the border width of the +arrow. Must be 1 or 2. + +
+
+
-arrowrelief
+
+ +When ArrowButton type is arrow, specifies the relief of the arrow. +Must be raised or sunken. + +
+
+
-clean
+
+ +Specifies a level of quality, between 0 and 2, for the arrow. +If 0, the arrow is drawn with its maximum width and height. +If 1, the base of arrow is arranged to be odd to have same edges. +If 2, the base of arrow is arranged to be odd and the orthogonal to be (base+1)/2 to +have 'straight' diagonal for edges. +
+
+
-command
+
+ +Specifies a Tcl command to associate with the ArrowButton. This command +is typically invoked when mouse button 1 is released over the ArrowButton +window. +
+
+
-dir
+
+ +Specifies the direction of the arrow: top, bottom, left +or right. +
+
+
-disarmcommand
+
+ +Specifies a Tcl command to associate with the ArrowButton when mouse button 1 is released. +This command is called even if pointer is not over the ArrowButton, and always before +the command specified by command option. +It is typically used in conjuntion with armcommand, repeatdelay and +repeatinterval. +
+
+
-height
+
+ +Specifies a desired height for the ArrowButton. The value is in screen units. +
+
+
-helptext
+
+ +Text for dynamic help. If empty, no help is available for this widget. +See also DynamicHelp. +
+
+
-helptype
+
+Type of dynamic help. Use balloon or variable. +See also DynamicHelp. +
+
+
-helpvar
+
+Variable to use when helptype option is variable. +See also DynamicHelp. +
+
+
-ipadx
+
+ +Specifies a minimun pad between the ArrowButton border and the right and left side +of the arrow. The value is in screen units. +
+
+
-ipady
+
+ +Specifies a minimun pad between the ArrowButton border and the top and bottom side +of the arrow. The value is in screen units. +
+
+
-state
+
+ +Specifies one of three states for the ArrowButton: normal, active, +or disabled. +
If ArrowButton type is button:
+
In normal state the ArrowButton is displayed using the +foreground and background options. The active state is +typically used when the pointer is over the ArrowButton. In active state +the ArrowButton is displayed using the activeforeground and +activebackground options. In disabled state the disabledforeground and +background options determine how the ArrowButton is displayed. +
+
If ArrowButton type is arrow:
+
Only colors of arrow change. The background of ArrowButton is always +displayed using troughcolor option. +In normal state the ArrowButton is displayed using the background option. The active +state is typically used when the pointer is over the ArrowButton. In active state +the ArrowButton is displayed using the activebackground option. In disabled state +the ArrowButton is displayed with a dark stipple. +
+
+Disabled state means that the ArrowButton +should be insensitive: the default bindings will refuse to activate +the widget and will ignore mouse button presses. +
+
+
-type
+
+ +Determines the type of the ArrowButton: button for standard button look, or +arrow scrollbar's arrow look. +
+
+
-width
+
+ +Specifies a desired width for the ArrowButton. The value is in screen units. +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName invoke +
+ +If ArrowButton state is not disabled, this invoke the commands of the button. +ArrowButton is redisplayed with active color and sunken relief, and +armcommand is called. Then ArrowButton is redisplayed with +normal color and its defined relief, and disarmcommand then command +are called. +

invoke is called when ArrowButton has input focus and user press the space bar. +

+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/BWidget.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/BWidget.html new file mode 100644 index 00000000..35afba47 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/BWidget.html @@ -0,0 +1,228 @@ + +BWidget + + Under construction ...
+
NAME
+
BWidget + - Description text +
+
+
COMMAND
+
BWidget::XLFDfont + cmd + ?arg...? +
+
BWidget::assert + exp + ?msg? +
+
BWidget::badOptionString + type + value + list +
+
BWidget::bindMouseWheel + widget +
+
BWidget::classes + class +
+
BWidget::clonename + menu +
+
BWidget::focus + option + path +
+
BWidget::get3dcolor + path + bgcolor +
+
BWidget::getname + name +
+
BWidget::grab + option + path +
+
BWidget::inuse + class +
+
BWidget::library + class ?class ...? +
+
BWidget::lreorder + list + neworder +
+
BWidget::parsetext + text +
+
BWidget::place + path + w + h + ?arg...? +
+
BWidget::write + filename ?mode? +
+
BWidget::wrongNumArgsString + string +
+
+


+DESCRIPTION
+

+Description text +

+

+COMMAND
+
BWidget::XLFDfont + cmd + ?arg...? +
+Description text +
+
BWidget::assert + exp + ?msg? +
+Description text +
+
BWidget::badOptionString + type + value + list +
+Return a proper error string for a value of type that doesn't +match list. +
+ +
BWidget::bindMouseWheel + widget +
+ Bind the given widget with the standard mouse wheel bindings. +
+ +
BWidget::classes + class +
+ Returns a list of classes needed by the given class. +
+ +
BWidget::clonename + menu +
+Description text +
+
BWidget::focus + option + path +
+Description text +
+
BWidget::get3dcolor + path + bgcolor +
+Description text +
+
BWidget::getname + name +
+Description text +
+
BWidget::grab + option + path +
+Description text +
+ +
BWidget::inuse + class +
+ Returns true or false if the given class is being used by the + current running program. +
+ +
BWidget::library + class + ?class ...? +
+ Returns a string of code that contains all the libraries needed to + use the widgets given by class. Each class's code and the + code of its dependent classes is appended to the string and returned. + This is mostly useful for saving BWidgets to another project. +
+ +
BWidget::lreorder + list + neworder +
+Description text +
+
BWidget::parsetext + text +
+Description text +
+
BWidget::place + path + w + h + ?arg...? +
+Used to position and resize the widget specified by +path. w and h are used to specify the requested +width and height of the path widget for use by wm +geometry (set to 0 to use current values). The placement of the widget relative to other widgets or +the screen is controlled by additional arguments: +
+
at x y
+
Place the widget specified by the path argument at screen + position x,y. See wm geometry for information about window + placement values.
+ +
center ?widget?
+
Place the path widget centered against widget or against the + root widget if widget is not given.
+ +
left ?widget?
+
right ?widget?
+
Place the path widget either left or right of the + reference widget (or the root widget if widget is not + specified). If the reference widget's position is such that the newly + placed window might be obscured then the opposite side will be tried.
+ +
above ?widget?
+
below ?widget?
+
As for left/right above, this option causes the widget to be + placed either above or below the reference widget with the opposite + placement being attempted if the newly placed widget will not be visible. +
+
+ +
BWidget::write + filename + ?mode? +
+ Writes the currently used set of BWidget class code to the given + filename. All the code necessary to run the BWidgets + currently in use is written to the file. This is mostly useful + for saving BWidget code to another project as a single file instead + of the entire BWidget package. +
+ +
+
BWidget::wrongNumArgsString + string +
+
+ Returns a standard error string for the wrong number of arguments. + string is appended to the standard string. +
+
+ + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Button.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Button.html new file mode 100644 index 00000000..f1b5aae2 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Button.html @@ -0,0 +1,307 @@ + +Button + +
NAME
+
Button + - Button widget with enhanced options +
+
+
CREATION
+
Button pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
Not themed
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -activebackground  -activeforeground
  -anchor  -background or -bg
  -bitmap  -borderwidth or -bd
  -cursor  -disabledforeground
  -font  -foreground or -fg
  -highlightbackground  -highlightcolor
  -highlightthickness  -image
  -justify  -padx
  -pady  -repeatdelay
  -repeatinterval  -takefocus
  -text  -textvariable
  -wraplength
+
Themed
+
+ + + + + + + + + + + + + + + + + + +
  -compound  -cursor
  -image  -style
  -repeatdelay  -repeatinterval
  -takefocus  -text
  -textvariable
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
  -armcommand  -command
  -default  -disarmcommand
  -height  -helptext
  -helptype  -helpvar
  -name  -relief
  -state  -underline
  -width
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName invoke +
+
+


+DESCRIPTION
+

+ +Button widget extends the Tk button with new options. +DynamicHelp options, +a new relief style, callback for arm/disarm, and +repeatdelay/repeatinterval options has been added. +

+


+WIDGET-SPECIFIC OPTIONS
+
-armcommand
+
+ +Specifies a Tcl command to associate with the Button when mouse button 1 is pressed over the +Button. When repeatdelay or repeatinterval option is positive integer, +this command is repeatedly called if mouse pointer is over the Button and until mouse +button 1 is released. +
+
+
-command
+
+ +Specifies a Tcl command to associate with the Button. This command +is typically invoked when mouse button 1 is released over the Button +window. +
+
+
-default
+
+ +Specifies one of three states for the default ring: normal, active, +or disabled. In active state, the button is drawn with the platform specific +appearance for a default button. In normal state, the button is drawn with the platform +specific appearance for a non-default button, leaving enough space to draw the default +button appearance. The normal and active states will result in buttons of the same size. +In disabled state, the button is drawn with the non-default button appearance without +leaving space for the default appearance. The disabled state may result +in a smaller button than the active state. +
+
+
-disarmcommand
+
+ +Specifies a Tcl command to associate with the Button when mouse button 1 is released. +This command is called even if pointer is not over the Button, and always before +the command specified by command option. +It is typically used in conjuntion with armcommand, repeatdelay and +repeatinterval. +
+
+
-height
+
+ +Specifies a desired height for the Button. +If an image or bitmap is being displayed in the Button then the value is in +screen units; +for text it is in lines of text. +If this option isn't specified, the Button's desired height is computed +from the size of the image or bitmap or text being displayed in it.
+Option not available when widget is themed. +
+
+
-helptext
+
+ +Text for dynamic help. If empty, no help is available for this widget. +See also DynamicHelp. +
+
+
-helptype
+
+Type of dynamic help. Use balloon or variable. +See also DynamicHelp. +
+
+
-helpvar
+
+Variable to use when helptype option is variable. +See also DynamicHelp. +
+
+
-name
+
+ +Specifies a standard name for the button. If the option *nameName is +found in the resources database, then text and underline options +are extracted from its value. + +
+
+
-relief
+
+ +Specifies the 3-D effect desired for the widget. Acceptable values are standard values for +button relief (raised, sunken, flat, ridge, solid, and groove) and link, which specifies that button relief is flat when pointer +is outside the button and raised when pointer is inside.
+This option has only the following effect if the widget is themed: +The value link used a style Toolbutton while any other value uses the standard effect. +
+
+
-state
+
+ +Specifies one of three states for the Button: normal, active, +or disabled. In normal state the Button is displayed using the +foreground and background options. The active state is +typically used when the pointer is over the Button. In active state +the Button is displayed using the activeforeground and +activebackground options. Disabled state means that the Button +should be insensitive: the default bindings will refuse to activate +the widget and will ignore mouse button presses. +In this state the disabledforeground and +background options determine how the Button is displayed. +
+
+
-underline
+
+ +Specifies the integer index of a character to underline in the label of the button. +0 corresponds to the first character of the text displayed, 1 to the next character, +and so on. +
The binding <Alt-char> is automatically set on the toplevel +of the Button to call Button::setfocus. + +
+
+
-width
+
+ +If an image or bitmap is being displayed in the Button then the value is in +screen units; +for text it is in characters. +If this option isn't specified, the Button's desired width is computed +from the size of the image or bitmap or text being displayed in it. +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName invoke +
+ +If Button state is not disabled, this invoke the commands of the Button. +Button is redisplayed with active color and sunken relief, and +armcommand is called. Then Button is redisplayed with +normal color and its defined relief, and disarmcommand then command +are called. +

invoke is called when Button has input focus and user press the space bar. + +

+

+BINDINGS
+
<<Invoke>> +
+ +Invoke the invoke widget command. +
+

+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ButtonBox.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ButtonBox.html new file mode 100644 index 00000000..f65f20fe --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ButtonBox.html @@ -0,0 +1,266 @@ + +ButtonBox + +
NAME
+
ButtonBox + - Set of buttons with horizontal or vertical layout +
+
+
CREATION
+
ButtonBox pathName ?option value...?
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + +
  -background or -bg  -default
  -homogeneous  -orient
  -padx  -pady
  -spacing  -state
+
+
+
WIDGET COMMAND
+
pathName add + ?option value...? +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName delete + index +
+
pathName index + index +
+
pathName insert + index ?option value...? +
+
pathName invoke + index +
+
pathName itemcget + index + option +
+
pathName itemconfigure + index + ?option? ?value option value ...? +
+
pathName setfocus + index +
+
+


+DESCRIPTION
+

+ +ButtonBox layouts Button horizontally or vertically. +Some commands take an index as argument indicating on which +Button it work. This index may be specified in any of the following forms: +

+

+
+number +
+Specifies the Button numerically, where 0 corresponds +to the first added Button, 1 to the next, and so on. +
+end or last +
+Indicates the last item added. +
default +
+Indicates the default Button. + +
+name +
+Indicates the button whose -name option is name. + +
+text +
+Indicates the button whose -text option is text. +
+ +

+


+WIDGET-SPECIFIC OPTIONS
+
-background
+
+ +Specifies a default background color for all added buttons and for the frame.
+For themed wigets, the button color is not set. + +
+
+
-default
+
+ +Specifies the default button of the button box. The value is an integer +referencing the n-th added button, starting from 0. +If this value is -1 (the default), all button wil be drawn with their -default +option set to disabled, and this value can not be changed.
If this value is +not -1, the associated button is drawn with -default option set to active and +the others are drawn with -default option set to normal. The value can be changed +by configure. + +
+
+
-homogeneous (read-only)
+
+ +Specifies wether or not buttons must have the same width for horizontal layout. + +
+
+
-orient (read-only)
+
+ +Specifies the orientation of the button box. If this option is horizontal +(the default), buttons are added from top to bottom. +If this option is vertical, buttons are added from left to right. + +
+
+
-padx
+
+ +Specifies a default value for the -padx option of all added buttons.
+Option has no effect for themed wigets. +
+
+
-pady
+
+ +Specifies a default value for the -pady option of all added buttons.
+Option has no effect for themed wigets. + +
+
+
-spacing
+
+ +Specifies the default spacing between buttons. This value can be changed before each +call to add. + +
+
+ +
-state
+
+ +Specifies a state for all the buttons in the button box. Can be any state supported by buttons. + +
+
+ +

+WIDGET COMMAND
+
pathName add + ?option value...? +
+ +Add a button to the button box. +

+See Button for description of options. +

+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+ +
pathName delete + index +
+ +Delete the button at index from the button box. + +
+ +
pathName index + index +
+ +Return the numerical index corresponding to the item. + +
+ +
pathName insert + index ?option value...? +
+ +Insert a new button into the button box before the given index. + +
+ +
pathName invoke + index +
+ +Invoke the Button given by index. + +
+
pathName itemcget + index + option +
+ +Returns the current value of a configuration option for the item. +Option may have any of the values accepted by the item creation command. + +
+
pathName itemconfigure + index + ?option? ?value option value ...? +
+ +This command is similar to the configure command, except that it applies to the +options for an individual item, whereas configure applies to the options for +the widget as a whole. Options may have any of the values accepted by the +item creation widget command. If options are specified, options are modified as indicated +in the command and the command returns an empty string. If no options are specified, +returns a list describing the current options for the item. +Read-only options are not be modified. + +
+
pathName setfocus + index +
+ +Set the focus to the Button given by index. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ComboBox.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ComboBox.html new file mode 100644 index 00000000..92b4dd18 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ComboBox.html @@ -0,0 +1,410 @@ + +ComboBox + +
NAME
+
ComboBox + - ComboBox widget +
+
+
CREATION
+
ComboBox pathName ?option value...?
+
+
+
OPTIONS from ArrowButton
+
+ + + + + + + + +
  -background or -bg  -disabledforeground
  -foreground or -fg  -state
+
+
+
OPTIONS from Entry
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -command  -disabledforeground
  -dragenabled  -dragendcmd
  -dragevent  -draginitcmd
  -dragtype  -dropcmd
  -dropenabled  -dropovercmd
  -droptypes  -editable
  -entrybg (see -background)  -entryfg (see -foreground)
  -exportselection  -font
  -helptext  -helptype
  -helpvar  -highlightbackground
  -highlightcolor  -highlightthickness
  -insertbackground  -insertborderwidth
  -insertofftime  -insertontime
  -insertwidth  -justify
  -selectbackground  -selectborderwidth
  -selectforeground  -show
  -state  -takefocus
  -text  -textvariable
  -width  -xscrollcommand
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + +
  -autocomplete  -autopost
  -bwlistbox  -expand
  -height  -hottrack
  -images  -listboxwidth
  -modifycmd  -postcommand
  -values
+
+
+
WIDGET COMMAND
+
pathName bind + ?arg...? +
+
pathName cget + option +
+
pathName clearvalue +
+
pathName configure + ?option? ?value option value ...? +
+
pathName get
+
pathName getentry
+
pathName getlistbox
+
pathName getvalue
+
pathName icursor +index +
+
pathName post
+
pathName setvalue + index +
+
pathName unpost
+
+


+DESCRIPTION
+

+ +ComboBox widget enables the user to select a value among a list given by +the values option. The list of possible values can be popped by +pressing the ArrowButton or by clicking in the entry when editable +value of the ComboBox is false.
If editable value of the +ComboBox is true and the entry has the focus, the user can press the +top and bottom arrow keys to modify its value. If the current value exactly +match a value in the list, then the previous (for top arrow key) or then +next (for bottom arrow key) value in the list is displayed. If the current +value match the beginning of a value in the list, then this value is +displayed. If the current value doesnt match anything, then the first +value is displayed. + +

+


+WIDGET-SPECIFIC OPTIONS
+
+
-autocomplete
+
+ Specifies whether or not the combobox should attempt to auto-complete + the value in the entry field as the user types. If true, the combobox + will fill in a value that it finds in its value list as the user types + into the entry. +
+
+ +
+
-autopost
+
+ Specifies whether or not the combobox should post the drop down as + the user types. If true, the combobox will post and scroll to the + entry that most closely matches the user entry. +
+
+ +
+
-bwlistbox
+
+ Specifies that the combobox should use a BWidget listbox in its drop + down instead of the standard Tk option. This option is enabled by + default if the -images option is not empty. +
+
+ +
-expand
+
+ +Specifies the value expansion behavior for the window. It must be +none (default) or tab. If tab is specified, then +a Tab binding is added to attempt to expand the current value based on +the other values in -values. +
+
+ +
-height
+
+ +Specifies the desired height for the window, in lines. If zero or less, +then the desired height for the window is made just large enough to hold +all the elements in the listbox. +
+ +
+
-hottrack
+
+ The selection in the drop down listbox will follow the mouse cursor + as it moves. +
+
+ +
+
-images
+
+ A list of images that correspond to the -values option. Each + image will be drawn next to its value in the drop down. This option + enables the -bwlistbox by default as it is needed to display + images. +
+
+ +
+
-listboxwidth
+
+ Specifies the width of the listbox in the drop down. Defaults to the + same size as the combobox. +
+
+ +
+
-modifycmd
+
+ +Specifies a Tcl command called when the user modify the value of the ComboBox by selecting it in the listbox or pressing arrow key. +
+
+
-postcommand
+
+ +Specifies a Tcl command called before the listbox of the ComboBox is mapped. +
+
+
-values
+
+ +Specifies the values to display in the listbox of the ComboBox. +
+
+

+WIDGET COMMAND
+
pathName bind + ?arg...? +
+ +Set bindings on the entry widget. + +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. + +
+ +
pathName clearvalue +
+ +Clears the current text of the ComboBox. + +
+ +
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no +option is specified, returns a list describing all of the available +options for pathName. If option is specified with no +value, then the command returns a list describing the one named +option (this list will be identical to the corresponding sublist of +the value returned if no option is specified). If one or more +option-value pairs are specified, then the command modifies the +given widget option(s) to have the given value(s); in this case the command +returns an empty string. Option may have any of the values accepted +by the creation command. Read-only options are not be modified. + +
+ +
pathName get +
+ +Returns the current contents of the entry. + +
+ +
pathName getentry +
+ +Returns the path to the contained entry widget. + +
+ +
pathName getlistbox +
+ +Returns the path to the listbox in the drop down. + +
+ +
pathName getvalue +
+ +Returns the index of the current text of the ComboBox in the list of values, +or -1 if it doesn't match any value. + +
+ +
pathName icursor + index +
+ +Arrange for the insertion cursor to be displayed just before the +character given by index. Returns an empty string. + +
+ +
pathName post +
+ +Post the drop down. + +
+ +
pathName setvalue + index +
+ +Set the text of the ComboBox to the value indicated by index in the list of values. +index may be specified in any of the following forms: +

+

+
+last +
+Specifies the last element of the list of values. +
first +
+Specifies the first element of the list of values. +
+next +
+Specifies the element following the current (ie returned by getvalue) in the list +of values. +
previous +
+Specifies the element preceding the current (ie returned by getvalue) in the list +of values. +
+@number +
+Specifies the integer index in the list of values. +
+ +
+ +
pathName unpost +
+ +Unpost the drop down. + +
+ +

BINDINGS

+ +When Entry of the ComboBox has the input focus, it has the following bindings, in addition +to the default Entry bindings: + +If the listbox is not mapped and ComboBox is not editable or disabled, +mouse button 1 on the Entry cause the listbox to popup, as if the user press the ArrowButton. + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Dialog.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Dialog.html new file mode 100644 index 00000000..73abb711 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Dialog.html @@ -0,0 +1,328 @@ + +Dialog + +
NAME
+
Dialog + - Dialog abstraction with custom buttons +
+
+
CREATION
+
Dialog pathName ?option value...?
+
+
+
OPTIONS from ButtonBox
+
+ + + + + + + + + + +
  -background or -bg  -homogeneous
  -padx  -pady
  -spacing
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -anchor
  -bitmap
  -cancel
  -default
  -geometry
  -image
  -modal
  -parent
  -place
  -separator
  -side
  -title
  -transient
+
+
+
WIDGET COMMAND
+
pathName add + ?arg...? +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName draw + ?focus? +
+
pathName enddialog + result +
+
pathName getframe +
+
pathName invoke + index +
+
pathName itemcget + index + option +
+
pathName itemconfigure + index + ?option? ?value option value ...? +
+
pathName setfocus + index +
+
pathName withdraw +
+
+


+DESCRIPTION
+

+ +Dialog widget enables the user to create a dialog box. +Some commands take an index as argument indicating on which +Button it work. This index is the same specified for equivalent ButtonBox command: +

+

+
+number +
+Specifies the Button numerically, where 0 corresponds +to the first added Button, 1 to the next, and so on. +
+end or last +
+Indicates the last item added. +
default +
+Indicates the default Button. +
+ +

+


+WIDGET-SPECIFIC OPTIONS
+
-anchor (read-only)
+
+ +Specifies the anchor point of the ButtonBox. +Must be one of w, e, n, s or c. +If side option is set to top or bottom, +anchor values n, s and c have the same effect. +If side option is set to left or right, +anchor values w, e and c have the same effect. + +
+
+
-bitmap (read-only)
+
+ +Specifies a bitmap to display at the left of the user frame. +image option override bitmap. +
+
+
-cancel
+
+ +Specifies the number of the cancel button of the Dialog. When user presses Esc or the windows close button, +this button is invoked.
+If set to -1, Esc does not invoke anything. +The window close button destroys the dialog in this case and returns -1. +
+
+
-default
+
+ +Specifies the number of the default button of the Dialog. +When user press Return in the Dialog, this button is invoked. +
+
+ +
-geometry
+
+ +Set the geometry used when method draw is called. +See wm geometry for a parameter description. +
+
+
-image (read-only)
+
+ +Specifies an image to display at the left of the user frame. +image option override bitmap. +
+
+
-modal
+
+ +This option must be none, local or global. The value of this option +specifies the grab mode of the dialog and how works Dialog::draw. + +
+
+
-parent
+
+ +Parent of the Dialog. Dialog is placed relative to its parent. If empty, it is +placed relative to the root window. Also see place option. + +
+
+
-place
+
+Specifies where to draw the Dialog toplevel relative to the dialog's +parent. Must be one of none, center, left, right, +above, below. Default value of place is center. + +
+
+
-separator (read-only)
+
+ +Specifies wether or not to draw a separator between the user frame and the ButtonBox. + +
+
+
-side (read-only)
+
+ +Specifies where to draw the ButtonBox relative to the user frame. Must be one of +top, left, bottom or right. +
+
+
-title
+
+ +Title of the Dialog toplevel. + +
+
+
-transient (read-only)
+
+ +Specifies if the Dialog Toplevel should be a transient window or not. Default +value of transient is true. + +
+
+

+WIDGET COMMAND
+
pathName add + ?arg...? +
+ +Add a button to the button box of the dialog box. Default -command option is +Dialog::enddialog $path index where index is number of button added. +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName draw + ?focus? +
+ +This command draw the Dialog, and set grab to it following modal option. +If modal option is set to none, the command returns immediatly +an empty string. In all other case, the command returns when Dialog::enddialog +is called or when Dialog is destroyed. +The return value is the result argument of Dialog::enddialog or -1 if it is destroyed. +

+By default, the focus is set to the default button referenced by default option, +or to the toplevel of Dialog if no default button has been set. +If focus is present, it must be a pathname, or an index to a button. +Initial focus is set on this pathname or corresponding button. + +

+
pathName enddialog + result +
+ +This command is typically called within a command of a button to make Dialog::draw +return. + +
+
pathName getframe +
+ +Returns the pathname of the user window. +
+
pathName invoke + index +
+ +Invoke the Button given by index. + +
+
pathName itemcget + index + option +
+ +Returns the current value of a configuration option for the item. +Option may have any of the values accepted by the item creation command. + +
+
pathName itemconfigure + index + ?option? ?value option value ...? +
+ +This command is similar to the configure command, except that it applies to the +options for an individual item, whereas configure applies to the options for +the widget as a whole. Options may have any of the values accepted by the +item creation widget command. If options are specified, options are modified as indicated +in the command and the command returns an empty string. If no options are specified, +returns a list describing the current options for the item. +Read-only options are not be modified. + +
+
pathName setfocus + index +
+ +Set the focus to the Button given by index. + +
+
pathName withdraw +
+ +Call this command to hide the dialog box. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/DragSite.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/DragSite.html new file mode 100644 index 00000000..e60cf10d --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/DragSite.html @@ -0,0 +1,141 @@ + +DragSite + +
NAME
+
DragSite + - Commands set for Drag facilities +
+
+
COMMAND
+
DragSite::include + class + type + event +
+
DragSite::register + path + ?option value...? +
+
DragSite::setdrag + path + subpath + initcmd + endcmd + ?force? +
+
+


+DESCRIPTION
+

+ +Commands of this namespace enable user to define a BWidget or a Tk widget as a drag site. + + + +

+

+COMMAND
+
DragSite::include + class + type + event +
+ +This command provides a simple way to include options relatives to a drag site into +BWidget resources definition. +It includes the options needed for register: -dragevent, initialized to +event, -draginitcmd and -dragendcmd, initialized to empty string, +and two new options: + +
-dragenabledSpecifies wether or not drag is active (initialized to 0) +
-dragtypeDefault or alternate dragged data type (initialized to type) +
+ +
+
DragSite::register + path + ?option value...? +
+ +This command is used to declare path as a drag site. Options are: + +

+

-dragendcmd
+
+ +Command called when drag terminates (ie when user release drag icon). +This command is called with the following arguments: +
    +
  • the pathname of the drag source (the widget itself), +
  • the pathname of the drop target, +
  • the operation, +
  • the type of the dragged data, +
  • the dragged data, +
  • result of the drop (result of the call to -dropcmd of the target), +
+If the drop does not occurs, the target and the operation are empty string and the result +is 0. + +
+
+
-dragevent
+
+ +Specifies the number of the mouse button associated to the drag. +Must be 1, 2 or 3. + +
+
+
-draginitcmd
+
+ +Command called when drag initiates. When the event of option dragevent occurs on +path, this command is called with the following arguments: +
    +
  • pathname of the drag source (path), +
  • root x-coordinate of pointer, +
  • root y-coordinate of pointer, +
  • a toplevel created to represent dragged data. When returning, if it +has no children, a bitmap is automatically displayed. +
+If the command returns an empty string, then the drag will be +suppressed. Otherwise the command must return a list containing three +elements: +
    +
  • the type of the data, +
  • the list of acceptable basic operations (copy, move and link) +
  • and the data. +
+Note that even if copy does not appear in the list of basic +operation, it is considered as an acceptable operation, since +copy semantic does not modify the drag source. + +
+
+
+
DragSite::setdrag + path + subpath + initcmd + endcmd + ?force? +
+ +This command provides a simple way to call register during a BWidget creation or +configuration. +
    +
  • path is the pathname of the BWidget, +
  • subpath is the pathname of the tk widget where drag event occurs, +
  • initcmd BWidget command for drag-init event, +
  • endcmd BWidget command for drag-end event, +
  • force specifies wether or not to call register whenever no option value has +changed (0 by default - for BWidget configuration, use 1 for BWidget creation). +
+setdrag verifies the modification flag of options dragenabled and +dragevent and calls register if needed according to the options values and +initcmd and endcmd arguments. draginitcmd and dragendcmd are not +taken from options of widget because they are considered as user command, called by +BWidget implementation of drag-init and drag-end events. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/DropSite.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/DropSite.html new file mode 100644 index 00000000..5073ce6e --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/DropSite.html @@ -0,0 +1,266 @@ + +DropSite + +
NAME
+
DropSite + - Commands set for Drop facilities +
+
+
COMMAND
+
DropSite::include + class + types +
+
DropSite::register + path + ?option value...? +
+
DropSite::setcursor + cursor +
+
DropSite::setdrop + path + subpath + dropover + drop + ?force? +
+
DropSite::setoperation + op +
+
+


+DESCRIPTION
+

+ +Commands of this namespace enable user to define a BWidget or a Tk widget as a drop site. +A drop site is composed of the type of object that can be dropped and associated operation, +a command called when drop occurs, and a command when an object is dragged over the widget. +A drop site must have at least one type of acceptable object and a drop command. + +

+

+COMMAND
+
DropSite::include + class + types +
+ +This command provides a simple way to include options relatives to a drop site into +BWidget resources definition. +It includes the options needed for register, -dropovercmd and -dropcmd, +initialized to empty string, and -droptypes, initialized to types, +and one new option: + +
-dropenabledSpecifies wether or not drop is active (initialized to 0) +
+ +
+
DropSite::register + path + ?option value...? +
+ +This command is used to declare path as a drop site. Options are: + +

+

-dropcmd
+
+ +This command is called when user release the drag icon over a valid +drop target widget. Arguments passed to the command are: + +
    +
  • pathname of the drop target (the widget itself), +
  • pathname of the drag source, +
  • root x-coordinate of the pointer, +
  • root y-coordinate of the pointer, +
  • operation, +
  • type of the dragged data, +
  • dragged data. +
+ +Its return values is passed as a result to the -dragendcmd +command of the drag source widget. + +
+
+
-dropovercmd
+
+ +This command can be used to provide a dynamic drag while drag-over events. +While a drag occurs, events <Enter>, <Motion> and <Leave> are catched. +Arguments passed to the command are: +
    +
  • pathname of the drop target (the widget itself), +
  • pathname of the drag source, +
  • event over the drop target: enter, motion or leave, +
  • root x-coordinate of the pointer, +
  • root y-coordinate of the pointer, +
  • operation, +
  • type of the dragged data, +
  • dragged data. +
+Command must the new status of the drag: +
    +
  • 0 if widget refuse this drag. Command will not be recalled on motion/leave event. +
  • 1 if widget accept this drag. Command will not be recalled on motion/leave event. +
  • 2 if widget refuse this drag. Command will be recalled on each motion event to reevaluate. +
  • 3 if widget accept this drag. Command will be recalled on each motion event to reevaluate. + +
+Here is a list of events and associated actions on a DropSite widget. This example +assumes that dragged data type is valid for the drop target. +status is the status of the drag on a DropSite. Its value is: +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EventOld statusActionNew status
+<Enter> +- +if DropSite has dropovercmd, call it with enter +result of dropovercmd
+else +1
+<Motion> +0 or 1  +unchanged
+2 or 3 +call dropovercmd with motion +result of dropovercmd
+<Leave>  +0 or 1  +-
+2 or 3 +call dropovercmd with leave +-
+<Drop> +0 +call dragendcmd of drag source +-
+1 +call dropcmd and call dragendcmd of drag source
+2 +call dropovercmd with leave and call dragendcmd of drag source
+3 +call dropcmd and call dragendcmd of drag source
+
+ +
+
+
-droptypes
+
+ +Specifies a list {type oplist ?type oplist? ...} of acceptable +types and associated operations for the drop target. +For each type, oplist is a list +{descops mod ?descops mod? ...} describing operations and +modifier keys for these operations. +descops describe an operation. It can be a predefined operations (copy, +move or link) or a new user defined operation, of the form {subop +baseop ?bitmap?}. +subop is the name given to the sub operation, baseop is the name of the +base operation (copy, move or link) and bitmap is a bitmap +to display for the operation. +
If bitmap is empty, the default bitmap of the base operation is used for the +sub operation. +
subop can be a base operation, in order to change the bitmap of a base operation. +In this case, baseop must be empty or equal to subop. +
mod is the modifer key for the operation. It can be: +
    +
  • none to specify that no modifier key is pressed. This modifier can only be used +with a sub operation named default (and vice versa), which has the behaviour of not +display any bitmap operation. For all type, if the modifier none is not given, it is +automatically associated to the default sub operation of a copy base operation. +
  • program to specifies a sub operation accessible only by DropSite::setoperation. +
  • A list combining shift, control and alt, which means their +corresponding key. +
+ +
+
+
+
DropSite::setcursor + cursor +
+ +This command can be used within the script dragovercmd. It is usefull to provide +visual effect about the state of the drag. +
+
DropSite::setdrop + path + subpath + dropover + drop + ?force? +
+ +This command provides a simple way to call register during a BWidget creation or +configuration. +
    +
  • path is the pathname of the BWidget, +
  • subpath is the pathname of the tk widget where drag event occurs, +
  • dropover is a command for drag-over event, +
  • drop is a command for drop event, +
  • force specifies wether or not to call register whenever no option value +has changed (0 by default - for BWidget configuration, use 1 for BWidget creation). +
+setdrop verifies the modification flag of options dropenabled and +droptypes and calls register if needed according to the options values and +dropover and drop arguments. dropovercmd and dropcmd are not +taken from options of widget because they are considered as user command, called by +BWidget implementation of drag-over and drop events. + +
+
DropSite::setoperation + op +
+Description text +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/DynamicHelp.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/DynamicHelp.html new file mode 100644 index 00000000..6a9dcd51 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/DynamicHelp.html @@ -0,0 +1,251 @@ + +DynamicHelp + +
NAME
+
DynamicHelp + - Provide help to Tk widget or BWidget +
+
+
COMMAND
+
DynamicHelp::add +widget ?option value ...? +
+
DynamicHelp::configure + ?option? ?value option value ...? +
+
DynamicHelp::delete +widget +
+
DynamicHelp::include + class + type +
+
DynamicHelp::register + path + type + ?arg...? +
+
DynamicHelp::sethelp + path + subpath + ?force? +
+
+


+DESCRIPTION
+

+Description text +

+

+COMMAND
+ +
DynamicHelp::add + ?option value ...? +
+

+This command adds dynamic help to the given widget. +

+
-command
+
+ If specified, refers to a command to execute to get the help + text to display. The command must return a string to display. + If the command returns an empty string, no help is displayed. +
+
+ +
-index
+
+ If specified, refers to a menu index to bind the help to instead of + a widget. If -type is not menu, this option is ignored. +
+
+ +
-item
+
+ If specified, refers to an item or tag on a canvas widget or to a tag + in a text widget to bind the help to instead of to a widget. +
+
+ +
-type
+
+ Specifies the type of help. Can be: + balloon, variable or menu. + Default is balloon. +
+
+ +
-text
+
+ The text to be displayed as help. +
+
+ +
-variable
+
+ Specifies a variable name to which the help string will be + written. Some other widget (e.g., a status bar) is + responsible for displaying this variable. +
+
+ +

+ Creating dynamic help for a menu is a two-step process. The menu + itself must first be added and then each menu entry must be added + separately. Here is a brief example. +

+ + +
+    # create menu
+    menu .m -type menubar
+    # associate menubar to toplevel BEFORE DynamicHelp::register
+    # to make it works with menu clone name
+    . configure -menu .m
+    .m add cascade -label "File" -menu .m.file
+    menu .m.file
+    .m.file add command -label "Open..."
+    .m.file add command -label "Quit"
+    # create label for help, using variable varinfo
+    label .l -textvariable varinfo
+    # associate all entries of menu .m.file to variable varinfo
+    DynamicHelp::add .m.file -type menu -variable varinfo
+    # then declare entries of .m.file
+    DynamicHelp::add .m.file -type menu -index 0 -text "Detach menu"
+    DynamicHelp::add .m.file -type menu -index 1 -text "Open a file"
+    DynamicHelp::add .m.file -type menu -index 2 -text "Exit demo"
+    
+ +
+ +
DynamicHelp::configure + ?option? ?value option value ...? +
+This command configure the ballon help. +

+

-borderwidth
+
+Width of the black border around the balloon. +
+
+
-delay
+
+Define the delay in millisecond of mouse inactivity before displaying +the balloon. +
+
+
+
-state
+
+ Specifies one of two states for help balloons: normal and + disabled. +
+
+ If state is disabled, help balloons will not be displayed + for any registered widget. +
+
+
-topbackground
+
+The background color of the toplevel window created for a balloon. +
+
+
Other standard options are: +
+ + + + + + + + + + + + +
  -background or -bg  -font
  -foreground or -fg  -justify
  -padx  -pady
+
+ +
DynamicHelp::delete + widget +
+ Delete all dynamic help for the given widget. +
+ +
DynamicHelp::include + class + type +
+Description text +
+
DynamicHelp::register + path + type + ?arg...? +
+

+Its use is deprecated. Use DynamicHelp::add instead. +

+ +Register a help text to the widget path. +type determines the type of the help or the type of the widget. +Depending on type, other options must be provided. +
+ + + + + + +
type options
balloon ?tagOrItem? text
variable ?tagOrItem? varName text
menu varName
menuentry index text
+
If one of the option is missing or is empty, help is removed for this widget. +

+ +If tagOrItem is specified, then path is a canvas or a text. In +case of a canvas, tagOrItem is the name of a tag or item on the canvas +to which the help will be bound. In case of a text, tagOrItem is the +name of a tag on the text to which the help will be bound. + +

+For type other than balloon, varName is typically a variable +linked to a label. +
For menu, balloon type help is not available. To declare a help for menu, +you first declare the menu, and then entries of this menu. +
For example: +

+
+ +
+     # create menu
+menu .m -type menubar
+# associate menubar to toplevel BEFORE DynamicHelp::register
+# to make it works with menu clone name
+. configure -menu .m
+.m add cascade -label "File" -menu .m.file
+menu .m.file
+.m.file add command -label "Open..."
+.m.file add command -label "Quit"
+# create label for help, using variable varinfo
+label .l -textvariable varinfo
+# associate all entries of menu .m.file to variable varinfo
+DynamicHelp::register .m.file menu varinfo
+# then declare entries of .m.file
+DynamicHelp::register .m.file menuentry 0 "Detach menu"
+DynamicHelp::register .m.file menuentry 1 "Open a file"
+DynamicHelp::register .m.file menuentry 2 "Exit demo"
+
+
+
Notice that if popup menu is owned by a menubar, you must associate first the menubar +to its toplevel. In this case, when you create a menu popup, its clone window is also +created, and DynamicHelp::register detects the exitence of the clone window and maps +events to it. +
+
DynamicHelp::sethelp + path + subpath + ?force? +
+Description text +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Entry.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Entry.html new file mode 100644 index 00000000..97c95ffa --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Entry.html @@ -0,0 +1,366 @@ + +Entry + +
NAME
+
Entry + - Entry widget with state option, dynamic help and drag and drop facilities +
+
+
CREATION
+
Entry pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
Not themed
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -disabledbackground  -disabledforeground
  -exportselection  -font
  -foreground or -fg  -highlightbackground
  -highlightcolor  -highlightthickness
  -insertbackground  -insertborderwidth
  -insertofftime  -insertontime
  -insertwidth  -justify
  -relief  -selectbackground
  -selectborderwidth  -selectforeground
  -takefocus  -text
  -textvariable  -xscrollcommand
+
+
+
Themed
+
+ + + + + + + + + + + + + + + + + + + +
  -exportselection  -font
  -insertofftime  -insertontime
  -insertwidth  -justify
  -takefocus  -text
  -textvariable  -xscrollcommand
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -command  -dragenabled
  -dragendcmd  -dragevent
  -draginitcmd  -dragtype
  -dropcmd  -dropenabled
  -dropovercmd  -droptypes
  -editable  -helptext
  -helptype  -helpvar
  -show  -state
  -width
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName invoke +
+
+


+DESCRIPTION
+

+ +The Entry widget extends the default Tk entry. Options have been added to provide +visual effect depending on the state of the Entry, +DynamicHelp options, +and Drag and +Drop. +Entry behaves much like a Label, with text option to set its contents. +
Tk entry command can also be used on Entry widget. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-command
+
+ +Specifies a command when user press <Return> in the Entry. +
+
+
-dragenabled
+
+A boolean specifying if drag is enabled. +
+
+
-dragendcmd
+
+ +Specifies a command to be called when drag ended. +dragendcmd must be a command conforming to the description of the +option dragendcmd of DragSite::register. + +
If dragendcmd is empty, the internal dragend command updates the entry +following the operation (move or copy) and the dragged data +(whole or selected part of the entry). + +
+
+
-dragevent
+
+ +Specifies the number of the mouse button associated to the drag. +Must be 1, 2 or 3. + +
+
+
-draginitcmd
+
+ +Specifies a command to be called when dragevent occurs on widget. +draginitcmd must be a command conforming to the description of the +option draginitcmd of DragSite::register. + +
if draginitcmd is empty, the command refuse the drag if entry is empty or if +portion of text is selected and event doesn't occur above the selection. In all other cases, +the command returns: +
    +
  • as the data type, the value of option dragtype or TEXT if empty, +
  • as the operations, {copy move} if state is normal and editable +is true, or {copy} only in other cases, +
  • as the data, the whole content or the selected portion of the entry. +
+ +
+
+
-dragtype
+
+ +Specifies an alternate type of dragged object. + +
+
+
-dropcmd
+
+ +Entry has a command wrapper for drop events. This command stops auto scrolling +and extract current position. +
If dropcmd is not empty, it is called with the following arguments: +
    +
  • the pathname of the Entry, +
  • the pathname of the drag source, +
  • the numeric index in the entry designated by the cursor, +
  • the current operation, +
  • the data type, +
  • the data. +
+and must return a value conforming to dropcmd option described in +DropSite::register. +If dropcmd is empty, the wrapper updates the entry following the type of data: +
+ + + + + + +
COLOR or FGCOLORreconfigure the foreground of the Entry
BGCOLORreconfigure the background of the Entry
TEXT,
or any other tag
reconfigure the Entry to display the associated string.
+and returns 1. + +
+
+
-dropenabled
+
+A boolean specifying if drop is enabled. +
+
+
-dropovercmd
+
+ +Entry has a command wrapper for drag-over events. This command enables auto scrolling +and position extraction during the drag-over. +
If dropovercmd is empty, the wrapper accepts the drop if editable option is +true and state option is normal. +
If dropovercmd is not empty, it is called with the following arguments: +
    +
  • the pathname of the Entry, +
  • the pathname of the drag source, +
  • the event, +
  • the numeric index in the entry designated by the cursor, +
  • the current operation, +
  • the data type, +
  • the data. +
+and must return a value conforming to dropovercmd option described in +DropSite::register. + +
+
+
-droptypes
+
+ +Specifies a list of accepted dropped object/operation. +See option droptypes of +DropSite::register. +for more infromation. + +Default accepts FGCOLOR, COLOR, BGCOLOR and TEXT, +all with copy and move operations. + +
+
+
-editable
+
+ +Specifies whether the Entry is editable by the user. Equivalent to the state option +of the Tk entry widget. +
+
+
-helptext
+
+ +Text for dynamic help. If empty, no help is available for this widget. +See also DynamicHelp. +
+
+
-helptype
+
+Type of dynamic help. Use balloon or variable. +See also DynamicHelp. +
+
+
-helpvar
+
+Variable to use when helptype option is variable. +See also DynamicHelp. +
+
+
-show
+
+ +If this option is specified, then the true contents of the entry are not displayed in the +window. Instead, each character in the entry's value will be displayed as the first character +in the value of this option, such as ``*''. This is useful, for example, if the entry is to +be used to enter a password. If characters in the entry are selected and copied elsewhere, the +information copied will be what is displayed, not the true contents of the entry. +
+
+
-state
+
+ +Specifies one of two states for the Entry: normal or disabled. +In normal state the text of the Entry is displayed using the foreground option. +In disabled state the text of the Entry is displayed using the disabledforeground +option. If the entry is disabled then the value may not be changed by user input +and no insertion cursor will be displayed, even if the input focus is in the widget. +Disabled state is the same as not editable with visual effect. +
+
+
-width
+
+ +Specifies an integer value indicating the desired width of the entry window, in average-size +characters of the widget's font. If the value is less than or equal to zero, the widget picks +a size just large enough to hold its current text. +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName invoke +
+ +Calls the command specified by the option -command. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Label.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Label.html new file mode 100644 index 00000000..384b3232 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Label.html @@ -0,0 +1,362 @@ + +Label + +
NAME
+
Label + - Label widget with state option, dynamic help and drag and drop facilities +
+
+
CREATION
+
Label pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
Not themed
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -anchor
  -background or -bg
  -bitmap
  -borderwidth or -bd
  -cursor
  -disabledforeground
  -font
  -foreground or -fg
  -highlightbackground
  -highlightcolor
  -highlightthickness
  -image
  -justify
  -padx
  -pady
  -relief
  -takefocus
  -text
  -textvariable
  -wraplength
+
Themed
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
  -anchor
  -background or -bg
  -cursor
  -font
  -foreground or -fg
  -image
  -justify
  -relief
  -takefocus
  -text
  -textvariable
  -wraplength
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -dragenabled
  -dragendcmd
  -dragevent
  -draginitcmd
  -dragtype
  -dropcmd
  -dropenabled
  -dropovercmd
  -droptypes
  -focus
  -height
  -helptext
  -helptype
  -helpvar
  -name
  -state
  -underline
  -width
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName setfocus +
+
+


+DESCRIPTION
+

+ +The Label widget extends the default Tk label. Options have been added to provide +visual effect depending on the state of the Label, DynamicHelp options, and Drag + and Drop. +

+


+WIDGET-SPECIFIC OPTIONS
+
-dragenabled
+
+A boolean specifying if drag is enabled. +
+
+
-dragendcmd
+
+ +Specifies a command to be called when drag ended. +dragendcmd must be a command conforming to the description of the +option dragendcmd of DragSite::register. + +
+
+
-dragevent
+
+ +Specifies the number of the mouse button associated to the drag. +Must be 1, 2 or 3. + +
+
+
-draginitcmd
+
+ +Specifies a command to be called when dragevent occurs on widget. +draginitcmd must be a command conforming to the description of the +option draginitcmd of DragSite::register. + +
If draginitcmd is empty, the internal draginitcmd command is used instead +and returns: +
+
IMAGE {copy} <image name> +if an image is displayed. +
BITMAP {copy} <bitmap name> +if a bitmap is displayed. +
TEXT {copy} <text> +if a text is displayed. +
+Note that if dragtype option is not empty, its value is used instead of those above. + +
+
+
-dragtype
+
+ +Specifies an alternate type of dragged object. + +
+
+
-dropcmd
+
+ +Specifies a command to be called when drop occurs on the widget. +dropcmd must be a command conforming to the description of the +option dropcmd of DropSite::register. + +
If dropcmd is empty, the command updates the label following the type of the data: +
+ + + + + + + + + + +
COLOR or FGCOLORreconfigure the foreground of the Label.
BGCOLORreconfigure the background of the Label.
IMAGEreconfigure the Label to display the associated image.
BITMAPreconfigure the Label to display the associated bitmap. +image option is set to empty.
TEXT,
or any other tag
reconfigure the Label to display the associated string. +image and bitmap options are set to empty.
+and returns 1. + +
+
+
-dropenabled
+
+A boolean specifying if drop is enabled. +
+
+
-dropovercmd
+
+ +Specifies a command to be called when drag icon is over the widget. +dropovercmd must be a command conforming to the description of the +option dropovercmd of DropSite::register. + +
If dropovercmd is empty, Label always accepts the drop if data type is +FGCOLOR, COLOR, BGCOLOR, and accepts all other data type only if +state is normal. + +
+
+
-droptypes
+
+ +Specifies a list of accepted dropped object/operation. +See option droptypes of +DropSite::register. +for more infromation. + +Default accepts FGCOLOR, COLOR, BGCOLOR, TEXT, BITMAP +and IMAGE, all with copy and move operations. + +
+
+
-focus
+
+ +Specifies a pathname to set the focus on for Label::setfocus command. + +
+
+
-height
+
+ +Specifies a desired height for the label. +If an image or bitmap is being displayed in the label then the value is in +screen units, for text it is in lines of text. +If this option isn't specified, the label's desired height is computed +from the size of the image or bitmap or text being displayed in it.
+Option not available for themed widgets. +
+
+
-helptext
+
+ +Text for dynamic help. If empty, no help is available for this widget. +See also DynamicHelp. +
+
+
-helptype
+
+Type of dynamic help. Use balloon or variable. +See also DynamicHelp. +
+
+
-helpvar
+
+Variable to use when helptype option is variable. +See also DynamicHelp. +
+
+
-name
+
+ +Specifies a standard name for the label. If the option *nameName is +found in the resource database, then text and underline options +are extracted from its value. + +
+
+
-state
+
+ +Specifies one of two states for the Label: normal or disabled. +In normal state the text of the Label is displayed using the foreground option. +In disabled state the text of the Label is displayed using the disabledforeground option. +
+
+
-underline
+
+ +Specifies the integer index of a character to underline in the label. +0 corresponds to the first character of the text displayed, 1 to the next character, +and so on. +
The binding <Alt-char> is automatically set on the toplevel +of the Label to call Label::setfocus. + +
+
+
-width
+
+ +Specifies a desired width for the label. +If an image or bitmap is being displayed in the label then the value is in +screen units, for text it is in characters. +If this option isn't specified, the label's desired width is computed +from the size of the image or bitmap or text being displayed in it. + +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName setfocus +
+ +Set the focus on the pathname given by -focus option if -state is normal. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelEntry.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelEntry.html new file mode 100644 index 00000000..c0858c71 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelEntry.html @@ -0,0 +1,194 @@ + +LabelEntry + +
NAME
+
LabelEntry + - +LabelFrame containing an Entry widget. + +
+
+
CREATION
+
LabelEntry pathName ?option value...?
+
+
+
OPTIONS from Entry
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -borderwidth or -bd  -command
  -disabledforeground  -dragenabled
  -dragendcmd  -dragevent
  -draginitcmd  -dragtype
  -dropcmd  -dropenabled
  -dropovercmd  -droptypes
  -editable  -entrybg (see -background)
  -entryfg (see -foreground)  -exportselection
  -font  -helptext
  -helptype  -helpvar
  -highlightbackground  -highlightcolor
  -highlightthickness  -insertbackground
  -insertborderwidth  -insertofftime
  -insertontime  -insertwidth
  -justify  -relief
  -selectbackground  -selectborderwidth
  -selectforeground  -show
  -state  -takefocus
  -text  -textvariable
  -width  -xscrollcommand
+
+
+
OPTIONS from LabelFrame
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -background or -bg  -disabledforeground
  -foreground or -fg  -helptext
  -helptype  -helpvar
  -label (see -text)  -labelanchor (see -anchor)
  -labelfont (see -font)  -labelheight (see -height)
  -labeljustify (see -justify)  -labelwidth (see -width)
  -name  -padx
  -pady  -side
  -state  -underline
  -wraplength
+
+
+
WIDGET COMMAND
+
pathName bind + ?arg...? +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
+


+DESCRIPTION
+

+ +LabelEntry is a widget composed of LabelFrame widget +containing an Entry widget. +Tk entry command can also be used on LabelEntry widget. + +

+

+WIDGET COMMAND
+
pathName bind + ?arg...? +
+ +Set bindings on the entry widget. + +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelFrame.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelFrame.html new file mode 100644 index 00000000..f0fb4243 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/LabelFrame.html @@ -0,0 +1,144 @@ + +LabelFrame + +
NAME
+
LabelFrame + - Frame with a Label +
+
+
CREATION
+
LabelFrame pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + +
  -borderwidth or -bd  -relief
+
+
+
OPTIONS from Label
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -anchor  -background or -bg
  -bitmap  -disabledforeground
  -focus  -font
  -foreground or -fg  -height
  -helptext  -helptype
  -helpvar  -image
  -justify  -name
  -padx  -pady
  -state  -text
  -textvariable  -underline
  -width  -wraplength
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + +
  -side
+
+
+
WIDGET COMMAND
+
LabelFrame::align + ?arg...? +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName getframe +
+
+


+DESCRIPTION
+

+ +LabelFrame enables user to create a frame with a +Label positionned at any side. +LabelFrame is used by ComboBox +and SpinBox. +

+


+WIDGET-SPECIFIC OPTIONS
+
-side (read-only)
+
+ +Specifies where to position the Label relative to the user frame: top, bottom, left or right. +
+
+

+WIDGET COMMAND
+
LabelFrame::align + ?arg...? +
+ +This command align label of all widget given by args of class LabelFrame +(or "derived") by setting their width to the max one +1 + +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName getframe +
+ +Return the frame where the user can create any other widget. +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ListBox.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ListBox.html new file mode 100644 index 00000000..8765d6a4 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ListBox.html @@ -0,0 +1,675 @@ + +ListBox + +
NAME
+
ListBox + - ListBox widget +
+
+
CREATION
+
ListBox pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -cursor  -highlightbackground
  -highlightcolor  -highlightthickness
  -relief  -selectbackground
  -selectforeground  -takefocus
  -xscrollcommand  -yscrollcommand
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -autofocus  -deltax  -deltay
  -dragenabled  -dragendcmd
  -dragevent  -draginitcmd
  -dragtype  -dropcmd
  -dropenabled  -dropovercmd
  -dropovermode  -droptypes
  -height  -multicolumn
  -padx  -redraw
  -selectfill  -selectmode  -width
+
+
+
WIDGET COMMAND
+
pathName bindImage + event + script +
+
pathName bindText + event + script +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName delete + ?arg...? +
+
pathName edit + item + text + ?verifycmd? + ?clickres? + ?select? +
+
pathName exists + item +
+
pathName index + item +
+
pathName insert + index + item + ?option value...? +
+
pathName item + first + ?last? +
+
pathName itemcget + item + option +
+
pathName itemconfigure + item + ?option? ?value option value ...? +
+
pathName items + ?first? + ?last? +
+
pathName move + item + index +
+
pathName reorder + neworder +
+
pathName see + item +
+
pathName selection + cmd + ?arg...? +
+
pathName xview + ?arg...? +
+
pathName yview + ?arg...? +
+
+


+DESCRIPTION
+

+ +ListBox widget uses canvas to display a list of items. +Each item is composed of a label with its own font and foreground attributes, and an optional +image or window. Each item is drawn in a single line, whose height is defined by the +deltay option, so they must have at most this height. +A item is uniquely identified by a string given at creation (by the +insert command). The ListBox can have one or more columns, depending on +multicolumn option. The user do not handle columns; the number of columns +is determined following the height of the ListBox in order to see each item vertically. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-autofocus (read-only)
+
+ If this option is true, the listbox will take focus any time the user + clicks in it. Without focus, the listbox's mouse wheel bindings will + not work properly. The default is true. +
+
+ +
-deltax
+
+ +Specifies horizontal pad between each columns. + +
+
+
-deltay
+
+ +Specifies vertical size of the items. + +
+
+
-dragenabled
+
+A boolean specifying if drag is enabled. +
+
+
-dragendcmd
+
+ +Specifies a command to be called when drag ended. +dragendcmd must be a command conforming to the description of the +option dragendcmd of DragSite::register. + +
+
+
-dragevent
+
+ +Specifies the number of the mouse button associated to the drag. +Must be 1, 2 or 3. + +
+
+
-draginitcmd
+
+ +ListBox has a command wrapper for drag-init events. This command refused the drag +if no item is designated. In other cases: +
If draginitcmd is empty, it returns: +
    +
  • the value of option dragtype or LISTBOX_ITEM if empty as the data type, +
  • {move copy link} as the operations, +
  • the item identifier as the data. +
+If draginitcmd is not empty, it is called with the following arguments: +
    +
  • the pathname of the listbox, +
  • the identifier of the dragged item, +
  • the toplevel created to represent dragged data. +
+and must return a value conforming to draginitcmd option described in +DragSite::register. + +
+
+
-dragtype
+
+ +Specifies an alternate type of dragged object. + +
+
+
-dropcmd
+
+ +ListBox has a command wrapper for drop events. This command stops auto scrolling +and extract item and position. +
If dropcmd is not empty, it is called with the following arguments: +
    +
  • the pathname of the listbox, +
  • the pathname of the drag source, +
  • a list describing where the drop occurs. It can be: +
      +
    • {widget}, +
    • {item item} or +
    • {position index}. +
    +
  • the current operation, +
  • the data type, +
  • the data. +
+ +

+The default drop command allows for drag-and-drop within the listbox but +not to or from other widgets. +

+ +
+
+
-dropenabled
+
+A boolean specifying if drop is enabled. +
+
+
-dropovercmd
+
+ +LsitBox has a command wrapper for drag-over events. This command enables auto scrolling +and position extraction during the drag-over. +If dropovercmd is not empty, the command is called with the following aguments: +
    +
  • the pathname of the listbox, +
  • the pathname of the drag source, +
  • a list describing where the drop can occur, whose elements are: +
      +
    • the string widget if dropovertype option contains w, else empty string. +
    • the targeted item if drag icon points an item and dropovertype option contains +i, else empty string. +
    • an index within two items where drag icon points to if dropovertype option +contains p, else empty string. +
    • optionally, the preferred method if drop can occur both inside an item and between two +items. The value is position or item. +
    +
  • the current operation, +
  • the data type, +
  • the data. +
+The command must return a list with two elements: +
    +
  • the drop status, conforming to those described in dropovercmd option of +DropSite::register, +
  • the choosen method: widget, item or position. +
+ +
+
+
-dropovermode
+
+ +Specifies the type of drop-over interaction. Must be a combination of +w, which specifies that drop can occurs everywhere on widget, +p, which specifies that drop can occurs between two items, +and i, which specifies that drop occurs inside items. + +
+
+
-droptypes
+
+ +Specifies a list of accepted dropped object/operation. +See option droptypes of +DropSite::register. +for more infromation. + +
Default is LISTBOX_ITEM with operations copy and move. + +
+
+
-height
+
+ +Specifies the desired height for the listbox in units of deltay pixels. + +
+
+
-multicolumn
+
+ +Specifies wether or not ListBox layouts items in order to see each one vertically. + +
+
+
-padx
+
+ +Specifies distance between image or window and text of the items. + +
+
+
-redraw
+
+ +Specifies wether or not the listbox should be redrawn when entering idle. +Set it to false if you call update while modifying the listbox. + +
+
+ +
-selectfill (read-only)
+
+ If true, the listbox will draw a selection rectangle that fills the + listbox from left-to-right instead of just drawing a box around the + selected item. This more closely mimics the standard Tk listbox. +
+
+ +
-selectmode
+
+ +Specifies the desired selection-mode for the listbox. Must be one of +none, single or multiple. selectmode single +allows to select 1 item by its text or image. selectmode multiple +allows to select multiple items by their text or image. For more info on +selectmodes single or multiple, see the Tk listbox +command. Default value for selectmode is none. + +
+
+
-width
+
+ +Specifies the desired width for the listbox in units of 8 pixels. + +
+
+

+WIDGET COMMAND
+
pathName bindImage + event + script +
+ +This command associates a command to execute whenever the event +sequence given by event occurs on the image of a item. +The item idenfier on which the event occurs is appended to the command. + +

+Any occurrence of %W in script is substituted with the +path of the listbox. +

+ +
+
pathName bindText + event + script +
+ +This command associates a command to execute whenever the event +sequence given by event occurs on the label of a item. +The item idenfier on which the event occurs is appended to the command. + +

+Any occurrence of %W in script is substituted with the +path of the listbox. +

+ +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName delete + ?arg...? +
+ +Deletes all items in arg. arg can be a list +of items or a list of list of items. +To delete all items, do $pathName delete [$pathName items]. + +
+
pathName edit + item + text + ?verifycmd? + ?clickres? + ?select? +
+ +Provides a way for the user to edit in place the label of an item. +
The command takes the initial text as argument and does not modify the label of the +edited node, but returns an empty string if edition is canceled, or the typed text +if edition is accepted. +
When editing, the user can cancel by pressing Escape, or accept by pressing Return. +
clickres specifies what to do if the user click outside the editable area. +If clickres is 0 (the default), the edition is canceled. +If clickres is 1, the edition is accepted. +In all other case, the edition continues. +
If edition is accepted and modifycmd is not empty, then it is called with +the new text as argument and must return 1 to accept the new text, 0 to refuse it +and continue edition. +
select specifies wether or not the initial text should be selected. Default is 1. + +
+
pathName exists + item +
+ +Returns 1 if item exists in the listbox, else 0. + +
+
pathName index + item +
+ +Returns the position of item in the list. + +
+
pathName insert + index + item + ?option value...? +
+ +

+Inserts a new item identified by item in the list at position index. +

+ +

+Any instance of #auto within the item name will be replaced by the +number of the item in the order of insertion. +

+ +

+

-data
+
+ +User data associated to the item. + +
+
+
-fill
+
+ +Specifies the foreground color of the label of the item. + +
+
+
-font
+
+ +Specifies a font for the label of the item. + +
+
+
-image
+
+ +Specifies an image to display at the left of the label of the item. +window option override image. +
+
+
-indent
+
+ +Specifies the amount of extra space in pixels at the left of the item. + +
+
+
-text
+
+ +Specifies the label of the item. + +
+
+
-window
+
+ +Specifies a pathname to display at the left of the label of the item. +window option override image. +
+
+
+
pathName item + first + ?last? +
+ +Its use is deprecated. Use items instead.
+If last is omitted, returns the item at index first in the list, +or an empty string if first refers to a non-existent element. +If last is specified, the command returns a list whose elements are all +of the items between first and last, inclusive. +Both first and last may have any of the standard forms for indices. + +
+
pathName itemcget + item + option +
+ +Returns the current value of a configuration option for the item. +Option may have any of the values accepted by the item creation command. + +
+
pathName itemconfigure + item + ?option? ?value option value ...? +
+ +This command is similar to the configure command, except that it applies to the +options for an individual item, whereas configure applies to the options for +the widget as a whole. Options may have any of the values accepted by the +item creation widget command. If options are specified, options are modified as indicated +in the command and the command returns an empty string. If no options are specified, +returns a list describing the current options for the item. +Read-only options are not be modified. + +
+
pathName items + ?first? + ?last? +
+ +If first and last are omitted, returns the list of all items. +If first is specified and last omitted, returns the item at index +first, or an empty string if first refers to a non-existent element. +If first and last are specified, the command returns a list whose elements +are all of the items between first and last, +inclusive. Both first and last may have any of the standard +forms for indices. + +
+
pathName move + item + index +
+ +Moves item at position index in the list. + +
+
pathName reorder + neworder +
+ +Modifies the order of items in the listbox given by neworder. Items that do not +appear in neworder are no moved. + +
+
pathName see + item +
+ +Arrange the scrolling area to make item visible. + +
+
pathName selection + cmd + ?arg...? +
+ +Modifies the list of selected items following cmd: +
+
clear +
remove all items of the selection. +
set +
set the selection to all items in arg +
add +
add all items of arg in the selection +
remove +
remove all items of arg of the selection +
get +
return the current selected items +
+ +
+
pathName xview + ?arg...? +
+ +Standard command to enable horizontal scrolling of pathName. + +
+
pathName yview + ?arg...? +
+ +Standard command to enable vertical scrolling of pathName. + +
+ + +BINDINGS + +

+A <<ListboxSelect>> virtual event is generated any time the +selection in the listbox changes. +

+ +

+The listbox has all the standard mouse wheel bindings when it has focus. +

+

+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/MainFrame.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/MainFrame.html new file mode 100644 index 00000000..96813a5d --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/MainFrame.html @@ -0,0 +1,323 @@ + +MainFrame + +
NAME
+
MainFrame + - Manage toplevel with menu, toolbar and statusbar +
+
+
CREATION
+
MainFrame pathName ?option value...?
+
+
+
OPTIONS from ProgressBar
+
+ + + + + + + + + + + +
  -background or -bg  -progressfg (see -foreground)
  -progressmax (see -maximum)  -progresstype (see -type)
  -progressvar (see -variable)
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + + + + +
  -height
  -menu
  -menubarfont
  -menuentryfont
  -separator
  -statusbarfont
  -textvariable
  -width
  -sizegrip
+
+
+
WIDGET COMMAND
+
pathName addindicator + ?arg...? +
+
pathName addtoolbar +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName getframe +
+
pathName getindicator + index +
+
pathName getmenu + menuid +
+
pathName gettoolbar + index +
+
pathName setmenustate + tag + state +
+
pathName showstatusbar + name +
+
pathName showtoolbar + index + bool +
+
+


+DESCRIPTION
+

+ +MainFrame manage toplevel to have:
+

+

+


+WIDGET-SPECIFIC OPTIONS
+
-height
+
+ +Specifies the desired height for the user frame in any of the forms acceptable to +Tk_GetPixels. If this option is less than or equal to zero (the default) then the window +will not request any size at all. +
+
+
-menu (read-only)
+
+ +This option describes the menu. This is a list whose each five elements describe +one cascade menu. It has the following form: +{menuname tags menuId tearoff menuentries...} +where menuentries is a list where each element describe one menu entry, which can be: +
    +
  • for a separator:
    + {separator}
  • +
  • for a command:
    + {command menuname ?tags? ?description? ?accelerator? ?option value? ...}
  • +
  • for a check button:
    + {checkbutton menuname ?tags? ?description? ?accelerator? ?option value? ...}
  • +
  • for a radio button:
    + {radiobutton menuname ?tags? ?description? ?accelerator ?option value? ...}
  • +
  • for a cascade menu:
    + {cascade menuname tags menuId tearoff menuentries}
  • +
+where: +
    +
  • menuname is the name of the menu. If it contains a &, the following character +is automatically converted to the corresponding -underline option of menu add +command.
  • +
  • tags is the tags list for the entry, used for enabling or disabling menu +entries with MainFrame::setmenustate.
  • +
  • menuId is an id for the menu, from which you can get menu pathname with + MainFrame::getmenu.
  • +
  • tearoff specifies if menu has tearoff entry.
  • +
  • description specifies a string for DynamicHelp.
  • +
  • accelerator specifies a key sequence. It is a list of two elements, where the first +is one of Shift, Ctrl, Alt, CtrlAlt, Cmd, or ShiftCmd, and the second as letter +(see -casesensitive option for interpretation), digit or +a special key name. +An accelerator string is build and corresponding binding set on the toplevel to invoke the +menu entry.
  • +
  • option value specifies additionnal options for the entry (see menu add +command).
  • +
+Each value enclosed by ? are optional and defaulted to empty string, but must be +provided if one or more following options is not empty. +
Example: +
+set descmenu {
+    "&File" {} {} 0 {
+        {command "&New"     {} "Create a new document"     {Ctrl n} -command Menu::new}
+        {command "&Open..." {} "Open an existing document" {Ctrl o} -command Menu::open}
+        {command "&Save"    open "Save the document" {Ctrl s} -command Menu::save}
+        {cascade  "&Export"  {} export 0 {
+            {command "Format &1" open "Export document to format 1" {} -command {Menu::export 1}}
+            {command "Format &2" open "Export document to format 2" {} -command {Menu::export 2}}
+        }}
+        {separator}
+        {cascade "&Recent files" {} recent 0 {}}
+        {separator}
+        {command "E&xit" {} "Exit the application" {} -command Menu::exit}
+    }
+    "&Options" {} {} 0 {
+        {checkbutton "Toolbar" {} "Show/hide toolbar" {}
+            -variable Menu::_drawtoolbar
+            -command  {$Menu::_mainframe showtoolbar toolbar $Menu::_drawtoolbar}
+        }
+    }
+}
+
+ +
+
+
-menubarfont
+
+Font for the top menu bar. +
+
-menuentryfont
+
+Font for the submenus. +
+
-separator (read-only)
+
+ +Specifies if separator should be drawn at the top and/or at the bottom of the user window. +Must be one of the values none, top, bottom or both. +It depends on the relief of subwidgets of user window. +
+
+
-textvariable
+
+ +Specifies the textvariable option for the label of the status bar. +DynamicHelp description +of menu entries are mapped to this variable at the creation of the MainFrame. +If this variable is changed by MainFrame::configure, menu description will +not be available. +
You change the text of the label by modifying the value of the variable. +
+
+
-statusbarfont
+
+Font for the status bar. +
+
-width
+
+ +Specifies the desired width for the user frame in any of the forms acceptable to +Tk_GetPixels. If this option is less than or equal to zero (the default) then the window +will not request any size at all. +
+
+
-sizegrip (themed, read-only)
+
+ +If bool argument is true and themed mode, show a ttk sizegrip widget in the lower-right corner. +
+

+WIDGET COMMAND
+
pathName addindicator + ?arg...? +
+ +Add an indicator box at the right of the status bar. Each indicator are added from left +to right. An indicator is a Tk label widget configured with option-value pair +given by ?arg...?. -relief and -borderwidth options are respetively +defaulted to sunken and 1. Returns the pathname of the created label. +
+
pathName addtoolbar +
+ +Add a toolbar to the MainFrame. Returns the pathname of the new window where to place +toolbar items. +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName getframe +
+ +Returns the pathname of the user window. +
+
pathName getindicator + index +
+ +Returns the pathname of the indexth added indicator. +
+
pathName getmenu + menuid +
+ +Returns the pathname of the menu whose id is menuid. +
+
pathName getmenustate + tag + state +
+ +Returns the state of the given menu tag. +
+
pathName gettoolbar + index +
+ +Returns the pathname of the indexth added toolbar. +
+
pathName setmenustate + tag + state +
+ +Set the -state option value of all the menu entries that have the tag tag +to state. +A menu entry is disabled, if one of its associated tags have state disabled. + +
+
pathName showstatusbar + name +
+ +name is one of none, status or progression. +Use none to hide the status bar, status to display the label only, or +progression to display the label and the +ProgressBar. +
+
pathName showtoolbar + index + bool +
+ +Hide if bool is 0, or show if bool is 1 the indexth added toolbar. +To prevent your toplevel from resizing while hiding/showing toolbar, +do [wm geometry $top [wm geometry $top]] when it is managed. +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/MessageDlg.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/MessageDlg.html new file mode 100644 index 00000000..f64ee38a --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/MessageDlg.html @@ -0,0 +1,221 @@ + +MessageDlg + +
NAME
+
MessageDlg + - Message dialog box +
+
+
CREATION
+
MessageDlg pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + + + + + +
  -anchor  -font
  -foreground or -fg  -padx
  -pady
+
+
+
OPTIONS from Dialog
+
+ + + + + + + + +
  -background or -bg  -cancel
  -default  -parent
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + + + + +
  -aspect  -buttons
  -buttonwidth  -icon
  -justify  -message
  -title  -type
  -width
+
+


+DESCRIPTION
+

+ +MessageDlg provides a simple way to display a message dialog. +MessageDlg::create creates the message dialog, displays +it and return the index of the pressed button, or -1 if it is destroyed. +When returning, the dialog no longer exists. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-aspect
+
+ +Specifies a non-negative integer value indicating desired +aspect ratio for the text. The aspect ratio is specified as +100*width/height. 100 means the text should +be as wide as it is tall, 200 means the text should +be twice as wide as it is tall, 50 means the text should +be twice as tall as it is wide, and so on. +Used to choose line length for text if width option +isn't specified. +Defaults to 150. + +The options -width and -aspect are directly heritated from the Tk message widget. +
+
+
-buttons
+
+ +Specifies a list of buttons to display when type option is user. +If a button has a symbolic name, its associated text will be displayed. + +
+
+ +
-buttonwidth
+
+ Specifies the standard width of the buttons in the dialog. +
+
+ +
-icon
+
+ +Specifies an icon to display. Must be one of the following: error, info, +question or warning. + +
+
+
-justify
+
+ +Specifies how to justify lines of text. +Must be one of left, center, or right. Defaults +to left. +This option works together with the anchor, aspect, +padx, pady, and width options to provide a variety +of arrangements of the text within the window. +The aspect and width options determine the amount of +screen space needed to display the text. +The anchor, padx, and pady options determine where this +rectangular area is displayed within the widget's window, and the +justify option determines how each line is displayed within that +rectangular region. +For example, suppose anchor is e and justify is +left, and that the message window is much larger than needed +for the text. +The the text will displayed so that the left edges of all the lines +line up and the right edge of the longest line is padx from +the right side of the window; the entire text block will be centered +in the vertical span of the window. + +
+
+
-message
+
+ +Specifies the message to display in this message box. + +
+
+
-title
+
+ +Specifies a string to display as the title of the message box. +If the value is empty (the default), a default title will be set corresponding +to the icon option. +The default associated title is in english, and can be modified to set it in +another language by specifying the resource: +
    *MessageDlg.nameTitle:   value
+or the equivalent tcl command: +
    option add *MessageDlg.nameTitle value
+where name is the name of an icon as defined in the icon option. +
For example, for french language, you can specify for a warning dialog: +
    option add *MessageDlg.warningTitle  "Attention"
+ +
+
+
-type
+
+ +Specifies a set of buttons to be displayed. The following values are possible: +
+

+

+
+abortretryignore +
+Displays three buttons whose symbolic names are abort, +retry and ignore.

+

+ok +
+Displays one button whose symbolic name is ok.

+

+okcancel +
+Displays two buttons whose symbolic names are ok and cancel.

+

+retrycancel +
+Displays two buttons whose symbolic names are retry and cancel.

+

+yesno +
+Displays two buttons whose symbolic names are yes and no.

+

+yesnocancel +
+Displays three buttons whose symbolic names are yes, no +and cancel. +

+

+user +
+Displays buttons of -buttons option.

+

+ +

+For any -type but user, the native Tk widget tk_messageBox is used. +In this case, only the following options are considered: -default, -icon, -message, -title and -type. +

+
+
-width
+
+ +Specifies the length of lines in the window. +If this option has a value greater than zero then the aspect +option is ignored and the width option determines the line +length. +If this option has a value less than or equal to zero, then +the aspect option determines the line length. + +
+
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/NoteBook.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/NoteBook.html new file mode 100644 index 00000000..146d95af --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/NoteBook.html @@ -0,0 +1,483 @@ + +NoteBook + +
NAME
+
NoteBook + - Notebook manager widget +
+
+
CREATION
+
NoteBook pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + +
  -font
+
+
+
OPTIONS from ArrowButton
+
+ + + + + + + + + + + + + + + + +
  -activebackground  -activeforeground
  -background or -bg  -borderwidth or -bd
  -disabledforeground  -foreground or -fg
  -repeatdelay  -repeatinterval
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + +
  -arcradius  -height
  -homogeneous  -internalborderwidth or -ibd
  -side  -tabbevelsize
  -tabpady  -width
+
+
+
WIDGET COMMAND
+
pathName bindtabs + event + script +
+
pathName cget + option +
+
pathName compute_size +
+
pathName configure + ?option? ?value option value ...? +
+
pathName delete + page + ?destroyframe? +
+
pathName getframe + page +
+
pathName index + page +
+
pathName insert + index + page + ?option value...? +
+
pathName itemcget + page + option +
+
pathName itemconfigure + page + ?option? ?value option value ...? +
+
pathName move + page + index +
+
pathName page + first + ?last? +
+
pathName pages + ?first? + ?last? +
+
pathName raise + ?page? +
+
pathName see + page +
+
+


+DESCRIPTION
+

+ +The NoteBook widget manages a set of pages and displays one of them. A page +is a frame or ttk::frame that is included in the NoteBook by its +insert command. Each page is associated with a tab; +the tabs are displayed in a band either above or below the pages, depending on +the value of the option -side. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-arcradius
+
+ +Specifies the amount of rounding effect at the corners of a tab. This value +can be adjusted from 0 to 8 pixels with the default being 2 pixels. Usually, +small values are preferable. +
+
+
-height
+
+ +Specifies the desired height for the pages. If this option is equal to zero (the default) +then the window will not request any size at all. +In this case, user may want to call NoteBook::compute_size to make NoteBook larger +enough to contains the largest page. +
+
+
-homogeneous
+
+ +Specifies whether or not the label of the pages must have the same width. + +
+
+ +
-internalborderwidth or -ibd
+
+ +Value that is applied to each page in the NoteBook as its -borderwidth or -bd. + +
+
+ + +
-side
+
+ +Specifies the side where to place the label of the pages. Must be one +of top or bottom. + +
+
+
-tabbevelsize
+
+ +Specifies the amount of bevel the tabs should have. This value can be adjusted from +0 to 8 pixels with the default being 0 pixels. A zero pixel bevel is essentially rectangular +while non-zero bevel size will look trapezoidal. +
+
+ +
-tabpady
+
+ Specifies the padding between the text in the tab and the top and bottom + of the tab. Padding may be a list of two values to specify padding for + top and bottom separately. Padding defaults to {0 6}. +
+
+ +
-width
+
+ +Specifies the desired width for the pages. If this option is equal to zero (the default) +then the window will not request any size at all. +In this case, user may want to call NoteBook::compute_size to make NoteBook larger +enough to contains the largest page. +
+
+

+WIDGET COMMAND
+
pathName bindtabs + event + script +
+ +This command associates a command to execute whenever the event +sequence given by event occurs on a tab. The page identifier on which +the event occurs is appended to the command. + +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName compute_size +
+ +This command can be called to make the NoteBook large enough to contain the largest page. +Note that if all pages use -createcmd, they will have no requested size. + +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName delete + page + ?destroyframe? +
+ +Deletes the page page. If destroyframe is 1 (the default), the frame +associated to page is destroyed. If destroyframe is 0, the frame is not +destroyed and is reused by further call to insert with the same page. + +
+
pathName getframe + page +
+ +Returns the pathname of the page page. + +
+
pathName index + page +
+ +Return the numerical index corresponding to the item. + +
+
pathName insert + index + page + ?option value...? +
+ +Insert a new page identified by page at position index in the pages list. +index must be numeric or end. The pathname of the new page is returned. +Dynamic help, if it is specified by the options, is +displayed when the pointer hovers over the tab that belongs to the page. + +

+

-activebackground
+
+ +Background color for the tab when it is active. + +
+
+
-activeforeground
+
+ +Color used for the tab's text when the tab is active. + +
+
+
-background
+
+ +Background color for the tab when it is not active. + +
+
+
-createcmd
+
+ +Specifies a command to be called the first time the page is raised. + +
+
+
-disabledforeground
+
+ +Color used for the tab's text when the tab is disabled. + +
+
+ +
-foreground
+
+ +Color used for the tab's text when the tab is neither active nor disabled. + +
+
+
-helpcmd
+
+ +Has no effect. +See also DynamicHelp. + +
+
+
-helptext
+
+ +Text for dynamic help. If empty, no help is available for this page. +See also DynamicHelp. + +
+
+
-helptype
+
+ +Type of dynamic help. Use balloon (the default for a NoteBook +page) or variable. +See also DynamicHelp. + +
+
+
-helpvar
+
+ +Variable to use when -helptype option is variable. +See also DynamicHelp. + +
+
+
-image
+
+ +Specifies an image to display for the page at the left of the label + +
+
+
-leavecmd
+
+ +Specifies a command to be called when a page is about to be leaved. +The command must return 0 if the page can not be leaved, or 1 if it can. + +
+
+
-ractiveimage
+
+ +Image to show on the right of the tab when the tab is active. + +
+
+
-raisecmd
+
+ +Specifies a command to be called each time the page is raised. + +
+
+
-rimage
+
+ +Image to show on the right of the tab when the tab is not active. + +
+
+
-rimagecmd
+
+ +Specifies a command to be evaluated, with two arguments appended, when the +image shown on the right of the tab is clicked. The first appended argument +is the Tk window path of the NoteBook, the second is the name of the page. + +
+
+
-state
+
+ +Specifies the state of the page. Must be normal or disabled. + +
+
+
-text
+
+ +Specifies a label to display for the page. + +
+
+
+
pathName itemcget + page + option +
+ +Returns the current value of a configuration option for the item. +Option may have any of the values accepted by the item creation command. + +
+
pathName itemconfigure + page + ?option? ?value option value ...? +
+ +This command is similar to the configure command, except that it applies to the +options for an individual item, whereas configure applies to the options for +the widget as a whole. Options may have any of the values accepted by the +item creation widget command. If options are specified, options are modified as indicated +in the command and the command returns an empty string. If no options are specified, +returns a list describing the current options for the item. +Read-only options are not be modified. + +
+
pathName move + page + index +
+ +Moves page tab to index index. + +
+
pathName page + first + ?last? +
+ +Its use is deprecated. Use pages instead.
+If last is omitted, returns the page at index first, or an empty string if +first refers to a non-existent element. If last is specified, the command +returns a list whose elements are all of the pages between first and last, +inclusive. Both first and last may have any of the standard +forms for indices. + +
+
pathName pages + ?first? + ?last? +
+ +If first and last are omitted, returns the list of all pages. +If first is specified and last omitted, returns the page at index +first, or an empty string if first refers to a non-existent element. +If first and last are specified, the command returns a list whose elements +are all of the pages between first and last, +inclusive. Both first and last may have any of the standard +forms for indices. + +
+
pathName raise + ?page? +
+ +Raise the page page, or return the raised page if page is omitted. + +
+
pathName see + page +
+ +Scrolls labels to make the label of the page page visible. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/PagesManager.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PagesManager.html new file mode 100644 index 00000000..e5edf615 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PagesManager.html @@ -0,0 +1,180 @@ + +PagesManager + +
NAME
+
PagesManager + - Pages manager widget +
+
+
CREATION
+
PagesManager pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + +
  -background
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + +
  -height
  -width
+
+
+
WIDGET COMMAND
+
pathName add + page +
+
pathName cget + option +
+
pathName compute_size +
+
pathName configure + ?option? ?value option value ...? +
+
pathName delete + page +
+
pathName getframe + page +
+
pathName page + first + ?last? +
+
pathName pages + ?first? + ?last? +
+
pathName raise + ?page? +
+
+


+DESCRIPTION
+

+ +PagesManager widget manages a set of pages and displays one of them. +PagesManager does not provide any user access method, as NoteBook +does, so it can be done through a listbox, a menu, radiobutton, or +whatever. The widget shows no pages during creation; there must be an +explicit call to raise to display one. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-height
+
+ +Specifies the desired height for the pages. If this option is equal to zero (the default) +then the window will not request any size at all. +In this case, user may want to call PagesManager::compute_size to make PagesManager +larger enough to contains the largest page. +
+
+
-width
+
+ +Specifies the desired width for the pages. If this option is equal to zero (the default) +then the window will not request any size at all. +In this case, user may want to call PagesManager::compute_size to make PagesManager +larger enough to contains the largest page. +
+
+

+WIDGET COMMAND
+
pathName add + page +
+ +Add a new page identified by page, which is an arbitrary +identifier. The pathname of the new page is returned and widgets for +the page should be created with this as the parent or ancestor. +However, PagesManager manages its own geometry. pack, +grid or an equivalent should not be used with the pathname +returned by add. + +
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName compute_size +
+ +This command can be called to make the PagesManager large enough to contain the largest page. + +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName delete + page +
+ +Deletes the page page. + +
+
pathName getframe + page +
+ +Returns the pathname of the page page. + +
+
pathName page + first + ?last? +
+ +Its use is deprecated. Use pages instead.
+If last is omitted, returns the page at index first, or an empty string if +first refers to a non-existent element. If last is specified, the command +returns a list whose elements are all of the pages between first and last, +inclusive. Both first and last may have any of the standard +forms for indices. + +
+
pathName pages + ?first? + ?last? +
+ +If first and last are omitted, returns the list of all pages. +If first is specified and last omitted, returns the page at index +first, or an empty string if first refers to a non-existent element. +If first and last are specified, the command returns a list whose elements +are all of the pages between first and last, +inclusive. Both first and last may have any of the standard +forms for indices. + +
+
pathName raise + ?page? +
+ +Raise the page page, or return the raised page if page is omitted. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/PanedWindow.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PanedWindow.html new file mode 100644 index 00000000..c74c818f --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PanedWindow.html @@ -0,0 +1,158 @@ + +PanedWindow + +
NAME
+
PanedWindow + - Tiled layout manager widget +
+
+
CREATION
+
PanedWindow pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + +
  -background or -bg
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + +
  -activator  -pad
  -side  -weights
  -width
+
+
+
WIDGET COMMAND
+
pathName add + ?option value...? +
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName getframe + index +
+
+


+DESCRIPTION
+

+ +PanedWindow is a widget that lays out children in +a vertically or horizontally tiled format. +The user can adjust the size of the panes, with a pane control sash created +between children. +

+


+WIDGET-SPECIFIC OPTIONS
+
-activator (read-only)
+
+ +By default, the control sash is either a button or a line depending +upon the underlying operating system. This sash may be explicitly set +using this option. If set to line then the sash consists of +just a dividing line. Otherwise if set to button then it +constists of a knob that can be dragged. + +
+
+
-pad (read-only)
+
+ +Specifies additional space between the button of the sash and children. + +
+
+
-side (read-only)
+
+ +Specifies the side of the sash, which implies the layout: top or bottom +(horizontal layout), left or right (vertical layout). +
+
+
-weights (read-only)
+
+ +Specifies how the weights specified when adding panes should be used. Must be +extra or available. When using extra, only extra space is +devided among the diffferent panes relative to their weight. When using +available, all space is devided among the diffferent panes relative to +their weight. Default value for weights is extra. + +
+
+
-width (read-only)
+
+ +Specifies the width of the button of the sash. This option is ignored +if the activator is set to line. + +
+
+

+WIDGET COMMAND
+
pathName add + ?option value...? +
+ +This command add a new pane. The new pane is placed below the previous pane for +vertical layout or at right for horizontal layout. This command returns a frame +where user can place its widget. Valid options are: +

+

-minsize
+
+ +Specifies the minimum size requested for the pane. +See the grid command for more information. +
+
+
-weight
+
+ +Specifies the relative weight for apportioning any extra spaces among panes. +See the grid command for more information. +
+
+
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName getframe + index +
+ +Returns the pathname of the indexth added pane. +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/PanelFrame.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PanelFrame.html new file mode 100644 index 00000000..2d5ccdfc --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PanelFrame.html @@ -0,0 +1,153 @@ + +PanelFrame + +
NAME
+
PanelFrame + - Frame with a boxed title area +
+
+
CREATION
+
PanelFrame pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -text
  -textvariable
  -font  -relief
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + +
  -height
  -width
  -panelbackground  -panelforeground
  -ipad
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
+


+DESCRIPTION
+ +

+PanelFrame creates a frame area with a boxed title area. The boxed title +area contains a label ands allows for other items to be placed in it. This +can serve like a mini-toolbar. +

+ +


+WIDGET-SPECIFIC OPTIONS
+
-height
+
+Specifies the desired height for the widget. +
+
-ipad
+
+The spacing to place around individual panel area items. +
+
-panelbackground
+
+The color for the panel area background. +Defaults to the selection highlight background color. +
+
-panelforeground
+
+The color for the title text. +Defaults to the selection highlight foreground color. +
+
-width
+
+Specifies the desired width for the widget. +
+
+ +

+WIDGET COMMAND
+
pathName add widget + ?option value option value ...? +
+Add a widget to the panel. Widgets are packed in. +Possible options are: +
+
-side
+
Side to place item on (defaults to right).
+
-fill
+
Whether to fill space (defaults to none).
+
-expand
+
Whether to expand space (defaults to 0).
+
-pad
+
Override of the widget's -ipad option for this item.
+
+
+
+
pathName cget + option +
+Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no +option is specified, returns a list describing all of the available +options for pathName. If option is specified with no +value, then the command returns a list describing the one named +option (this list will be identical to the corresponding sublist of +the value returned if no option is specified). If one or more +option-value pairs are specified, then the command modifies the +given widget option(s) to have the given value(s); in this case the command +returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. +
+
+
pathName delete +widget ?widget ...? +
+Delete a widget and associated state from the panel.
+
+
pathName getframe +
+Get the frame widget for the status bar in which status bar items should be +created.
+
+
+
pathName items +
List of items in the status bar.
+
+
pathName remove +widget ?widget ...? +
+Remove a widget item and associated state from the panel without destroying +the item.
+
+ + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/PasswdDlg.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PasswdDlg.html new file mode 100644 index 00000000..3511c8e6 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/PasswdDlg.html @@ -0,0 +1,214 @@ + +PasswdDlg + +
NAME
+
PasswdDlg + - Login/Password dialog box +
+
+
CREATION
+
PasswdDlg pathName ?option value...?
+
+
+
OPTIONS from Dialog
+
+ + + + + + + + + + + + + + + + + + +
  -anchor  -background or -bg
  -homogeneous  -modal
  -padx  -pady
  -parent  -spacing
  -title
+
+
+
OPTIONS from LabelEntry
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -disabledforeground  -entrybg
  -entryfg  -exportselection
  -font  -foreground or -fg
  -helptype  -highlightbackground
  -highlightcolor  -highlightthickness
  -insertbackground  -insertborderwidth
  -insertofftime  -insertontime
  -insertwidth  -labelanchor
  -labelfont  -labelheight
  -labeljustify  -labelwidth
  -loginhelptext (see -helptext)  -loginhelpvar (see -helpvar)
  -loginlabel (see -label)  -logintext (see -text)
  -logintextvariable (see -textvariable)  -loginunderline (see -underline)
  -passwdeditable (see -editable)  -passwdhelptext (see -helptext)
  -passwdhelpvar (see -helpvar)  -passwdlabel (see -label)
  -passwdstate (see -state)  -passwdtext (see -text)
  -passwdtextvariable (see -textvariable)  -passwdunderline (see -underline)
  -relief  -selectbackground
  -selectborderwidth  -selectforeground
  -wraplength
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + +
  -command
  -type
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
+


+DESCRIPTION
+

+ +PasswdDlg provides a simple way to display a login/password dialog. +PasswdDlg::create creates the dialog, displays it, and return the value of login +and password in a list, or an empty list if it is destroyed or user press cancel. +When returning, the dialog no longer exists. +
Additionnal resources can be set to modify other text: +

+    *loginName     Label for login LabelEntry
+    *passwordName  Label for password LabelEntry
+
+ +

+


+WIDGET-SPECIFIC OPTIONS
+
-command
+
+ +Specifies a command to call when user press ok button. + +
+
+
-type
+
+ +Specifies a set of buttons to be displayed. The following values are possible: +
+

+

+
+ok +
+Displays one button whose symbolic name is ok.

+

+okcancel +
+Displays two buttons whose symbolic names are ok and cancel.

+

+ +
+
+ + +
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
+ +Stephane Lavirotte (Stephane.Lavirotte@sophia.inria.fr) + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressBar.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressBar.html new file mode 100644 index 00000000..649ebac9 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressBar.html @@ -0,0 +1,152 @@ + +ProgressBar + +
NAME
+
ProgressBar + - Progress indicator widget +
+
+
CREATION
+
ProgressBar pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -foreground or -fg  -orient
  -relief
  -troughcolor
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + +
  -height
  -maximum
  -type
  -variable
  -width
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
+


+DESCRIPTION
+

+ +ProgressBar widget indicates the user the progress of a lengthly operation. +It is used by MainFrame +and ProgressDlg. +

+


+WIDGET-SPECIFIC OPTIONS
+
-height
+
+ +Specifies the desired height for the progress indicator. +
+
+
-maximum
+
+ +Specifies the maximum value of the variable. This value must be +greater than zero. + +
+
+
-type
+
+ +Specifies the type of the ProgressBar. Must be one of normal, +incremental, infinite or nonincremental_infinite. + +

If type is normal, the progress indicator is drawn +proportional to the variable value and maximum option each time the +variable is set. + +

If type is incremental, the value of the progress +indicator is maintained internally, and incremented each time the variable is +set by its value. The progress indicator is drawn proportional to the internal +value and +maximum option. + +

If type is infinite, the value of the progress indicator +is maintained internally, and incremented each time the variable is set by its +value. The progress indicator moves from left to right if internal value +(modulo maximum) is less than maximum/2, and from right to left +if internal value is greater than maximum/2. + +

If type is nonincremental_infinite, the value of the +progress indicator taken from the variable value, The progress indicator moves +from left to right if variable value (modulo maximum) is less than +maximum/2, and from right to left if internal value is greater than +maximum/2. + +

See -variable option for special case of its value, + +

Default value for type is normal. + +
+
+
-variable
+
+ +Specifies the variable attached to the progress indicator. Progress indicator +is updated when the value of the variable changes. If the value of the +variable is negative, the progress indicator is not displayed (it is drawn flat +with background color - usefull for ProgressDlg to make it +invisible). If its value 0, progress indicator is reinitialized. + +
+
+
-width
+
+ +Specifies the desired width for the progress indicator. +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressDlg.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressDlg.html new file mode 100644 index 00000000..77cca981 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ProgressDlg.html @@ -0,0 +1,145 @@ + +ProgressDlg + +
NAME
+
ProgressDlg + - Progress indicator dialog box +
+
+
CREATION
+
ProgressDlg pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + +
  -font
  -textvariable
+
+
+
OPTIONS from Dialog
+
+ + + + + + + + +
  -background or -bg  -parent
  -separator  -title
+
+
+
OPTIONS from ProgressBar
+
+ + + + + + + + + + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -foreground or -fg  -maximum
  -relief  -troughcolor
  -type  -variable
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + +
  -command
  -height
  -stop
  -width
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
+


+DESCRIPTION
+

+ +ProgressDlg provides a simple way to display a progress indicator dialog. +ProgressDlg::create creates the dialog, displays it, set a local +grab to it and immediatly return. The dialog is updated by modifying the +value of the variable of options -textvariable and -variable. +You have to destroy the dialog after use. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-command
+
+ +Specifies a command to call when user press stop button. Note that it +is the program's responsibility to periodically call update so +that button press events can be generated. + +
+
+
-height
+
+ +Specifies a desired height for the label in lines of text. + +
+
+
-stop
+
+ +Specifies the text of the button typically used to stop process. If empty, no button will +be drawn. This can be a symbolic name. + +
+
+
-width
+
+ +Specifies a desired width for the label in characters. + +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollView.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollView.html new file mode 100644 index 00000000..c94fc1e8 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollView.html @@ -0,0 +1,130 @@ + +ScrollView + +
NAME
+
ScrollView + - Display the visible area of a scrolled window +
+
+
CREATION
+
ScrollView pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + + + +
  -background or -bg  -borderwidth or -bd
  -cursor
  -relief
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + +
  -fill
  -foreground or -fg
  -height
  -width
  -window
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
+


+DESCRIPTION
+

+ +ScrollView displays the visible area of a scrolled window within +its scroll region. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-fill
+
+ +Specifies the fill color of the rectangle. + +
+
+
-foreground
+
+ +Specifies the color of the border of the rectangle. + +
+
+
-height
+
+ +Specifies the desired height for the ScrollView. +
+
+
-width
+
+ +Specifies the desired width for the ScrollView. +
+
+
-window
+
+ +Specifies the window to view. This widget must have -xscrollcommand and +-yscrollcommand options, and respond to xview and yview command. +In order to make ScrollView working with other scrollbar, -xscrollcommand and +-yscrollcommand options of the widget must be set before the widget is passed to +the -window option of the ScrollView (for example, if the widget is handled by +a ScrolledWindow, call setwidget before setting -window option). + +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+

BINDINGS

+ +
If mouse button 1 is pressed and dragged over the ScrollView, the top left corner of +the visible area of the scrolled window is moved proportionally to the mouse displacement. +
+
If mouse button 3 is pressed over the ScrollView, the top left corner of the visible +area is proportionally set to this point. +
+ + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollableFrame.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollableFrame.html new file mode 100644 index 00000000..f497183a --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrollableFrame.html @@ -0,0 +1,194 @@ + +ScrollableFrame + +
NAME
+
ScrollableFrame + - Scrollable frame containing widget +
+
+
CREATION
+
ScrollableFrame pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
+ + + + + + +
  -background or -bg  -xscrollcommand
  -yscrollcommand
+
+Themed widget (Widget::theme true): Options -background and -bg are not available. +Modify style TFrame property -background instead. +
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + + + + + + + + + +
  -areaheight
  -areawidth
  -constrainedheight
  -constrainedwidth
  -height
  -width
  -xscrollincrement
  -yscrollincrement
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName getframe +
+
pathName see + widget + ?vert? + ?horz? +
+
pathName xview + ?arg...? +
+
pathName yview + ?arg...? +
+
+


+DESCRIPTION
+

+ +ScrollableFrame widget containing widget. + +

+


+WIDGET-SPECIFIC OPTIONS
+
-areaheight
+
+ +Specifies the height for the scrollable area. If zero, then the height +of the scrollable area is made just large enough to hold all its children. +
+
+
-areawidth
+
+ +Specifies the width for the scrollable area. If zero, then the width +of the scrollable area window is made just large enough to hold all its children. +
+
+
-constrainedheight
+
+ +Specifies whether or not the scrollable area should have the same height of the +scrolled window. If true, vertical scrollbar is not needed. + +
+
+
-constrainedwidth
+
+ +Specifies whether or not the scrollable area should have the same width of the +scrolled window. If true, horizontal scrollbar is not needed. + +
+
+
-height
+
+ +Specifies the desired height for the window in pixels. + +
+
+
-width
+
+ +Specifies the desired width for the window in pixels. + +
+
+
-xscrollincrement
+
+ +See xscrollincrement option of canvas widget. + +
+
+
-yscrollincrement
+
+ +See yscrollincrement option of canvas widget. + +
+
+

+WIDGET COMMAND
+
pathName cget + option +
+ +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
+
pathName configure + ?option? ?value option value ...? +
+ +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
+
pathName getframe +
+ +Return the pathname of the scrolled frame where widget should be created. + +
+
pathName see + widget + ?vert? + ?horz? +
+ +Arrange scrollable area to make widget visible in the window. +vert and horz specify which part of widget must be preferably +visible, in case where widget is too tall or too large to be entirely visible. +vert must be top (the default) or bottom, +and horz must be left (the default) or right. +If vert or horz is not a valid value, area is not scrolled in this direction. + +
+
pathName xview + ?arg...? +
+ +Standard command to enable horizontal scrolling of pathName. + +
+
pathName yview + ?arg...? +
+ +Standard command to enable vertical scrolling of pathName. + +
+ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrolledWindow.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrolledWindow.html new file mode 100644 index 00000000..af815813 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/ScrolledWindow.html @@ -0,0 +1,160 @@ + +ScrolledWindow + +
NAME
+
ScrolledWindow + - Generic scrolled widget +
+
+
CREATION
+
ScrolledWindow pathName ?option value...?
+
+
+
STANDARD OPTIONS
+
Not themed
+
+ + + + + + +
  -background or -bg  -borderwidth or -bd
  -relief
+
Themed
+
+ + + + + + + +
  -borderwidth or -bd  -relief
  (-bg has no effect)
+
+
+
WIDGET-SPECIFIC OPTIONS
+
+ + + + + + + + +
  -auto
  -ipad
  -managed
  -scrollbar
  -sides
  -size
+
+
+
WIDGET COMMAND
+
pathName cget + option +
+
pathName configure + ?option? ?value option value ...? +
+
pathName getframe +
+
pathName setwidget + widget +
+
+


+DESCRIPTION
+

+ +ScrolledWindow enables user to create easily a widget with its scrollbar. +Scrollbars are created by ScrolledWindow and scroll commands are automatically associated to +a scrollable widget with ScrolledWindow::setwidget. +

+


+WIDGET-SPECIFIC OPTIONS
+
-auto
+
+ +Specifies the desired auto managed scrollbar: +
  • none means scrollbar are always drawn +
  • horizontal means horizontal scrollbar is drawn as needed +
  • vertical means vertical scrollbar is drawn as needed +
  • both means horizontal and vertical scrollbars are drawn as needed (default value) +
  • +
    +
    -ipad (read-only)
    +
    + +Padding in pixels between client widget and scrollbars. +Default value: 1. +
    +
    +
    -managed (read-only)
    +
    + +If true, scrollbar are managed during creation, so their size are included in the requested size of the +ScrolledWindow. If false, they are not. +Default value: true. +
    +
    +
    -scrollbar
    +
    + +Specifies the desired scrollbar: none, horizontal, vertical +or both (default value). +
    +
    +
    -sides (read-only)
    +
    + +Side of the scrollbars. +Possible values are: ne, en, nw, wn, se (default value), es, sw, ws. +
    +
    +
    -size (read-only)
    +
    + +Size of the scrollbars in pixels. +Use 0 for standard size (default value).
    +This option has no effect if widget is themed. +
    +
    +

    +WIDGET COMMAND
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    +
    pathName getframe +
    + +Return the pathname of the frame where the scrolled widget should be created. This command +is no longer needed. You can directly create the scrolled widget as the child +of pathName. +
    +
    pathName setwidget + widget +
    + +Associate widget to the the scrollbars. widget becomes +managed by the ScrolledWindow. The user should not attempt to manage +widget until it is no longer managed by the ScrolledWindow. +widget must be a scrollable widget, i.e. have the options +xscrollcommand/yscrollcommand and the command xview/yview, +such as canvas or text. +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectColor.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectColor.html new file mode 100644 index 00000000..e61044d1 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectColor.html @@ -0,0 +1,211 @@ + +SelectColor + +
    NAME
    +
    SelectColor + - Color selection widget +
    +
    +
    CREATION
    +
    SelectColor pathName ?option value...?
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + + + + + + + + + + + + + + + +
      -background  -color
      -command  -help
      -parent  -placement
      -title  -type
    +
    +
    +
    WIDGET COMMAND
    +
    pathName cget + option +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    SelectColor::dialog + pathName + ?option value ...? +
    +
    SelectColor::menu + pathName + placement + ?option value ...? +
    +
    SelectColor::setbasecolor + index + color +
    +
    SelectColor::setcolor + index + color +
    +
    +


    +DESCRIPTION
    +

    + +SelectColor provides a simple way to select color. It can be displayed +as a dialog box or as a menubutton. + +

    +


    +WIDGET-SPECIFIC OPTIONS
    +
    -background
    +
    + +Specifies the background color of the widget. + +
    +
    +
    -color
    +
    + +Specifies the initial color used in the widget's color selectors. When modifying a +color that is used in the GUI, the value supplied is typically the existing value of +that color. + +
    +
    +
    -command
    +
    + +Specifies a command to be evaluated, with a color value appended, whenever +the color selected in the dialog changes. This facility can be used to modify +a color in the calling GUI and preview the change before deciding whether or not +to accept it. If the user selects "Cancel" in the dialog, the command is called +a final time to restore the initial color (supplied by option -color) that was +used before the dialog was opened. + +
    +
    +
    -help
    +
    + +This option takes a Boolean value. If the value is Boolean true, the SelectColor +dialog will include a balloon help for text entry and mouse operation. + +
    +
    +
    -parent
    +
    + +Parent of the Dialog. Dialog is centered in its parent. If empty, it is centered in +root window. +
    +
    +
    -placement
    +
    + +Where to place the popup color dialog when displaying it. +Must be any of: at, center, left, +right, above, or below. If -parent is specified, +placement will be in relation to the parent widget. +
    +
    +
    -title
    +
    + +Title of the Dialog toplevel. + +
    +
    +
    -type (read-only)
    +
    + +Specifies the type of the SelectColor widget. Must be dialog or +popup.
    If type option is dialog, +SelectColor::create directly creates the dialog, displays it and +return an empty string if cancel button is pressed or if dialog is destroyed, +and the selected color if ok button is pressed. In all cases, dialog is +destroyed.
    If type option is popup, +SelectColor::create creates a small, popup dialog with a small set of +predefined colors and a button to activate a full color dialog. + +
    +
    +

    +WIDGET COMMAND
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    +
    SelectColor::dialog + pathName + ?option value ...? +
    + +Creates a dialog for the user to select a custom color. + +
    + +
    SelectColor::menu + pathName + placement + ?option value ...? +
    + +Creates a small, popup dialog for the user to select from a predefined list +of colors with an additional button to display a full color dialog. + +

    +placement can be any of at, center, left, +right, above, or below. If -parent is specified, +placement will be in relation to the parent widget. +

    + +
    + +
    +
    SelectColor::setbasecolor + index + color +
    + +Set the value of user predefined base color at index index to color. +index must be between 0 and 10. + +
    +
    SelectColor::setcolor + index + color +
    + +Set the value of user predefined color at index index to color. +index must be between 0 and 10. + +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectFont.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectFont.html new file mode 100644 index 00000000..49df1968 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/SelectFont.html @@ -0,0 +1,152 @@ + +SelectFont + +
    NAME
    +
    SelectFont + - Font selection widget +
    +
    +
    CREATION
    +
    SelectFont pathName ?option value...?
    +
    +
    +
    STANDARD OPTIONS
    +
    + + + + +
      -background or -bg  -font
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + + + + + + + + + + + + + +
      -command
      -initialcolor
      -nosizes
      -parent
      -sampletext
      -title
      -type
    +
    +
    +
    WIDGET COMMAND
    +
    pathName cget + option +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    SelectFont::loadfont +
    +
    +


    +DESCRIPTION
    +

    + +SelectFont provides a simple way to choose font. It can be displayed +as a dialog box or as a toolbar. +
    Textual items in Dialog box uses -name options so they +can be translated to any language. Symbolic name used are +ok, cancel, font, size, style, +bold, italic, underline and overstrike. + +

    +


    +WIDGET-SPECIFIC OPTIONS
    +
    -command
    +
    + +Specifies a command to call when user select a new font when SelectFont type +option is toolbar. + +
    +
    +
    -initialcolor
    +
    + +If specified, add an additional button that lets the user pick a +color. This option is ignored if type is toolbar. +
    +
    +
    -nosizes
    +
    + +If true, don't show the listbox containing valid font sizes. This +option is ignored if type is toolbar. +
    +
    +
    -parent
    +
    + +Parent of the Dialog. Dialog is centered in its parent. If empty, it is centered in +root window. +
    +
    +
    -sampletext
    +
    + +Specifies the text displayed in the preview area. + +
    +
    +
    -title
    +
    + +Title of the Dialog toplevel. + +
    +
    +
    -type
    +
    + +Specifies the type of the SelectFont widget. Must be dialog or toolbar. +
    If type option is dialog, SelectFont::create directly creates the +dialog, displays it and return an empty string if cancel button is +pressed or if dialog is destroyed, and the selected font (and color +if initialcolor) if ok button is pressed. In all cases, dialog +is destroyed. +
    If type option is toolbar, SelectFont::create returns the pathname +of the widget created. + +
    +
    +

    +WIDGET COMMAND
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    +
    SelectFont::loadfont +
    + +Load the font available in the system. + +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Separator.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Separator.html new file mode 100644 index 00000000..c015e0a0 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Separator.html @@ -0,0 +1,77 @@ + +Separator + +
    NAME
    +
    Separator + - 3D separator widget +
    +
    +
    CREATION
    +
    Separator pathName ?option value...?
    +
    +
    +
    STANDARD OPTIONS
    +
    + + + + +
      -background or -bg  -orient
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + +
      -relief
    +
    +
    +
    WIDGET COMMAND
    +
    pathName cget + option +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    +


    +DESCRIPTION
    +

    + +Separator is a widget that display an horizontal or vertical 3-D line. + +

    +


    +WIDGET-SPECIFIC OPTIONS
    +
    -relief
    +
    + +Specifies the relief of the Separator. Must be groove (the default) or ridge. + +
    +
    +

    +WIDGET COMMAND
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/SpinBox.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/SpinBox.html new file mode 100644 index 00000000..10c3d7cd --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/SpinBox.html @@ -0,0 +1,250 @@ + +SpinBox + +
    NAME
    +
    SpinBox + - SpinBox widget +
    +
    +
    CREATION
    +
    SpinBox pathName ?option value...?
    +
    +
    +
    OPTIONS from ArrowButton
    +
    + + + + + + + + + + + + +
      -background or -bg  -disabledforeground (not themed)
      -foreground or -fg  -repeatdelay
      -repeatinterval  -state
    +
    +
    +
    OPTIONS from Entry
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      -command  -disabledforeground (not themed)
      -dragenabled  -dragendcmd
      -dragevent  -draginitcmd
      -dragtype  -dropcmd
      -dropenabled  -dropovercmd
      -droptypes  -editable
      -entrybg (see -background)  -entryfg (see -foreground)
      -exportselection  -font
      -helptext  -helptype
      -helpvar  -highlightbackground
      -highlightcolor  -highlightthickness
      -insertbackground  -insertborderwidth
      -insertofftime  -insertontime
      -insertwidth  -justify
      -selectbackground  -selectborderwidth
      -selectforeground  -show
      -state  -takefocus
      -text  -textvariable
      -width  -xscrollcommand
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + + + + + +
      -modifycmd
      -range
      -values
    +
    +
    +
    WIDGET COMMAND
    +
    pathName bind + ?arg...? +
    +
    pathName cget + option +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    pathName getvalue +
    +
    pathName setvalue + index +
    +
    +


    +DESCRIPTION
    +

    + +SpinBox widget enables the user to select a value among a list given by the values +option or a set of values defined by a mininum, a maximum and an increment. +Notice that range option defines a list of values, so getvalue and +setvalue work with both values and range. + +

    +


    +WIDGET-SPECIFIC OPTIONS
    +
    -modifycmd
    +
    + +Specifies a Tcl command called when the user modify the value of the SpinBox. +
    +
    +
    -range
    +
    + +Specifies a list of three intergers (or real) describing the minimum, maximum and increment +of the SpinBox. +
    +
    +
    -values
    +
    + +Specifies the values accepted by the SpinBox. This option takes precedence over +range option. +
    +
    +

    +WIDGET COMMAND
    +
    pathName bind + ?arg...? +
    + +Set bindings on the entry widget. + +
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    +
    pathName getvalue +
    + +Returns the index of the current text of the SpinBox in the list of values, +or -1 if it doesn't match any value. + +
    +
    pathName setvalue + index +
    + +Set the text of the SpinBox to the value indicated by index in the list of values. +index may be specified in any of the following forms: +

    +

    +
    +last +
    +Specifies the last element of the list of values. +
    first +
    +Specifies the first element of the list of values. +
    +next +
    +Specifies the element following the current (ie returned by getvalue) in the list +of values. +
    previous +
    +Specifies the element preceding the current (ie returned by getvalue) in the list +of values. +
    +@number +
    +Specifies the integer index in the list of values. +
    + +
    +

    BINDINGS

    + +When Entry of the SpinBox has the input focus, it has the following bindings, in addition +to the default Entry bindings: +
      +
    • Page up set the value of the SpinBox to the last value. +
    • Page down set the value of the SpinBox to the first value. +
    • Arrow up set the value of the SpinBox to the next value. +
    • Arrow down set the value of the SpinBox to the previous value. +
    + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/StatusBar.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/StatusBar.html new file mode 100644 index 00000000..d5f0877a --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/StatusBar.html @@ -0,0 +1,147 @@ + +StatusBar + +
    NAME
    +
    StatusBar + - status bar widget +
    +
    +
    CREATION
    +
    StatusBar pathName ?option value...?
    +
    +
    +
    STANDARD OPTIONS
    +
    + + + + + + + + + + + + +
      -background or -bg  -borderwidth or -bd
      -foreground or -fg  -orient
      -relief
      -troughcolor
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + + + + + + + + + +
      -height
      -showresize
      -ipad
      -pad
      -width +
    +
    +
    +
    WIDGET COMMAND
    +
    pathName cget + option +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    +


    +DESCRIPTION
    + +

    +StatusBar widget is a simple container widget with a corner resize control, +meant to be placed at the bottom of a toplevel dialog. +

    + +


    +WIDGET-SPECIFIC OPTIONS
    +
    -height
    +
    +Specifies the desired height for the widget. +
    +
    +
    -showresize
    +
    +Specifies whether to show the corner resize control. +
    +
    +
    -pad
    +
    +The spacing to place around the status bar. +
    +
    +
    -ipad
    +
    +The spacing to place around individual status bar items. +
    +
    +
    -width
    +
    +Specifies the desired width for the widget. +
    +
    + +

    +WIDGET COMMAND
    +
    pathName add widget + ?option value option value ...? +
    +Add a widget to the status bar. Possible options are: +
    +
    -weight
    +
    Weighting of this item for resizing (passed to grid).
    +
    -separator
    +
    Whether to use a separator for this item.
    +
    -sticky
    +
    Passed on to grid.
    +
    -pad
    +
    Override of the widget's -ipad option for this item.
    +
    +
    +
    +
    pathName cget + option +
    +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no +option is specified, returns a list describing all of the available +options for pathName. If option is specified with no +value, then the command returns a list describing the one named +option (this list will be identical to the corresponding sublist of +the value returned if no option is specified). If one or more +option-value pairs are specified, then the command modifies the +given widget option(s) to have the given value(s); in this case the command +returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. +
    +
    +
    pathName delete +widget ?widget ...? +
    +Delete a widget and associated state from the status bar.
    +
    +
    pathName getframe +
    +Get the frame widget for the status bar in which status bar items should be +created.
    + +
    +
    pathName items +
    List of items in the status bar.
    +
    + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/TitleFrame.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/TitleFrame.html new file mode 100644 index 00000000..c1b8261f --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/TitleFrame.html @@ -0,0 +1,107 @@ + +TitleFrame + +
    NAME
    +
    TitleFrame + - Frame with a title +
    +
    +
    CREATION
    +
    TitleFrame pathName ?option value...?
    +
    +
    +
    STANDARD OPTIONS
    +
    + + + + + + + + + + + + +
      -background or -bg  -borderwidth or -bd
      -font
      -foreground or -fg
      -relief
      -text
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + + + + + +
      -baseline
      -ipad
      -side
    +
    +
    +
    WIDGET COMMAND
    +
    pathName cget + option +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    pathName getframe +
    +
    +


    +DESCRIPTION
    +

    + +TitleFrame enables user to create a frame with a title like XmFrame Motif widget. +

    +


    +WIDGET-SPECIFIC OPTIONS
    +
    -baseline
    +
    + +Specifies the vertical alignment of the title: top, center or bottom. +
    +
    +
    -ipad
    +
    + +Specifies a pad between the border of the frame and the user frame. +The value is in screen units. +
    +
    +
    -side
    +
    + +Specifies the horizontal alignment of the title: left, center or right. +
    +
    +

    +WIDGET COMMAND
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is specified, +returns a list describing all of the available options for pathName. +If option is specified with no value, then the command returns a list +describing the one named option (this list will be identical to the corresponding +sublist of the value returned if no option is specified). If one or +more option-value pairs are specified, then the command modifies the given widget +option(s) to have the given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    +
    pathName getframe +
    + +Return the frame where the user can create any other widget. +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Tree.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Tree.html new file mode 100644 index 00000000..7b547edd --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Tree.html @@ -0,0 +1,937 @@ + +Tree + +
    NAME
    +
    Tree + - Tree widget +
    +
    +
    CREATION
    +
    Tree pathName ?option value...?
    +
    +
    +
    STANDARD OPTIONS
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
      -background or -bg  -borderwidth or -bd
      -cursor  -highlightbackground
      -highlightcolor  -highlightthickness
      -relief  -selectbackground
      -selectforeground  -takefocus
      -xscrollcommand  -yscrollcommand
    +
    +
    +
    WIDGET-SPECIFIC OPTIONS
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      -closecmd  -crossfill
      -crossclosebitmap  -crosscloseimage
      -crossopenbitmap  -crossopenimage
      -deltax  -deltay
      -dragenabled  -dragendcmd
      -dragevent  -draginitcmd
      -dragtype  -dropcmd
      -dropenabled  -dropovercmd
      -dropovermode  -droptypes
      -height  -linesfill
      -linestipple  -opencmd
      -padx  -redraw
      -selectcommand  -selectfill
      -showlines  -width
    +
    + +
    +
    WIDGET COMMAND
    +
    pathName bindArea + event + script +
    +
    pathName bindImage + event + script +
    +
    pathName bindText + event + script +
    +
    pathName cget + option +
    +
    pathName closetree + node +
    +
    pathName configure + ?option? ?value option value ...? +
    +
    pathName delete + ?arg...? +
    +
    pathName edit + node + text + ?verifycmd? + ?clickres? + ?select? +
    +
    pathName exists + node +
    +
    pathName find + findinfo + ?confine? +
    +
    pathName index + node +
    +
    pathName insert + index + parent + node + ?option value...? +
    +
    pathName itemcget + node + option +
    +
    pathName itemconfigure + node + ?option? ?value option value ...? +
    +
    pathName line + node +
    +
    pathName move + parent + node + index +
    +
    pathName nodes + node + ?first? + ?last? +
    +
    pathName opentree + node +
    +
    pathName parent + node +
    +
    pathName reorder + node + neworder +
    +
    pathName see + node +
    +
    pathName selection + cmd + ?arg...? +
    +
    pathName toggle + node +
    +
    pathName visible + node +
    +
    pathName xview + ?arg...? +
    +
    pathName yview + ?arg...? +
    +
    +


    +DESCRIPTION
    +

    + +Tree widget uses canvas to display a hierarchical list of items (called nodes). +Each node is composed of a label with its own font and foreground attributes, and an optional +image or window. Each node can have a list of subnodes, which can be collapsed or expanded. +Each node is drawn in a single line, whose height is defined by the +deltay option, so they must have at most this height. +A node is uniquely identified by a string given at creation (by the +insert command). The node named root is the root of +the tree and is not drawn. +The tree structure is directly maintained by the widget. + +

    +


    +WIDGET-SPECIFIC OPTIONS
    +
    -closecmd
    +
    + +Specifies a command to be called when user close a node. The +closed node is appended to the command. + +
    +
    + +
    +
    -crossfill
    +
    + Specifies a foreground color for the cross bitmap. +
    +
    + +
    -crossclosebitmap
    +
    + Specifies a bitmap to be displayed in place of the standard cross + when a node is closed. +
    +
    + +
    -crosscloseimage
    +
    + Specifies an image to be displayed in place of the standard cross + when a node is closed. Overrides the -crossclosebitmap option. +
    +
    + +
    -crossopenbitmap
    +
    + Specifies a bitmap to be displayed in place of the standard cross + when a node is open. +
    +
    + +
    -crossopenimage
    +
    + Specifies an image to be displayed in place of the standard cross + when a node is open. Overrides the -crossopenbitmap option. +
    +
    + +
    -deltax
    +
    + +Specifies horizontal indentation between a node and its children. + +
    +
    +
    -deltay
    +
    + +Specifies vertical size of the nodes. + +
    +
    +
    -dragenabled
    +
    +A boolean specifying if drag is enabled. +
    +
    +
    -dragendcmd
    +
    + +Specifies a command to be called when drag ended. +dragendcmd must be a command conforming to the description of the +option dragendcmd of DragSite::register. + +
    +
    +
    -dragevent
    +
    + +Specifies the number of the mouse button associated to the drag. +Must be 1, 2 or 3. + +
    +
    +
    -draginitcmd
    +
    + +Tree has a command wrapper for drag-init events. This command refused the drag +if no node is designated. In other cases: +
    If draginitcmd is empty, it returns: +
      +
    • the value of option dragtype or TREE_NODE if empty as the data type, +
    • {copy move link} as the operations, +
    • the node identifier as the data. +
    +If draginitcmd is not empty, it is called with the following arguments: +
      +
    • the pathname of the tree, +
    • the identifier of the dragged node, +
    • the toplevel created to represent dragged data. +
    +and must return a value conforming to draginitcmd option described in +DragSite::register. + +
    +
    +
    -dragtype
    +
    + +Specifies an alternate type of dragged object. + +
    +
    +
    -dropcmd
    +
    + +Tree has a command wrapper for drop events. This command stops auto scrolling +and extract node and position. +
    If dropcmd is not empty, it is called with the following arguments: +
      +
    • the pathname of the tree, +
    • the pathname of the drag source, +
    • a list describing where the drop occurs. It can be: +
        +
      • {widget}, +
      • {node node} or +
      • {position node index}. +
      +
    • the current operation, +
    • the data type, +
    • the data. +
    + + +
    +
    +
    -dropenabled
    +
    +A boolean specifying if drop is enabled. +
    +
    +
    -dropovercmd
    +
    + +Tree has a command wrapper for drag-over events. This command enables auto scrolling +and position extraction during the drag-over. +If dropovercmd is not empty, the command is called with the following aguments: +
      +
    • the pathname of the tree, +
    • the pathname of the drag source, +
    • a list describing where the drop can occur, whose elements are: +
        +
      • the string widget if dropovertype option contains w, else empty string. +
      • the targeted node if drag icon points a node and dropovertype option contains n, else empty string. +
      • a list containing a node and the position within the children of the node where drag +icon points to if dropovertype option contains p, else empty string. +
      • optionally, the preferred method if drop can occur both inside a node and between two +nodes. The value is position or node. +
      +
    • the current operation, +
    • the data type, +
    • the data. +
    +The command must return a list with two elements: +
      +
    • the drop status, conforming to those described in dropovercmd option of +DropSite::register, +
    • the choosen method: widget, node or position. +
    + +
    +
    +
    -dropovermode
    +
    + +Specifies the type of drop-over interaction. Must be a combination of +w, which specifies that drop can occurs everywhere on widget, +p, which specifies that drop can occurs between two nodes, +and n, which specifies that drop occurs inside nodes. + +
    +
    +
    -droptypes
    +
    + +Specifies a list of accepted dropped object/operation. +See option droptypes of +DropSite::register. +for more infromation. + +
    Default is TREE_NODE with operations copy and move. + +
    +
    +
    -height
    +
    + +Specifies the desired height for the tree in units of deltay pixels. + +
    +
    +
    -linesfill
    +
    + +Specifies a foreground color for the lines between nodes. + +
    +
    +
    -linestipple
    +
    + +Specifies a stipple bitmap for the lines between nodes. + +
    +
    +
    -opencmd
    +
    + +Specifies a command to be called when the user opens a node. The name +of the opened node is appended to the command. + +
    +
    +
    -padx
    +
    + +Specifies distance between image or window and text of the nodes. + +
    +
    +
    -redraw
    +
    + +Specifies wether or not the tree should be redrawn when entering idle. +Set it to false if you call update while modifying the tree. + +
    +
    +
    -selectcommand
    +
    + +Specifies a command to be called when the selection is changed. The +path of the tree widget and the selected nodes are appended to the +command. + +
    +
    + +
    -selectfill
    +
    + If true, the selection box will be drawn across the entire tree from + left-to-right instead of just around the item text. +
    +
    + +
    -showlines
    +
    + +Specifies whether or not lines should be drawn between nodes. + +
    +
    +
    -width
    +
    + +Specifies the desired width for the tree in units of 8 pixels. + +
    +
    +

    + +NODE NAMES
    +

    +Certain special characters in node names are automatically substituted +by the tree during operation. These characters are & | ^ !. +They are all substituted with a _ character. This is only to +avoid errors because the characters are special to the tree widget. +

    + +WIDGET COMMAND
    +
    pathName bindArea + event + script +
    + +This command associates a command to execute whenever the event +sequence given by event occurs anywhere within the Tree area. +
    +
    pathName bindImage + event + script +
    + +This command associates a command to execute whenever the event +sequence given by event occurs on the image of a node. +The node idenfier on which the event occurs is appended to the command and may be used to manipulate the tree (e.g. don't use %W). + +

    +If -selectfill is given, an eventual binding of the background box by bindText is overwritten. +

    +
    +
    pathName bindText + event + script +
    + +This command associates a command to execute whenever the event +sequence given by event occurs on the label of a node. +The node idenfier on which the event occurs is appended to the command and may be used to manipulate the tree (e.g. don't use %W). + +

    +If -selectfill is given, an eventual binding of the background box by bindImage is overwritten. +

    +
    +
    pathName cget + option +
    + +Returns the current value of the configuration option given by option. +Option may have any of the values accepted by the creation command. +
    +
    pathName closetree node +?recurse? +
    + +This command close all the subtree given by node. Recurse +through the tree starting at node and set open option to 0 +depending on recurse. Default value of recurse is true. + +
    +
    pathName configure + ?option? ?value option value ...? +
    + +Query or modify the configuration options of the widget. If no option is +specified, returns a list describing all of the available options for +pathName. If option is specified with no value, then the +command returns a list describing the one named option (this list will +be identical to the corresponding sublist of the value returned if no +option is specified). If one or more option-value pairs are +specified, then the command modifies the given widget option(s) to have the +given value(s); in this case the command returns an empty string. +Option may have any of the values accepted by the creation command. +Read-only options are not be modified. + +
    +
    pathName delete + ?arg...? +
    + +Deletes all nodes (and children of them) in arg. arg can be a list +of nodes or a list of list of nodes. +To delete all the tree, do $pathName delete [$pathName nodes root]. + +
    +
    pathName edit + node + text + ?verifycmd? + ?clickres? + ?select? +
    + +Provides a way for the user to edit in place the label of a node. This is +possible only if node is visible (all its parents are open). +
    The command takes the initial text as argument and does not modify the label of the +edited node, but returns an empty string if edition is canceled, or the typed text +if edition is accepted. +
    When editing, the user can cancel by pressing Escape, or accept by pressing Return. +
    clickres specifies what to do if the user click outside the editable area. +If clickres is 0 (the default), the edition is canceled. +If clickres is 1, the edition is accepted. +In all other case, the edition continues. +
    If edition is accepted and modifycmd is not empty, then it is called with +the new text as argument and must return 1 to accept the new text, 0 to refuse it +and continue edition. +
    select specifies wether or not the initial text should be selected. Default is 1. + +
    +
    pathName exists + node +
    + +Returns whether or not node exists in the tree. + +
    +
    pathName find + findinfo + ?confine? +
    + +

    +Returns the node given by the position findinfo. +findinfo can take the form of a pixel position @x,y or +of the line number of a currently visible Tree node. The first line +of the Tree has the value of zero. +

    + +

    +If confine is non-empty, then confine findinfo to only +match pixel positions for the area consumed by Tree labels, not just +anywhere on their lines. (confine has no effect if +findinfo is a line number.) +

    + +
    +
    pathName index + node +
    + +Returns the position of node in its parent. + +
    +
    pathName insert + index + parent + node + ?option value...? +
    + +

    +Inserts a new node identified by node in the children list of +parent at position index. +

    + +

    +Any instance of #auto within the node name will be replaced by the +number of the item in the order of insertion. The non-printable characters +\1 to \5 are reserved for internal use and should not be present in node +names. +

    + + +

    +

    -anchor
    +
    + Specifies the anchor of the image or window of the node. Defaults to w. +
    +
    + +
    -data
    +
    + +User data associated to the node. + +
    +
    +
    -deltax
    +
    + +Specifies the horizontal indentation of the node. If the value is -1, the +node will be drawn with the deltax for the entire tree. + +
    +
    +
    -drawcross
    +
    + +Specifies how the cross used to expand or collapse the children of a node +should be drawn. +Must be one of auto, always or never. +
    If auto, the cross is drawn only if the node has children. +If always, the cross is always drawn. +If never, the cross is never drawn. +To maintain compatibility with older versions of this widget, +allways is a deprecated synonym to always. + +
    +
    +
    -fill
    +
    + +Specifies the foreground color of the label of the node. + +
    +
    +
    -font
    +
    + +Specifies a font for the label of the node. + +
    +
    +
    -helpcmd
    +
    + +If specified, refers to a command to execute to get the help text to display. +The command must return a string to display. +If the command returns an empty string, no help is displayed. +See also DynamicHelp. +
    +
    +
    -helptext
    +
    + +Text for dynamic help. +See also DynamicHelp. +
    +
    +
    -helptype
    +
    +Type of dynamic help. Use balloon or variable. +See also DynamicHelp. +
    +
    +
    -helpvar
    +
    +Variable to use when helptype option is variable. +See also DynamicHelp. +
    +
    +
    -image
    +
    + +Specifies an image to display at the left of the label of the node. +window option override image. +
    +
    +
    -open
    +
    + +Specifies wether or not the children of the node should be drawn. + +
    +
    +
    -padx
    +
    + +Specifies the distance between image or window and the text of the node. If +the value is -1, the node will be drawn with the padx for the entire tree. + +
    +
    +
    -selectable
    +
    + +Specifies if the node can be selected or not. + +
    +
    +
    -text
    +
    + +Specifies the label of the node. + +
    +
    +
    -window
    +
    + +Specifies a pathname to display at the left of the label of the node. +window option override image. +
    +
    +
    +
    pathName itemcget + node + option +
    + +Returns the current value of a configuration option for the item. +Option may have any of the values accepted by the item creation command. + +
    +
    pathName itemconfigure + node + ?option? ?value option value ...? +
    + +This command is similar to the configure command, except that it applies to the +options for an individual item, whereas configure applies to the options for +the widget as a whole. Options may have any of the values accepted by the +item creation widget command. If options are specified, options are modified as indicated +in the command and the command returns an empty string. If no options are specified, +returns a list describing the current options for the item. +Read-only options are not be modified. + +
    +
    pathName line + node +
    + +

    +Returns the line number where node was drawn. If the node is +not visible then return -1. The first line of the tree has the value +of 0. +

    + +
    +
    pathName move + parent + node + index +
    + +Moves node to the children list of parent at position index. +parent can not be a descendant of node. + +
    +
    pathName nodes + node + ?first? + ?last? +
    + +Returns parts of the children of node, following first and last.
    +If first and last are omitted, returns the list of all children. +If first is specified and last omitted, returns the child at index +first, or an empty string if first refers to a non-existent element. +If first and last are specified, the command returns a list whose elements +are all of the children between first and last, +inclusive. Both first and last may have any of the standard +forms for indices. + +
    +
    pathName opentree node ?recurse? + +
    + +This command open all the subtree given by node. Recurse through the +tree starting at node and set open option to 1 depending on value +of recurse. Default value of recurse is true. + +
    +
    pathName parent + node +
    + +Returns the parent of node. + +
    +
    pathName reorder + node + neworder +
    + +Modifies the order of children of node given by neworder. Children of +node that do not appear in neworder are no moved. + +
    +
    pathName see + node +
    + +Arrange the scrolling area to make node visible. + +
    +
    pathName selection + cmd + ?arg...? +
    + +Modifies the list of selected nodes following cmd: +
    +
    add +
    Adds all nodes in arg to the selection. +
    clear +
    Removes all nodes from the selection. +
    get +
    Returns a list containing the indices of current selected nodes. +
    includes +
    Tests if the specified node is selected. Returns true if the answer is yes, and false else. +
    range +
    Sets the selection to all nodes between the two specified ones. +
    remove +
    Removes all nodes in arg from the selection. +
    set +
    Sets the selection to all nodes in arg. +
    toggle +
    Toggles the selection status of all nodes in arg. +
    + +The subcommands add, range, and set silently +ignore nodes which are declared unselectable. See the node option +-selectable to influence this. + +
    + +
    + +
    pathName toggle + node +
    + Toggle the open/close status of the given node. +
    + +
    pathName visible + node +
    + +Returns whether or not node is visible (all its parents are open). + +
    +
    pathName xview + ?arg...? +
    + +Standard command to enable horizontal scrolling of pathName. + +
    +
    pathName yview + ?arg...? +
    + +Standard command to enable vertical scrolling of pathName. + +
    + +BINDINGS
    + +

    +A <<TreeSelect>> virtual event is generated any time the +selection in the tree changes. This is the default behavior of an +item in the tree, but it can be overridden with the bindText or +bindImage command. If the button 1 binding is overridden, this event may +not be generated. +

    + +

    +The tree has all the standard mouse wheel bindings when it has focus. +

    + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/Widget.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Widget.html new file mode 100644 index 00000000..27b274cb --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/Widget.html @@ -0,0 +1,505 @@ + +Widget + + Under construction ...
    +
    NAME
    +
    Widget + - The Widget base class +
    +
    +
    COMMAND
    +
    Widget::addmap + class + subclass + subpath + options +
    +
    Widget::bwinclude + class + subclass + subpath + ?arg...? +
    +
    Widget::cget + path + option +
    +
    Widget::configure + path + options +
    +
    Widget::create + class + path + ?rename? +
    +
    Widget::declare + class + optlist +
    +
    Widget::define + class + filename + ?class ...? +
    +
    Widget::destroy + path +
    +
    Widget::focusNext + w +
    +
    Widget::focusOK + w +
    +
    Widget::focusPrev + w +
    +
    Widget::generate-doc + dir + widgetlist +
    +
    Widget::generate-widget-doc + class + iscmd + file +
    +
    Widget::getoption + path + option +
    +
    Widget::getVariable + path + varName + ?myVarName? +
    +
    Widget::hasChanged + path + option + pvalue +
    +
    Widget::init + class + path + options +
    +
    Widget::setoption + path + option + value +
    +
    Widget::subcget + path + subwidget +
    +
    Widget::syncoptions + class + subclass + subpath + options +
    +
    Widget::tkinclude + class + tkwidget + subpath + ?arg...? +
    +
    +


    +DESCRIPTION
    +

    + +The Widget namespace handle data associated to all BWidget and provide commands +to easily define BWidget. +
    For commands can be used to define a BWidget: +tkinclude, bwinclude, declare, addmap and syncoptions. +Here is the definition of ComboBox widget: +

    +

    + + +
    +namespace eval ComboBox {
    +    # We're using ArrowButton, Entry and LabelFrame
    +    ArrowButton::use
    +    Entry::use
    +    LabelFrame::use
    +
    +    # Include resources of LabelFrame
    +    Widget::bwinclude ComboBox LabelFrame .labf \ 
    +        rename     {-text -label} \ 
    +        remove     {-focus} \ 
    +        prefix     {label -justify -width -anchor -height -font} \ 
    +        initialize {-relief sunken -borderwidth 2}
    +
    +    # Include resources of Entry
    +    Widget::bwinclude ComboBox Entry .e \ 
    +        remove {-relief -bd -borderwidth -bg -fg} \ 
    +        rename {-foreground -entryfg -background -entrybg}
    +
    +    # Declare new resources
    +    Widget::declare ComboBox {
    +        {-height      TkResource 0  0 listbox}
    +        {-values      String     "" 0}
    +        {-modifycmd   String     "" 0}
    +        {-postcommand String     "" 0}
    +    }
    +
    +    # Map resources to subwidget
    +    Widget::addmap ComboBox "" :cmd {-background {}}
    +    Widget::addmap ComboBox ArrowButton .a \ 
    +        {-foreground {} -background {} -disabledforeground {} -state {}}
    +
    +    # Synchronize subwidget options
    +    Widget::syncoptions ComboBox Entry .e {-text {}}
    +    Widget::syncoptions ComboBox LabelFrame .labf {-label -text -underline {}}
    +
    +    proc use {} {}
    +}
    +
    + +

    +

    +COMMAND
    +
    Widget::addmap + class + subclass + subpath + options +
    + +This command map some resources to subwidget. +Mapped resources automatically configure subwidget when widget is configured. +
      +
    • class is the class of the new BWidget +
    • subclass is the class the subwidget (BWidget class, e.g Entry, or empty for Tk widget) +
    • subpath is the path of the subwidget +
    • options is the list {option realres ...} of options to map to subwidget +
    +
    +
    Widget::bwinclude + class + subclass + subpath + ?arg...? +
    + +This command includes into a new BWidget the resources of another BWidget. +Arguments are: +
      +
    • class class of the new widget +
    • subclass class name of the BWidget to be included +
    • subpath path of the widget to configure when BWidget is configured +
    • options is: +
        +
      • include {option option ...} +
        list of options to include (all if not defined) +
      • remove {option option ...} +
        list of options to remove +
      • rename {option name option name ...} +
        list of options to rename +
      • prefix {prefix option option ...} +
        pefix all option by prefix +
      • initialize {option value option value ...} +
        default value of options +
      • readonly {option value option value ...} +
        new readonly flag +
    +
    +
    Widget::cget + path + option +
    + +Returns the value of option of BWidget path. cget tests the option +existence and takes care of synchronization with subwidget. +Typically called by the BWidget cget command. + +
    +
    Widget::configure + path + options +
    +Description text +
    + +
    Widget::create + class + path + ?rename? +
    + The standard method for creating a BWidget. The real widget path + is renamed to $path:cmd, and a new proc is created to replace the + path which points to the BWidget's commands. + +

    + If rename is false, the path will not be renamed, but the + proc will still be created. This is useful when inheriting another + BWidget who will already have renamed the widget. +

    + +

    + The command returns the widget path. This command is usually the + last command executed in the ::create command for the widget. +

    +
    + +
    Widget::declare + class + optlist +
    + +This command declare new resources for a BWidget. +
      +
    • class is class of the new widget +
    • options is the list describing new options. Each new option is a list +{option type value ro ?args?} where: +
        +
      • option is the name of the option +
      • type is the type of the option +
      • value is the default value of the option +
      • ro is the readonly flag of the option +
      • args depends on type +
    +
    +type can be: +
    +
    +
    TkResource
    +
    +value of option denotes a resource of a Tk widget. args must be class or +{class realoption}. class is the creation command of the Tk widget, e.g. +entry. +The second form must be used if option has not the same name in Tk widget, +but realoption. +
    If value is empty, it is initialized to the default value of the Tk widget. +
    + +
    BwResource
    +
    +value of option denotes a resource of a BWidget. args must be class or +{class realoption}. class is the name of the namespace of the BWidget, e.g. +LabelFrame. +The second form must be used if option has not the same name in BWidget, +but realoption. +
    If value is empty, it is initialized to the default value of the BWidget. +
    + +
    Int
    +
    value of option is an integer. +args can be {?min? ?max?} to force it to be in a range. The test is +[expr $option > $min] && [expr $option < $max] so +if args is {0 10}, value must be beetween 0 and 10 exclude, +if args is {=0 =10} , value must be beetween 0 and 10 include. +
    + +
    Boolean
    +
    value of option is a boolean. True values can be 1, true or yes. +False values can be 0, false or no. Widget::cget always return +0 or 1. +
    + +
    Enum
    +
    +value of option is a element of a enumeration. args must be the list +of enumeration, e.g. {top left bottom right}. +
    + +
    Flag
    +
    +value of option is a combination of a set of chars. args must be a +string defining the set. +
    + +
    String
    +
    +
    value of option is any uncontrolled string. +
    + +
    Synonym
    +
    +
    option is a synonym of option args. value has no effect here. +
    +
    +
    + +
    Widget::define + class + filename + ?class ...? +
    + +

    + This command is used to define a new BWidget class. It is + usually the first command executed in a new widget definition. +

    + +
      +
    • class is the name of the new widget class.
    • +
    • filename is the name of the file (without extension) in the + BWidget distribution that defines this class.
    • +
    • ?-classonly? If present, the class is not setup.
    • +
    • ?-namespace ns? The namespace where the widget's procedures live + in; defaults to the class name.
    • +
    + +

    + Each class defined after the filename is a class that this widget + depends on. The ::use command will be called for each of these + classes after the new widget has been defined. +

    + +

    + If -classonly option is not given this command does several things to + setup the new class. First, it creates an alias in the global namespace for + the name of the class that points to the class's ::create subcommand. + Second, it defines a ::use subcommand for the class which other classes can + use to load this class on the fly. Lastly, it creates a default binding to + the <Destroy> event for the class that calls Widget::destroy on the + path. This is the default setup for almost all widgets in the BWidget + package. +

    + +
    + +
    Widget::destroy + path +
    +Description text +
    +
    Widget::focusNext + w +
    +Description text +
    +
    Widget::focusOK + w +
    +Description text +
    +
    Widget::focusPrev + w +
    +Description text +
    +
    Widget::generate-doc + dir + widgetlist +
    +Description text +
    +
    Widget::generate-widget-doc + class + iscmd + file +
    +Description text +
    +
    Widget::getoption + path + option +
    + +Returns the value of option of BWidget path. This command does not test +option existence, does not handle synonym and does not take care of synchronization with +subwidget. + +
    +
    Widget::getVariable + path + varName + ?myVarName? +
    + +

    +Make the variable varName relational to path accessible in +the current procedure. The variable will be created in the widget namespace +for path and can be used for storing widget-specific information. +When path is destroyed, any variable accessed in this manner will be +destroyed with it. +

    + +

    +If myVarName is specified, the variable will be accessible in the +current procedure as that name. +

    + +
    +
    Widget::hasChanged + path + option + pvalue +
    +Description text +
    +
    Widget::init + class + path + options +
    +Description text +
    +
    Widget::setoption + path + option + value +
    + +Set the value of option of BWidget path without option test, subwidget mapping, +synonym handling and does not set the modification flag. + +
    +
    Widget::subcget + path + subwidget +
    + +Returns the list of all option/value of BWidget path that are mapped to subwidget. + +
    +
    Widget::syncoptions + class + subclass + subpath + options +
    + +This command synchronize options value of a subwidget. +Used when an option of a subwidget is modified out of the BWidget configure command. +
      +
    • class is the class of the new BWidget +
    • subclass is the class the subwidget (BWidget class, e.g Entry, or empty for Tk widget) +
    • subpath is the path of the subwidget +
    • options is the list {option realres ...} of options to synchronize +with subwidget +
    +
    +
    Widget::tkinclude + class + tkwidget + subpath + ?arg...? +
    + +This command includes into a new BWidget the resources of a Tk widget. +Arguments are: +
      +
    • class class of the new widget +
    • tkwidger command name of the Tk widget to be included +
    • subpath path of the widget to configure when BWidget is configured +
    • options is: +
        +
      • include {option option ...} +
        list of options to include (all if not defined) +
      • remove {option option ...} +
        list of options to remove +
      • rename {option name option name ...} +
        list of options to rename +
      • prefix {prefix option option ...} +
        pefix all option by prefix +
      • initialize {option value option value ...} +
        default value of options +
      • readonly {option value option value ...} +
        new readonly flag +
    +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/contents.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/contents.html new file mode 100644 index 00000000..0b9a49af --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/contents.html @@ -0,0 +1,95 @@ + +

    Simple Widgets +
    + + + + + + + + + + + + + + +
    LabelLabel widget with state option, dynamic help and drag and drop facilities
    EntryEntry widget with state option, dynamic help and drag and drop facilities
    ButtonButton widget with enhanced options
    ArrowButtonButton widget with an arrow shape.
    ProgressBarProgress indicator widget
    ScrollViewDisplay the visible area of a scrolled window
    Separator3D separator widget
    +

    Manager Widgets +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    MainFrameManage toplevel with menu, toolbar and statusbar
    LabelFrameFrame with a Label
    TitleFrameFrame with a title (consider Tk 8.4+ labelframe instead)
    PanelFrameFrame with a boxed title area
    ScrolledWindowGeneric scrolled widget
    ScrollableFrameScrollable frame containing widget
    PanedWindowTiled layout manager widget (consider Tk 8.4+ panedwindow instead)
    ButtonBoxSet of buttons with horizontal or vertical layout
    PagesManagerPages manager widget
    NoteBookNotebook manager widget
    DialogDialog abstraction with custom buttons
    StatusBarStatus bar widget with resize control
    +

    Composite Widgets +
    + + + + + + + + + + + + + + + + + + + + +
    LabelEntry +LabelFrame containing an Entry widget. +
    ComboBoxComboBox widget
    SpinBoxSpinBox widget (consider Tk 8.4+ spinbox instead)
    TreeTree widget
    ListBoxListBox widget
    MessageDlgMessage dialog box
    ProgressDlgProgress indicator dialog box
    PasswdDlgLogin/Password dialog box
    SelectFontFont selection widget
    SelectColorColor selection widget
    +

    Commands Classes +
    + + + + + + + + + + +
    WidgetThe Widget base class
    DynamicHelpProvide help to Tk widget or BWidget
    DragSiteCommands set for Drag facilities
    DropSiteCommands set for Drop facilities
    BWidgetDescription text
    +
    + +


    Load BWidget

    + +Possible load sequence: +
    +# If package msgcat is available, its locale is used for BWidget
    +package require msgcat
    +# load BWidget
    +package require BWidget
    +
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/index.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/index.html new file mode 100644 index 00000000..e928fe2f --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/index.html @@ -0,0 +1,7 @@ + +BWidget Manual Pages + + + + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/navtree.html b/src/punk86.vfs/lib/BWidget1.9.16/BWman/navtree.html new file mode 100644 index 00000000..73853943 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/navtree.html @@ -0,0 +1,41 @@ + +Brief description
    +Simple Widgets
    +  Label
    +  Entry
    +  Button
    +  ArrowButton
    +  ProgressBar
    +  ScrollView
    +  Separator
    +Manager Widgets
    +  MainFrame
    +  LabelFrame
    +  TitleFrame
    +  PanelFrame
    +  ScrolledWindow
    +  ScrollableFrame
    +  PanedWindow
    +  ButtonBox
    +  PagesManager
    +  NoteBook
    +  Dialog
    +  StatusBar
    +Composite Widgets
    +  LabelEntry
    +  ComboBox
    +  SpinBox
    +  Tree
    +  ListBox
    +  MessageDlg
    +  ProgressDlg
    +  PasswdDlg
    +  SelectFont
    +  SelectColor
    +Commands Classes
    +  Widget
    +  DynamicHelp
    +  DragSite
    +  DropSite
    +  BWidget
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/BWman/options.htm b/src/punk86.vfs/lib/BWidget1.9.16/BWman/options.htm new file mode 100644 index 00000000..cc2605b2 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/BWman/options.htm @@ -0,0 +1,458 @@ +Tk Built-In Commands - options manual page + +
    +
    NAME +
    options - Standard options supported by widgets
    +
    DESCRIPTION +
    +
    -activebackground, activeBackground, Foreground +
    -activeborderwidth, activeBorderWidth, BorderWidth +
    -activeforeground, activeForeground, Background +
    -anchor, anchor, Anchor +
    -background or -bg, background, Background +
    -bitmap, bitmap, Bitmap +
    -borderwidth or -bd, borderWidth, BorderWidth +
    -cursor, cursor, Cursor +
    -disabledbackground, disabledBackground, DisabledBackground +
    -disabledforeground, disabledForeground, DisabledForeground +
    -exportselection, exportSelection, ExportSelection +
    -font, font, Font +
    -foreground or -fg, foreground, Foreground +
    -highlightbackground, highlightBackground, HighlightBackground +
    -highlightcolor, highlightColor, HighlightColor +
    -highlightthickness, highlightThickness, HighlightThickness +
    -image, image, Image +
    -insertbackground, insertBackground, Foreground +
    -insertborderwidth, insertBorderWidth, BorderWidth +
    -insertofftime, insertOffTime, OffTime +
    -insertontime, insertOnTime, OnTime +
    -insertwidth, insertWidth, InsertWidth +
    -jump, jump, Jump +
    -justify, justify, Justify +
    -orient, orient, Orient +
    -padx, padX, Pad +
    -pady, padY, Pad +
    -relief, relief, Relief +
    -repeatdelay, repeatDelay, RepeatDelay +
    -repeatinterval, repeatInterval, RepeatInterval +
    -selectbackground, selectBackground, Foreground +
    -selectborderwidth, selectBorderWidth, BorderWidth +
    -selectforeground, selectForeground, Background +
    -setgrid, setGrid, SetGrid +
    -takefocus, takeFocus, TakeFocus +
    -text, text, Text +
    -textvariable, textVariable, Variable +
    -troughcolor, troughColor, Background +
    -underline, underline, Underline +
    -wraplength, wrapLength, WrapLength +
    -xscrollcommand, xScrollCommand, ScrollCommand +
    -yscrollcommand, yScrollCommand, ScrollCommand +
    +
    KEYWORDS +

    +

    NAME

    +options - Standard options supported by widgets +

    DESCRIPTION

    +This manual entry describes the common configuration options supported +by widgets in the Tk toolkit. Every widget does not necessarily support +every option (see the manual entries for individual widgets for a list +of the standard options supported by that widget), but if a widget does +support an option with one of the names listed below, then the option +has exactly the effect described below. +

    +In the descriptions below, ``Command-Line Name'' refers to the +switch used in class commands and configure widget commands to +set this value. For example, if an option's command-line switch is +-foreground and there exists a widget .a.b.c, then the +command +

    .a.b.c  configure  -foreground black
    +may be used to specify the value black for the option in the +the widget .a.b.c. Command-line switches may be abbreviated, +as long as the abbreviation is unambiguous. +``Database Name'' refers to the option's name in the option database (e.g. +in .Xdefaults files). ``Database Class'' refers to the option's class value +in the option database. +
    +
    Command-Line Name: -activebackground +
    Database Name: activeBackground +
    Database Class: Foreground +
    Specifies background color to use when drawing active elements. +An element (a widget or portion of a widget) is active if the +mouse cursor is positioned over the element and pressing a mouse button +will cause some action to occur. +If strict Motif compliance has been requested by setting the +tk_strictMotif variable, this option will normally be +ignored; the normal background color will be used instead. +For some elements on Windows and Macintosh systems, the active color +will only be used while mouse button 1 is pressed over the element. +

    Command-Line Name: -activeborderwidth +
    Database Name: activeBorderWidth +
    Database Class: BorderWidth +
    Specifies a non-negative value indicating +the width of the 3-D border drawn around active elements. See above for +definition of active elements. +The value may have any of the forms acceptable to Tk_GetPixels. +This option is typically only available in widgets displaying more +than one element at a time (e.g. menus but not buttons). +

    Command-Line Name: -activeforeground +
    Database Name: activeForeground +
    Database Class: Background +
    Specifies foreground color to use when drawing active elements. +See above for definition of active elements. +

    Command-Line Name: -anchor +
    Database Name: anchor +
    Database Class: Anchor +
    Specifies how the information in a widget (e.g. text or a bitmap) +is to be displayed in the widget. +Must be one of the values n, ne, e, se, +s, sw, w, nw, or center. +For example, nw means display the information such that its +top-left corner is at the top-left corner of the widget. +

    Command-Line Name: -background or -bg +
    Database Name: background +
    Database Class: Background +
    Specifies the normal background color to use when displaying the +widget. +

    Command-Line Name: -bitmap +
    Database Name: bitmap +
    Database Class: Bitmap +
    Specifies a bitmap to display in the widget, in any of the forms +acceptable to Tk_GetBitmap. +The exact way in which the bitmap is displayed may be affected by +other options such as anchor or justify. +Typically, if this option is specified then it overrides other +options that specify a textual value to display in the widget; +the bitmap option may be reset to an empty string to re-enable +a text display. +In widgets that support both bitmap and image options, +image will usually override bitmap. +

    Command-Line Name: -borderwidth or -bd +
    Database Name: borderWidth +
    Database Class: BorderWidth +
    Specifies a non-negative value indicating the width +of the 3-D border to draw around the outside of the widget (if such a +border is being drawn; the relief option typically determines +this). The value may also be used when drawing 3-D effects in the +interior of the widget. +The value may have any of the forms acceptable to Tk_GetPixels. +

    Command-Line Name: -cursor +
    Database Name: cursor +
    Database Class: Cursor +
    Specifies the mouse cursor to be used for the widget. +The value may have any of the forms acceptable to Tk_GetCursor. +

    Command-Line Name: -disabledforeground +

    Command-Line Name: -disabledbackground +
    Database Name: disabledBackground +
    Database Class: DisabledBackground +
    Specifies background color to use when drawing a disabled element. +If the option is specified as an empty string (which is typically the +case on monochrome displays), disabled elements are drawn with the +normal background color but they are dimmed by drawing them +with a stippled fill pattern. +
    Database Name: disabledForeground +
    Database Class: DisabledForeground +
    Specifies foreground color to use when drawing a disabled element. +If the option is specified as an empty string (which is typically the +case on monochrome displays), disabled elements are drawn with the +normal foreground color but they are dimmed by drawing them +with a stippled fill pattern. +

    Command-Line Name: -exportselection +
    Database Name: exportSelection +
    Database Class: ExportSelection +
    Specifies whether or not a selection in the widget should also be +the X selection. +The value may have any of the forms accepted by Tcl_GetBoolean, +such as true, false, 0, 1, yes, or no. +If the selection is exported, then selecting in the widget deselects +the current X selection, selecting outside the widget deselects any +widget selection, and the widget will respond to selection retrieval +requests when it has a selection. The default is usually for widgets +to export selections. +

    Command-Line Name: -font +
    Database Name: font +
    Database Class: Font +
    Specifies the font to use when drawing text inside the widget. +

    Command-Line Name: -foreground or -fg +
    Database Name: foreground +
    Database Class: Foreground +
    Specifies the normal foreground color to use when displaying the widget. +

    Command-Line Name: -highlightbackground +
    Database Name: highlightBackground +
    Database Class: HighlightBackground +
    Specifies the color to display in the traversal highlight region when +the widget does not have the input focus. +

    Command-Line Name: -highlightcolor +
    Database Name: highlightColor +
    Database Class: HighlightColor +
    Specifies the color to use for the traversal highlight rectangle that is +drawn around the widget when it has the input focus. +

    Command-Line Name: -highlightthickness +
    Database Name: highlightThickness +
    Database Class: HighlightThickness +
    Specifies a non-negative value indicating the width of the highlight +rectangle to draw around the outside of the widget when it has the +input focus. +The value may have any of the forms acceptable to Tk_GetPixels. +If the value is zero, no focus highlight is drawn around the widget. +

    Command-Line Name: -image +
    Database Name: image +
    Database Class: Image +
    Specifies an image to display in the widget, which must have been +created with the image create command. +Typically, if the image option is specified then it overrides other +options that specify a bitmap or textual value to display in the widget; +the image option may be reset to an empty string to re-enable +a bitmap or text display. +

    Command-Line Name: -insertbackground +
    Database Name: insertBackground +
    Database Class: Foreground +
    Specifies the color to use as background in the area covered by the +insertion cursor. This color will normally override either the normal +background for the widget (or the selection background if the insertion +cursor happens to fall in the selection). +

    Command-Line Name: -insertborderwidth +
    Database Name: insertBorderWidth +
    Database Class: BorderWidth +
    Specifies a non-negative value indicating the width +of the 3-D border to draw around the insertion cursor. +The value may have any of the forms acceptable to Tk_GetPixels. +

    Command-Line Name: -insertofftime +
    Database Name: insertOffTime +
    Database Class: OffTime +
    Specifies a non-negative integer value indicating the number of +milliseconds the insertion cursor should remain ``off'' in each blink cycle. +If this option is zero then the cursor doesn't blink: it is on +all the time. +

    Command-Line Name: -insertontime +
    Database Name: insertOnTime +
    Database Class: OnTime +
    Specifies a non-negative integer value indicating the number of +milliseconds the insertion cursor should remain ``on'' in each blink cycle. +

    Command-Line Name: -insertwidth +
    Database Name: insertWidth +
    Database Class: InsertWidth +
    Specifies a value indicating the total width of the insertion cursor. +The value may have any of the forms acceptable to Tk_GetPixels. +If a border has been specified for the insertion +cursor (using the insertBorderWidth option), the border +will be drawn inside the width specified by the insertWidth +option. +

    Command-Line Name: -jump +
    Database Name: jump +
    Database Class: Jump +
    For widgets with a slider that can be dragged to adjust a value, +such as scrollbars, this option determines when +notifications are made about changes in the value. +The option's value must be a boolean of the form accepted by +Tcl_GetBoolean. +If the value is false, updates are made continuously as the +slider is dragged. +If the value is true, updates are delayed until the mouse button +is released to end the drag; at that point a single notification +is made (the value ``jumps'' rather than changing smoothly). +

    Command-Line Name: -justify +
    Database Name: justify +
    Database Class: Justify +
    When there are multiple lines of text displayed in a widget, this +option determines how the lines line up with each other. +Must be one of left, center, or right. +Left means that the lines' left edges all line up, center +means that the lines' centers are aligned, and right means +that the lines' right edges line up. +

    Command-Line Name: -orient +
    Database Name: orient +
    Database Class: Orient +
    For widgets that can lay themselves out with either a horizontal +or vertical orientation, such as scrollbars, this option specifies +which orientation should be used. Must be either horizontal +or vertical or an abbreviation of one of these. +

    Command-Line Name: -padx +
    Database Name: padX +
    Database Class: Pad +
    Specifies a non-negative value indicating how much extra space +to request for the widget in the X-direction. +The value may have any of the forms acceptable to Tk_GetPixels. +When computing how large a window it needs, the widget will +add this amount to the width it would normally need (as determined +by the width of the things displayed in the widget); if the geometry +manager can satisfy this request, the widget will end up with extra +internal space to the left and/or right of what it displays inside. +Most widgets only use this option for padding text: if they are +displaying a bitmap or image, then they usually ignore padding +options. +

    Command-Line Name: -pady +
    Database Name: padY +
    Database Class: Pad +
    Specifies a non-negative value indicating how much extra space +to request for the widget in the Y-direction. +The value may have any of the forms acceptable to Tk_GetPixels. +When computing how large a window it needs, the widget will add +this amount to the height it would normally need (as determined by +the height of the things displayed in the widget); if the geometry +manager can satisfy this request, the widget will end up with extra +internal space above and/or below what it displays inside. +Most widgets only use this option for padding text: if they are +displaying a bitmap or image, then they usually ignore padding +options. +

    Command-Line Name: -relief +
    Database Name: relief +
    Database Class: Relief +
    Specifies the 3-D effect desired for the widget. Acceptable +values are raised, sunken, flat, ridge, +solid, and groove. +The value +indicates how the interior of the widget should appear relative +to its exterior; for example, raised means the interior of +the widget should appear to protrude from the screen, relative to +the exterior of the widget. +

    Command-Line Name: -repeatdelay +
    Database Name: repeatDelay +
    Database Class: RepeatDelay +
    Specifies the number of milliseconds a button or key must be held +down before it begins to auto-repeat. Used, for example, on the +up- and down-arrows in scrollbars. +

    Command-Line Name: -repeatinterval +
    Database Name: repeatInterval +
    Database Class: RepeatInterval +
    Used in conjunction with repeatDelay: once auto-repeat +begins, this option determines the number of milliseconds between +auto-repeats. +

    Command-Line Name: -selectbackground +
    Database Name: selectBackground +
    Database Class: Foreground +
    Specifies the background color to use when displaying selected +items. +

    Command-Line Name: -selectborderwidth +
    Database Name: selectBorderWidth +
    Database Class: BorderWidth +
    Specifies a non-negative value indicating the width +of the 3-D border to draw around selected items. +The value may have any of the forms acceptable to Tk_GetPixels. +

    Command-Line Name: -selectforeground +
    Database Name: selectForeground +
    Database Class: Background +
    Specifies the foreground color to use when displaying selected +items. +

    Command-Line Name: -setgrid +
    Database Name: setGrid +
    Database Class: SetGrid +
    Specifies a boolean value that determines whether this widget controls the +resizing grid for its top-level window. +This option is typically used in text widgets, where the information +in the widget has a natural size (the size of a character) and it makes +sense for the window's dimensions to be integral numbers of these units. +These natural window sizes form a grid. +If the setGrid option is set to true then the widget will +communicate with the window manager so that when the user interactively +resizes the top-level window that contains the widget, the dimensions of +the window will be displayed to the user in grid units and the window +size will be constrained to integral numbers of grid units. +See the section GRIDDED GEOMETRY MANAGEMENT in the wm manual +entry for more details. +

    Command-Line Name: -takefocus +
    Database Name: takeFocus +
    Database Class: TakeFocus +
    Determines whether the window accepts the focus during keyboard +traversal (e.g., Tab and Shift-Tab). +Before setting the focus to a window, the traversal scripts +consult the value of the takeFocus option. +A value of 0 means that the window should be skipped entirely +during keyboard traversal. +1 means that the window should receive the input +focus as long as it is viewable (it and all of its ancestors are mapped). +An empty value for the option means that the traversal scripts make +the decision about whether or not to focus on the window: the current +algorithm is to skip the window if it is +disabled, if it has no key bindings, or if it is not viewable. +If the value has any other form, then the traversal scripts take +the value, append the name of the window to it (with a separator space), +and evaluate the resulting string as a Tcl script. +The script must return 0, 1, or an empty string: a +0 or 1 value specifies whether the window will receive +the input focus, and an empty string results in the default decision +described above. +Note: this interpretation of the option is defined entirely by +the Tcl scripts that implement traversal: the widget implementations +ignore the option entirely, so you can change its meaning if you +redefine the keyboard traversal scripts. +

    Command-Line Name: -text +
    Database Name: text +
    Database Class: Text +
    Specifies a string to be displayed inside the widget. The way in which +the string is displayed depends on the particular widget and may be +determined by other options, such as anchor or justify. +

    Command-Line Name: -textvariable +
    Database Name: textVariable +
    Database Class: Variable +
    Specifies the name of a variable. The value of the variable is a text +string to be displayed inside the widget; if the variable value changes +then the widget will automatically update itself to reflect the new value. +The way in which the string is displayed in the widget depends on the +particular widget and may be determined by other options, such as +anchor or justify. +

    Command-Line Name: -troughcolor +
    Database Name: troughColor +
    Database Class: Background +
    Specifies the color to use for the rectangular trough areas +in widgets such as scrollbars and scales. +

    Command-Line Name: -underline +
    Database Name: underline +
    Database Class: Underline +
    Specifies the integer index of a character to underline in the widget. +This option is used by the default bindings to implement keyboard +traversal for menu buttons and menu entries. +0 corresponds to the first character of the text displayed in the +widget, 1 to the next character, and so on. +

    Command-Line Name: -wraplength +
    Database Name: wrapLength +
    Database Class: WrapLength +
    For widgets that can perform word-wrapping, this option specifies +the maximum line length. +Lines that would exceed this length are wrapped onto the next line, +so that no line is longer than the specified length. +The value may be specified in any of the standard forms for +screen distances. +If this value is less than or equal to 0 then no wrapping is done: lines +will break only at newline characters in the text. +

    Command-Line Name: -xscrollcommand +
    Database Name: xScrollCommand +
    Database Class: ScrollCommand +
    Specifies the prefix for a command used to communicate with horizontal +scrollbars. +When the view in the widget's window changes (or +whenever anything else occurs that could change the display in a +scrollbar, such as a change in the total size of the widget's +contents), the widget will +generate a Tcl command by concatenating the scroll command and +two numbers. +Each of the numbers is a fraction between 0 and 1, which indicates +a position in the document. 0 indicates the beginning of the document, +1 indicates the end, .333 indicates a position one third the way through +the document, and so on. +The first fraction indicates the first information in the document +that is visible in the window, and the second fraction indicates +the information just after the last portion that is visible. +The command is +then passed to the Tcl interpreter for execution. Typically the +xScrollCommand option consists of the path name of a scrollbar +widget followed by ``set'', e.g. ``.x.scrollbar set'': this will cause +the scrollbar to be updated whenever the view in the window changes. +If this option is not specified, then no command will be executed. +

    Command-Line Name: -yscrollcommand +
    Database Name: yScrollCommand +
    Database Class: ScrollCommand +
    Specifies the prefix for a command used to communicate with vertical +scrollbars. This option is treated in the same way as the +xScrollCommand option, except that it is used for vertical +scrollbars and is provided by widgets that support vertical scrolling. +See the description of xScrollCommand for details +on how this option is used. + +
    +

    KEYWORDS

    +class, name, standard option, switch +
    +Copyright © 1990-1994 The Regents of the University of California.
    +Copyright © 1994-1996 Sun Microsystems, Inc.
    +Copyright © 1995-1997 Roger E. Critchlow Jr.
    + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/CHANGES.txt b/src/punk86.vfs/lib/BWidget1.9.16/CHANGES.txt new file mode 100644 index 00000000..171d6757 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/CHANGES.txt @@ -0,0 +1,266 @@ +____________________________________________________________ +BWidget 1.2.1 (07/09/1999) + +CHANGES FROM 1.2 TO 1.2.1 + + This version is the first patch of 1.2. It does not introduce + incompatibilites. + This patch include some new requested features, that I think + can't wait for 1.3: + - special menu handling (see MainFrame) + - tabs bindings in NoteBook + - label alignment of LabelFrame + - -repeatdelay and -repeatinterval options on SpinBox + + +* Entry + - event added to tag BwDisabledEntry + - fixed bug when -textvariable use a variable containing space + +* MainFrame + - fixed bug when -textvariable use a variable containing space + - menubar entry creation modified to use the menuid as the + subpathname to permit special menu (help, system, apple) + +* LabelFrame + - LabelFrame::align command added + +* ScrollableFrame + - fixed typo bug + +* PagesManager + - fixed bug of window size + - 'pages' modified to optionally include first and last indices. + ('page' is still available but deprecated) + +* NoteBook + - new command 'bindtabs' + - fixed bug in handling result of -leavecmd command + - 'pages' modified to optionally include first and last indices. + ('page' is still available but deprecated) + +* ComboBox + - little border added around the popdown list, which appeared + to have no border under windows when popped above a widget + with the same background color. + +* SpinBox + - options -repeatdelay and -repeatinterval added. + +* Tree + - fixed strange behaviour when editing: 'selection range' + replaced by 'selection from'/'selection to' + - widget is redrawn if needed in 'edit' and 'see' + - fixed bug in see + - nodes modified to optionally include first and last indices. + - _subdelete modified to iterative method + +* ListBox + - fixed strange behaviour when editing: 'selection range' + replaced by 'selection from'/'selection to' + - ListBox is redrawn if needed in 'edit' and 'see' + - fixed bug in see + - 'items' modified to optionally include first and last indices. + ('item' is still available but deprecated) + +* SelectColor + - fixed bug in call to GlobalVar::trace renamed GlobalVar::tracevar + +* DragSite and DropSite + - fixed bug introduced by new button event. + +* DynamicHelp + - restored version of 1.1, due to the bug under windows + +* BWidget::place + - fixed bug when x or y is 0. + +* es.rc resource file included + + +____________________________________________________________ +BWidget 1.2 (05/21/1999) + +CHANGES FROM 1.1 TO 1.2 + + +* 4 new widget: + - ScrollableFrame + - ScrollView + - PagesManager + - PasswdDlg (contributed by Stephane Lavirotte) + +* Widget: + - Flag option type added + - option resource database read while widget creation, + not while widget class creation. + - better handling of BWidget definition using another BWidget as a top pathname. + +* MainFrame + - more options included for ProgressBar + (INCOMPATIBILITY: option -variable renamed -progressvar) + - -menu option modified to have tags on entries and menu id on cascad menu + (INCOMPATIBILITY of option -menu) + - new command: getmenu + - new command: setmenustate + +* DropSite + - operations completly reworked + - option -droptypes modified (INCOMPATIBILITY) + - return code of -dropovercmd modified + bit 'ok' and bit 'recall' reverted + (INCOMPATIBILITY in -dropovercmd command) + - new command: setoperation + +* DragSite: + - Drag now initiates while followed by of + 4 pixels, so it is possible to have a event and + drag event on the same button. + - -dragevent option modified: must be the number of the button: 1, 2 or 3 + Option is now defaulted to 1, but Entry widget keep it to 3. + (INCOMPATIBILITY) + - return result of -draginitcmd modified (INCOMPATIBILITY) + +* ListBox: + - edit command improved. + new arguments: initial text, and command to verify the text before accept it. + (INCOMPATIBILITY in call to edit) + - Drag and Drop modified + (INCOMPATIBILITY in -dropovercmd command) + - new command: reorder + +* Tree: + - edit command improved. + new arguments: initial text, and command to verify the text before accept it. + (INCOMPATIBILITY in call to edit) + - Drag and Drop modified + (INCOMPATIBILITY in -dropovercmd command) + - new command: reorder + - new command: visible + - less full-redraw + +* NoteBook: + - relief reworked + - added option -leavecmd on pages + - option -image implemented + - new command: move + - delete command now accept an optionnal argument specifying + whether the frame of the page should be destroyed or not. + If not, this frame is reused by insert command for the same page. + +* Entry and LabelEntry: + - direct access to entry command + - bind command added on the entry subwidget + +* ComboBox: + - option -postcommand added + - bind command added on the entry subwidget + +* SpinBox: + - bind command added on the entry subwidget + - floating point fixed - work needed + +* ProgressBar: + - now can be incremental or not limited ('unknow-time' processing) + +* Bitmap: + - xpm image type added with use of xpm-to-image by Roger E. Critchlow Jr. + +* Lots of focus problem solved + +* ...and bugs corrected. + + +INCOMPATIBILITIES + + Incompatibilities are very localized, so we hope that it will + not be painfull to upgrade to 1.2. + +* MainFrame related imcompatibilities + - Upgrade MainFrame -menu option and change -variable option + by -progressvar. + +* Drag and drop related imcompatibilities + - Upgrade -dragevent option, and command associated to -draginitcmd + and -dropovercmd. + - Upgrade -dragendcmd/-dragovercmd command of Tree and ListBox widget + +* Edition in Tree and ListBox + - Verify arguments passed in call to edit command of + Tree and ListBox + + +____________________________________________________________ +BWidget 1.1 (03/12/1999) + +CHANGES FROM 1.0 TO 1.1 + +WHAT'S NEW + +The most important change in BWidget 1.1 is the support +of tk path command, but the old syntax is always available. +configure command now returns a valid configuration information list. + +(I hope that) All submitted bugs have been corrected. + +Following widget have been reworked: + +* ListBox: + - ListBox items have now a -indent option. + - insert command modified to look more as a tk + listbox insert command (see INCOMPATIBILITIES) + - item command added to retreive one or more items + +* Tree: + - insert command modified to look more as a + listbox insert command (see INCOMPATIBILITIES) + +* LabelEntry: + - -value and -variable options renamed to -text and -textvariable + (see INCOMPATIBILITIES) + +* SpinBox and ComboBox: + - -value and -variable options renamed to -text and -textvariable + (see INCOMPATIBILITIES) + - New command getvalue and setvalue added to manipulate + current value by index. + +* NoteBook: + - Pages have now an identifier. + - insert command modififed (see INCOMPATIBILITIES) + - page command added to retreive one or more pages + - getframe command added + + +INCOMPATIBILITIES (sorry for this) + +* LabelEntry, SpinBox and ComboBox: + - -value and -variable options renamed to -text and -textvariable + +* Entry and LabelEntry: + - setfocus doesn't exist anymore. Directly use tk command focus. + +* NoteBook: + - Pages have now an identifier, which modifies insert command: + NoteBook::insert $nb index ?option value ...? + is now + $nb insert index page ?option value ...? + +* Tree: + - insert command modified: + Tree::insert $nb $parent $node $index ?option value ...? + becomes + $tree insert $index $parent $node ?option value ...? + +* ListBox: + - insert command modified: + ListBox::insert $list $item $index ?option value ...? + becomes + $list insert $index $item ?option value ...? + + +____________________________________________________________ +BWidget 1.0 (02/19/1999) + + First release. + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/ChangeLog b/src/punk86.vfs/lib/BWidget1.9.16/ChangeLog new file mode 100644 index 00000000..09f8757a --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/ChangeLog @@ -0,0 +1,2481 @@ +2022-12-25 Harald Oehlmann + + **** BWidget 1.9.16 tagged **** + +2022-10-12 Wolfgang Kechel + dropsite.tcl: Prevent multiple drops, when movement + while drop is processed. Ticket [1ef1f56cd1] + + +2021-12-03 Harald Oehlmann + + **** BWidget 1.9.15 tagged **** + +2021-12-03 Harald Oehlmann + mainframe.tcl: Recalculate status bar height if the + text size is changed by a change of a used named font. + Ticket [acbd67752a] + +2021-08-05 Harald Oehlmann + notebook.tcl: Repaint tabs if the text size is changed + by a change of a used named font. Ticket [acbd67752a] + +2019-12-03 Harald Oehlmann + + **** BWidget 1.9.14 tagged **** + +2019-11-12 Harald Oehlmann + spinbox.tcl: fix error about unsupported option + -disabledforeground when using themed widgets. + Thanks to Gerhard Reithofer and Christian Werner. + Ticket [071fc80f14] + +2019-05-06 Harald Oehlmann + mainframe.tcl: Add optional parameter "Top" to internal + function "MainFrame::_create_menubar" to allow to use + a menu button for the main menu (Hack). + The mainframe may be initialized with "- menu {}". + Then, the menubutton may be created and the menu may + by added by: + MainFrame::_create_menubar .mf $mitems $menubutton. + Allow to skip a main menu level by empty menu label. + Purpose: support commands/checkboxes at first level. + +2018-12-11 Harald Oehlmann + scrollframe.tcl: use Tk8.7 TIP 518 virtual event + <> to resize client frame to 1x1 when + last child is unmapped. + +2018-12-06 Harald Oehlmann + + **** BWidget 1.9.13 tagged **** + +2018-11-26 Harald Oehlmann + dialog.c: For Unix, also Bind KP_Enter for default dialog + button invokation. Ticket [3e31f04367]. + Thanks to Jos for the proposal. + +2018-01-09 Harald Oehlmann + Spanish translation enhanced by Neko. + Ticket [a947e33526] + +2018-01-10 Harald Oehlmann + + **** BWidget 1.9.12 tagged **** + +2018-01-10 Harald Oehlmann + color.tcl: replace the help widget by balloons bound to the + widgets. Ticket [2cc70ce1cb] + +2018-01-09 Harald Oehlmann + color.tcl: New option -command allows to get a callback + when the user does an unvalidated choice. + New option -background and command SelectColor for + window background. + TitleFrames, Dynamic help and Aqua native buttons used. + Show current choice by highlighting, not focus, to avoid + conflict with keyboard traversal. + Shows entry widget for numerical color input/output. + New option -help to show a help area. + Patch by Keith J. Nash + Ticket [75101bf5ce] + Translators: Jima (es), Vogel (fr), Marcus (nl), Ian (da) + Ticket [a947e33526] + +2017-11-03 Harald Oehlmann + notebook.tcl (+man,demo): Add possibility to NoteBook + to add an image at the right of each tab. + Ticket [15e19fe9ec]. Patch by Keith J. Nash. + +2017-08-25 Harald Oehlmann + + **** BWidget 1.9.11 tagged **** + +2017-05-08 Harald Oehlmann + MessageDlg.html: Documented the use of the native widget for + "MessageDlg -type !user" and the limited set of recognized + options. Ticket [8edade3cea] by Gerhard Reithofer + +2016-10-31 Harald Oehlmann + scrollframe.tcl: Eric advised to check for unmapped window, + as the event may be executed in the unmapped state. + +2016-10-31 Harald Oehlmann + scrollframe.tcl: width changed when unmapped and mapped. + Checkge the Configure vound proc to not be active when + currently unmapped. Ticket [72a5727d1b]. Thanks to + Alexandru for the ticket and patch. + +2016-10-31 Harald Oehlmann + button.tcl: Reverted last change, Eric underlined to + not use ttk widgets as a base due to the option + data base. Did traditional fix to exclude all options + known by button and not known by ttk::button. + Ticket [845613e5590ae7cf] + +2016-08-23 Harald Oehlmann + button.tcl: configure option of a ::Button gave error in + themed mode. Ticket [845613e5590ae7cf]. Report by Adrian. + +2016-07-21 Harald Oehlmann + util.tcl: BWidget::place moved away from visible screens + if the current window is on a virtual screen outside of + the main screen (Windows multi-screen configuration). + Ticket [5919a0ec2d] + +2016-07-15 Adrian Madrano Calvo + pckIndex.tcl: auto-load commands also from global namespace + and not only from BWidget namespace. Ticket [c86207db01] + +2016-03-22 Harald Oehlmann + Only support themed packages Tile 0.8 or Ttk. + Repair the button spacing in themed font toolbar. + Ticket [d7ea07c40a] + +2016-03-15 Harald Oehlmann + mainframe.tcl: "Mainframe configure" caused error in themed + mode. Ticket [52273c0a4e] + +2016-03-08 Harald Oehlmann + + **** BWidget 1.9.10 tagged **** + +2016-01-07 Adrian Medrano Calvo + listbox.tcl: Listbox did not scroll to current item on + startup. Ticket [ae238d5a7] + +2016-01-07 Harald Oehlmann + lang/da.rc, lang/es.rc, lang/fr.rc, lang/no.rc: + Translations non portable on utf-8 systems. + File encoding changed to utf-8. Ticket [6c91e43d76] + +2016-01-07 Harald Oehlmann + tree.tcl: Tree lines are black by default even if background + is black. Ticket [ed4c1dab46] + +2015-12-08 Harald Oehlmann + listbox.tcl: 8.4 compatibility was broken due to the use of + min/max math functions. Ticket [0aef856302] + +2015-11-04 Harald Oehlmann + dynhelp.tcl: Drop the assumption that all windows + screen are the same size (of fix dated 2009-06-26) + and use the virtual screen information to place the bubble + help. Ticket [b64e03e548]. + +2015-10-18 Harald Oehlmann + + **** BWidget 1.9.9 tagged **** + +2015-03-18 Harald Oehlmann + + widget.tcl: Widget::define got new parameter -namespace, + allowing megawidget namespace be different to + class name. This allows lower case namespace names. + Patch by Adrian Medrano Calvo. Ticket [023a631b20] + +2014-09-10 Harald Oehlmann + + **** BWidget 1.9.8 tagged **** + +2014-09-05 Harald Oehlmann + + widget.tcl: Widget::which errors when option not present. + Ticket [397db23424] + +2014-05-21 Harald Oehlmann + + widget.tcl: Don't invoke unqualified upvar in callers + scope. Patch by Adrian Medrano Calvo. Ticket [046fa04231] + + widget.tcl: Don't double creation of temporary widget for + default values retrieval. Use result of _get_tkwidget_options + instead. By Adrian Medrano Calvo. Ticket [393b67ab19] + + widget.tcl: New procedure Widget::which (as in [namespace which]), + that returns the fully qualified name for a widget option or + widget variable. By Adrian Medrano Calvo. Ticket [a8705e5fd9] + + widget.tcl: Remove unneeded upvar. By Adrian Medrano Calvo. + Ticket [43f93e0a97] + + widget.tcl et al: remove apparently unused procedure + Widget::syncoptions and all calls. By Adrian Medrano Calvo. + Ticket [3c2b8eafc6] + + +2013-12-13 Harald Oehlmann + + scrollframe.tcl: Make -constrainedwidth 1 and + -constrainedheight 1 work together. + Patch by Simon Bachmann. Ticket [2fa44401d5] + + 2013-10-17 Harald Oehlmann + widget.tcl: Remove temporary widget. + By Wolfgang S. Kechel. Ticket [6cd041bcc1] + +2013-10-15 Harald Oehlmann + combobox.tcl: Themed ComboBox color specifications + are honored. By Wolfgang S. Kechel. Ticket [6c6704e40f] + +2013-10-14 Harald Oehlmann + combobox.tcl: Fails in themed mode with "unknown + option -bg". Patch solves this but listbox items + are white on white when "-foreground" is specified. + By Wolfgang S. Kechel. Ticket [6632134ce9] + + listbox.tcl: Update on option -deltay added. + Set x0 to 2 to make highlight work and look nice for + listbox with image. + Take image into account to show selection. + By Wolfgang S. Kechel. Ticket [ff1787af9c] + + scrollw.tcl: Raise scrolled window if it is below in + the window hierarchy. By Wolfgang S. Kechel. + Ticket [ff1787af9c] + +2013-10-07 Harald Oehlmann + dynhelp.tcl: Sometimes the tooltip does not occur under + gnome/metacity on ubuntu. By Wolfgang S. Kechel. + Ticket [a588d2f800] + +2013-09-15 Harald Oehlmann + + **** BWidget 1.9.7 tagged **** + +2013-09-11 Harald Oehlmann + + xpm2image.tcl: many issues fixed in xpm import + by Mattias Hembruch. Ticket [9a8b2ee42e] + +2013-08-14 Harald Oehlmann + + * notebook.tcl: cured error in _resize, that + data($p,width) is not (jet) present. Ticket [a4cbba655d]. + +2013-06-28 Harald Oehlmann + + * mainframe.tcl: Included Patch [9f67a66609] + curing issues of Shift-Accellerators with Shift-Lock + on Mac. By Keith Nash, Ticket [83ce3e84e7]. + +2013-06-26 Harald Oehlmann + + * mainframe.tcl: Reverted Patch [1977644] + (-casesensitive for accellerators). It has + issues with shift-lock. + +2013-06-21 Harald Oehlmann + + * labelentry.tcl: Bug fixed: + Methods from Tk entry widget restored [Bug 1002844]. + + * mainframe.tcl: Allow case sensitive accelerators + by new option -casesensitive. + Patch by cmard [Patch 1977644] + + * mainframe.tcl: Allow new modifiers Shift, Cmd and ShiftCmd + for accelerators. Patch by K.J.Nash [Patch-83ce3e84e7] + + * mainframe.tcl: When changing MainFrame -background, do + not change menu colors on Aqua. + Fix by Keith J.Nash [Bug-a81b7afc1e] + + * init.tcl: Make loadable in save interpreter. + Fix by Keith J.Nash [Bug-4365a23bd3] + + * combobox.tcl: Add method getentry to return entry + widget path for bind purposes. + Patch by Michael [Patch-2340355] + +2013-01-09 Harald Oehlmann + + * widget.tcl: Bug fixed: + Error 'invalid command name ".#BWidget.#ttk::entry"' + arises in themed mode when an Entry widget should get + focus by the tab key. + The temporary widget creation fails due to the "::" in + the command name of ttk widgets. + Any "::" is replaced by "__" [Bug 3599955]. + +2011-07-27 Harald Oehlmann + + **** BWidget 1.9.6 tagged **** + +2012-04-12 Harald Oehlmann + + * listbox.tcl ListBox::selection Only redraw if + selection changed. Patch by Wolfgang S. Kechel [Bug 3517145] + +2012-04-02 Harald Oehlmann + + * entry.tcl, BWMan/entry.tcl checkbox.tcl Themed mode: + Invoking "configure" without arguments results in errors + that non-ttk options are not present. + Removed Entry options: -background -foreground -relief + -borderwidth -fg -bg -bd. Reported by Wolfgang S. Kechel + [Bug 3513263] + * entry.tcl mapped entry option -state to ttk::entry + state in themed mode to make state change visible. + +2012-03-06 Harald Oehlmann + + * BWMan/ListBox.html documented options -selectfill and + -autofocus as read-only. Reported by Wolfgang S. Kechel + [Bug 3497592] + +2011-11-14 Harald Oehlmann + + * widget.tcl (Widget::focusOK) fixed list with update. + Arises, if a ttk widget with a widget path with spaces + is the next widget. Reported by jaspertheperson + [Bug 3437761] + +2011-06-24 Harald Oehlmann + + **** BWidget 1.9.5 tagged **** + +2011-06-23 Harald Oehlmann + + * listbox.tcl (listbox::generate_data) fixed last patch + by ryotakatsuki [Bug 3324610] + +2011-06-23 Harald Oehlmann + + * listbox.tcl Fix of Bug 3000293 broke listbox tags. + The bindImage subcommand did not report right tag. + Patch by ryotakatsuki [Bug 3324610] + +2011-06-23 Harald Oehlmann + + * listbox.tcl, tree.tcl (_update_scrollregion) the linewise + scrolling did not always scroll up to the end on windows 7. + Report and patch by Wojciech Kocjan, review and modification + by Koen Danckaert [Bug 3317772] + +2011-05-25 Harald Oehlmann + + *mainframe.tcl: Add a boolean readonly option -sizegrip + to show a sizegrip widget in themed mode. + +2011-05-24 Harald Oehlmann + + *lang/pl.rc updated by Wojciech Kocjan. + +2011-04-26 Harald Oehlmann + + *notebook.tcl The user frame of the notebook is now a themed + frame in themed mode. The set background color does not apply + to the user frame in this case. + +2011-04-26 Harald Oehlmann + + label.tcl configuring foreground color caused error when + themed [Bug 3292977] + +2011-04-20 Harald Oehlmann + + lang/hu.rc by Rezso updated + +2011-04-20 Harald Oehlmann + + * font.tcl, lang/*.rc: Add translation possibility + for color picker button of font dialog. + Used google translater to translate "Color" to all languages. + Please check if this is correct. [Bug 3289573] reported by Rezso + +2011-04-19 Harald Oehlmann + + * lang/*.rc [Bug 3289573] : Add translation (templates) for the + Color picker widget text "Base colors" and "User colors". + Only german and english locals are provided so far. + +2011-02-14 Harald Oehlmann + + * combobox.tcl: [Bug 3182287] : ComboBox failes in themed mode + due to the use of the themed entry widget. The following options + are not supported (and thus called) any more: -relief + -highlightbackground -highlightforeground + +2011-02-14 Harald Oehlmann + + * entry.tcl, labelentry.tcl, labelframe.tcl, mainframe.tcl, + pagesmgr.tcl, scrollw.tcl: [Bug 3168761]: + entry failes when themed support activated with: + unknown option "-highlightthickness" (reported by George + on clt 27 Jan., 16:55). + The patch by Wojciech Kocjan fixes this and enhances + labelentry, labelframe and pagesmgr to also use themed frames. + Within scrollw.tcl, a bug for empty background handling is fixed. + The scrollbar background is not set any more for not-themed widget. + +2011-01-17 Harald Oehlmann + + * pkgIndex.tcl: corrected package version in package provide + +2010-12-14 Harald Oehlmann + + **** BWidget 1.9.4 tagged **** + +2010-12-14 Andreas Kupries + + * tree.tcl [Bug 3106208]: Followup. Moved the fixed code of the + last entry I did (2010-11-09) into a new command Tree::MergeFlag + and call this from both Tree::itemconfigure and Tree::insert. + Missing the place in Tree::insert caused another problem, found by + Dustin Littau. + +2010-11-05 Harald Oehlmann + + **** BWidget 1.9.3 tagged **** + +2010-11-23 Harald Oehlmann + + * scrollw.tcl Add theming support for ScrolledWindow widget. + * ScrolledWindow.html Themed mode documented. + +2010-11-21 Harald Oehlmann + + * label.tcl Add theming support for Label widget. + * label.html Themed mode documented. + +2010-11-16 Harald Oehlmann + + * button.tcl Add theming support for Button widget. + Option "-relief link" is mapped to "Toolbutton style. + Option -height is not available when themed. + Thanks to Kevin Walzer for the test on MacOS. + * buttonbox.tcl When themed, only set themed button options. + The widget itself is not jet themed. + * Dialog.html Removed documentation of unavailable option -buttonwidth. + +2010-11-09 Andreas Kupries + + * tree.tcl (Tree::itemconfigure): Fix intermingling of node names + and flag values which can cause an lsearch to fail, by mistaking a + flag value as the node searched for, and then treating a node name + as flags. As the upd,nodes value is a dictionary it should not be + search as a list. Now using a temporary array for quicker check + and append/replace [Bug 3106208]. + +2010-11-09 Harald Oehlmann + + * mainframe.tcl Menu text shows white on white on Mac aqua + [Bug 3105665] reported by Scott Smedley fixed by Kevin Walzer. + +2010-10-15 Harald Oehlmann + + * label.tcl The frame surround the label gets under + unknown conditions a -padx 5. A pad of 0 is now + hard coded (Bug 3087955) + +2010-08-04 Harald Oehlmann + + * dialog.tcl Changed behaviour of window close button. + If -cancel is given, this button is invoked. + The cancel option may now be changed using the configure + method. + + * init.tcl If msgcat is available use its locale to load + a lang/*.rc file instead always using en.rc. + +2010-06-09 Harald Oehlmann + + * Included lang/pl.rc from HEAD. + +2010-06-07 Harald Oehlmann + + **** BWidget 1.9.2 tagged **** + Version 1.9.1 was skipped. + This was released in ActiveTCL and thus may exist on many + installations. + +2010-05-31 Harald Oehlmann + + * listbox.html Reflected patch 2010-05-12 in documentation. + The selection may not be disabled any more by binding button 1. + +2010-05-12 Harald Oehlmann + + * listbox.tcl(ListBox::bindText and ListBox::bindImage) + Method bindText and bindImage overwrote internal selection + bindings [Bug 3000293] reported by Robert Karen. + +2010-05-11 Harald Oehlmann + + * listbox.tcl(ListBox::see) Method see shifts image out of + view. Showed up, by a selection click on a long item with icon + [Bug 2999764] reported by Robert Karen. + +2010-05-05 Harald Oehlmann + + * listbox.tcl(ListBox::_configureSelectmode) Drag modifies + multiple selection [Bug 2995969] reported by Robert Karen. + Bound events on ButtonRelease-1 instead Button-1 for multiple + selections to avoid bug. + * listbox.tcl(ListBox::_drag_and_drop) The default drag and drop + routine only handled single drag and drop. + It was extended to handle also drag and drop of multiple entries. + +2009-09-03 Harald Oehlmann + + * util.tcl(BWidget::place), BWidget.html Widget placed incorrectly, + when bigger than current screen [Bug 2850031] by Thomas Grausgruber + Possible incompatibility: BWidget::place w h -> w,h are reduced to + screen width. + +2009-08-12 Harald Oehlmann + + * dynhelp.tcl Use balloon help font TkTooltipFont if tk <= 8.5. + Otherwise use helvetica 11 on Aqua [Patch 2835180] for Kevin Walzer + * dynhelp.tcl(DynamicHelp::_show_help)Replaced aqua conditional code + check by $Widget::_aqua + +2009-08-10 Harald Oehlmann + + * notebook.tcl (NoteBook::delete) Method delete destroyframe=1 and + reinsertion -> raise failed - state variables were deleted. + [Bug 2831785] by kjnash + * tree.tcl (Tree::_keynav) Fire virtual event <> also on + keyboard navigation [Patch 2828086] by Kevin Walzer + * combobox.tcl Replaced aqua conditional code check by $Widget::_aqua + +2009-08-10 Harald Oehlmann + + **** Branched to bwidget **** + + This is the bwidget branch of module bwidget of tcllib + Use "-r bwidget" for all cvs operations + Scope: Package BWidget compatible to tcl/tk 8.1 and tk + (e.g. no tile/ttk). + +2009-07-24 Harald Oehlmann + + **** BWidget 1.9.0 tagged **** + + * pkgIndex.tcl, README.txt: updated to BWidget 1.9 + +2009-07-23 Harald Oehlmann + + * tree.tcl (Tree::_set_help), Tree.html DynamicHelp -helpcmd added to + tree node help + * tree.tcl (Tree::_draw_subnodes) a vertical line to a virtual root node + above the widget is only drawn when there are multiple child nodes. + This reverts the modification dated 2004-04-21 for this case. + [Patch 2825354] by Koen Danckaert + +2009-07-17 Harald Oehlmann + + * scrollframe.tcl (ScrollableFrame::create et al) ScrollableFrame.html + Background color of canvas takes the color of the scrolled frame. + If themed, canvas takes the themed color of the scrolled themed frame. + If themed, parameters -background and -bg are not available(doc + code). + [Patch 2822970] by Koen Danckaert + +2009-07-15 Harald Oehlmann + + * dynhelp.tcl (DynamicHelp) Typo from yesterday corrected + [Patch 2820851] by Koen Danckaert + +2009-07-14 Harald Oehlmann + + * dynhelp.tcl (DynamicHelp::_leave_info et al) issues: + - menu help sometimes not cleared when clicking off-window (unix) + - "-helpcmd" available also when dynamichelp is included in another + widget. + - given "-helpcmd" always called at global scope. + - Protect against multiple calls of event. + [Patch 2820851] by Koen Danckaert + +2009-07-07 Harald Oehlmann + + * combobox.tcl (ComboBox::_select) Do not export selection if + -exportselection 0 [Patch 981545] by Jeffrey Hobbs + +2009-07-02 Harald Oehlmann + + * widget.tcl (Widget::configure) Bug: ProgressDlg option -geometry + not setable. The former patch was improved. + Koen Danckaert and myself argued, that we modify symptoms without + basic understandings. Anyway, better now than before. + +2009-07-01 Harald Oehlmann + + * mainframe.tcl, MainFrame.html (MainFrame::getmenustate) + Added method getmenustate to return menu tag state + [Bug 948063] reported by Rolf Ade + + * combobox.tcl (ComboBox::configure) Bug fixed: Widget did not take + focus, when -editable false and "configure -state normal" called. + [Bug 756334] reported by Rolf Ade + + * widget.tcl (Widget::configure) Bug: ProgressDlg option -bg not + setable. The special handling of subwidgets with special class or + path ":cmd" was improved. [Bug 611477] + + * notebook.tcl (NoteBook::_itemconfigure) Not honored option: + itemconfigure ... -helptext [Patch 2814050] by Koen Danckaert + +2009-06-30 Harald Oehlmann + + * buttonbox.tcl (ButtonBox::_redraw) Bug corrected: + -uniform gridding option is used if tcl version >= 8.4 (not 8.3). + [Patch 2807147] by Koen Danckaert + + * tree.tcl (Tree::_drop_cmd) If there is no node, drop didn't work. + [Bug 1042613] reported by Rolf Ade + + * Tree.html Bind commands: removed promise that %W would work in future. + The underlying widgets should only be manipulated using the node id. + [Bug 1224203] by Jasper Taylor, remarks by J. Tang + + * Tree.html Bind commands: with -selectfill, the given command is + overwritten for the background box. [Bug 1003962] by Torsten Berg + + * dropsite.tcl (DropSite::register) Bug fixed: fails on multiple drop + targets [Bug 1213123] by T.Neil + + * combobox.tcl (ComboBox::_create_popup) Bug fixed: Return key in drop + down list when -bwlistbox true [Bug 1205536] patch by Steve Landers + + * combobox.tcl (ComboBox::_create_popup, ComboBox::_unmapliste) + Mac aqua and x11 fixes, multi screen issue still open. + [Bug 1451784] report by Jasper Taylor, fix by Kevin Walzer + + * listbox.tcl (ListBox::_multiple_select) Selected item not deselected + on control-click [Bug 1029144] reported by Konrad Rosenbaum + + +2009-06-29 Harald Oehlmann + + * ScrolledWindow.html ScrolledWindow documentation changed: + Documented options: -ipad, -sides, -size, -managed + [Patch 2807160] Text by Koen Danckaert + Removed (read only) remark of option -scrollbar. + + * scrollframe.tcl (ScrollableFrame::create) changed bindings + [Patch 2807227] by Koen Danckaert (comment) + + * scrollw.tcl (ScrolledWindow::_set_hscroll, ScrolledWindow::_set_vscroll) + Bug corrected: enless loop when both scrollbars where automatically + mapped and the window size was changed by this action (on linux). + Scrollbar unmapping and mapping secured by a locked update [Bug 2783019] + + * widget.tcl (Widget::tkinclude) : option data base entry name keeps the + original name and not the renamed name. + The only resulting modification is to rename the option key for + "MessageDlg -text" from "*MessageDlg.frame.msg.message" to + "*MessageDlg.frame.msg.text". [Bug 1266792] + + * widget.tcl (Widget::init) : fixed a memory leak on wrong option value. + [Bug 1230737] + +2009-06-26 Harald Oehlmann + + * listbox.tcl (ListBox::create et al) new feature: listbox option + -listbox now read/write [Bug 1501874] reported by Stephen Huntley + + * dynhelp.tcl (DynamicHelp::_show_help) fixed issue (as far as possible): + Dynamic help baloon was on the main screen, if it touched the border on + a windows multi screen configuration. + The fix assumes, that all screens have same dimensions and no gaps in- + between. This is necessary, because multi-screen configuration paramters + may not be interrogated by tk (despite of coordinates out of the screen) + [Bug 1499135] reported by Gregor + + * notebook.tcl (NoteBook::delete) Deleted also state variables + [Bug 1445219] reported by Eric Kemp-Benedict + +2009-06-25 Harald Oehlmann + + * combobox.tcl (ComboBox::getvalue et al) fixed bug: getvalue returned + first apearence of current data instead of clicked index, which may not + be the same if values is not unique. Additional variable _index(path) + added to hold click index [Bug 1610965] reported by Martin Lemburg + +2009-06-24 Harald Oehlmann + + * scrollframe.tcl (ScrollableFrame::create, ScrollableFrame::_resize, + ScrollableFrame::_frameConfigure) fixed two issues: + - Scrollbar activated even if not necessary + Fix: update scrolling reagion on configure event of the frame + - Disfunction if the frame got to small to be on the current view + Fix: update scrolling reagion on map or unmap events + [Patch 2807227] by Koen Danckaert + + * buttonbox.tcl (ButtonBox::_redraw) Bug: homogeneous button width + not honored if button size changes after creation. + -uniform gridding option is used if tcl version >= 8.3. + [Patch 2807147] by Koen Danckaert + +2009-06-16 Harald Oehlmann + + * combobox.tcl (ComboBox::_create_popup) In dropdown list, + a vertical scrollbar was always shown if horizantal is used. + ScrolledWindow is now called with "-managed 1". + [Patch 2807160] by Koen Danckaert + +2009-06-11 Harald Oehlmann + + * combobox.tcl removed \ before empty line (potential + trap) [Bug 2804961] Andreas Kupries + + * dialog.html Documented -geometry option. + [Bug 1634416] Erik Leunissen + +2009-06-10 Harald Oehlmann + + * no.rc added norwegian translation file + [Feature Request 2797153] provided by Lars Martin Hambro + + * passwddlg.tcl (PasswdDlg::_verifonpasswd) check for + disabled password field and confirm directly. + [Bug 1642050] (Calvin Bascom) Enter key did not confirm + dialog when -passwdstate disabled. + + * combobox.tcl (ComboBox::_select) included [Patch 981545], + but commented out - it works for me without it. + +2009-06-10 Harald Oehlmann + + * dialog.html Added documentation for option -buttonwidth + of Dialog + [Bug 1668587] (Eric Leunissen) + +2009-06-10 Harald Oehlmann + + * arrow.tcl initialised set _grab(oldstate) to "normal" to avoid + error when there is a ArrowButton::_leave without corresponding + ArrowButton::_enter [Bug 2762361] + + * entry.tcl (Entry::_path_command) Add "invoke" to the list of + internally handled commands + [Bug 2340320] (patch by relaxmike@users.sourceforge.net) + + * uitils.tcl (BWidget::place) BWidget::place used screen width + instead window width. + [Bug 1842346] (patch by Niels Gollesch ngoelles@users.sourceforge.net) + + * listbox.tcl (ListBox::_redraw_selection) Added check if redrawn + item is on the to-delete list and thus does not exist any more as + BWidget. [Bug 1752755] (legolas_a20@users.sourceforge.net] + +2008-10-30 Jeff Hobbs + + * tree.tcl (Tree::_node_name_rev): Return node names as they are + input, and properly handle :: in node names. This changes + internal node name reps, but should be transparent to the user, + except for the result of [insert]. + +2008-05-26 Jeff Hobbs + + * tree.tcl (Tree::_redraw_selection): do not allow empty + * listbox.tcl (ListBox::_redraw_selection): fill color as that + creates a transparent item that doesn't return a bbox. This + showed up on OS X/Aqua, where the listbox selectforeground + defaults to empty. [AS Bug 77186 74923] + +2007-10-31 Jeff Hobbs + + * lang/nl.rc (new): Dutch translation [Bug 1804469] + + * lang/hu.rc (new): Hungarian translation [Bug 1821842] + + * tree.tcl (Tree::insert): do node_name on parent arg [Bug 1046955] + + * listbox.tcl: speed up ListBox insertion significantly. [Bug 1472443] + +2007-05-11 Jeff Hobbs + + * widget.tcl (Widget::theme): make sure Tk 8.5a6 is recognized as + having the themed widgets + +2006-12-20 J. Tang + + * util.tcl: fixed BWidget::write for widgets that require + DynamicHelp. [bug 1518803] + +2006-12-05 Andreas Kupries + + * demo/demo.tcl (Demo::main): Removed the 'inscope' qualifier from + the 'package require Bwidget'. The package system already forces + loading and sourcing of package code in the global namespace, so + this is bogus. + +2006-11-13 J. Tang + + * panedw.tcl: if activator is set to line then its width is set to + 3. --activator was an undocumented option; updated man page to + make it documented. Thanks to Jos Decoster for pointing this out. + +2006-11-10 J. Tang + + * widget.tcl: remove relative namespace resolution of variables, + in anticipation of TIP 278. Widget should have been doing this + anyways. [bug 1579744] + + * DragSite.html: noted that -draginitcmd can return an empty + string to prevent a drag [bug 740499] + + * DropSite.html: fixed documentation with DropSite::register + command [bug 740474] + + * combobox.tcl: allow autocomplete and autopost be + enabled/disabled after the widget was created [bug 1588808]; fixed + keysym in autopost binding [bug 1589111] + + * tree.tcl: fixed error with drag & drop's autoscroll [bug + 1408494] + + * listbox.tcl: fixed error with drag & drop's autoscroll; fixed + error when dropping at the end of the list + + * Added dynamic help to text tags (man page updated); fixed resize + bug with scrollframes. Thanks to Jos Decoster for these patches. + +2006-10-20 Jeff Hobbs + + * utils.tcl (BWidget::bindMouseWheel): do not make special + mousewheel bindings if global ones exist (like from style::as) + +2006-09-28 J. Tang + + **** BWIDGET 1.8.0 TAGGED **** + + * removed Makefile.in + + * font.tcl: correctly handle code path when user cancels dialog + + * passwd.tcl: fixed Dialog::enddialog error; fixed ordering error + + * pkgIndex.tcl, README.txt: updated to BWidget 1.8 + + * removed configure.in and aclocal.m4 + + * messagedlg.tcl: explicitly marked the 'Abort' button upon -type + abortretryignore to be the default button [bug 970199] + + * Tree.html: documented [find] and [line] commands [bug 626819]; + noted bug with %W binding [bug 1224203] + + * tree.tcl: added [bindArea] procedure; updated man page [patch + 839066] + + * combobox.tcl: added [clearvalue] proc to explicitly clear a + ComboBox value, updated man page [patch 780704] + +2006-09-26 J. Tang + + * passwd.tcl: don't ignore -labelwidth when calculating label + widths; return key moves through subwidgets like most login + managers [patch 922877, with slight change] + + * font.tcl: add options to select font color and to disable font + sizes; updated man pages [patch 1531199] + + * font.tcl: using arrow keys to browse font family / font size + will cause an update to the shown sample font [patch 947109] + + * demo/basic.tcl: fixed Entry's enter command callback [bug + 1400838] + +2006-08-21 J. Tang + + * combobox.tcl: unpost after autoposting when another Tk window + gets the focus; unpost upon hitting the enter key + + * scrollw.tcl: allow toggling of scrollbars [bug 1488712] + + * Tree.html: corrected documentation for Tree::opencmd (callback + does not append the path to the tree to the command) [bug 1507713] + + * tree.tcl: disable keyboard navigation for empty trees [bug 1514855] + + * tree.tcl: changed '-drawcross allways' to be '-drawcross + always'; updated documentation + +2006-06-29 Jeff Hobbs + + * statusbar.tcl (StatusBar::remove): remove neighboring separator + when removing the first item. [Bug 1512671] + +2006-03-24 J. Tang + + * pkgIndex.tcl: removed bogus "ControlFrame" entry [bug 1429405] + + * MainFrame man page: fixed some typos on man page + + * mainframe.tcl: fixed status bar placement when it is re-shown + after a [showstatusbar none] command [bug 1027568] + +2006-03-23 J. Tang + + * dynhelp.tcl: if a widget's help balloon is being displayed when + that widget is destroyed, also destroy the associated balloon [bug + 1448424] + + * listbox.tcl: when deleting an item from the ListBox that has + dynamic help text, also remove its entry from the help array [bug + 1443461] + +2006-02-10 J. Tang + + * ProgressDlg man page: note that caller must invoke [update], the + progressbar will not do it automatically [bug 1105778] + + * progressbar.tcl: -maximum value must now be non-zero, else + divide by 0 occurs [bug 1145523]; use double() calculations to + prevent integer overflow with very large -maximum values [bug + 900165] + + * PagesManager man page: clarified [add] behavior and default + state [bug 1305988] + +2006-02-08 J. Tang + + * combobox.tcl: allow -autocomplete with uppercase chars [bug + 996569]; added -autopost option [patch 1359041] + + * dynamic help man page: added clarification to -variable + +2006-01-25 J. Tang + + * buttonbox.tcl: fixed -homogeneous calculation [bug 1362899] + +2005-11-01 Jeff Hobbs + + * color.tcl (SelectColor::menu): use native dialog for palette + menu item where possible (and Widget::theme is used). + +2005-10-31 Jeff Hobbs + + * statusbar.tcl: correct Widget::theme typos + +2005-10-12 Jeff Hobbs + + * mainframe.tcl (MainFrame::configure): need to ignore -bg change + check when themed. + +2005-09-28 Jeff Hobbs + + * mainframe.tcl (MainFrame::_create_menubar): ignore -bg -bd opts + when themed + +2005-09-22 Jeff Hobbs + + * font.tcl (SelectFont::_getfont): fix tile compat to still set + data(family) and data(size) in any case. + +2005-09-19 Jeff Hobbs + + * mainframe.tcl: + * font.tcl: remove tile compat options that aren't valid. + +2005-08-23 Jeff Hobbs + + * mainframe.tcl: extend ttk theme awareness to subframes/separators + +2005-08-10 Jeff Hobbs + + * mainframe.tcl (MainFrame::create): make ttk theme aware + +2005-07-27 Jeff Hobbs + + * statusbar.tcl: if themed, use ttk::separator + * scrollframe.tcl: if themed, use ttk::frame + * font.tcl: if themed, use ttk::comboboxes and ttk::checkbuttons + * widget.tcl: encapsulate all .#BWidget* hidden widgets into a + single frame .#BWidget to clean up main '.' childspace. + Add 'Widget::theme ?boolean?' that, if enabled, has BWidgets try + to use some ttk themed widgets (*very* incomplete). + + * init.tcl (Widget::_opt_defaults): make a proc for opt defaults, + recognize aqua as a platform + +2005-02-25 Jeff Hobbs + + * lang/da.rc (new): Danish language file [Bug 1151534] (elhaard) + +2005-01-25 Jeff Hobbs + + * notebook.tcl: reverted lester patch - too many bugs related to + deleting and reinsertion of tabs. + +2004-12-01 Jeff Hobbs + + * notebook.tcl: speed improvements via array hashing for many tabs + (lester). + +2004-10-09 Rolf Ade + + * mainframe.tcl: (MainFrame::_parse_accelerator) made + accelerator Ctrl-f in -menu definitions work. [Bug 1043107] + +2004-09-24 Jeff Hobbs + + * color.tcl: use toplevel instead of menu for dropdown color menu + and do better focus/grab restoration. + + * utils.tcl (BWidget::RestoreFocusGrab,SetFocusGrab): add BWidget + equivalents of what Tk uses for better stacked grab/focus mgmt. + + * dialog.tcl (Dialog::create): withdraw topleve immediately after + creation. + +2004-09-14 Jeff Hobbs + + * listbox.tcl: add FocusIn redirector to %W.c, add explicit + -takefocus 0 to the frame parent. + + * widget.tcl (Widget::focusPrev): hack to avoid focus into direct + parent when it is a megawidget. [Bug 765667] + + * notebook.tcl (NoteBook::_draw_page): adjust height for bottom + drawn tabs. [Bug 988628] + +2004-09-09 Jeff Hobbs + + * panelframe.tcl (new): new PanelFrame widget which creates a + * pkgIndex.tcl: frame with boxed title area that accepts + * Makefile.in: additional widgets. + * BWman/contents.html: + * BWman/navtree.html: + * BWman/PanelFrame.html (new): + + * statusbar.tcl: improve init to use bwidget's automated arg + passing for subwidgets. Simplify delete subcommand to call remove. + + * xpm2image.tcl (xpm-to-image): correctly recognize None with + -nocase + +2004-09-02 Jeff Hobbs + + * buttonbox.tcl, combobox.tcl: code safety fixes + + * dialog.tcl: default button width to -11 on Win8.4, 8 otherwise + + * color.tcl, font.tcl, messagedlg.tcl: + * passwddlg.tcl, progressdlg.tcl: change dialogs to anchor buttons e + + * statusbar.tcl: better -bg handling (configure too), and tighten + up spacing on resize control to place it flush bottom right + +2004-09-01 Jeff Hobbs + + * statusbar.tcl: add -showseparator optional horizontal separator. + +2004-08-31 Jeff Hobbs + + * statusbar.tcl: correct name of image for use on unix. + Try to use of PNG image at each create (it just looks better). + +2004-08-26 Jeff Hobbs + + * tree.tcl (Tree::delete): call -selectcommand if we delete + something that was selected. + +2004-08-25 Jeff Hobbs + + * statusbar.tcl: correct use of PNG vs. GIF image. + Don't abort creation of statusbar when gridded - just don't try + to resize. + Correct example to use label -width 1 + +2004-08-20 Jeff Hobbs + + * statusbar.tcl (new): Addition of a statusbar container widget + * pkgIndex.tcl: with resize control + * Makefile.in: + * BWman/contents.html: + * BWman/navtree.html: + * BWman/StatusBar.html (new): + +2004-05-12 Jeff Hobbs + + * font.tcl (SelectFont::create): don't hardcode -bd 2 when + creating the style selectbuttons. + + * dynhelp.tcl (_show_help): account for OS X help style + +2004-05-04 Jeff Hobbs + + * listbox.tcl (_keyboard_navigation): make sure you can see the + item that you key navigate to. (aas) + +2004-04-26 Jeff Hobbs + + * tree.tcl (_update_nodes): align with _draw_nodes code, + specifically correcting placement of cross on new nodes and anchor + of changed window/image. + +2004-04-23 Jeff Hobbs + + * listbox.tcl (create): don't force -highlightthickness 1 as it + prevents the user changing it on creation. + (_draw_item): pass more cached info from _redraw_items for speed. + (_redraw_selection): correct drawing of selfill for items that + extend beyond the width of the window. + +2004-04-22 Jeff Hobbs + + * tree.tcl (edit): correct inversion of verifycmd emptiness test. + * listbox.tcl: correct eval/after/lists usage. + (_redraw_listbox): call _update_select_fill on redraw, otherwise + the insert of items causes wonkiness. + (_redraw_items): call update idle after changing cursor. + (create): Insert $path into the canvas bindings, so that anyone + binding directly onto the widget will see their bindings activated + when the canvas has focus. Add slightly modified up/down bindings + to the canvas, in case it gets the focus (like with -autofocus). + +2004-04-21 Jeff Hobbs + + * tree.tcl (_draw_subnodes): Adjust the drawing of the line to the + first root node to start at the vertical point (not go up). + + * entry.tcl, arrow.tcl, combobox.tcl: better space/list handling + + * entry.tcl: make the icursor not appear for non-editable and/or + state disabled comboboxes. + +2004-03-08 Joe English + + * init.tcl: (bugfix) Use <> virtual event instead + of event for back-tab binding. + +2004-02-07 Jeff Hobbs + + * progressbar.tcl (ProgressBar::_modify): convert rect coords to + ints to prevent left-over lines that are likely due to a bug in + core Tk related to fractional coord refresh. + +2004-02-03 Jeff Hobbs + + * scrollw.tcl (ScrolledWindow::create): correctly set -relief and + -bd at creation time. [Bug #873666] + + * init.tcl: don't modify *Listbox.background and *Button.padY + options - leave core widgets alone. + + * mainframe.tcl (MainFrame::_create_menubar): set the bg for menus + only on unix (otherwise disturbs menu native L&F) + Correct some eval/list issues. + + * BWman/MainFrame.html: + * mainframe.tcl (MainFrame::_create_entries): correct 'cascade' + spelling, but support old 'cascad' as well. + +2004-01-28 Reinhard Max + + * configure.in: bumped to v1.7. + This should have happened before releasing 1.7.0. + + * Makefile.in: fixed support for DESTDIR. + +2004-01-05 Damon Courtney + + * init.tcl: Added a binding to the Tk spinbox to handle + traversal as loading BWidgets seems to screw up the default + handling for Tk. [Bug #867604] + + * utils.tcl: Fixed a bug that would cause some geometry calculations + in BWidget::place to behave incorrectly. This would occasionally + make it appear as though a drawn dialog would freeze the application. + [Bug #868315] + +2003-12-18 Bob Techentin + + **** BWIDGET 1.7.0 TAGGED **** + + * README.txt: Changed revision to 1.7.0. Note that + 1.7.0 does not include 2003-11-26 mod to notebook.tcl. + +2003-11-26 Jeff Hobbs + + * notebook.tcl (NoteBook::bindtabs): correct tab name returned. (groth) + +2003-11-17 Jeff Hobbs + + * entry.tcl (Entry::create): add missing line continuation. + [Patch #843932] (oehlmann) + +2003-11-10 Damon Courtney + + * entry.tcl: Use a button widget for -disabled options if + we're using 8.3 [Bug 839469] + +2003-11-05 Damon Courtney + + * combobox.tcl: Fixed dropdown listbox selection for + standard Tk listbox [Bug 831496]. + +2003-11-05 Jeff Hobbs + + * scrollview.tcl (ScrollView::_set_view): correct :canvas to + renamed :cmd. + +2003-10-30 Jeff Hobbs + + * scrollw.tcl (ScrolledWindow::setwidget): check that the old + widget associated still exists before unconfiguring it. [Bug #833034] + +2003-10-27 Damon Courtney + + * combobox.tcl, listbox.tcl: Fixed keyboard navigation in the + combobox drop down [Bug 831496]. + + * listbox.tcl: Added curselection subcommand to mimic Tk listbox + behavior. + + Added keyboard navigation to the listbox. + + * widget.tcl: Added Widget::exists command to return whether a + widget is a BWidget (based on whether it exists in the _class array). + + Widget::destroy now properly unsets the widget's variable in + the _class array. + +2003-10-27 Joe English + * DragSite.html, DropSite.html: Fix markup errors [Bug #740484] + +2003-10-20 Damon Courtney + * arrow.tcl, bitmap.tcl, button.tcl, buttonbox.tcl, color.tcl, + * combobox.tcl, dialog.tcl, dragsite.tcl, dropsite.tcl, entry.tcl + * font.tcl, label.tcl, labelentry.tcl, labelframe.tcl, listbox.tcl + * mainframe.tcl, messagedlg.tcl, notebook.tcl, pagesmgr.tcl + * panedw.tcl, passwddlg.tcl, progressbar.tcl, progressdlg.tcl + * scrollframe.tcl, scrollview.tcl, scrollw.tcl, separator.tcl + * spinbox.tcl, titleframe.tcl, tree.tcl, utils.tcl, widget.tcl + * xpm2image.tcl: Revamp again to let core Widget commands handle + most of the esoteric work of creating and destroying widgets + properly in the BWidget environment. + + The command Widget::define defines a class, its filename and a + list of classes which it uses. This command handles creating + the command to create new widgets, creates a ::use command for + the class and calls the ::use command for each class included. + + The command Widget::create does the renaming of the widget to + $path:cmd and creates the proc to redirect the widget commands. + + Widget::destroy now does the rename $path "" that almost all + widgets do. + + * button.tcl: Added a -state option to configure the state of the + entire box at once. + + Added new insert and delete subcommands. + + Added an after cancel to stop button repeat upon release. + [Bug 697022] + + * combobox.tcl: Added -bwlistbox, -listboxwidth and -hottrack options. + -images option already existed, but now it actually does something. + + Added getlistbox, get, icursor, post and unpost subcommands. + + * dynhelp.tcl: Added add subcommand to replace the (now) deprecated + register command. The new command adds for a lot more flexibility + in applying dynamic help. + + Help popup now comes up -topmost 1 on Windows if available. + + * entry.tcl: Added -disabledbackground option so that the BWidget + entry more closely resembles the standard Tk entry. + [Bug 638236]. + + * init.tcl: Moved Widget::traverseTo into widget.tcl. + + * label.tcl: Renamed BWLabel class to just Label. + + * listbox.tcl: Added a default -dropcmd so that if -dragenabled + and -dropenabled are true, drag-and-drop within the same widget + is possible without any other options. + + Added -autofocus option to specify that clicking within the listbox + should draw the focus in order to handle mouse wheel events. + + Added -selectfill option for drawing a full selection rectangle + around selected items instead of just around the item. + + Added getcanvas subcommand. [Bug 436762]. + + bindImage and bindText now map %W to $path in order to get an + accurate path in events. This can probably be fixed better + when we have more control over event parameters. [Bug 607745] + + Added mouse wheel bindings by default. + + Added <> event when selection changes. + + * mainframe.tcl: Fixed bug for adding CTRL-F items to a mainframe + [Bug 784269] + + * messagedlg.tcl: Added -buttonwidth option. + + * notebook.tcl: Added dynamic help to tabs. + + Added -tabpady option to specify the padding between the text and + the tab. + + Notebooks now handle multi-line text properly. [Bug 565284] + + * scrollview.tcl: Rewritten to use a variable per path instead of + a big array. + + * tree.tcl: Added -anchor option to nodes to specify the anchor for + an image or window when displayed. + + Added -crossopenimage, -crosscloseimage, -crossopenbitmap and + -crossclosebitmap options to change the open / close cross. + + Added mouse wheel bindings by default. + + Added toggle subcommand to toggle a single tree node. + + Added <> event when selection changes. + + The characters "& | ^ !" are all converted to | silently in + node names. This is to avoid errors because these characters + are special to the canvas widget. [Bug 746960] + + bindImage and bindText now map %W to $path in order to get an + accurate path in events. This can probably be fixed better + when we have more control over event parameters. [Bug 607745] + + * utils.tcl: Added BWidget::wrongNumArgsString command to return + a standard wrong # args error string. + + Added BWidget::classes command that returns a list of all classes + required by a given class. + + Added BWidget::inuse command to determine if a given class is inuse. + + Added BWidget::library command to return a body of code that can + be saved into a project or other code based on the given classes. + When called with a list of classes, all the classes and code + necessary to use those classes is returned in a large string which + can then be written out to a file. + + Added BWidget::write command to write to a given file the current + set of classes that are in use. + + Added BWidget::bindMouseWheel command to setup default mouse + bindings on a given widget. + + * widget.tcl: Added a new option type 'Padding' which will accept + the standard padding arguments in Tcl 8.4+. + + Added Widget::define command to define a new BWidget class. + + Added Widget::create command to create a BWidget properly. + + Widget::destroy now attempts to delete a widget command created + through Widget::create. + + Added Widget::options command to return the current options of + a given widget in a style that can be used to serialize a widget. + + Added Widget::getOption command to get options based on children + having the same option. + + * wizard.tcl: Added new Wizard widget. + + +2003-10-17 Jeff Hobbs + + * arrow.tcl, bitmap.tcl, button.tcl, buttonbox.tcl, color.tcl, + * combobox.tcl, dialog.tcl, dragsite.tcl, dropsite.tcl, entry.tcl + * font.tcl, label.tcl, labelentry.tcl, labelframe.tcl, listbox.tcl + * mainframe.tcl, messagedlg.tcl, notebook.tcl, pagesmgr.tcl + * panedw.tcl, passwddlg.tcl, progressbar.tcl, progressdlg.tcl + * scrollframe.tcl, scrollview.tcl, scrollw.tcl, separator.tcl + * spinbox.tcl, titleframe.tcl, tree.tcl, utils.tcl, widget.tcl + * xpm2image.tcl: major revamp to reduce incorrect use of eval and + other list-safetiness evils. Also change !strcomp to streq. + +2003-08-06 Jeff Hobbs + + * listbox.tcl: Correct Listbox selection drawing [Bug #781652] + +2003-07-17 Joe English + * init.tcl, combobox.tcl: Fix for [Bug 720032] "BWidget + breaks Tk entry behaviour". Highlight the entry + in a <> binding, instead of doing so + on every event. Change the global + and bindings to generate <> + and <> events. + +2003-07-17 Jeff Hobbs + + * notebook.tcl: Use list with eval for safety. + Use lsearch -exact instead of default -glob in all uses. + + * listbox.tcl (_multiple_select): correct shift-selection when + selectmode is multiple. [Bug 653266] + Use lsearch -exact instead of default -glob in all uses. + Use list with eval for safety. + + * BWman/ScrolledWindow.html: clarify management of embedded widget. + +2003-06-23 Damon Courtney + * combobox.tcl: Added a little better handling of keys in the + auto-complete. + +2003-06-06 Damon Courtney + * combobox.tcl: Added a rudimentary auto-complete function + with option (-autocomplete) that is turned off by default. + Over time, I'm sure this function can be improved, but I + think it works pretty well for now. + + * BWman/ComboBox.tcl: Added documentation for -autocomplete. + +2003-06-05 Damon Courtney + * listbox.tcl: Liberal use of list where appropriate to make + the code safe for space-containing node names. + +2003-05-23 Bob Techentin + + **** BWIDGET 1.6.0 TAGGED **** + + * README.txt: + +2003-05-18 Jeff Hobbs + + * progressbar.tcl: correctly handle progressbar being quickly + created and deleted by deleting afters and checking var existence. + +2003-05-18 Joe English + + * widget.tcl (Widget::focusOK): Don't assume that '-editable' + option is always 1 or 0 for all widgets. [Bug 710658] + +2003-05-14 Jeff Hobbs + + * demo/tree.tcl: make the tree scrollview make sense in demo. + [Bug 684462] + + * notebook.tcl: ensure that bd is min 1 at all times. [Bug 688227] + Correct use of eval with list. + + * tree.tcl: correct node lsearch'ing to use -exact to allow for [] + containing nodes [Bug 628041] (decoster) + +2003-05-07 Jeff Hobbs + + * dynhelp.tcl (DynamicHelp::_motion_balloon): correctly listify + after delayed _show_help callback. + +2003-05-06 Jeff Hobbs + + * scrollw.tcl (ScrolledWindow::setwidget): remove any existing + widget before setting the next. + +2003-05-01 Jeff Hobbs + + * tree.tcl (Tree::configure, Tree::_draw_node): add a full-width + box underneath the text and image/window that will react to the + node binding if -selectfill is true. It is an empty box that is + overly wide, but it could be improved to resize on Configure to + just the window width and replace the sel box. + +2003-04-23 Jeff Hobbs + + * tree.tcl: liberal use of list where appropriate to make the code + safe for space-containing node names. + Make use of string equal instead of !string compare. + (Tree::_redraw_selection): correct -selectfill to include the + image, in any, in the bbox calculation since it may be larger. + +2003-04-15 Damon Courtney + + * listbox.tcl + * tree.tcl: Added a #auto substitution for inserting new items + into a tree or listbox. + + * BWman/ListBox.html + * BWman/Tree.html: Added documentation for #auto substitution. + +2003-04-14 Jeff Hobbs + + * utils.tcl (BWidget::focus): add optional refocus arg + * combobox.tcl: make droplist use solid 1-pixel relief more in + accordance with Windows style. Set topmost attribute on droplist. + Add bindings that unmap the droplist if we lose focus to another + application (where [focus] == ""), without refocusing to the entry. + +2003-04-11 Jeff Hobbs + + * combobox.tcl (ComboBox::_expand): add tab expansion behavior + when -expand tab is specified + (ComboBox::_focus_in): autohighlight full contents only when no + existing selection exists. [Bug #720024] + + * BWman/ComboBox.html: doc -expand none|tab + +2003-03-12 Damon Courtney + + * listbox.tcl: Added dynamic help support to listbox items. + + * tree.tcl: Fixed a little inconsistency in the tree dynamic help. + We don't need to save the whole path in the help array, just the + node. + +2003-02-25 Jeff Hobbs + + * scrollw.tcl: add lock around grid remove scrollbar to prevent + infinite loop in small window situations. (kienzle) + + * pkgIndex.tcl: + * configure.in: bumped to v1.6 + + * scrollw.tcl: complete rewrite of ScrolledWindow widget to + address infinite loop scrollbar problems. This one is much + simpler and does not suffer the infinite loop. There still seems + to be an issue with shrinking smaller than one scrollbar width / + height in size, but that's not common (nor fatal). Addresses + [Patch #671821, #520903] [Bug #472718, #564691] + This may introduce new incompatabilities, but it does work as + expected for noted bugs and in the demos. + + * widget.tcl: code cleanup + * scrollframe.tcl: code cleanup + +2003-02-24 Jeff Hobbs + + * panedw.tcl (_realize): only allow _realize to be called once the + Configure binding has triggered once. [Bug #613134] + [Patch #63500] (decoster) + +2003-02-17 Jeff Hobbs + + * font.tcl: comment out the adding of default style bits for bold + and italic. The allows setting the font to something like + "Courier 8", clicking B on and off and getting "Courier 8" back + again (otherwise gave "Courier 8 normal roman"). + +2003-02-08 Damon Courtney + * BWman/SelectColor.html + * color.tcl: Cleaned up some of the documentation of SelectColor + and made it actually work like the documentation says it does. + + * BWman/DynamicHelp.html + * dynhelp.tcl: Added -topbackground, -padx and -pady options to + allow a little more flexibility in the look-and-feel of balloons. + + Added the ability to bind dynamic help to individual items or tags + on a canvas. + + * BWman/Tree.html + * tree.tcl: Added -padx and -deltax options to individual nodes + within a tree. Each option defaults to -1, meaning to take its + value from the global option of the same name. + + Added dynamic help to nodes within a tree. Adds the following + options: -helptext, -helptype and -helpvar to each node. + + * BWman/BWidget.html + * utils.tcl: Added BWidget::badOptionString utility to return a + standard error string when a given option doesn't match a list. + + * BWman/Widget.html + * widget.tcl: Added Widget::getVariable proc to create a reference + to a variable relative to the given widget path. + +2003-01-26 Damon Courtney + * BWman/DynamicHelp.html: + * dynhelp.tcl: Added -state option to disable help balloons on a + global scale. + + * BWman/Tree.html: + * tree.tcl: Added -crossfill option to allow the + / - bitmap to + be filled with a different color than the connecting node lines. + -linesfill is now accurate in its help entry and only adjusts + the foreground color of the lines between the nodes. + +2003-01-24 Joe English + * tree.tcl (Tree::delete, Tree::_subdelete): remove all deleted + nodes from the the selection [Bug #621178]. + +2003-01-17 Pat Thoyts + + * labelentry.tcl: fixed -textvariable option [bug #649383] + +2002-10-14 Jeff Hobbs + + * pkgIndex.tcl: + * configure.in: bump version to 1.5 + + * button.tcl: remove -repeatdelay and -repeatinterval for 8.4 to + allow Button to override them. [Bug #620103] + + * combobox.tcl: make -entrybg also control the listbox background. + [Bug #519189] (chevreux) + + * tree.tcl (_see): change to always show left edge of requested + item. [Patch #556077] (english) [NOTE: also included Patch #621331 + "Allow delete of selected Tree nodes"] + + * dynhelp.tcl: allow variable and balloon help simultaneously. + [Patch #567982] (decoster) + + * BWman/LabelFrame.html: + * labelframe.tcl: allow -bitmap -image and -textvariable options + of the BWLabel component of a LabelFrame. [Patch #620753] (decoster) + + * widget.tcl (_get_tkwidget_options): withdraw toplevel if it is + the TkResource base widget. [Patch #620754] (decoster) + + * tree.tcl (delete): correct tree deletion with selected nodes. + [Patch #621331] (decoster) + + * progressbar.tcl (_modify): use updated idletasks instead of + update. [Patch #622927] (decoster) + +2002-09-25 Jeff Hobbs + + * Makefile.in: better DESTDIR/libdir support (steffen) + +2002-09-11 Jeff Hobbs + + * color.tcl (SelectColor::menu): added tkwait and update to make + sure that the grab doesn't fail on Unix. + + * listbox.tcl: corrected multiple selectmode bindings. + [Patch #483838, Bug #594853] (decoster) + +2002-08-23 Andreas Kupries + + * tree.tcl: Modified subcommand 'includes' of the method + 'selection to properly extract its argument. ... Revamped the + whole subcommand to properly extract and check its arguments. + + (create) Added Control-Button-1 bindings to allow toggling the + selection of a node. I will do no bindings for shift-selecting + and/or drag-selecting ranges. To complex for me right now. + + Moved the code executing the -selectcommand callback to an + internal procedure, and added calls to that procedure to all + subcommands which change the selection. This fixes SF Bwidget + Bug #547245. + + * BWman/Tree.html: Documented the 'includes' and 'range' + subcommands of the method 'selection' of tree widgets. + Documented the node option '-selectable'. Documented that the + subcommands extending or setting the selection silently ignore + unselectable nodes. Documented new 'toggle' subcommand of method + 'selection'. Documented option --slectcommand'. Fixed bogus + table html in option lists. + +2002-06-04 Jeff Hobbs + + **** BWIDGET 1.4.1 TAGGED **** + + * README.txt: + * configure.in: + * pkgIndex.tcl: up'ed version to 1.4.1 + + * listbox.tcl: corrected use of 'end' as move index. [Bug #561391] + * buttonbox.tcl: + * tree.tcl: force frame -padx/-pady to 0 to handle 8.4+ frame + padding options. [Bug #545119] + + * scrollframe.tcl: corrected scrollregion configuration on + Configure of frame to use full width/height of canvas when the + canvas is larger. This ensures that scrolling "anchors" properly + to topleft. + + * dialog.tcl: prevent dialog from freezing on Windows with tkwait + visibility on withdrawn toplevels. [Patch #521386] (chevreux) + + * font.tcl: reworked loadfont to not sort font names unless + requested. [Patch #524353] (kienzle, hobbs) + + * panedw.tcl: corrected handling of weighted panes following a + Configure event. [Patch #513320] (decoster) + + * progressbar.tcl: Fixed display of vertical progressbar. + [Patch #561403] + +2002-05-29 Andreas Kupries + + * combobox.tcl: Changed relief of popup list to ridge, for Win* + platforms. + +2002-05-09 Andreas Kupries + + * dynhelp.tcl: Accepted patch for bug 528929. Reported by + , patch also by him. + +2002-04-25 Andreas Kupries + + * notebook.tcl: Accepted patch for bug #532246, fixing the + appearance of the tabs so that text is always visible + completely. + +2002-01-26 Pat Thoyts + + * utils.tcl: Modified BWidget::place to support multiple screens + under Windows. Better support would require Tk modifications. + * demo/tree.tcl: Fixed for starting on secondary monitor under + windows. + * BWMan/BWidget.html: added documentation for BWidget::place. + +2002-01-22 Jeff Hobbs + + **** BWidget 1.4.0 tagged **** + + * widget.tcl: added Color as an optional type, with _test_color + test. [RFE #443124]. + +2002-01-15 Jeff Hobbs + + * BWman/ComboBox.html: removed reference to label options that + were removed when the LabelFrame was dropped. [Bug #477130] + + * listbox.tcl: allowed drop handler to work in empty listbox. + [Bug #456883] + + * mainframe.tcl: correct unprotected eval calls. [Patch #501210] + (chevreux) + +2001-12-28 Jeff Hobbs + + * BWman/Dialog.html: + * dialog.tcl: Added '-transient' and '-place' flags. + [Patch #483838] (decoster) + + * BWman/Tree.html: + * tree.tcl: Added a 'recursive' argument to 'Tree::opentree' and + 'Tree::closetree'. [Patch #483838] (decoster) + + * BWman/ProgressBar.html: + * progressbar.tcl: Added new type 'nonincremental_infinite' and + modified movement of progressbar when in 'infinite' or + 'nonincremental_infinite' mode. The 'nonincremental_infinite' can + be used when a certain process monitored by a ProgressBar returns + a total count and not an increment count. [Patch #483838] (decoster) + + * BWman/PanedWindow.html: + * panedw.tcl: Added '-weights' flag with possible value 'extra' or + 'available'. Since BWidget-1.3.1, the meaning of the '-weight' + flag for the 'PanedWindow::add' command was changed. This made it + difficult to create a layout where the panes occupy a certain + amount of the screen. When using the '-weights extra' flag when + creating a PanedWindow widget, the >=1.3.1 behavior is used: the + weights for the different panes are only used for extra space. + When using the '-weights available' flag, the weights for the + different panes are used to set the size of each panes relative to + the total available space. [Patch #483838] (decoster) + + * BWman/ListBox.html: + * listbox.tcl: Added '-selectmode' flag and 2 possible + select-modes: single and multiple. [Patch #483838] (decoster) + + * widget.tcl: Select element 4 (was 3) from the config-options to + get value from optiondb. [Patch #483838] (decoster) + + * utils.tcl: added else case to place is called with location + different from 'at' and 'center' and without a parent. + [Patch #484123] (decoster) + + * mainframe.tcl: added options -menubarfont, -menuentryfont and + -statusbarfont at creation time of the widget as well as + subsequent configures. [Patch #479935] (chevreux) + + * listbox.tcl: added multipleinsert command to allow faster + inserts of multiple items. [Patch #458446] (chevreux) + * widget.tcl: added Widget::copyinit. [Patch #458446] (chevreux) + + * BWman/NoteBook.html: + * notebook.tcl: added options for enhanced tab shape in notebooks. + [Patch #402466] (haneef) + + * configure.in: + * pkgIndex.tcl: + * README.txt: bumped version to 1.4.0 (not released) + + * mainframe.tcl (_create_menubar): start tagstate initially on. + [Patch #470273] (chevreux) + (_parse_accelerator): improve F* function key accelerator support. + [Patch #444172] (venski) + +2001-10-14 Jeff Hobbs + + * pagesmgr.tcl: reverted fix of 2001-10-11 - it was bogus. + +2001-10-11 Jeff Hobbs + + * pagesmgr.tcl: allowed the ability to specify page by name, + not just number. + +2001-09-11 Andreas Kupries + + * notebook.tcl: Removed 'Canvas' from the list of bindtags for the + internal canvas to prevent interference from application + specific bindings with our special widget. [459033]. + +2001-09-06 Andreas Kupries + + * passwddlg.tcl: Accepted change by Bastien Chevreux + adding a -logineditable option to + the password dialog. [436340]. + +2001-09-05 Andreas Kupries + + * panedw.tcl: Added option -activator to allow user to choose sash + activator. Reduced minimum allowed sash width. [442474]. Request + made by Bastien Chevreux . + + * label.tcl: Corrected typo in BWlabel::configure [454505], report + and fix by Bastien Chevreux . + + * arrow.tcl: Changed containing frame to be more invisible + (borderwidth 0). Fixes [458301], by Georgios Petasis + . + +2001-08-08 Andreas Kupries + + * tree.tcl (Tree::_keynav): Added code to call the open and close + commands when the open-status of a node is toggled with the + space bar. Bug [449284]. + + * color.tcl: Added the missing definition of the main + 'SelectColor' procedure. This prevented users from creating + these widgets in the documented way. Bug [449276]. + +2001-06-21 eric melski + + * tree.tcl: Corrected keyboard navigation so that open/close + commands are invoked when right/left arrows are used to open/close + nodes, patch from [Bug #435097]. Also corrected keyboard + navigation on right arrow press; previously only opened closed + nodes that had children, but should always open nodes, regardless + of whether it has children. + +2001-06-11 Jeff Hobbs + + * pkgIndex.tcl: bumped version to 1.3.1 and added Tk 8.1.1 package + require as Tcl 8.1.1 is needed in certain core areas for the new + string methods. + + * mainframe.tcl: corrected state interpretation. It doesn't do + exact argument matching, but it is consistent with the rest of + BWidget. [Bug #224476] + + * demo/demo.tcl: fixed demo script to run when called from + another directory + + * messagedlg.tcl: corrected winfo exists call + + * listbox.tcl: fixed string compare call + + * combobox.tcl: added package require Tk 8.3. + + * passwddlg.tcl: + * xpm2image.tcl: + * mainframe.tcl: + * panedw.tcl: + * utils.tcl: + * entry.tcl: + * dynhelp.tcl: + * dragsite.tcl: + * color.tcl: added braces to expr where appropriate + +2000-10-31 Dan Kuchler + + * combobox.tcl: Added the '-exact' option to the 'lsearch' + commands in the combobox code so that the correct index + of items will be returned even when there are glob/regexp + characters. + +2000-10-10 Dan Kuchler + + * dynhelp.tcl: Added the '-screen' option to the toplevel that + is created to display the help text to fix a bug reported by + Tupone Alfredo. + +2000-10-01 Eric Melski + + * notebook.tcl: Fixed typo in _draw_page that incorrectly placed + images on tabs. + +2000-09-17 Eric Melski + + * widget.tcl (_test_boolean): Altered to return strictly 0 or 1 + (for false and true, respectively), rather than allowing the + string booleans (false, true, off, on, etc). + +2000-09-07 Sven Delmas + + * mainframe.tcl: Fixed the typo of Alt (Atl) as reported in bug # + 6079. + +2000-09-05 Eric Melski + + * label.tcl: Corrected bindtags for BWidgets Label components: + primary component widget now includes the megawidget pathname in + its bindtags list, so that bindings on the megawidget pathname are + applied properly. + +2000-08-10 Eric Melski + + * widget.tcl: Corrected a problem caused by the destruction of the + special .#BWidget* widgets, which are used by BWidgets for some + option value validations; formerly, if these were destroyed, it + could confuse the BWidgets system's internal state, and creating + BWidgets after destroying these helper widgets would throw an error. + +2000-06-14 Dan Kuchler + + * dialog.tcl + * dropsite.tcl + * dynhelp.tcl + * scrollview.tcl: Replaced several catch {unset varname} calls with + if {[info exists varname]} {unset varname}. This avoids using the + catch, and also prevents the ::errorInfo corruption that was happening + in BWidgets. + +2000-05-14 Dan Kuchler + + * tree.tcl: Fixed a typing error in the Tree::find procedure. + The procedure wouldn't work because there was a 'llengh' where there + should have been a 'llength'. + +2000-05-08 Dan Kuchler + + * titleframe.tcl: Added a '-state' flag that is associated to the + state of the label. Now that labels can be disabled (in 8.3 and + beyond) this allows for the titleframe to have a disabled appearence. + +2000-05-02 Eric Melski + + * tree.tcl: Did some fancy focus footwork [Bug: 4491]. Now you + can do this: "Tree .t ; bind .t foo", and it will do + the right thing. This will enable the use of proper + focus-on-mouse-click bindings for trees, which in turn will fix + the focus problem described in 4491. In addition, I added a + binding to the canvas widget in the tree that redirects focus when + it leaves the canvas and goes to the frame, just in case. + + * dialog.tcl: Added a -geometry option, to allow the specification + of geometry for the dialog. No particular care is taken to + validate the geometry string, so if it is bogus, you lose. [RFE: + 5188]. + +2000-04-27 Eric Melski + + * entry.tcl: Added smarts to handle Copy for non-editable entries + (it should be allowed, but was not previously) [Bug: 3755]. + + * notebook.tcl: Small tweaks for placement of images on tabs. + + * combobox.tcl: Added code to ensure that non-editable (but + enabled) comboboxes could still be tabbed in to. + +2000-04-26 Dan Kuchler + + * button.tcl: Fixed the bindings that get setup on buttons with + an underline specified to be case insensitive (i.e if 'A' or 'a' + was the underline character, Alt-A and Alt-a would both be bound + to the button. + +2000-03-29 Sven Delmas + + * tree.tcl: Added protection for the left arrow key click in case + we are already at the root node. This used to throw a Tcl error + (fixes bug # 4619). + +2000-03-20 Eric Melski + + * progressbar.tcl: (configure) Added test for change to -maximum + value, so that bar is redrawn if maximum changes. [Bug: 4399]. + + * BWman/SpinBox.html: Removed references to -label* options. + + * demo/select.tcl: Removed use of -label* options on ComboBox and + SpinBox. [Bug: 4394]. + +2000-03-14 Eric Melski + + * button.tcl: (configure) replaced several hasChanged calls with + one hasChangedX call. + + * dynhelp.tcl: (sethelp) replaced several hasChanged calls with + one hasChangedX call. + + * entry.tcl: Replaced stack of hasChanged calls with one + hasChangedX (in configure); replaced a couple cget's with + getMegawidgetOption's. + + * spinbox.tcl: Updated _test_options to use setMegawidgetOption, + and to only do that if it has to, instead of always doing it. + + * tree.tcl: Worked on itemcget; instead of upvar'ing the + one-time-use variable, just refer to it directly. + + * widget.tcl: One problem with [set + ${class}::${path}:opt($option)] -- if path contains "foo(foo)", + the command will choke. Removed that particular + micro-optimization. Added setMegawidgetOption to compliment + getMegawidgetOption; extended hasChangedX to accept multiple + options to check. This allows us to compress stacks of hasChanged + calls into a single call (so there's a single function call, and a + single upvar...). + +2000-03-13 Eric Melski + + * combobox.tcl: Tweaked bg/background options so that button + didn't pick up entry background. + + * widget.tcl: Removed dead code; micro-optimizations to initFromODB. + + * tree.tcl: Added option for default -fill of tree nodes on windows. + + * notebook.tcl: Removed commented code. + + * button.tcl: + * tree.tcl: + * spinbox.tcl: + * entry.tcl: + * dropsite.tcl: + * dragsite.tcl: + * arrow.tcl: Replaced selected cget/getoption calls with + getMegawidgetOption calls. + + * combobox.tcl: Removed LabelFrame from ComboBox (30% faster). + + * widget.tcl: Added getMegawidgetOption function, which allows + direct access to megawidget-specific options (those that do not + map to a component widget option). This is dangerous, because it + bypasses some checks, and it will only work with options that are + specific to the megawidget. However, it is much faster, and + enables some functions (like visiblenodes) to be much faster. + + * tree.tcl: Reworked visiblenodes function to do a tree walk to + find visible nodes. This is faster and more correct than the + previous implementation, which queried all the nodes in the tree + for their open bit. + + +2000-03-10 Eric Melski + + * widget.tcl: Replaced an upvar with a direct reference to the + variable in initFromODB. + + * dynhelp.tcl: Changed sethelp function to use new hasChangedX + function instead of hasChanged, which avoids an unneeded upvar, + for a little better speed. + + * button.tcl: Changed to parseArgs/initFromODB format for a small + (25%) speedup in creation time. + +2000-03-10 Sven Delmas + + * tree.tcl: Changed the allnodes procedure to visiblenodes, and + also the mechanism of retrieving those nodes. This took care of + the previously required update. + +2000-03-09 Eric Melski + + * entry.tcl: Added code to re-sync the -text option with the + contents of the entry widget before doing configuration; this + fixes [Bug: 4304]. + +2000-03-09 Sven Delmas + + * tree.tcl: Disabled the update before the find withtag in the + allnodes procedure. The nodes are apparently created delayed, so + before this procedure is called, the program has to do an + update. I don't do this in the procedure anymore, because it + caused multiple updates, making the app slower. + +2000-03-08 Sven Delmas + + * tree.tcl: The new allnodes procedure was not handling the + "current" tag correctly. This is now stripped of. + +2000-03-07 Eric Melski + + * button.tcl: Added check for -state flag, to initialize it properly. + + * entry.tcl: Changed to parseArgs/initFromODB format; added check + for -text flag to initialize it properly. + + * labelentry.tcl: Changed to use parseArgs/initFromODB format. + +2000-03-03 Eric Melski + + * spinbox.tcl: Added a call in setvalue to scan the current value into + a float to trim out any 0 padding on the number (otherwise the zero's + make it look like octal to tcl, which chokes on numbers > 8) + +2000-03-07 Sven Delmas + + * passwddlg.tcl: Reenabled the binding to activate the ok + button. + + * dragsite.tcl: I added an extra protection into the _begin_drag + procedure to guard against a motion event that (sometimes) arrives + before the press event. This fixes bug # 4324. + +2000-03-03 Eric Melski + + * spinbox.tcl: Removed LabelFrame from SpinBox (BACKWARDS + INCOMPATIBLE) to speed creation; updated configure proc to use + hasChangedX instead of hasChanged, as it didn't really need the + values of the options it was checking. + +2000-03-01 Eric Melski + + * spinbox.tcl: Changed bindings to be on class SpinBox instead of + BwSpinBox, and added class SpinBoxEntry to the bindtags of the + SpinBox entry component. + + * configure.in: + * pkgIndex.tcl: Bumped version to 1.3.0. + + * tree.tcl: Changed focus redirect to use {after idle} to avoid + focus loops. + + * label.tcl: Added -bd 0 -highlight... etc to wrapper frame; moved + class bindings to the frame instead of the component label. + + * utils.tcl: Added helper function BWidget::refocus, to handle + focus redirection calls. + + * spinbox.tcl: Changed focus redirect to use {after idle} to avoid + focus loops. + + * combobox.tcl: Changed init to parseArgs/initFromODB style; + changed focus redirect to use {after idle} to avoid focus loops. + +2000-02-29 Eric Melski + + * widget.tcl: Added bits to handle + $path#subclass_that_inherits_from_other_bw_class megawidget names. + + * passwddlg.tcl: + * progressdlg.tcl: + * progressbar.tcl: Changed init to parseArgs/initFromODB style. + + * pkgIndex.tcl: Changed Label -> BWLabel + + * messagedlg.tcl: Changed initialization to parseArgs/initFromODB + style. Changed to use tk_messageBox on UNIX. + + * labelframe.tcl: Updated to use BWLabel instead of Label. + + * labelentry.tcl: Added -class LabelEntry to widget. + + * label.tcl: Changed class name to BWLabel (to avoid option db + clashes with tk labels), changed initialization to + parseArgs/initFromODB style. + + * init.tcl: dropped obsolete Tree option from init. + + * dialog.tcl: changed initialization to parseArgs/initFromODB style. + + * notebook.tcl: Added -bd 0 -highlightthickness 0 -relief flat to + the notebook container frame so geometries are correct. + + * entry.tcl: Fixed a conflict with configuring the Entry -text and + textvariables. + + * dialog.tcl: added a -class option to the dialog, to allow the + class of the dialog to be set (this enables proper optiondb use + for things like the PasswdDlg). + +2000-02-28 Eric Melski + + * widget.tcl: Added Widget::varForOption function, which returns a + variable name that can be used to trace changes to an option for a + particular megawidget (such as the -values option of a combobox). + + * entry.tcl: Made cget -text a little more efficient by + shortcircuiting in that case. + + * combobox.tcl: Fixed bug #4248 by making the listbox use a + -listvariable instead of trying to micromanage the listbox contents. + + * tests/entry.test: tests for the Entry widget. + + * widget.tcl: minor code cleanup. + + * tree.tcl: Was not getting proper default bg color on Windows, + and keyboard navigation was goofy because of internal structure + changes. + + * entry.tcl: Fixed an issue with initial foreground color not + being picked up correctly. + +2000-02-28 Sven Delmas + + * tree.tcl: Added a procedure called "allnodes" to retrieve the + names of all currently defined treenodes. Apparently the internal + widget structure of tree was changed recently. I adjusted the + "allnodes" procedure to that. + +2000-02-25 Eric Melski + + * combobox.tcl: Fixed a problem with non-editable comboboxes and + selecting values. + + * arrow.tcl: + Fixed a problem with the invoke method (doing one too many winfo + parents in some cases) + + * button.tcl: + * buttonbox.tcl: + * combobox.tcl: + * dialog.tcl: + * dynhelp.tcl: + * entry.tcl: (also fixed validation) + * label.tcl: + * labelframe.tcl: + * listbox.tcl: + * mainframe.tcl: + * notebook.tcl: + * pagesmgr.tcl: + * panedw.tcl: + * progressbar.tcl: + * scrollview.tcl: + * scrollw.tcl: + * separator.tcl: + * spinbox.tcl: + * titleframe.tcl: + * tree.tcl: Updated to new megawidget architecture. + + * widget.tcl: Changed internal architecture. When possible, + megawidget options are stored in component widgets instead of in + an intermediary array. Also, made use of option database to make + megawidget creation more efficient. + +2000-02-24 Eric Melski + + * LICENSE.txt: Removed LGPL license; added Tcl-license terms. + +2000-02-23 Eric Melski + + * widget.tcl: Replaced _test_boolean function with a more efficient + implementation. + +2000-02-18 Eric Melski + + * images/target.xbm: Placeholder for actual icon. + + * color.tcl: Change env(BWIDGET_LIBRARY) to ::BWIDGET::LIBRARY; + changed proc "dialogue" to "dialog" + + * pkgIndex.tcl: Updated function spec for color.tcl. + + * widget.tcl: Various minor speed tweaks; added a reverse mapping + from component widget options -> mega-widget options so that + subcget can be faster. + + * entry.tcl: + * dropsite.tcl: + * dragsite.tcl: + * arrow.tcl: Tcl list'd the specs for Widget::declare calls. + + * combobox.tcl: Removed extraneous ListBox::use call. + + +2000-02-17 Eric Melski + + * notebook.tcl: Added an extra check to move the leftmost tab a + touch to the right when it is not selected (again, to make the + tabs more Windows-like). Also replaced redundant [string equal] + checks with a stored pre-check (ie, set foo [string equal ...]). + +2000-02-16 Eric Melski + + * notebook.tcl: Changed appearance of tabs; leftmost tab is now + flush with the left of the notebook, and the tabs look more + Windows-like. + +2000-02-16 Sven Delmas + + * dialog.tcl: Added a new parameter to the draw procedure that + allows me to pass in the desired geometry for the window. This was + needed to support tracking of dialog window geometries. + + * tree.tcl: Changed the binding to use "+", so it + will not overwrite existing bindings (if there are any). Also + added some extra protection in the keynav procedure against the + user typing on a root node (this used to cause a stack + trace). + +2000-02-11 Eric Melski + + * tree.tcl: Integrated changes from Eric Boudaillier: + [itemconfigure -open ...] + optimized to only call redraw_idle 3 if node has subnodes. + _cross_event: + itemconfigure -open called before -opencmd/closecmd; no more + call to _redraw_idle (handled by other procedures) + _over_cmd: + allow position {root 0} when tree is empty + new [find] command: + [find @x,y ?confine?] + if confine is "confine" returns the node at window + coordinate x,y (x,y must be inside the bbox of the + node) else returns the node found on the line (in + pixel) pixel y + [find line] + returns the node on the line $line (in -deltay coords) + new [line] command: + [line node] + returns the line where node is drawn + -selectfill option added: + if true, selection is draw on full width of tree (instead of + just highlighting the bbox of the selected nodes) + + * combobox.tcl: Integrated changes from Eric Boudaillier: + internal widget restructuring. + + * tree.tcl: Added "range" subcommand to selection. Given two + nodes, node1 and node2, it will set the selection to the visible + nodes between (and including) node1 and node2. If node1 or node2 + is not visible, it will find the first visible ancestor of the + node and use that as the start/end point instead. + + * listbox.tcl: Integrated changes from Eric Boudaillier: + _over_cmd: allow position 0 when listbox is empty + find command, similar to tree find command. + + * spinbox.tcl: Integrated changes from Eric Boudaillier: + cosmetic changes. + + * color.tcl: Integrated changes from Eric Boudaillier: + split widget into two commands: SelectColor::menu and + SelectColor::dialog. + + * progressbar.tcl: Integrated changes from Eric Boudaillier: + added -idle option to prevent call to update in case where task is + done in idle (ie, fileevents) + + * scrollview.tcl: Integrated changes from Eric Boudaillier: + bindings changed. + + * scrollw.tcl: Integrated changes from Eric Boudaillier: + -managed option: if true, scrollbar are managed during creation, + so their size are included in the requested size of the + ScrolledWindow. If false, they are not. + -sides option: specifies the side of the scrollbar. + -size option: specifies size of scrollbar. + -ipad option: specifies pad between scrollbar and scrolled widget. + + * mainframe.tcl: Integrated changes from Eric Boudaillier: support + for function keys in accelerators, support for no modifier in + accelerators. + + * notebook.tcl: Integrated changes from Eric Boudaillier: + -internalborderwidth (-ibd) option specifies pad around pages; + -foreground, -background, -activeforeground, -activebackground, + -disabledforeground options for each tab. + Code cleanup. + +1999-12-23 Sven Delmas + + * scrollw.tcl: Added "update idletask" to scrollbar update to + prevent loss of update events. + +1999-12-14 Sven Delmas + + * combobox.tcl: When the selected item is changed, the selection + is now set to the entire string. + +1999-12-13 Eric Melski + + * buttonbox.tcl: Added a getbuttonstate function, which retrieves + the value of a tag used on a button in the buttonbox. + +1999-12-08 Eric Melski + + * combobox.tcl: Removed code that cleared entry selection on focus out + events, as this crippled exportselection. + +1999-10-29 Eric Melski + + * buttonbox.tcl: Added a gettags function, which allows the user + to query the tags that are used on buttons in the buttonbox. + +1999-10-29 Eric Melski + + * font.tcl: Added one new flag: -querysystem. This lets the user + control whether the font selector queries the system + (via font families) for the list of fonts, or if it uses a preset + list of fonts (which is much faster and less likely to crash some + systems). + +1999-10-25 Eric Melski + + * font.tcl: Added support for two new flags: -families and -styles; + -families allows you to specify one of all, fixed, or variable, to + limit the choice of fonts to those fonts; -styles allows you to + specify a list of styles that can be set with the widget (ie, + bold, italic, etc). + +1999-10-22 Eric Melski + + * tree.tcl: Fixed some problems with keyboard traversal. Added + support for left/right arrows a la MS Explorer. + Added support for keyboard-based scrolling. + +1999-10-21 Sven Delmas + + * combobox.tcl: Added support for keyboard traversal. The widget + will now tab in even when it is not editable. Also the entry + widget content will be selected when the user tabs in. The key + bindings now allow a traversal of the list ( brings up the + list). The arrow button no longer switches to an up button, but + instead changes relief. The button is now more Windows NT like + (for Windows NT). Changed keyboard bindings: down/up now + display/hide the listbox; control-{up|down|prev|next} move through + the options without displaying the listbox. + +1999-10-21 Eric Melski + + * tree.tcl: Added a -selectable option to tree nodes, which + controls whether or not a given node is selectable (duh). This + works with the new -selectcommand option for the tree, and with + keyboard traversal (also new). Now, whenever the tree gets a + "selection set", it calls the given -selectcommand with the name + of the tree and the list of selected nodes, which makes it easier + to just drop in place and use. + +1999-10-15 Eric Melski + + * panedw.tcl: Added a -class PanedWindow option to the main frame + (the megawidget) of the paned window. + +1999-10-15 Eric Melski + + * dialog.tcl: Added an overrideredirect option to Dialog::draw, which + allows the user to control the overrideredirect state of the dialog. + +1999-09-19 Eric Melski + + * mainframe.tcl: Fixed _destroy to unset ALL state variables, so that + when a new MainFrame of the same name as an old one is created, it + doesn't pick up residual state from the old one. + +1999-09-17 Eric Melski + + * notebook.tcl: Added some (non-functional) code for doing + tab-notebooks with the tabs on the bottom. + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/LICENSE.txt b/src/punk86.vfs/lib/BWidget1.9.16/LICENSE.txt new file mode 100644 index 00000000..1e301097 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/LICENSE.txt @@ -0,0 +1,41 @@ +BWidget ToolKit +Copyright (c) 1998-1999 UNIFIX. +Copyright (c) 2001-2002 ActiveState Corp. + +The following terms apply to all files associated with the software +unless explicitly disclaimed in individual files. + +The authors hereby grant permission to use, copy, modify, distribute, +and license this software and its documentation for any purpose, provided +that existing copyright notices are retained in all copies and that this +notice is included verbatim in any distributions. No written agreement, +license, or royalty fee is required for any of the authorized uses. +Modifications to this software may be copyrighted by their authors +and need not follow the licensing terms described here, provided that +the new terms are clearly indicated on the first page of each file where +they apply. + +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY +FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY +DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE +IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE +NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. + +GOVERNMENT USE: If you are acquiring this software on behalf of the +U.S. government, the Government shall have only "Restricted Rights" +in the software and related documentation as defined in the Federal +Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you +are acquiring the software on behalf of the Department of Defense, the +software shall be classified as "Commercial Computer Software" and the +Government shall have only "Restricted Rights" as defined in Clause +252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the +authors grant the U.S. Government and others acting in its behalf +permission to use and distribute the software in accordance with the +terms specified in this license. diff --git a/src/punk86.vfs/lib/BWidget1.9.16/README.txt b/src/punk86.vfs/lib/BWidget1.9.16/README.txt new file mode 100644 index 00000000..388ca91c --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/README.txt @@ -0,0 +1,127 @@ +BWidget ToolKit 1.9.15 December 2021 +Copyright (c) 1998-1999 UNIFIX. +Copyright (c) 2001-2002 ActiveState Corp. + +See the file LICENSE.txt for license info (uses Tcl's BSD-style license). + +-------------------------------------------------------------------------- + +WHAT IS BWIDGET ? + +The BWidget Toolkit is a high-level Widget Set for Tcl/Tk built using +native Tcl/Tk 8.x namespaces. + +The BWidgets have a professional look&feel as in other well known +Toolkits (Tix or Incr Widgets), but the concept is radically different +because everything is pure Tcl/Tk. No platform dependencies, and no +compiling required. The code is 100% Pure Tcl/Tk. + +The BWidget library was originally developed by UNIFIX Online, and +released under both the GNU Public License and the Tcl license. +BWidget is now maintained as a community project, hosted by +Sourceforge. Scores of fixes and enhancements have been added by +community developers. See the ChangeLog file for details. + +-------------------------------------------------------------------------- + +WIDGET LIST (1.9) + +Simple Widgets + Label Extended Label widget + Entry Extended Entry widget + Button Extended Button widget + ArrowButton Button widget with an arrow shape. + ProgressBar Progress indicator widget + ScrollView Display the visible area of a scrolled window + Separator 3D separator widget + +Manager Widgets + MainFrame Manage toplevel with menu, toolbar and statusbar + LabelFrame Frame with a Label + TitleFrame Frame with a title + ScrolledWindow Generic scrolled widget + ScrollableFrame Scrollable frame containing widget + PanedWindow Tiled layout manager widget + ButtonBox Set of buttons with horizontal or vertical layout + PagesManager Pages manager widget + NoteBook Notebook manager widget + Dialog Dialog abstraction with custom buttons + +Composite Widgets + LabelEntry LabelFrame containing an Entry widget. + ComboBox ComboBox widget + SpinBox SpinBox widget + Tree Tree widget + ListBox ListBox widget + MessageDlg Message dialog box + ProgressDlg Progress indicator dialog box + PasswdDlg Login/Password dialog box (contributed by Stephane Lavirotte) + SelectFont Font selection widget + SelectColor Color selection widget + +Commands Classes + Widget The Widget base class + DynamicHelp Provide help to Tk widget or BWidget + DragSite Commands set for Drag facilities + DropSite Commands set for Drop facilities + BWidget Utilities + +-------------------------------------------------------------------------- +INSTALLATION AND USE + +- On Unix Platform: + Uncompress the file BWidget-.tar.Z|gz + + To use the BWidget: + - If you have uncompressed the archive file under the Tcl Library Path + directory, you only need to do: + % package require BWidget + - If not, you have to specify the BWidget installation path in auto_path + global variable: + % lappend auto_path + % package require BWidget + + To launch the demo, you need to cd into the demo subdirectory: + $ cd /demo + $ wish demo.tcl + +- On Windows and others Platforms: + Uncompress the file BWidget-.zip + + To use the BWidget: + - If you uncompressed the archive file under the Tcl Library Path + directory, you only need to do: + % package require BWidget + - If not, you have to specify the BWidget installation path in auto_path + global variable: + % lappend auto_path your_path + % package require BWidget + + To launch the demo : + Double click on demo.tcl in the demo subdirectory + + +Distribution contains these directories: + +BWidget- Root directory and BWidget Tcl sources + BWman HTML manual pages + images images used by BWidget + lang Resources for language customization + demo Demo sources + tests BWidgets test suite + + +-------------------------------------------------------------------------- + +DOCUMENTATION + +HTML manual pages are available in the BWman subdirectory. Point to +index.html for frame version with tree navigation, or to contents.html +for no frame version. + +-------------------------------------------------------------------------- + +CONTACTS + +The BWidget toolkit is maintained on Sourceforge, at +http://www.sourceforge.net/projects/tcllib/ diff --git a/src/punk86.vfs/lib/BWidget1.9.16/arrow.tcl b/src/punk86.vfs/lib/BWidget1.9.16/arrow.tcl new file mode 100644 index 00000000..e51753a9 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/arrow.tcl @@ -0,0 +1,551 @@ +# ------------------------------------------------------------------------------ +# arrow.tcl +# This file is part of Unifix BWidget Toolkit +# ------------------------------------------------------------------------------ +# Index of commands: +# Public commands +# - ArrowButton::create +# - ArrowButton::configure +# - ArrowButton::cget +# - ArrowButton::invoke +# Private commands (redraw commands) +# - ArrowButton::_redraw +# - ArrowButton::_redraw_state +# - ArrowButton::_redraw_relief +# - ArrowButton::_redraw_whole +# Private commands (event bindings) +# - ArrowButton::_destroy +# - ArrowButton::_enter +# - ArrowButton::_leave +# - ArrowButton::_press +# - ArrowButton::_release +# - ArrowButton::_repeat +# ------------------------------------------------------------------------------ + +namespace eval ArrowButton { + Widget::define ArrowButton arrow DynamicHelp + + Widget::tkinclude ArrowButton button .c \ + include [list \ + -borderwidth -bd \ + -relief -highlightbackground \ + -highlightcolor -highlightthickness -takefocus] + + Widget::declare ArrowButton [list \ + [list -type Enum button 0 [list arrow button]] \ + [list -dir Enum top 0 [list top bottom left right]] \ + [list -width Int 15 0 "%d >= 0"] \ + [list -height Int 15 0 "%d >= 0"] \ + [list -ipadx Int 0 0 "%d >= 0"] \ + [list -ipady Int 0 0 "%d >= 0"] \ + [list -clean Int 2 0 "%d >= 0 && %d <= 2"] \ + [list -activeforeground TkResource "" 0 button] \ + [list -activebackground TkResource "" 0 button] \ + [list -disabledforeground TkResource "" 0 button] \ + [list -foreground TkResource "" 0 button] \ + [list -background TkResource "" 0 button] \ + [list -state TkResource "" 0 button] \ + [list -troughcolor TkResource "" 0 scrollbar] \ + [list -arrowbd Int 1 0 "%d >= 0 && %d <= 2"] \ + [list -arrowrelief Enum raised 0 [list raised sunken]] \ + [list -command String "" 0] \ + [list -armcommand String "" 0] \ + [list -disarmcommand String "" 0] \ + [list -repeatdelay Int 0 0 "%d >= 0"] \ + [list -repeatinterval Int 0 0 "%d >= 0"] \ + [list -fg Synonym -foreground] \ + [list -bg Synonym -background] \ + ] + DynamicHelp::include ArrowButton balloon + + bind BwArrowButtonC {ArrowButton::_enter %W} + bind BwArrowButtonC {ArrowButton::_leave %W} + bind BwArrowButtonC {ArrowButton::_press %W} + bind BwArrowButtonC {ArrowButton::_release %W} + bind BwArrowButtonC {ArrowButton::invoke %W; break} + bind BwArrowButtonC {ArrowButton::invoke %W; break} + bind BwArrowButton {ArrowButton::_redraw_whole %W %w %h} + bind BwArrowButton {ArrowButton::_destroy %W} + + variable _grab + variable _moved + + array set _grab {current "" pressed "" oldstate "normal" oldrelief ""} +} + + +# ----------------------------------------------------------------------------- +# Command ArrowButton::create +# ----------------------------------------------------------------------------- +proc ArrowButton::create { path args } { + # Initialize configuration mappings and parse arguments + array set submaps [list ArrowButton [list ] .c [list ]] + array set submaps [Widget::parseArgs ArrowButton $args] + + # Create the class frame (so we can do the option db queries) + frame $path -class ArrowButton -borderwidth 0 -highlightthickness 0 + Widget::initFromODB ArrowButton $path $submaps(ArrowButton) + + # Create the canvas with the initial options + eval [list canvas $path.c] $submaps(.c) + + # Compute the width and height of the canvas from the width/height + # of the ArrowButton and the borderwidth/hightlightthickness. + set w [Widget::getMegawidgetOption $path -width] + set h [Widget::getMegawidgetOption $path -height] + set bd [Widget::cget $path -borderwidth] + set ht [Widget::cget $path -highlightthickness] + set pad [expr {2*($bd+$ht)}] + + $path.c configure -width [expr {$w-$pad}] -height [expr {$h-$pad}] + bindtags $path [list $path BwArrowButton [winfo toplevel $path] all] + bindtags $path.c [list $path.c BwArrowButtonC [winfo toplevel $path.c] all] + pack $path.c -expand yes -fill both + + DynamicHelp::sethelp $path $path.c 1 + + set ::ArrowButton::_moved($path) 0 + + return [Widget::create ArrowButton $path] +} + + +# ----------------------------------------------------------------------------- +# Command ArrowButton::configure +# ----------------------------------------------------------------------------- +proc ArrowButton::configure { path args } { + set res [Widget::configure $path $args] + + set ch1 [expr {[Widget::hasChanged $path -width w] | + [Widget::hasChanged $path -height h] | + [Widget::hasChanged $path -borderwidth bd] | + [Widget::hasChanged $path -highlightthickness ht]}] + set ch2 [expr {[Widget::hasChanged $path -type val] | + [Widget::hasChanged $path -ipadx val] | + [Widget::hasChanged $path -ipady val] | + [Widget::hasChanged $path -arrowbd val] | + [Widget::hasChanged $path -clean val] | + [Widget::hasChanged $path -dir val]}] + + if { $ch1 } { + set pad [expr {2*($bd+$ht)}] + $path.c configure \ + -width [expr {$w-$pad}] -height [expr {$h-$pad}] \ + -borderwidth $bd -highlightthickness $ht + set ch2 1 + } + if { $ch2 } { + _redraw_whole $path [winfo width $path] [winfo height $path] + } else { + _redraw_relief $path + _redraw_state $path + } + DynamicHelp::sethelp $path $path.c + + return $res +} + + +# ----------------------------------------------------------------------------- +# Command ArrowButton::cget +# ----------------------------------------------------------------------------- +proc ArrowButton::cget { path option } { + return [Widget::cget $path $option] +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::invoke +# ------------------------------------------------------------------------------ +proc ArrowButton::invoke { path } { + if { ![string equal [winfo class $path] "ArrowButton"] } { + set path [winfo parent $path] + } + if { ![string equal [Widget::getoption $path -state] "disabled"] } { + set oldstate [Widget::getoption $path -state] + if { [string equal [Widget::getoption $path -type] "button"] } { + set oldrelief [Widget::getoption $path -relief] + configure $path -state active -relief sunken + } else { + set oldrelief [Widget::getoption $path -arrowrelief] + configure $path -state active -arrowrelief sunken + } + update idletasks + if {[llength [set cmd [Widget::getoption $path -armcommand]]]} { + uplevel \#0 $cmd + } + after 10 + if { [string equal [Widget::getoption $path -type] "button"] } { + configure $path -state $oldstate -relief $oldrelief + } else { + configure $path -state $oldstate -arrowrelief $oldrelief + } + if {[llength [set cmd [Widget::getoption $path -disarmcommand]]]} { + uplevel \#0 $cmd + } + if {[llength [set cmd [Widget::getoption $path -command]]]} { + uplevel \#0 $cmd + } + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_redraw +# ------------------------------------------------------------------------------ +proc ArrowButton::_redraw { path width height } { + variable _moved + + set _moved($path) 0 + set type [Widget::getoption $path -type] + set dir [Widget::getoption $path -dir] + set bd [expr {[$path.c cget -borderwidth] + [$path.c cget -highlightthickness] + 1}] + set clean [Widget::getoption $path -clean] + if { [string equal $type "arrow"] } { + if { [set id [$path.c find withtag rect]] == "" } { + $path.c create rectangle $bd $bd [expr {$width-$bd-1}] [expr {$height-$bd-1}] -tags rect + } else { + $path.c coords $id $bd $bd [expr {$width-$bd-1}] [expr {$height-$bd-1}] + } + $path.c lower rect + set arrbd [Widget::getoption $path -arrowbd] + set bd [expr {$bd+$arrbd-1}] + } else { + $path.c delete rect + } + # w and h are max width and max height of arrow + set w [expr {$width - 2*([Widget::getoption $path -ipadx]+$bd)}] + set h [expr {$height - 2*([Widget::getoption $path -ipady]+$bd)}] + + if { $w < 2 } {set w 2} + if { $h < 2 } {set h 2} + + if { $clean > 0 } { + # arrange for base to be odd + if { [string equal $dir "top"] || [string equal $dir "bottom"] } { + if { !($w % 2) } { + incr w -1 + } + if { $clean == 2 } { + # arrange for h = (w+1)/2 + set h2 [expr {($w+1)/2}] + if { $h2 > $h } { + set w [expr {2*$h-1}] + } else { + set h $h2 + } + } + } else { + if { !($h % 2) } { + incr h -1 + } + if { $clean == 2 } { + # arrange for w = (h+1)/2 + set w2 [expr {($h+1)/2}] + if { $w2 > $w } { + set h [expr {2*$w-1}] + } else { + set w $w2 + } + } + } + } + + set x0 [expr {($width-$w)/2}] + set y0 [expr {($height-$h)/2}] + set x1 [expr {$x0+$w-1}] + set y1 [expr {$y0+$h-1}] + + switch $dir { + top { + set xd [expr {($x0+$x1)/2}] + if { [set id [$path.c find withtag poly]] == "" } { + $path.c create polygon $x0 $y1 $x1 $y1 $xd $y0 -tags poly + } else { + $path.c coords $id $x0 $y1 $x1 $y1 $xd $y0 + } + if { [string equal $type "arrow"] } { + if { [set id [$path.c find withtag bot]] == "" } { + $path.c create line $x0 $y1 $x1 $y1 $xd $y0 -tags bot + } else { + $path.c coords $id $x0 $y1 $x1 $y1 $xd $y0 + } + if { [set id [$path.c find withtag top]] == "" } { + $path.c create line $x0 $y1 $xd $y0 -tags top + } else { + $path.c coords $id $x0 $y1 $xd $y0 + } + $path.c itemconfigure top -width $arrbd + $path.c itemconfigure bot -width $arrbd + } else { + $path.c delete top + $path.c delete bot + } + } + bottom { + set xd [expr {($x0+$x1)/2}] + if { [set id [$path.c find withtag poly]] == "" } { + $path.c create polygon $x1 $y0 $x0 $y0 $xd $y1 -tags poly + } else { + $path.c coords $id $x1 $y0 $x0 $y0 $xd $y1 + } + if { [string equal $type "arrow"] } { + if { [set id [$path.c find withtag top]] == "" } { + $path.c create line $x1 $y0 $x0 $y0 $xd $y1 -tags top + } else { + $path.c coords $id $x1 $y0 $x0 $y0 $xd $y1 + } + if { [set id [$path.c find withtag bot]] == "" } { + $path.c create line $x1 $y0 $xd $y1 -tags bot + } else { + $path.c coords $id $x1 $y0 $xd $y1 + } + $path.c itemconfigure top -width $arrbd + $path.c itemconfigure bot -width $arrbd + } else { + $path.c delete top + $path.c delete bot + } + } + left { + set yd [expr {($y0+$y1)/2}] + if { [set id [$path.c find withtag poly]] == "" } { + $path.c create polygon $x1 $y0 $x1 $y1 $x0 $yd -tags poly + } else { + $path.c coords $id $x1 $y0 $x1 $y1 $x0 $yd + } + if { [string equal $type "arrow"] } { + if { [set id [$path.c find withtag bot]] == "" } { + $path.c create line $x1 $y0 $x1 $y1 $x0 $yd -tags bot + } else { + $path.c coords $id $x1 $y0 $x1 $y1 $x0 $yd + } + if { [set id [$path.c find withtag top]] == "" } { + $path.c create line $x1 $y0 $x0 $yd -tags top + } else { + $path.c coords $id $x1 $y0 $x0 $yd + } + $path.c itemconfigure top -width $arrbd + $path.c itemconfigure bot -width $arrbd + } else { + $path.c delete top + $path.c delete bot + } + } + right { + set yd [expr {($y0+$y1)/2}] + if { [set id [$path.c find withtag poly]] == "" } { + $path.c create polygon $x0 $y1 $x0 $y0 $x1 $yd -tags poly + } else { + $path.c coords $id $x0 $y1 $x0 $y0 $x1 $yd + } + if { [string equal $type "arrow"] } { + if { [set id [$path.c find withtag top]] == "" } { + $path.c create line $x0 $y1 $x0 $y0 $x1 $yd -tags top + } else { + $path.c coords $id $x0 $y1 $x0 $y0 $x1 $yd + } + if { [set id [$path.c find withtag bot]] == "" } { + $path.c create line $x0 $y1 $x1 $yd -tags bot + } else { + $path.c coords $id $x0 $y1 $x1 $yd + } + $path.c itemconfigure top -width $arrbd + $path.c itemconfigure bot -width $arrbd + } else { + $path.c delete top + $path.c delete bot + } + } + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_redraw_state +# ------------------------------------------------------------------------------ +proc ArrowButton::_redraw_state { path } { + set state [Widget::getoption $path -state] + if { [string equal [Widget::getoption $path -type] "button"] } { + switch $state { + normal {set bg -background; set fg -foreground} + active {set bg -activebackground; set fg -activeforeground} + disabled {set bg -background; set fg -disabledforeground} + } + set fg [Widget::getoption $path $fg] + $path.c configure -background [Widget::getoption $path $bg] + $path.c itemconfigure poly -fill $fg -outline $fg + } else { + switch $state { + normal {set stipple ""; set bg [Widget::getoption $path -background] } + active {set stipple ""; set bg [Widget::getoption $path -activebackground] } + disabled {set stipple gray50; set bg black } + } + set thrc [Widget::getoption $path -troughcolor] + $path.c configure -background [Widget::getoption $path -background] + $path.c itemconfigure rect -fill $thrc -outline $thrc + $path.c itemconfigure poly -fill $bg -outline $bg -stipple $stipple + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_redraw_relief +# ------------------------------------------------------------------------------ +proc ArrowButton::_redraw_relief { path } { + variable _moved + + if { [string equal [Widget::getoption $path -type] "button"] } { + if { [string equal [Widget::getoption $path -relief] "sunken"] } { + if { !$_moved($path) } { + $path.c move poly 1 1 + set _moved($path) 1 + } + } else { + if { $_moved($path) } { + $path.c move poly -1 -1 + set _moved($path) 0 + } + } + } else { + set col3d [BWidget::get3dcolor $path [Widget::getoption $path -background]] + switch [Widget::getoption $path -arrowrelief] { + raised {set top [lindex $col3d 1]; set bot [lindex $col3d 0]} + sunken {set top [lindex $col3d 0]; set bot [lindex $col3d 1]} + } + $path.c itemconfigure top -fill $top + $path.c itemconfigure bot -fill $bot + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_redraw_whole +# ------------------------------------------------------------------------------ +proc ArrowButton::_redraw_whole { path width height } { + _redraw $path $width $height + _redraw_relief $path + _redraw_state $path +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_enter +# ------------------------------------------------------------------------------ +proc ArrowButton::_enter { path } { + variable _grab + set path [winfo parent $path] + set _grab(current) $path + if { ![string equal [Widget::getoption $path -state] "disabled"] } { + set _grab(oldstate) [Widget::getoption $path -state] + configure $path -state active + if { $_grab(pressed) == $path } { + if { [string equal [Widget::getoption $path -type] "button"] } { + set _grab(oldrelief) [Widget::getoption $path -relief] + configure $path -relief sunken + } else { + set _grab(oldrelief) [Widget::getoption $path -arrowrelief] + configure $path -arrowrelief sunken + } + } + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_leave +# ------------------------------------------------------------------------------ +proc ArrowButton::_leave { path } { + variable _grab + set path [winfo parent $path] + set _grab(current) "" + if { ![string equal [Widget::getoption $path -state] "disabled"] } { + configure $path -state $_grab(oldstate) + if { $_grab(pressed) == $path } { + if { [string equal [Widget::getoption $path -type] "button"] } { + configure $path -relief $_grab(oldrelief) + } else { + configure $path -arrowrelief $_grab(oldrelief) + } + } + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_press +# ------------------------------------------------------------------------------ +proc ArrowButton::_press { path } { + variable _grab + set path [winfo parent $path] + if { ![string equal [Widget::getoption $path -state] "disabled"] } { + set _grab(pressed) $path + if { [string equal [Widget::getoption $path -type] "button"] } { + set _grab(oldrelief) [Widget::getoption $path -relief] + configure $path -relief sunken + } else { + set _grab(oldrelief) [Widget::getoption $path -arrowrelief] + configure $path -arrowrelief sunken + } + if {[llength [set cmd [Widget::getoption $path -armcommand]]]} { + uplevel \#0 $cmd + if { [set delay [Widget::getoption $path -repeatdelay]] > 0 || + [set delay [Widget::getoption $path -repeatinterval]] > 0 } { + after $delay [list ArrowButton::_repeat $path] + } + } + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_release +# ------------------------------------------------------------------------------ +proc ArrowButton::_release { path } { + variable _grab + set path [winfo parent $path] + if { $_grab(pressed) == $path } { + set _grab(pressed) "" + if { [string equal [Widget::getoption $path -type] "button"] } { + configure $path -relief $_grab(oldrelief) + } else { + configure $path -arrowrelief $_grab(oldrelief) + } + if {[llength [set cmd [Widget::getoption $path -disarmcommand]]]} { + uplevel \#0 $cmd + } + if { $_grab(current) == $path && + ![string equal [Widget::getoption $path -state] "disabled"] && + [llength [set cmd [Widget::getoption $path -command]]]} { + uplevel \#0 $cmd + } + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_repeat +# ------------------------------------------------------------------------------ +proc ArrowButton::_repeat { path } { + variable _grab + if { $_grab(current) == $path && $_grab(pressed) == $path && + ![string equal [Widget::getoption $path -state] "disabled"] && + [llength [set cmd [Widget::getoption $path -armcommand]]]} { + uplevel \#0 $cmd + } + if { $_grab(pressed) == $path && + ([set delay [Widget::getoption $path -repeatinterval]] > 0 || + [set delay [Widget::getoption $path -repeatdelay]] > 0) } { + after $delay [list ArrowButton::_repeat $path] + } +} + + +# ------------------------------------------------------------------------------ +# Command ArrowButton::_destroy +# ------------------------------------------------------------------------------ +proc ArrowButton::_destroy { path } { + variable _moved + Widget::destroy $path + unset _moved($path) +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/bitmap.tcl b/src/punk86.vfs/lib/BWidget1.9.16/bitmap.tcl new file mode 100644 index 00000000..3e157d52 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/bitmap.tcl @@ -0,0 +1,94 @@ +# ------------------------------------------------------------------------------ +# bitmap.tcl +# This file is part of Unifix BWidget Toolkit +# $Id: bitmap.tcl,v 1.4 2003/10/20 21:23:52 damonc Exp $ +# ------------------------------------------------------------------------------ +# Index of commands: +# - Bitmap::get +# - Bitmap::_init +# ---------------------------------------------------------------------------- +namespace eval Bitmap { + Widget::define Bitmap bitmap -classonly + + variable path + variable _bmp + variable _types { + photo .gif + photo .ppm + bitmap .xbm + photo .xpm + } + + proc use {} {} +} + + +# ---------------------------------------------------------------------------- +# Command Bitmap::get +# ---------------------------------------------------------------------------- +proc Bitmap::get { name } { + variable path + variable _bmp + variable _types + + if {[info exists _bmp($name)]} { + return $_bmp($name) + } + + # --- Nom de fichier avec extension --------------------------------- + set ext [file extension $name] + if { $ext != "" } { + if { ![info exists _bmp($ext)] } { + error "$ext not supported" + } + + if { [file exists $name] } { + if {[string equal $ext ".xpm"]} { + set _bmp($name) [xpm-to-image $name] + return $_bmp($name) + } + if {![catch {set _bmp($name) [image create $_bmp($ext) -file $name]}]} { + return $_bmp($name) + } + } + } + + foreach dir $path { + foreach {type ext} $_types { + if { [file exists [file join $dir $name$ext]] } { + if {[string equal $ext ".xpm"]} { + set _bmp($name) [xpm-to-image [file join $dir $name$ext]] + return $_bmp($name) + } else { + if {![catch {set _bmp($name) [image create $type -file [file join $dir $name$ext]]}]} { + return $_bmp($name) + } + } + } + } + } + + return -code error "$name not found" +} + + +# ---------------------------------------------------------------------------- +# Command Bitmap::_init +# ---------------------------------------------------------------------------- +proc Bitmap::_init { } { + global env + variable path + variable _bmp + variable _types + + set path [list "." [file join $::BWIDGET::LIBRARY images]] + set supp [image types] + foreach {type ext} $_types { + if { [lsearch $supp $type] != -1} { + set _bmp($ext) $type + } + } +} + + +Bitmap::_init diff --git a/src/punk86.vfs/lib/BWidget1.9.16/button.tcl b/src/punk86.vfs/lib/BWidget1.9.16/button.tcl new file mode 100644 index 00000000..cb365cf8 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/button.tcl @@ -0,0 +1,397 @@ +# ---------------------------------------------------------------------------- +# button.tcl +# This file is part of Unifix BWidget Toolkit +# ---------------------------------------------------------------------------- +# Index of commands: +# Public commands +# - Button::create +# - Button::configure +# - Button::cget +# - Button::invoke +# Private commands (event bindings) +# - Button::_destroy +# - Button::_enter +# - Button::_leave +# - Button::_press +# - Button::_release +# - Button::_repeat +# ---------------------------------------------------------------------------- + +namespace eval Button { + Widget::define Button button DynamicHelp + + set remove [list -command -relief -text -textvariable -underline -state] + if {[info tclversion] > 8.3} { + lappend remove -repeatdelay -repeatinterval + } + if {$::Widget::_theme} { + lappend remove -activebackground -activeforeground -anchor -background\ + -bitmap -borderwidth -disabledforeground -font -foreground\ + -height -highlightbackground -highlightcolor -highlightthickness\ + -justify -overrelief -padx -pady -relief -wraplength + } + Widget::tkinclude Button button :cmd remove $remove + + Widget::declare Button { + {-name String "" 0} + {-text String "" 0} + {-textvariable String "" 0} + {-underline Int -1 0 "%d >= -1"} + {-armcommand String "" 0} + {-disarmcommand String "" 0} + {-command String "" 0} + {-state TkResource "" 0 button} + {-repeatdelay Int 0 0 "%d >= 0"} + {-repeatinterval Int 0 0 "%d >= 0"} + {-relief Enum raised 0 {raised sunken flat ridge solid groove link}} + } + + DynamicHelp::include Button balloon + + variable _current "" + variable _pressed "" + + bind BwButton {Button::_enter %W} + bind BwButton {Button::_leave %W} + bind BwButton {Button::_press %W} + bind BwButton {Button::_release %W} + bind BwButton {Button::invoke %W; break} + bind BwButton {Button::invoke %W; break} + bind BwButton <> {Button::invoke %W; break} + bind BwButton {Widget::destroy %W} +} + + +# ---------------------------------------------------------------------------- +# Command Button::create +# ---------------------------------------------------------------------------- +proc Button::create { path args } { + array set maps [list Button {} :cmd {}] + array set maps [Widget::parseArgs Button $args] + if {$::Widget::_theme} { + eval [concat [list ttk::button $path] $maps(:cmd)] + } else { + eval [concat [list button $path] $maps(:cmd)] + } + Widget::initFromODB Button $path $maps(Button) + + # Do some extra configuration on the button + set var [Widget::getMegawidgetOption $path -textvariable] + set st [Widget::getMegawidgetOption $path -state] + if { ![string length $var] } { + set desc [BWidget::getname [Widget::getMegawidgetOption $path -name]] + if { [llength $desc] } { + set text [lindex $desc 0] + set under [lindex $desc 1] + Widget::configure $path [list -text $text] + Widget::configure $path [list -underline $under] + } else { + set text [Widget::getMegawidgetOption $path -text] + set under [Widget::getMegawidgetOption $path -underline] + } + } else { + set under -1 + set text "" + Widget::configure $path [list -underline $under] + } + + $path configure -text $text -underline $under \ + -textvariable $var -state $st + # Map relief flat on Toolbutton for ttk + set relief [Widget::getMegawidgetOption $path -relief] + if {$::Widget::_theme} { + if { [string equal $relief "link"] } { + $path configure -style Toolbutton + } + } else { + if { [string equal $relief "link"] } { + set relief "flat" + } + $path configure -relief $relief + } + bindtags $path [list $path BwButton [winfo toplevel $path] all] + + set accel1 [string tolower [string index $text $under]] + set accel2 [string toupper $accel1] + if { $accel1 != "" } { + bind [winfo toplevel $path] [list Button::invoke $path] + bind [winfo toplevel $path] [list Button::invoke $path] + } + + DynamicHelp::sethelp $path $path 1 + + return [Widget::create Button $path] +} + + +# ---------------------------------------------------------------------------- +# Command Button::configure +# ---------------------------------------------------------------------------- +proc Button::configure { path args } { + set oldunder [$path:cmd cget -underline] + if { $oldunder != -1 } { + set oldaccel1 [string tolower [string index [$path:cmd cget -text] $oldunder]] + set oldaccel2 [string toupper $oldaccel1] + } else { + set oldaccel1 "" + set oldaccel2 "" + } + set res [Widget::configure $path $args] + + # Extract all the modified bits we're interested in + foreach {cr cs cv cn ct cu} [Widget::hasChangedX $path \ + -relief -state -textvariable -name -text -underline] break + if { $cr || $cs } { + set relief [Widget::cget $path -relief] + set state [Widget::cget $path -state] + if { $::Widget::_theme} { + if { [string equal $relief "link"] } { + $path:cmd configure -style Toolbutton + } else { + $path:cmd configure -style "" + } + } else { + if { [string equal $relief "link"] } { + if { [string equal $state "active"] } { + set relief "raised" + } else { + set relief "flat" + } + } + $path:cmd configure -relief $relief + } + $path:cmd configure -state $state + } + + if { $cv || $cn || $ct || $cu } { + set var [Widget::cget $path -textvariable] + set text [Widget::cget $path -text] + set under [Widget::cget $path -underline] + if { ![string length $var] } { + set desc [BWidget::getname [Widget::cget $path -name]] + if { [llength $desc] } { + set text [lindex $desc 0] + set under [lindex $desc 1] + } + } else { + set under -1 + set text "" + } + set top [winfo toplevel $path] + if { $oldaccel1 != "" } { + bind $top {} + bind $top {} + } + set accel1 [string tolower [string index $text $under]] + set accel2 [string toupper $accel1] + if { $accel1 != "" } { + bind $top [list Button::invoke $path] + bind $top [list Button::invoke $path] + } + $path:cmd configure -text $text -underline $under -textvariable $var + } + DynamicHelp::sethelp $path $path + + set res +} + + +# ---------------------------------------------------------------------------- +# Command Button::cget +# ---------------------------------------------------------------------------- +proc Button::cget { path option } { + Widget::cget $path $option +} + + +# ---------------------------------------------------------------------------- +# Command Button::identify +# ---------------------------------------------------------------------------- +proc Button::identify { path args } { + eval $path:cmd identify $args +} + + +# ---------------------------------------------------------------------------- +# Command Button::instate +# ---------------------------------------------------------------------------- +proc Button::instate { path args } { + eval $path:cmd instate $args +} + + +# ---------------------------------------------------------------------------- +# Command Button::state +# ---------------------------------------------------------------------------- +proc Button::state { path args } { + eval $path:cmd state $args +} + + +# ---------------------------------------------------------------------------- +# Command Button::invoke +# ---------------------------------------------------------------------------- +proc Button::invoke { path } { + if { ![string equal [$path:cmd cget -state] "disabled"] } { + if { $::Widget::_theme} { + $path:cmd configure -state active + $path:cmd state pressed + } else { + $path:cmd configure -state active -relief sunken + } + update idletasks + set cmd [Widget::getMegawidgetOption $path -armcommand] + if { $cmd != "" } { + uplevel \#0 $cmd + } + after 100 + $path:cmd configure -state [Widget::getMegawidgetOption $path -state] + if { $::Widget::_theme} { + $path:cmd state !pressed + } else { + set relief [Widget::getMegawidgetOption $path -relief] + if { [string equal $relief "link"] } { + set relief flat + } + $path:cmd configure -relief $relief + } + set cmd [Widget::getMegawidgetOption $path -disarmcommand] + if { $cmd != "" } { + uplevel \#0 $cmd + } + set cmd [Widget::getMegawidgetOption $path -command] + if { $cmd != "" } { + uplevel \#0 $cmd + } + } +} + +# ---------------------------------------------------------------------------- +# Command Button::_enter +# ---------------------------------------------------------------------------- +proc Button::_enter { path } { + variable _current + variable _pressed + + set _current $path + if { ![string equal [$path:cmd cget -state] "disabled"] } { + $path:cmd configure -state active + if { $::Widget::_theme } { + # $path:cmd state active + } else { + if { $_pressed == $path } { + $path:cmd configure -relief sunken + } elseif { [string equal [Widget::cget $path -relief] "link"] } { + $path:cmd configure -relief raised + } + } + } +} + + +# ---------------------------------------------------------------------------- +# Command Button::_leave +# ---------------------------------------------------------------------------- +proc Button::_leave { path } { + variable _current + variable _pressed + + set _current "" + if { ![string equal [$path:cmd cget -state] "disabled"] } { + $path:cmd configure -state [Widget::cget $path -state] + if { $::Widget::_theme } { + } else { + set relief [Widget::cget $path -relief] + if { $_pressed == $path } { + if { [string equal $relief "link"] } { + set relief raised + } + $path:cmd configure -relief $relief + } elseif { [string equal $relief "link"] } { + $path:cmd configure -relief flat + } + } + } +} + + +# ---------------------------------------------------------------------------- +# Command Button::_press +# ---------------------------------------------------------------------------- +proc Button::_press { path } { + variable _pressed + + if { ![string equal [$path:cmd cget -state] "disabled"] } { + set _pressed $path + if { $::Widget::_theme} { + ttk::clickToFocus $path + $path state pressed + } else { + $path:cmd configure -relief sunken + } + set cmd [Widget::getMegawidgetOption $path -armcommand] + if { $cmd != "" } { + uplevel \#0 $cmd + set repeatdelay [Widget::getMegawidgetOption $path -repeatdelay] + set repeatint [Widget::getMegawidgetOption $path -repeatinterval] + if { $repeatdelay > 0 } { + after $repeatdelay "Button::_repeat $path" + } elseif { $repeatint > 0 } { + after $repeatint "Button::_repeat $path" + } + } + } +} + + +# ---------------------------------------------------------------------------- +# Command Button::_release +# ---------------------------------------------------------------------------- +proc Button::_release { path } { + variable _current + variable _pressed + + if { $_pressed == $path } { + set _pressed "" + after cancel "Button::_repeat $path" + if { $::Widget::_theme} { + $path state !pressed + } else { + set relief [Widget::getMegawidgetOption $path -relief] + if { [string equal $relief "link"] } { + set relief raised + } + $path:cmd configure -relief $relief + } + set cmd [Widget::getMegawidgetOption $path -disarmcommand] + if { $cmd != "" } { + uplevel \#0 $cmd + } + if { $_current == $path && + ![string equal [$path:cmd cget -state] "disabled"] && \ + [set cmd [Widget::getMegawidgetOption $path -command]] != "" } { + uplevel \#0 $cmd + } + } +} + + +# ---------------------------------------------------------------------------- +# Command Button::_repeat +# ---------------------------------------------------------------------------- +proc Button::_repeat { path } { + variable _current + variable _pressed + + if { $_current == $path && $_pressed == $path && + ![string equal [$path:cmd cget -state] "disabled"] && + [set cmd [Widget::getMegawidgetOption $path -armcommand]] != "" } { + uplevel \#0 $cmd + } + if { $_pressed == $path && + ([set delay [Widget::getMegawidgetOption $path -repeatinterval]] >0 || + [set delay [Widget::getMegawidgetOption $path -repeatdelay]] > 0) } { + after $delay "Button::_repeat $path" + } +} + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/buttonbox.tcl b/src/punk86.vfs/lib/BWidget1.9.16/buttonbox.tcl new file mode 100644 index 00000000..9fefc2a3 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/buttonbox.tcl @@ -0,0 +1,419 @@ +# ---------------------------------------------------------------------------- +# buttonbox.tcl +# This file is part of Unifix BWidget Toolkit +# ---------------------------------------------------------------------------- +# Index of commands: +# - ButtonBox::create +# - ButtonBox::configure +# - ButtonBox::cget +# - ButtonBox::add +# - ButtonBox::itemconfigure +# - ButtonBox::itemcget +# - ButtonBox::setfocus +# - ButtonBox::invoke +# - ButtonBox::index +# - ButtonBox::_destroy +# ---------------------------------------------------------------------------- + +namespace eval ButtonBox { + Widget::define ButtonBox buttonbox Button + + Widget::declare ButtonBox { + {-background TkResource "" 0 frame} + {-orient Enum horizontal 1 {horizontal vertical}} + {-state Enum "normal" 0 {normal disabled}} + {-homogeneous Boolean 1 1} + {-spacing Int 10 0 "%d >= 0"} + {-padx TkResource "" 0 button} + {-pady TkResource "" 0 button} + {-default Int -1 0 "%d >= -1"} + {-bg Synonym -background} + } + + Widget::addmap ButtonBox "" :cmd {-background {}} + + bind ButtonBox [list ButtonBox::_destroy %W] +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::create +# ---------------------------------------------------------------------------- +proc ButtonBox::create { path args } { + Widget::init ButtonBox $path $args + + variable $path + upvar 0 $path data + + eval [list frame $path] [Widget::subcget $path :cmd] \ + [list -class ButtonBox -takefocus 0 -highlightthickness 0] + # For 8.4+ we don't want to inherit the padding + catch {$path configure -padx 0 -pady 0} + + set data(max) 0 + set data(nbuttons) 0 + set data(buttons) [list] + set data(default) [Widget::getoption $path -default] + + return [Widget::create ButtonBox $path] +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::configure +# ---------------------------------------------------------------------------- +proc ButtonBox::configure { path args } { + variable $path + upvar 0 $path data + + set res [Widget::configure $path $args] + + if { [Widget::hasChanged $path -default val] } { + if { $data(default) != -1 && $val != -1 } { + set but $path.b$data(default) + if { [winfo exists $but] } { + $but configure -default normal + } + set but $path.b$val + if { [winfo exists $but] } { + $but configure -default active + } + set data(default) $val + } else { + Widget::setoption $path -default $data(default) + } + } + + if {[Widget::hasChanged $path -state val]} { + foreach i $data(buttons) { + $path.b$i configure -state $val + } + } + + return $res +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::cget +# ---------------------------------------------------------------------------- +proc ButtonBox::cget { path option } { + return [Widget::cget $path $option] +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::add +# ---------------------------------------------------------------------------- +proc ButtonBox::add { path args } { + return [eval [linsert $args 0 insert $path end]] +} + + +proc ButtonBox::insert { path idx args } { + variable $path + upvar 0 $path data + + set but $path.b$data(nbuttons) + set spacing [Widget::getoption $path -spacing] + + ## Save the current spacing setting for this button. Buttons + ## appended to the end of the box have their spacing applied + ## to their left while all other have their spacing applied + ## to their right. + if {$idx == "end"} { + set data(spacing,$data(nbuttons)) [list left $spacing] + lappend data(buttons) $data(nbuttons) + } else { + set data(spacing,$data(nbuttons)) [list right $spacing] + set data(buttons) [linsert $data(buttons) $idx $data(nbuttons)] + } + + if { $data(nbuttons) == $data(default) } { + set style active + } elseif { $data(default) == -1 } { + set style disabled + } else { + set style normal + } + + array set flags $args + set tags "" + if { [info exists flags(-tags)] } { + set tags $flags(-tags) + unset flags(-tags) + set args [array get flags] + } + + if { $::Widget::_theme} { + eval [list Button::create $but] \ + $args [list -default $style] + } else { + eval [list Button::create $but \ + -background [Widget::getoption $path -background]\ + -padx [Widget::getoption $path -padx] \ + -pady [Widget::getoption $path -pady]] \ + $args [list -default $style] + } + + # ericm@scriptics.com: set up tags, just like the menu items + foreach tag $tags { + lappend data(tags,$tag) $but + if { ![info exists data(tagstate,$tag)] } { + set data(tagstate,$tag) 0 + } + } + set data(buttontags,$but) $tags + # ericm@scriptics.com + + _redraw $path + + incr data(nbuttons) + + return $but +} + + +proc ButtonBox::delete { path idx } { + variable $path + upvar 0 $path data + + set i [lindex $data(buttons) $idx] + set data(buttons) [lreplace $data(buttons) $idx $idx] + destroy $path.b$i +} + + +# ButtonBox::setbuttonstate -- +# +# Set the state of a given button tag. If this makes any buttons +# enable-able (ie, all of their tags are TRUE), enable them. +# +# Arguments: +# path the button box widget name +# tag the tag to modify +# state the new state of $tag (0 or 1) +# +# Results: +# None. + +proc ButtonBox::setbuttonstate {path tag state} { + variable $path + upvar 0 $path data + # First see if this is a real tag + if { [info exists data(tagstate,$tag)] } { + set data(tagstate,$tag) $state + foreach but $data(tags,$tag) { + set expression "1" + foreach buttontag $data(buttontags,$but) { + append expression " && $data(tagstate,$buttontag)" + } + if { [expr $expression] } { + set state normal + } else { + set state disabled + } + $but configure -state $state + } + } + return +} + +# ButtonBox::getbuttonstate -- +# +# Retrieve the state of a given button tag. +# +# Arguments: +# path the button box widget name +# tag the tag to modify +# +# Results: +# None. + +proc ButtonBox::getbuttonstate {path tag} { + variable $path + upvar 0 $path data + # First see if this is a real tag + if { [info exists data(tagstate,$tag)] } { + return $data(tagstate,$tag) + } else { + error "unknown tag $tag" + } +} + +# ---------------------------------------------------------------------------- +# Command ButtonBox::itemconfigure +# ---------------------------------------------------------------------------- +proc ButtonBox::itemconfigure { path index args } { + if { [set idx [lsearch $args -default]] != -1 } { + set args [lreplace $args $idx [expr {$idx+1}]] + } + return [eval [list Button::configure $path.b[index $path $index]] $args] +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::itemcget +# ---------------------------------------------------------------------------- +proc ButtonBox::itemcget { path index option } { + return [Button::cget $path.b[index $path $index] $option] +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::setfocus +# ---------------------------------------------------------------------------- +proc ButtonBox::setfocus { path index } { + set but $path.b[index $path $index] + if { [winfo exists $but] } { + focus $but + } +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::invoke +# ---------------------------------------------------------------------------- +proc ButtonBox::invoke { path index } { + set but $path.b[index $path $index] + if { [winfo exists $but] } { + Button::invoke $but + } +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::index +# ---------------------------------------------------------------------------- +proc ButtonBox::index { path index } { + variable $path + upvar 0 $path data + + set n [expr {$data(nbuttons) - 1}] + + if {[string equal $index "default"]} { + set res [Widget::getoption $path -default] + } elseif {$index == "end" || $index == "last"} { + set res $n + } elseif {![string is integer -strict $index]} { + ## It's not an integer. Search the text of each button + ## in the box and return the index that matches. + foreach i $data(buttons) { + set w $path.b$i + lappend text [$w cget -text] + lappend names [$w cget -name] + } + set res [lsearch -exact [concat $names $text] $index] + } else { + set res $index + if {$index > $n} { set res $n } + } + return $res +} + + +# ButtonBox::gettags -- +# +# Return a list of all the tags on all the buttons in a buttonbox. +# +# Arguments: +# path the buttonbox to query. +# +# Results: +# taglist a list of tags on the buttons in the buttonbox + +proc ButtonBox::gettags {path} { + upvar ::ButtonBox::$path data + set taglist {} + foreach tag [array names data "tags,*"] { + lappend taglist [string range $tag 5 end] + } + return $taglist +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::_redraw +# ---------------------------------------------------------------------------- +proc ButtonBox::_redraw { path } { + variable $path + upvar 0 $path data + Widget::getVariable $path buttons + + # For tk >= 8.4, -uniform gridding option is used. + # Otherwise, there is the constraint, that button size may not change after + # creation. + set uniformAvailable [expr {0 <= [package vcompare [info patchlevel] 8.4.0]}] + + ## We re-grid the buttons from left-to-right. As we go through + ## each button, we check its spacing and which direction the + ## spacing applies to. Once spacing has been applied to an index, + ## it is not changed. This means spacing takes precedence from + ## left-to-right. + + set idx 0 + set idxs [list] + foreach i $data(buttons) { + set dir [lindex $data(spacing,$i) 0] + set spacing [lindex $data(spacing,$i) 1] + set but $path.b$i + if {[string equal [Widget::getoption $path -orient] "horizontal"]} { + grid $but -column $idx -row 0 -sticky nsew + if { [Widget::getoption $path -homogeneous] } { + if {$uniformAvailable} { + grid columnconfigure $path $idx -uniform koen -weight 1 + } else { + set req [winfo reqwidth $but] + if { $req > $data(max) } { + grid columnconfigure $path [expr {2*$i}] -minsize $req + set data(max) $req + } + grid columnconfigure $path $idx -weight 1 + } + } else { + grid columnconfigure $path $idx -weight 0 + } + + set col [expr {$idx - 1}] + if {[string equal $dir "right"]} { set col [expr {$idx + 1}] } + if {$col > 0 && [lsearch $idxs $col] < 0} { + lappend idxs $col + grid columnconfigure $path $col -minsize $spacing + } + } else { + grid $but -column 0 -row $idx -sticky nsew + grid rowconfigure $path $idx -weight 0 + + set row [expr {$idx - 1}] + if {[string equal $dir "right"]} { set row [expr {$idx + 1}] } + if {$row > 0 && [lsearch $idxs $row] < 0} { + lappend idxs $row + grid rowconfigure $path $row -minsize $spacing + } + } + incr idx 2 + } + + if {!$uniformAvailable} { + # Now that the maximum size has been calculated, go back through + # and correctly set the size for homogeneous horizontal buttons. + if { [string equal [Widget::getoption $path -orient] "horizontal"] && [Widget::getoption $path -homogeneous] } { + set idx 0 + foreach i $data(buttons) { + grid columnconfigure $path $idx -minsize $data(max) + incr idx 2 + } + } + } +} + + +# ---------------------------------------------------------------------------- +# Command ButtonBox::_destroy +# ---------------------------------------------------------------------------- +proc ButtonBox::_destroy { path } { + variable $path + upvar 0 $path data + Widget::destroy $path + unset data +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/color.tcl b/src/punk86.vfs/lib/BWidget1.9.16/color.tcl new file mode 100644 index 00000000..bb6dcb60 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/color.tcl @@ -0,0 +1,918 @@ +namespace eval SelectColor { + Widget::define SelectColor color Dialog + + Widget::declare SelectColor { + {-title String "Select a color" 0} + {-parent String "" 0} + {-command String "" 0} + {-help Boolean 0 1} + {-color TkResource "" 0 {label -background}} + {-type Enum "dialog" 1 {dialog popup}} + {-placement String "center" 1} + {-background TkResource "" 0 {label -background}} + } + + variable _baseColors { + \#0000ff \#00ff00 \#00ffff \#ff0000 \#ff00ff \#ffff00 + \#000099 \#009900 \#009999 \#990000 \#990099 \#999900 + \#000000 \#333333 \#666666 \#999999 \#cccccc \#ffffff + } + + variable _userColors { + \#ffffff \#ffffff \#ffffff \#ffffff \#ffffff \#ffffff + \#ffffff \#ffffff \#ffffff \#ffffff \#ffffff + } + + if {[string equal $::tcl_platform(platform) "unix"]} { + set useTkDialogue 0 + } else { + set useTkDialogue 1 + } + + variable _selectype + variable _selection + variable _wcolor + variable _image + variable _hsv + + variable _command + variable _unsavedSelection + variable _oldColor + variable _entryColor + variable _bgColor + variable _fgColor + variable _rounds +} + +proc SelectColor::create { path args } { + Widget::init SelectColor $path $args + + set type [Widget::cget $path -type] + + switch -- [Widget::cget $path -type] { + "dialog" { + return [eval [list SelectColor::dialog $path] $args] + } + + "popup" { + set list [list at center left right above below] + set placement [Widget::cget $path -placement] + set where [lindex $placement 0] + + if {[lsearch $list $where] < 0} { + return -code error \ + [BWidget::badOptionString placement $placement $list] + } + + ## If they specified a parent and didn't pass a second argument + ## in the placement, set the placement relative to the parent. + set parent [Widget::cget $path -parent] + if {[string length $parent]} { + if {[llength $placement] == 1} { lappend placement $parent } + } + return [eval [list SelectColor::menu $path $placement] $args] + } + } +} + +proc SelectColor::menu {path placement args} { + variable _baseColors + variable _userColors + variable _wcolor + variable _selectype + variable _selection + variable _command + variable _bgColor + variable _rounds + + Widget::init SelectColor $path $args + set top [toplevel $path] + set parent [winfo toplevel [winfo parent $top]] + wm withdraw $top + wm transient $top $parent + wm overrideredirect $top 1 + catch { wm attributes $top -topmost 1 } + + set _command [Widget::cget $path -command] + set _bgColor [Widget::cget $path -background] + set _rounds {} + + set frame [frame $top.frame \ + -highlightthickness 0 \ + -relief raised -borderwidth 2] + set col 0 + set row 0 + set count 0 + set colors [concat $_baseColors $_userColors] + foreach color $colors { + set f [frame $frame.c$count \ + -highlightthickness 2 \ + -highlightcolor white \ + -relief solid -borderwidth 1 \ + -width 16 -height 16 -background $color] + bind $f <1> "set SelectColor::_selection $count; break" + bind $f {focus %W} + grid $f -column $col -row $row + incr count + if {[incr col] == 6 } { + set col 0 + incr row + } + } + set f [label $frame.c$count \ + -highlightthickness 2 \ + -highlightcolor white \ + -relief flat -borderwidth 0 \ + -width 16 -height 16 -image [Bitmap::get palette]] + grid $f -column $col -row $row + bind $f <1> "set SelectColor::_selection $count; break" + bind $f {focus %W} + pack $frame + + bind $top <1> {set SelectColor::_selection -1} + bind $top {set SelectColor::_selection -2} + bind $top [subst {if {"%W" == "$top"} \ + {set SelectColor::_selection -2}}] + + # set background color for menu + $f configure -bg $_bgColor + $frame configure -bg $_bgColor + foreach w [winfo children $frame] { + $w configure -highlightcolor $_bgColor -highlightbackground $_bgColor + } + + eval [list BWidget::place $top 0 0] $placement + + wm deiconify $top + raise $top + if {$::tcl_platform(platform) == "unix"} { + tkwait visibility $top + update + } + BWidget::SetFocusGrab $top $frame.c0 + + vwait SelectColor::_selection + BWidget::RestoreFocusGrab $top $frame.c0 destroy + Widget::destroy $top + if {$_selection == $count} { + array set opts { + -parent -parent + -title -title + -color -initialcolor + } + if {[Widget::theme]} { + set native 1 + set nativecmd [list tk_chooseColor -parent $parent] + foreach {key val} $args { + if {![info exists opts($key)]} { + set native 0 + break + } + lappend nativecmd $opts($key) $val + } + if {$native} { + # Call native dialog + return [eval $nativecmd] + } + } + # Call BWidget dialog + return [eval [list dialog $path] $args] + } else { + # The user has either selected one of the palette colors, or has + # cancelled. The full BWidget/native dialog was not called. + # Unless the user has cancelled, pass the selected + # color to _userCommand. + set tmpCol [lindex $colors $_selection] + if {[string equal $tmpCol ""]} { + # User has cancelled - no need to call _userCommand. + } else { + _userCommand $tmpCol + } + return $tmpCol + } +} + + +proc SelectColor::_userCommand {color} { + variable _command + if {[string equal $_command {}]} { + return + } + uplevel #0 $_command [list $color] + return +} + + +proc SelectColor::dialog {path args} { + variable _baseColors + variable _userColors + variable _widget + variable _selection + variable _image + variable _hsv + variable _command + variable _unsavedSelection + variable _oldColor + variable _entryColor + variable _bgColor + variable _fgColor + variable _rounds + + + Widget::init SelectColor $path:SelectColor $args + set top [Dialog::create $path \ + -title [Widget::cget $path:SelectColor -title] \ + -parent [Widget::cget $path:SelectColor -parent] \ + -separator 0 -default 0 -cancel 1 -anchor e] + wm resizable $top 0 0 + set dlgf [$top getframe] + set fg [frame $dlgf.fg] + set desc [list \ + base _baseColors "Base colors" \ + user _userColors "User colors"] + + set help [Widget::cget $path:SelectColor -help] + set _command [Widget::cget $path:SelectColor -command] + set _bgColor [Widget::cget $path:SelectColor -background] + set _rounds {} + set mouseHelpText "" + if {$help} { + append mouseHelpText [subst -nocommands -novariables\ + [lindex [BWidget::getname mouseHelpText] 0]] + } + + set count 0 + foreach {type varcol defTitle} $desc { + set col 0 + set lin 0 + set title [lindex [BWidget::getname "${type}Colors"] 0] + if {![string length $title]} { + set title $defTitle + } + set titf [TitleFrame $fg.$type -text $title] + set subf [$titf getframe] + foreach color [set $varcol] { + set fround [frame $fg.round$count \ + -highlightthickness 1 \ + -relief sunken -borderwidth 2] + set fcolor [frame $fg.color$count -width 16 -height 12 \ + -highlightthickness 0 \ + -relief flat -borderwidth 0 \ + -background $color] + pack $fcolor -in $fround + grid $fround -in $subf -row $lin -column $col -padx 1 -pady 1 + + bind $fround [list SelectColor::_select_rgb $count] + bind $fcolor [list SelectColor::_select_rgb $count] + + DynamicHelp::add $fround -text $mouseHelpText + DynamicHelp::add $fcolor -text $mouseHelpText + + bind $fround \ + "SelectColor::_select_rgb [list $count]; [list $top] invoke 0" + bind $fcolor \ + "SelectColor::_select_rgb [list $count]; [list $top] invoke 0" + + # Record list of $fround values in _rounds + lappend _rounds $fround + + incr count + if {[incr col] == 6} { + incr lin + set col 0 + } + } + pack $titf -anchor w -pady 2 + } + + # Record these colors for later use + set _fgColor [$fg.round0 cget -highlightcolor] + + # Add a TitleFrame $titf to wrap $fg.round and $fg.value + set name [lindex [BWidget::getname yourSelection] 0] + set titf [TitleFrame $fg.choice -text $name] + set subf [$titf getframe] + pack $titf -anchor w -pady 2 -expand yes -fill both + + # Add an entry widget $fg.value for the #RRGGBB value + if {$::tk_version > 8.4} { + set fixedFont TkFixedFont + } else { + set fixedFont Courier + } + set subf2 $fg.vround + frame $subf2 -highlightthickness 0 -relief sunken -borderwidth 2 + entry $fg.value -width 8 -relief sunken -bd 0 -highlightthickness 0 \ + -bg white -textvariable ::SelectColor::_entryColor -font $fixedFont + pack $subf2 -in $subf -anchor w -side left + pack $fg.value -in $subf2 -anchor w -side left + + if {$help} { + DynamicHelp::add $fg.value -text [subst -nocommands -novariables\ + [lindex [BWidget::getname keyboardHelpText] 0]] + } + + # Remove focus from the entry widget by clicking anywhere... + bind $top <1> [list ::SelectColor::_CheckFocus %W] + + # ... or by pressing Return/Escape. + bind $fg.value [list ::SelectColor::_CheckFocus .] + bind $fg.value [list ::SelectColor::_CheckFocus .] + bind $fg.value {+break} + bind $fg.value {+break} + # Break so that the bindings to these events on the toplevel are not + # executed. + + # MODS - record the Tk window path for the entry widget. + set _widget(en) $fg.value + + set fround [frame $fg.round \ + -highlightthickness 0 \ + -relief sunken -borderwidth 2] + set fcolor [frame $fg.color \ + -width 50 \ + -highlightthickness 0 \ + -relief flat -borderwidth 0] + pack $fcolor -in $fround -fill y -expand yes + pack $fround -in $subf -side right -anchor e -pady 2 -fill y -expand yes + + # Add a TitleFrame $dlgf.fd to wrap the canvas selectors. The + # labels are referenced by the DynamicHelp tooltip. + set name [lindex [BWidget::getname colorSelectors] 0] + set fd0 [TitleFrame $dlgf.fd -text $name] + set fd [$fd0 getframe] + set f1 [frame $fd.f1 -relief sunken -borderwidth 2] + set f2 [frame $fd.f2 -relief sunken -borderwidth 2] + set c1 [canvas $f1.c -width 200 -height 200 -bd 0 -highlightthickness 0] + set c2 [canvas $f2.c -width 15 -height 200 -bd 0 -highlightthickness 0] + + for {set val 0} {$val < 40} {incr val} { + $c2 create rectangle 0 [expr {5*$val}] 15 [expr {5*$val+5}] -tags val[expr {39-$val}] + } + $c2 create polygon 0 0 10 5 0 10 -fill black -outline white -tags target + + pack $c1 $c2 + pack $f1 $f2 -side left -padx 10 -anchor n + + pack $fg $fd0 -side left -anchor n -fill y + pack configure $fd0 -pady 2 -padx {4 0} + + bind $c1 [list SelectColor::_select_hue_sat %x %y] + bind $c1 [list SelectColor::_select_hue_sat %x %y] + + bind $c2 [list SelectColor::_select_value %x %y] + bind $c2 [list SelectColor::_select_value %x %y] + + if {![info exists _image] || [catch {image type $_image}]} { + set _image [image create photo -width 200 -height 200] + for {set x 0} {$x < 200} {incr x 4} { + for {set y 0} {$y < 200} {incr y 4} { + $_image put \ + [eval [list format "\#%04x%04x%04x"] \ + [hsvToRgb [expr {$x/196.0}] [expr {(196-$y)/196.0}] 0.85]] \ + -to $x $y [expr {$x+4}] [expr {$y+4}] + } + } + } + $c1 create image 0 0 -anchor nw -image $_image + $c1 create bitmap 0 0 \ + -bitmap @[file join $::BWIDGET::LIBRARY "images" "target.xbm"] \ + -anchor nw -tags target + + set _selection -1 + set _widget(fcolor) $fg + set _widget(chs) $c1 + set _widget(cv) $c2 + set rgb [winfo rgb $path [Widget::cget $path:SelectColor -color]] + set _hsv [eval rgbToHsv $rgb] + _set_rgb [eval [list format "\#%04x%04x%04x"] $rgb] + _set_hue_sat [lindex $_hsv 0] [lindex $_hsv 1] + _set_value [lindex $_hsv 2] + + # Initialize _oldColor which is used to reset the color supplied to + # _userCommand if the user cancels. + set _oldColor [set _unsavedSelection] + set tmp24 [::SelectColor::_24BitRgb $_oldColor] + if {[_ValidateColorEntry forced $tmp24]} { + set ::SelectColor::_entryColor $tmp24 + } else { + # Value $tmp24 does not pass entry widget validation and if used + # would disable validation. Use this default instead. + set _entryColor # + } + + # Validate input to the entry field. + # To avoid conflict with the entry -variable (_entryColor), do not set the + # latter directly (because a failed validation will switch off subsequent + # validations). Either call _SetEntryValue, or set _unsavedSelection which + # triggers the trace. + + $fg.value configure -validate all -validatecommand \ + [list SelectColor::_ValidateColorEntry %V %P] + + # Trace _unsavedSelection + # Subsequent modifications to _unsavedSelection will update the entry + # widget, if the value is valid. + # From now on, this is the only way that: + # (1) ::SelectColor::_SetEntryValue is called + # (2) ::SelectColor::_entryColor is modified (except by the user typing in + # the entry widget) + + trace add variable ::SelectColor::_unsavedSelection write ::SelectColor::_SetEntryValue + + $top add -text [lindex [BWidget::getname ok] 0] + $top add -text [lindex [BWidget::getname cancel] 0] + + # Override background color + ReColor $path $_bgColor + + set res [$top draw] + if {$res == 0} { + set color [$fg.color cget -background] + } else { + # User has cancelled - call _userCommand to undo any changes made + # in the caller. + _userCommand $_oldColor + set color "" + } + + trace remove variable ::SelectColor::_unsavedSelection write ::SelectColor::_SetEntryValue + + destroy $top + return $color +} + + +# ---------------------------------------------------------------------------- +# Command SelectColor::setbasecolor +# ---------------------------------------------------------------------------- +# Exported command, to allow the caller to set the base colors of the palette. + +proc SelectColor::setbasecolor { idx color } { + variable _baseColors + set _baseColors [lreplace $_baseColors $idx $idx $color] +} + +# ---------------------------------------------------------------------------- +# Command SelectColor::setcolor +# ---------------------------------------------------------------------------- + +proc SelectColor::setcolor { idx color } { + variable _userColors + set _userColors [lreplace $_userColors $idx $idx $color] +} + +proc SelectColor::_select_rgb {count} { + variable _baseColors + variable _userColors + variable _selection + variable _widget + variable _hsv + variable _unsavedSelection + variable _bgColor + variable _fgColor + + set frame $_widget(fcolor) + + # Use highlight color instead of focus to identify the selected + # palette color. Tab traversal of focus now works correctly. + if {$_selection >= 0} { + $frame.round$_selection configure \ + -relief sunken -highlightthickness 1 -borderwidth 2 \ + -highlightbackground $_bgColor + } + $frame.round$count configure \ + -relief flat -highlightthickness 2 -borderwidth 1 \ + -highlightbackground $_fgColor + set _selection $count + set bg [$frame.color$count cget -background] + set user [expr {$_selection-[llength $_baseColors]}] + if {$user >= 0 && + [string equal \ + [winfo rgb $frame.color$_selection $bg] \ + [winfo rgb $frame.color$_selection white]]} { + set bg [$frame.color cget -bg] + $frame.color$_selection configure -background $bg + set _userColors [lreplace $_userColors $user $user $bg] + } else { + set _hsv [eval rgbToHsv [winfo rgb $frame.color$count $bg]] + _set_hue_sat [lindex $_hsv 0] [lindex $_hsv 1] + _set_value [lindex $_hsv 2] + $frame.color configure -background $bg + + # Display selected color in entry widget (via trace on + # ::SelectColor::_unsavedSelection), and notify caller. + set ::SelectColor::_unsavedSelection $bg + _userCommand $bg + } +} + + +proc SelectColor::_set_rgb {rgb} { + variable _selection + variable _baseColors + variable _userColors + variable _widget + variable _unsavedSelection + + set frame $_widget(fcolor) + $frame.color configure -background $rgb + + # Display selected color in entry widget (via trace on + # ::SelectColor::_unsavedSelection), and notify caller. + set ::SelectColor::_unsavedSelection $rgb + _userCommand $rgb + set user [expr {$_selection-[llength $_baseColors]}] + if {$user >= 0} { + $frame.color$_selection configure -background $rgb + set _userColors [lreplace $_userColors $user $user $rgb] + } +} + + +proc SelectColor::_select_hue_sat {x y} { + variable _widget + variable _hsv + + if {$x < 0} { + set x 0 + } elseif {$x > 200} { + set x 200 + } + if {$y < 0 } { + set y 0 + } elseif {$y > 200} { + set y 200 + } + set hue [expr {$x/200.0}] + set sat [expr {(200-$y)/200.0}] + set _hsv [lreplace $_hsv 0 1 $hue $sat] + $_widget(chs) coords target [expr {$x-9}] [expr {$y-9}] + _draw_values $hue $sat + _set_rgb [eval [list format "\#%04x%04x%04x"] [eval [list hsvToRgb] $_hsv]] +} + + +proc SelectColor::_set_hue_sat {hue sat} { + variable _widget + + set x [expr {$hue*200-9}] + set y [expr {(1-$sat)*200-9}] + $_widget(chs) coords target $x $y + _draw_values $hue $sat +} + + + +proc SelectColor::_select_value {x y} { + variable _widget + variable _hsv + + if {$y < 0} { + set y 0 + } elseif {$y > 200} { + set y 200 + } + $_widget(cv) coords target 0 [expr {$y-5}] 10 $y 0 [expr {$y+5}] + set _hsv [lreplace $_hsv 2 2 [expr {(200-$y)/200.0}]] + _set_rgb [eval [list format "\#%04x%04x%04x"] [eval [list hsvToRgb] $_hsv]] +} + + +proc SelectColor::_draw_values {hue sat} { + variable _widget + + for {set val 0} {$val < 40} {incr val} { + set l [hsvToRgb $hue $sat [expr {$val/39.0}]] + set col [eval [list format "\#%04x%04x%04x"] $l] + $_widget(cv) itemconfigure val$val -fill $col -outline $col + } +} + + +proc SelectColor::_set_value {value} { + variable _widget + + set y [expr {int((1-$value)*200)}] + $_widget(cv) coords target 0 [expr {$y-5}] 10 $y 0 [expr {$y+5}] +} + + +# -- +# Taken from tk8.0/demos/tcolor.tcl +# -- +# The procedure below converts an HSB value to RGB. It takes hue, saturation, +# and value components (floating-point, 0-1.0) as arguments, and returns a +# list containing RGB components (integers, 0-65535) as result. The code +# here is a copy of the code on page 616 of "Fundamentals of Interactive +# Computer Graphics" by Foley and Van Dam. + +proc SelectColor::hsvToRgb {hue sat val} { + set v [expr {round(65535.0*$val)}] + if {$sat == 0} { + return [list $v $v $v] + } else { + set hue [expr {$hue*6.0}] + if {$hue >= 6.0} { + set hue 0.0 + } + set i [expr {int($hue)}] + set f [expr {$hue-$i}] + set p [expr {round(65535.0*$val*(1 - $sat))}] + set q [expr {round(65535.0*$val*(1 - ($sat*$f)))}] + set t [expr {round(65535.0*$val*(1 - ($sat*(1 - $f))))}] + switch $i { + 0 {return [list $v $t $p]} + 1 {return [list $q $v $p]} + 2 {return [list $p $v $t]} + 3 {return [list $p $q $v]} + 4 {return [list $t $p $v]} + 5 {return [list $v $p $q]} + } + } +} + + +# -- +# Taken from tk8.0/demos/tcolor.tcl +# -- +# The procedure below converts an RGB value to HSB. It takes red, green, +# and blue components (0-65535) as arguments, and returns a list containing +# HSB components (floating-point, 0-1) as result. The code here is a copy +# of the code on page 615 of "Fundamentals of Interactive Computer Graphics" +# by Foley and Van Dam. + +proc SelectColor::rgbToHsv {red green blue} { + if {$red > $green} { + set max $red.0 + set min $green.0 + } else { + set max $green.0 + set min $red.0 + } + if {$blue > $max} { + set max $blue.0 + } else { + if {$blue < $min} { + set min $blue.0 + } + } + set range [expr {$max-$min}] + if {$max == 0} { + set sat 0 + } else { + set sat [expr {($max-$min)/$max}] + } + if {$sat == 0} { + set hue 0 + } else { + set rc [expr {($max - $red)/$range}] + set gc [expr {($max - $green)/$range}] + set bc [expr {($max - $blue)/$range}] + if {$red == $max} { + set hue [expr {.166667*($bc - $gc)}] + } else { + if {$green == $max} { + set hue [expr {.166667*(2 + $rc - $bc)}] + } else { + set hue [expr {.166667*(4 + $gc - $rc)}] + } + } + if {$hue < 0.0} { + set hue [expr {$hue + 1.0}] + } + } + return [list $hue $sat [expr {$max/65535}]] +} + +# ------------------------------------------------------------------------------ +# Command SelectColor::ReColor +# ------------------------------------------------------------------------------ +# Command to change the background color for the dialog. +# +# FIXME Ideally this would be called by "$w configure -background $value". +# Currently a "configure -background" command is passed to Dialog and Widget +# but does not change SelectColor. +# HaO: it might also be possible that this is controled by the option data base. +# ------------------------------------------------------------------------------ + +proc SelectColor::ReColor {path newColor} { + variable _bgColor + variable _rounds + + set _bgColor $newColor + + $path configure -bg $_bgColor + + # Use the internal names of the dialog widget - it would be nicer to + # use a colored dialog widget. + foreach child { + fd fd.f.f1 fd.f.f2 + fg fg.base fg.choice + fg.user fg.round fg.vround + } { + $path.frame.$child configure -background $_bgColor + } + + # Special treatment for Aqua native buttons. + # FIXME implement a general fix for BWidget Button/ButtonBox/Dialog + if {[string equal [tk windowingsystem] "aqua"]} { + $path.bbox.b0 configure -highlightbackground $_bgColor \ + -highlightthickness 0 + $path.bbox.b1 configure -highlightbackground $_bgColor \ + -highlightthickness 0 + } else { + $path.bbox.b0 configure -bg $_bgColor -activebackground $_bgColor \ + -highlightbackground $_bgColor + $path.bbox.b1 configure -bg $_bgColor -activebackground $_bgColor \ + -highlightbackground $_bgColor + } + + foreach fround $_rounds { + $fround configure -highlightbackground $_bgColor -bg $_bgColor + } + + return +} + + +# ------------------------------------------------------------------------------ +# Command SelectColor::_24BitRgb +# ------------------------------------------------------------------------------ +# Command to convert a hex 12n-bit RGB color to 24-bit, n > 0. +# Convert anything else to {}. +# Used to process the display in the entry widget. +# ------------------------------------------------------------------------------ + +proc SelectColor::_24BitRgb {col} { + set lenny [string length $col] + incr lenny -1 + + if { ($lenny % 3) + || ($lenny == 0) + || (![regexp {^#[a-fA-F0-9]*$} $col]) + } { + # Not a multiple of 3, or not leading #, or nothing after #, + # or non-HEX digits. + return {} + } elseif {$lenny == 3} { + # 12-bit, pad to 24-bit + set val $col + set val [string replace $val 3 3 "[string index $val 3]0"] + set val [string replace $val 2 2 "[string index $val 2]0"] + set val [string replace $val 1 1 "[string index $val 1]0"] + return $val + } elseif {$lenny == 6} { + # 24-bit, return unchanged + return $col + } else { + # Truncate to 24-bit + set delta [expr {$lenny / 3}] + set delta2 [expr {$delta * 2}] + set deltaP1 [incr delta] + set deltaP2 [incr delta] + set delta2P1 [incr delta2] + set delta2P2 [incr delta2] + set result # + append result [string range $col 1 2] + append result [string range $col $deltaP1 $deltaP2] + append result [string range $col $delta2P1 $delta2P2] + return $result + } +} + + +# ------------------------------------------------------------------------------ +# Command SelectColor::_SetEntryValue +# ------------------------------------------------------------------------------ +# Command to update the (hexadecimal color displayed in the) entry widget +# when there is a change in the color currently selected in the GUI, which is +# stored in _unsavedSelection. +# +# This command is called by a write trace on _unsavedSelection; if the +# value of this variable is a valid color (i.e. "#" followed by 3N hex digits), +# this command converts the value to 24 bits and sets ::SelectColor::_entryColor +# to the result, thereby displaying it in the entry widget. Therefore, +# when the user chooses a color by means other than the entry widget, this +# command updates the entry widget. +# +# This command does not update the GUI when the user changes the value in the +# entry widget: that is done instead by the -vcmd of the entry widget, which +# is SelectColor::_ValidateColorEntry. When the user chooses a color by typing +# in the entry widget, the command _ValidateColorEntry copies the value to +# _unsavedSelection if a keystroke in the widget makes its contents 3N hex +# digits long. +# ------------------------------------------------------------------------------ + +proc SelectColor::_SetEntryValue {argVarName var2 op} { + variable _entryColor + variable _unsavedSelection + + if {[string equal $argVarName ::SelectColor::_unsavedSelection] && + [string equal $var2 {}] && [string equal $op "write"]} { + # OK + } else { + # Unexpected call + return -code error "Unexpected trace of variable\ + \"$argVarName\", \"$var2\", \"$op\"" + } + + set col24bit [::SelectColor::_24BitRgb [set $argVarName]] + + if {[_ValidateColorEntry forced $col24bit]} { + set ::SelectColor::_entryColor $col24bit + } else { + # Value is invalid, and if written to _entryColor this would disable + # validation. + } + + return +} + + +# ------------------------------------------------------------------------------ +# Command SelectColor::_CheckFocus +# ------------------------------------------------------------------------------ +# This command is called with argument %W as a binding to <1> on the toplevel. +# It is also called with argument {.}, by bindings on the entry widget to +# , . +# +# The command does something only if the entry widget has focus, and the +# argument (the clicked window) is the Tk window path of somewhere else. Then, +# the command removes focus from the entry widget to the default button. +# ------------------------------------------------------------------------------ + +proc SelectColor::_CheckFocus {w} { + variable _widget + + if { (! [string equal $w $_widget(en)]) && + ([string equal [focus] $_widget(en)])} { + set top [winfo toplevel $_widget(en)] + $top setfocus default + } + + return +} + + +# ------------------------------------------------------------------------------ +# Command SelectColor::_ValidateColorEntry +# ------------------------------------------------------------------------------ +# This command is the "-validate all -vcmd" of the entry widget. +# It is also called by SelectColor::dialog and SelectColor::_SetEntryValue to +# check values assigned to _entryColor. +# +# When the user chooses a color by typing in the entry widget, this command +# copies the value to _unsavedSelection if a keystroke in the widget makes its +# contents 3N hex digits long. +# ------------------------------------------------------------------------------ + +proc SelectColor::_ValidateColorEntry {percentV percentP} { + variable _unsavedSelection + + set result [regexp -- {^#[0-9a-fA-F]*$} $percentP] + set lenny [string length $percentP] + + if {$result} { + if {[string equal $percentV "forced"]} { + # Validation only. Don't want a loop. + } elseif {[string equal $percentV "key"]} { + # Copy to GUI if a valid color. + if {($lenny - 1) % 3 || $lenny == 1} { + # Not a valid color, which needs 3n+1 characters, n > 0 + } else { + after idle [list SelectColor::_SetWithoutTrace $percentP] + } + } elseif {[string equal $percentV "focusout"]} { + # If the color is valid it will already have been copied to the GUI + # and to _userCommand by the "key" validation above. + # + # The code below only needs to reset the value in the entry widget. + # Remove an invalid value, convert a valid one to 24-bit. + # Ignore $percentP, just fire the trace on _unsavedSelection. + set color $_unsavedSelection + after idle [list set ::SelectColor::_unsavedSelection $color] + } + } + + return $result +} + + +# ------------------------------------------------------------------------------ +# Command SelectColor::_SetWithoutTrace +# ------------------------------------------------------------------------------ +# This command sets _unsavedSelection (using _set_rgb) without firing the trace +# that copies the value to _entryColor. +# The command is called by SelectColor::_ValidateColorEntry to avoid a loop. +# ------------------------------------------------------------------------------ + +proc SelectColor::_SetWithoutTrace {value} { + trace remove variable ::SelectColor::_unsavedSelection write ::SelectColor::_SetEntryValue + _set_rgb $value + set _hsv [eval rgbToHsv [winfo rgb . $value]] + _set_hue_sat [lindex $_hsv 0] [lindex $_hsv 1] + _set_value [lindex $_hsv 2] + trace add variable ::SelectColor::_unsavedSelection write ::SelectColor::_SetEntryValue + return +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/combobox.tcl b/src/punk86.vfs/lib/BWidget1.9.16/combobox.tcl new file mode 100644 index 00000000..d754e060 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/combobox.tcl @@ -0,0 +1,955 @@ +# ---------------------------------------------------------------------------- +# combobox.tcl +# This file is part of Unifix BWidget Toolkit +# $Id: combobox.tcl,v 1.42.2.3 2012/04/02 09:53:41 oehhar Exp $ +# ---------------------------------------------------------------------------- +# Index of commands: +# - ComboBox::create +# - ComboBox::configure +# - ComboBox::cget +# - ComboBox::setvalue +# - ComboBox::getvalue +# - ComboBox::clearvalue +# - ComboBox::getentry +# - ComboBox::_create_popup +# - ComboBox::_mapliste +# - ComboBox::_unmapliste +# - ComboBox::_select +# - ComboBox::_modify_value +# ---------------------------------------------------------------------------- + +# ComboBox uses the 8.3 -listvariable listbox option +package require Tk 8.3 + +namespace eval ComboBox { + Widget::define ComboBox combobox ArrowButton Entry ListBox + + Widget::tkinclude ComboBox frame :cmd \ + include {-relief -borderwidth -bd -background} \ + initialize {-relief sunken -borderwidth 2} + + if {[Widget::theme]} { + Widget::bwinclude ComboBox Entry .e + } else { + Widget::bwinclude ComboBox Entry .e \ + remove {-relief -bd -borderwidth -bg} \ + rename {-background -entrybg} + } + + Widget::declare ComboBox { + {-height TkResource 0 0 listbox} + {-values String "" 0} + {-images String "" 0} + {-indents String "" 0} + {-modifycmd String "" 0} + {-postcommand String "" 0} + {-expand Enum none 0 {none tab}} + {-autocomplete Boolean 0 0} + {-autopost Boolean 0 0} + {-bwlistbox Boolean 0 0} + {-listboxwidth Int 0 0} + {-hottrack Boolean 0 0} + } + + if {[Widget::theme]} { + Widget::addmap ComboBox ArrowButton .a { + -background {} -state {} + } + } else { + Widget::addmap ComboBox ArrowButton .a { + -background {} -foreground {} -disabledforeground {} -state {} + } + } + + ::bind BwComboBox [list after idle {BWidget::refocus %W %W.e}] + ::bind BwComboBox [list ComboBox::_destroy %W] + + ::bind ListBoxHotTrack { + %W selection clear 0 end + %W activate @%x,%y + %W selection set @%x,%y + } + + variable _index +} + + +# ComboBox::create -- +# +# Create a combobox widget with the given options. +# +# Arguments: +# path name of the new widget. +# args optional arguments to the widget. +# +# Results: +# path name of the new widget. + +proc ComboBox::create { path args } { + array set maps [list ComboBox {} :cmd {} .e {} .a {}] + array set maps [Widget::parseArgs ComboBox $args] + + eval [list frame $path] $maps(:cmd) \ + [list -highlightthickness 0 -takefocus 0 -class ComboBox] + Widget::initFromODB ComboBox $path $maps(ComboBox) + + bindtags $path [list $path BwComboBox [winfo toplevel $path] all] + + if {[Widget::theme]} { + set entry [eval [list Entry::create $path.e] $maps(.e) \ + [list -takefocus 1]] + } else { + set entry [eval [list Entry::create $path.e] $maps(.e) \ + [list -relief flat -borderwidth 0 -takefocus 1]] + } + + ::bind $path.e [list $path _focus_out] + ::bind $path <> [list $path _traverse_in] + + if {[Widget::cget $path -autocomplete]} { + ::bind $path.e [list $path _auto_complete %K] + } + + if {[Widget::cget $path -autopost]} { + ::bind $path.e +[list $path _auto_post %K] + } else { + ::bind $entry [list ComboBox::_unmapliste $path] + ::bind $entry [list ComboBox::_mapliste $path] + } + + if {[string equal [tk windowingsystem] "x11"]} { + set ipadx 0 + set width 11 + } else { + set ipadx 2 + set width 15 + } + set height [winfo reqheight $entry] + set arrow [eval [list ArrowButton::create $path.a] $maps(.a) \ + [list -width $width -height $height \ + -highlightthickness 0 -borderwidth 1 -takefocus 0 \ + -dir bottom -type button -ipadx $ipadx \ + -command [list ComboBox::_mapliste $path] \ + ]] + + pack $arrow -side right -fill y + pack $entry -side left -fill both -expand yes + + set editable [Widget::cget $path -editable] + Entry::configure $path.e -editable $editable + if {$editable} { + ::bind $entry [list ComboBox::_unmapliste $path] + } else { + ::bind $entry [list ArrowButton::invoke $path.a] + if { ![string equal [Widget::cget $path -state] "disabled"] } { + Entry::configure $path.e -takefocus 1 + } + } + + ::bind $path [list ComboBox::_unmapliste $path] + ::bind $entry [list ComboBox::_modify_value $path previous] + ::bind $entry [list ComboBox::_modify_value $path next] + ::bind $entry [list ComboBox::_modify_value $path first] + ::bind $entry [list ComboBox::_modify_value $path last] + + if {$editable} { + set expand [Widget::cget $path -expand] + if {[string equal "tab" $expand]} { + # Expand entry value on Tab (from -values) + ::bind $entry "[list ComboBox::_expand $path]; break" + } elseif {[string equal "auto" $expand]} { + # Expand entry value anytime (from -values) + #::bind $entry "[list ComboBox::_expand $path]; break" + } + } + + ## If we have images, we have to use a BWidget ListBox. + set bw [Widget::cget $path -bwlistbox] + if {[llength [Widget::cget $path -images]]} { + Widget::configure $path [list -bwlistbox 1] + } else { + Widget::configure $path [list -bwlistbox $bw] + } + + set ComboBox::_index($path) -1 + + return [Widget::create ComboBox $path] +} + + +# ComboBox::configure -- +# +# Configure subcommand for ComboBox widgets. Works like regular +# widget configure command. +# +# Arguments: +# path Name of the ComboBox widget. +# args Additional optional arguments: +# ?-option? +# ?-option value ...? +# +# Results: +# Depends on arguments. If no arguments are given, returns a complete +# list of configuration information. If one argument is given, returns +# the configuration information for that option. If more than one +# argument is given, returns nothing. + +proc ComboBox::configure { path args } { + set res [Widget::configure $path $args] + set entry $path.e + + + set list [list -images -values -bwlistbox -hottrack -autocomplete -autopost] + foreach {ci cv cb ch cac cap} [eval [linsert $list 0 Widget::hasChangedX $path]] { break } + + if { $ci } { + set images [Widget::cget $path -images] + if {[llength $images]} { + Widget::configure $path [list -bwlistbox 1] + } else { + Widget::configure $path [list -bwlistbox 0] + } + } + + ## If autocomplete toggled, turn bindings on/off + if { $cac } { + if {[Widget::cget $path -autocomplete]} { + ::bind $entry +[list $path _auto_complete %K] + } else { + set bindings [split [::bind $entry ] \n] + if {[set idx [lsearch $bindings [list $path _auto_complete %K]]] != -1} { + ::bind $entry [join [lreplace $bindings $idx $idx] \n] + } + } + } + + ## If autopost toggled, turn bindings on/off + if { $cap } { + if {[Widget::cget $path -autopost]} { + ::bind $entry +[list $path _auto_post %K] + set bindings [split [::bind $entry ] \n] + if {[set idx [lsearch $bindings [list ComboBox::_unmapliste $path]]] != -1} { + ::bind $entry [join [lreplace $bindings $idx $idx] \n] + } + set bindings [split [::bind $entry ] \n] + if {[set idx [lsearch $bindings [list ComboBox::_mapliste $path]]] != -1} { + ::bind $entry [join [lreplace $bindings $idx $idx] \n] + } + } else { + set bindings [split [::bind $entry ] \n] + if {[set idx [lsearch $bindings [list $path _auto_post %K]]] != -1} { + ::bind $entry [join [lreplace $bindings $idx $idx] \n] + } + ::bind $entry +[list ComboBox::_unmapliste $path] + ::bind $entry +[list ComboBox::_mapliste $path] + } + } + + set bw [Widget::cget $path -bwlistbox] + + ## If the images, bwlistbox, hottrack or values have changed, + ## destroy the shell so that it will re-create itself the next + ## time around. + if { $ci || $cb || $ch || ($bw && $cv) } { + destroy $path.shell + } + + set chgedit [Widget::hasChangedX $path -editable] + if {$chgedit} { + if {[Widget::cget $path -editable]} { + ::bind $entry [list ComboBox::_unmapliste $path] + Entry::configure $entry -editable true + } else { + ::bind $entry [list ArrowButton::invoke $path.a] + Entry::configure $entry -editable false + + # Make sure that non-editable comboboxes can still be tabbed to. + + if { ![string equal [Widget::cget $path -state] "disabled"] } { + Entry::configure $entry -takefocus 1 + } + } + } + + if {$chgedit || [Widget::hasChangedX $path -expand]} { + # Unset what we may have created. + ::bind $entry {} + if {[Widget::cget $path -editable]} { + set expand [Widget::cget $path -expand] + if {[string equal "tab" $expand]} { + # Expand entry value on Tab (from -values) + ::bind $entry "[list ComboBox::_expand $path]; break" + } elseif {[string equal "auto" $expand]} { + # Expand entry value anytime (from -values) + #::bind $entry "[list ComboBox::_expand $path]; break" + } + } + } + + # if state changed to normal and -editable false, the edit must take focus + if { [Widget::hasChangedX $path -state] \ + && ![string equal [Widget::cget $path -state] "disabled"] \ + && ![Widget::cget $path -editable] } { + Entry::configure $entry -takefocus 1 + } + + # if the dropdown listbox is shown, simply force the actual entry + # colors into it. If it is not shown, the next time the dropdown + # is shown it'll get the actual colors anyway + if {[winfo exists $path.shell.listb]} { + $path.shell.listb configure \ + -bg [_getbg $path] \ + -fg [_getfg $path] + if {![Widget::theme]} { + $path.shell.listb configure \ + -selectbackground [Widget::cget $path -selectbackground] \ + -selectforeground [Widget::cget $path -selectforeground] + } + } + + return $res +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::cget +# ---------------------------------------------------------------------------- +proc ComboBox::cget { path option } { + return [Widget::cget $path $option] +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::setvalue +# ---------------------------------------------------------------------------- +proc ComboBox::setvalue { path index } { + variable _index + + set values [Widget::getMegawidgetOption $path -values] + set value [Entry::cget $path.e -text] + switch -- $index { + next { + if { [set idx [lsearch -exact $values $value]] != -1 } { + incr idx + } else { + set idx [lsearch -exact $values "$value*"] + } + } + previous { + if { [set idx [lsearch -exact $values $value]] != -1 } { + incr idx -1 + } else { + set idx [lsearch -exact $values "$value*"] + } + } + first { + set idx 0 + } + last { + set idx [expr {[llength $values]-1}] + } + default { + if { [string index $index 0] == "@" } { + set idx [string range $index 1 end] + if { ![string is integer -strict $idx] } { + return -code error "bad index \"$index\"" + } + } else { + return -code error "bad index \"$index\"" + } + } + } + if { $idx >= 0 && $idx < [llength $values] } { + set newval [lindex $values $idx] + set _index($path) $idx + Entry::configure $path.e -text $newval + return 1 + } + return 0 +} + + +proc ComboBox::icursor { path idx } { + return [$path.e icursor $idx] +} + + +proc ComboBox::get { path } { + return [$path.e get] +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::getvalue +# ---------------------------------------------------------------------------- +proc ComboBox::getvalue { path } { + variable _index + set values [Widget::getMegawidgetOption $path -values] + set value [Entry::cget $path.e -text] + # Check if an index was saved by the last setvalue operation + # If this index still matches it is returned + # This is necessary for the case when values is not unique + if { $_index($path) >= 0 \ + && $_index($path) < [llength $values] \ + && $value eq [lindex $values $_index($path)]} { + return $_index($path) + } + + return [lsearch -exact $values $value] +} + + +proc ComboBox::getlistbox { path } { + _create_popup $path + return $path.shell.listb +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::post +# ---------------------------------------------------------------------------- +proc ComboBox::post { path } { + _mapliste $path + return +} + + +proc ComboBox::unpost { path } { + _unmapliste $path + return +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::bind +# ---------------------------------------------------------------------------- +proc ComboBox::bind { path args } { + return [eval [list ::bind $path.e] $args] +} + + +proc ComboBox::insert { path idx args } { + upvar #0 [Widget::varForOption $path -values] values + + if {[Widget::cget $path -bwlistbox]} { + set l [$path getlistbox] + set i [eval [linsert $args 0 $l insert $idx #auto]] + set text [$l itemcget $i -text] + if {$idx == "end"} { + lappend values $text + } else { + set values [linsert $values $idx $text] + } + } else { + set values [eval [list linsert $values $idx] $args] + } +} + +# ---------------------------------------------------------------------------- +# Command ComboBox::clearvalue +# ---------------------------------------------------------------------------- +proc ComboBox::clearvalue { path } { + Entry::configure $path.e -text "" +} + +# ---------------------------------------------------------------------------- +# Command ComboBox::getentry +# ---------------------------------------------------------------------------- +proc ComboBox::getentry { path } { + return $path.e +} + +proc ComboBox::_getfg {path} { + # First try to retrieve option + set fg [Widget::cget $path -foreground]; + if { 0 == [string length $fg] && [Widget::theme] } { + # fall back to style settings when not configured for widget + return [::ttk::style lookup TEntry -foreground]; + } + return $fg; +} +proc ComboBox::_getbg {path} { + if {[Widget::theme]} { + # First try to retrieve option + set bg [Widget::cget $path -background]; + if {0 == [string length $bg]} { + # fall back to style settings when not configured for widget + return [::ttk::style lookup TEntry -backround]; + } + } else { + # fetch the entrybg resource value + set bg [Widget::cget $path -entrybg] + } + return $bg; +} +# ---------------------------------------------------------------------------- +# Command ComboBox::_create_popup +# ---------------------------------------------------------------------------- +proc ComboBox::_create_popup { path } { + set shell $path.shell + + if {[winfo exists $shell]} { return } + + set lval [Widget::cget $path -values] + set h [Widget::cget $path -height] + set bw [Widget::cget $path -bwlistbox] + + if { $h <= 0 } { + set len [llength $lval] + if { $len < 3 } { + set h 3 + } elseif { $len > 10 } { + set h 10 + } else { + set h $len + } + } + + if {[string equal [tk windowingsystem] "x11"]} { + set sbwidth 11 + } else { + set sbwidth 15 + } + + toplevel $shell -relief solid -bd 1 + wm withdraw $shell + wm overrideredirect $shell 1 + # these commands cause the combobox to behave strangely on OS X + if {! $Widget::_aqua } { + update idle + wm transient $shell [winfo toplevel $path] + catch { wm attributes $shell -topmost 1 } + } + + set sw [ScrolledWindow $shell.sw -managed 1 -size $sbwidth -ipad 0] + + if {$bw} { + if {[Widget::theme]} { + set listb [ListBox $shell.listb \ + -relief flat -borderwidth 0 -highlightthickness 0 \ + -selectmode single -selectfill 1 -autofocus 0 -height $h \ + -font [Widget::cget $path -font] \ + -bg [_getbg $path] \ + -fg [_getfg $path]] + } else { + set listb [ListBox $shell.listb \ + -relief flat -borderwidth 0 -highlightthickness 0 \ + -selectmode single -selectfill 1 -autofocus 0 -height $h \ + -font [Widget::cget $path -font] \ + -bg [_getbg $path] \ + -fg [_getfg $path] \ + -selectbackground [Widget::cget $path -selectbackground] \ + -selectforeground [Widget::cget $path -selectforeground]] + } + + set values [Widget::cget $path -values] + set images [Widget::cget $path -images] + foreach value $values image $images { + $listb insert end #auto -text $value -image $image + } + $listb bindText <1> [list ComboBox::_select $path] + $listb bindImage <1> [list ComboBox::_select $path] + if {[Widget::cget $path -hottrack]} { + $listb bindText [list $listb selection set] + $listb bindImage [list $listb selection set] + } + } else { + if {[Widget::theme]} { + set listb [listbox $shell.listb \ + -relief flat -borderwidth 0 -highlightthickness 0 \ + -exportselection false \ + -font [Widget::cget $path -font] \ + -height $h \ + -bg [_getbg $path] \ + -fg [_getfg $path] \ + -listvariable [Widget::varForOption $path -values]] + } else { + set listb [listbox $shell.listb \ + -relief flat -borderwidth 0 -highlightthickness 0 \ + -exportselection false \ + -font [Widget::cget $path -font] \ + -height $h \ + -bg [_getbg $path] \ + -fg [_getfg $path] \ + -selectbackground [Widget::cget $path -selectbackground] \ + -selectforeground [Widget::cget $path -selectforeground] \ + -listvariable [Widget::varForOption $path -values]] + } + ::bind $listb [list ComboBox::_select $path @%x,%y] + + if {[Widget::cget $path -hottrack]} { + bindtags $listb [concat [bindtags $listb] ListBoxHotTrack] + } + } + pack $sw -fill both -expand yes + $sw setwidget $listb + + ::bind $listb "ComboBox::_select [list $path] \[$listb curselection\]" + ::bind $listb [list ComboBox::_unmapliste $path] + ::bind $listb [list ComboBox::_focus_out $path] +} + + +proc ComboBox::_recreate_popup { path } { + variable background + variable foreground + + set shell $path.shell + set lval [Widget::cget $path -values] + set h [Widget::cget $path -height] + set bw [Widget::cget $path -bwlistbox] + + if { $h <= 0 } { + set len [llength $lval] + if { $len < 3 } { + set h 3 + } elseif { $len > 10 } { + set h 10 + } else { + set h $len + } + } + + if { [string equal [tk windowingsystem] "x11"] } { + set sbwidth 11 + } else { + set sbwidth 15 + } + + _create_popup $path + + if {![Widget::cget $path -editable]} { + if {[info exists background]} { + $path.e configure -bg $background + $path.e configure -fg $foreground + unset background + unset foreground + } + } + + set listb $shell.listb + destroy $shell.sw + set sw [ScrolledWindow $shell.sw -managed 1 -size $sbwidth -ipad 0] + $listb configure \ + -height $h \ + -font [Widget::cget $path -font] \ + -bg [_getbg $path] \ + -fg [_getfg $path] + if {![Widget::theme]} { + $listb configure \ + -selectbackground [Widget::cget $path -selectbackground] \ + -selectforeground [Widget::cget $path -selectforeground] + } + pack $sw -fill both -expand yes + $sw setwidget $listb + raise $listb +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::_mapliste +# ---------------------------------------------------------------------------- +proc ComboBox::_mapliste { path } { + set listb $path.shell.listb + if {[winfo exists $path.shell] && + [string equal [wm state $path.shell] "normal"]} { + _unmapliste $path + return + } + + if { [Widget::cget $path -state] == "disabled" } { + return + } + if {[llength [set cmd [Widget::getMegawidgetOption $path -postcommand]]]} { + uplevel \#0 $cmd + } + if { ![llength [Widget::getMegawidgetOption $path -values]] } { + return + } + + _recreate_popup $path + + ArrowButton::configure $path.a -relief sunken + update + + set bw [Widget::cget $path -bwlistbox] + + $listb selection clear 0 end + set values [Widget::getMegawidgetOption $path -values] + set curval [Entry::cget $path.e -text] + if { [set idx [lsearch -exact $values $curval]] != -1 || + [set idx [lsearch -exact $values "$curval*"]] != -1 } { + if {$bw} { + set idx [$listb items $idx] + } else { + $listb activate $idx + } + $listb selection set $idx + $listb see $idx + } else { + set idx 0 + if {$bw} { + set idx [$listb items 0] + } else { + $listb activate $idx + } + $listb selection set $idx + $listb see $idx + } + + set width [Widget::cget $path -listboxwidth] + if {!$width} { set width [winfo width $path] } + BWidget::place $path.shell $width 0 below $path + wm deiconify $path.shell + raise $path.shell + BWidget::focus set $listb + if {! $Widget::_aqua } { + BWidget::grab global $path + } +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::_unmapliste +# ---------------------------------------------------------------------------- +proc ComboBox::_unmapliste { path {refocus 1} } { + # On aqua, state is zoomed, otherwise normal + if {[winfo exists $path.shell] && \ + ( [string equal [wm state $path.shell] "normal"] || + [string equal [wm state $path.shell] "zoomed"] ) } { + if {! $Widget::_aqua } { + BWidget::grab release $path + BWidget::focus release $path.shell.listb $refocus + # Update now because otherwise [focus -force...] makes the app hang! + if {$refocus} { + update + focus -force $path.e + } + } + wm withdraw $path.shell + ArrowButton::configure $path.a -relief raised + } +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::_select +# ---------------------------------------------------------------------------- +proc ComboBox::_select { path index } { + set index [$path.shell.listb index $index] + _unmapliste $path + if { $index != -1 } { + if { [setvalue $path @$index] } { + set cmd [Widget::getMegawidgetOption $path -modifycmd] + if {[llength $cmd]} { + uplevel \#0 $cmd + } + } + } + $path.e selection clear + if {[$path.e cget -exportselection]} { + $path.e selection range 0 end + } +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::_modify_value +# ---------------------------------------------------------------------------- +proc ComboBox::_modify_value { path direction } { + if {[setvalue $path $direction] + && [llength [set cmd [Widget::getMegawidgetOption $path -modifycmd]]]} { + uplevel \#0 $cmd + } +} + +# ---------------------------------------------------------------------------- +# Command ComboBox::_expand +# ---------------------------------------------------------------------------- +proc ComboBox::_expand {path} { + set values [Widget::getMegawidgetOption $path -values] + if {![llength $values]} { + bell + return 0 + } + + set found {} + set curval [Entry::cget $path.e -text] + set curlen [$path.e index insert] + if {$curlen < [string length $curval]} { + # we are somewhere in the middle of a string. + # if the full value matches some string in the listbox, + # reorder values to start matching after that string. + set idx [lsearch -exact $values $curval] + if {$idx >= 0} { + set values [concat [lrange $values [expr {$idx+1}] end] \ + [lrange $values 0 $idx]] + } + } + if {$curlen == 0} { + set found $values + } else { + foreach val $values { + if {[string equal -length $curlen $curval $val]} { + lappend found $val + } + } + } + if {[llength $found]} { + Entry::configure $path.e -text [lindex $found 0] + if {[llength $found] > 1} { + set best [_best_match $found [string range $curval 0 $curlen]] + set blen [string length $best] + $path.e icursor $blen + $path.e selection range $blen end + } + } else { + bell + } + return [llength $found] +} + +# best_match -- +# finds the best unique match in a list of names +# The extra $e in this argument allows us to limit the innermost loop a +# little further. +# Arguments: +# l list to find best unique match in +# e currently best known unique match +# Returns: +# longest unique match in the list +# +proc ComboBox::_best_match {l {e {}}} { + set ec [lindex $l 0] + if {[llength $l]>1} { + set e [string length $e]; incr e -1 + set ei [string length $ec]; incr ei -1 + foreach l $l { + while {$ei>=$e && [string first $ec $l]} { + set ec [string range $ec 0 [incr ei -1]] + } + } + } + return $ec +} +# possibly faster +#proc match {string1 string2} { +# set i 1 +# while {[string equal -length $i $string1 $string2]} { incr i } +# return [string range $string1 0 [expr {$i-2}]] +#} +#proc matchlist {list} { +# set list [lsort $list] +# return [match [lindex $list 0] [lindex $list end]] +#} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::_traverse_in +# Called when widget receives keyboard focus due to keyboard traversal. +# ---------------------------------------------------------------------------- +proc ComboBox::_traverse_in { path } { + if {[$path.e selection present] != 1} { + # Autohighlight the selection, but not if one existed + $path.e selection range 0 end + } +} + + +# ---------------------------------------------------------------------------- +# Command ComboBox::_focus_out +# ---------------------------------------------------------------------------- +proc ComboBox::_focus_out { path } { + if {[string first $path [focus]] != 0} { + # we lost focus to some other app or window, so remove the listbox + return [_unmapliste $path 0] + } +} + +proc ComboBox::_auto_complete { path key } { + ## Any key string with more than one character and is not entirely + ## lower-case is considered a function key and is thus ignored. + if {[string length $key] > 1 && [string tolower $key] != $key} { return } + + set text [string map [list {[} {\[} {]} {\]}] [$path.e get]] + if {[string equal $text ""]} { return } + set values [Widget::cget $path -values] + set x [lsearch $values $text*] + if {$x < 0} { return } + + set idx [$path.e index insert] + $path.e configure -text [lindex $values $x] + $path.e icursor $idx + $path.e select range insert end +} + +proc ComboBox::_auto_post { path key } { + if {[string equal $key "Escape"] || [string equal $key "Return"]} { + _unmapliste $path + return + } + if {[catch {$path.shell.listb curselection} x] || $x == ""} { + if {[string equal $key "Up"]} { + _unmapliste $path + return + } + set x -1 + } + if {([string length $key] > 1 && [string tolower $key] != $key) && \ + [string equal $key "BackSpace"] != 0 && \ + [string equal $key "Up"] != 0 && \ + [string equal $key "Down"] != 0} { + return + } + + # post the listbox + _create_popup $path + set width [Widget::cget $path -listboxwidth] + if {!$width} { set width [winfo width $path] } + BWidget::place $path.shell $width 0 below $path + wm deiconify $path.shell + BWidget::grab release $path + BWidget::focus release $path.shell.listb 1 + focus -force $path.e + + set values [Widget::cget $path -values] + switch -- $key { + Up { + if {[incr x -1] < 0} { + set x 0 + } else { + Entry::configure $path.e -text [lindex $values $x] + } + } + Down { + if {[incr x] >= [llength $values]} { + set x [expr {[llength $values] - 1}] + } else { + Entry::configure $path.e -text [lindex $values $x] + } + } + default { + # auto-select within the listbox the item closest to the entry's value + set text [string map [list {[} {\[} {]} {\]}] [$path.e get]] + if {[string equal $text ""]} { + set x 0 + } else { + set x [lsearch $values $text*] + } + } + } + + if {$x >= 0} { + $path.shell.listb selection clear 0 end + $path.shell.listb selection set $x + $path.shell.listb see $x + } +} +# ------------------------------------------------------------------------------ +# Command ComboBox::_destroy +# ------------------------------------------------------------------------------ +proc ComboBox::_destroy { path } { + variable _index + Widget::destroy $path + unset _index($path) +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/basic.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/basic.tcl new file mode 100644 index 00000000..cbda19d2 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/basic.tcl @@ -0,0 +1,199 @@ + +namespace eval DemoBasic { + variable var + variable count 0 + variable id "" +} + + +proc DemoBasic::create { nb } { + set frame [$nb insert end demoBasic -text "Basic"] + + set topf [frame $frame.topf] + set titf1 [TitleFrame $topf.titf1 -text "Label"] + set titf2 [TitleFrame $topf.titf2 -text "Entry"] + set titf3 [TitleFrame $frame.titf3 -text "Button and ArrowButton"] + + _label [$titf1 getframe] + _entry [$titf2 getframe] + _button [$titf3 getframe] + + pack $titf1 $titf2 -side left -fill both -padx 4 -expand yes + pack $topf -pady 2 -fill x + pack $titf3 -pady 2 -padx 4 -fill x + + return $frame +} + + +proc DemoBasic::_label { parent } { + variable var + + set lab [Label $parent.label -text "This is a Label widget" \ + -helptext "Label widget"] + set chk [checkbutton $parent.chk -text "Disabled" \ + -variable DemoBasic::var($lab,-state) \ + -onvalue disabled -offvalue normal \ + -command "$lab configure -state \$DemoBasic::var($lab,-state)"] + pack $lab -anchor w -pady 4 + pack $chk -anchor w +} + + +proc DemoBasic::_entry { parent } { + set ent [Entry $parent.entry -text "Press enter" \ + -command {set DemoBasic::var(entcmd) "-command called" ; after 500 {set DemoBasic::var(entcmd) ""}} \ + -helptext "Entry widget"] + set chk1 [checkbutton $parent.chk1 -text "Disabled" \ + -variable DemoBasic::var($ent,state) \ + -onvalue disabled -offvalue normal \ + -command "$ent configure -state \$DemoBasic::var($ent,state)"] + set chk2 [checkbutton $parent.chk2 -text "Non editable" \ + -variable DemoBasic::var($ent,editable) \ + -onvalue false -offvalue true \ + -command "$ent configure -editable \$DemoBasic::var($ent,editable)"] + set lab [label $parent.cmd -textvariable DemoBasic::var(entcmd) -foreground red] + pack $ent -pady 4 -anchor w + pack $chk1 $chk2 -anchor w + pack $lab -pady 4 +} + + +proc DemoBasic::_button { parent } { + variable var + + set frame [frame $parent.butfr] + set but [Button $frame.but -text "Press me!" \ + -repeatdelay 300 \ + -command "DemoBasic::_butcmd command" \ + -helptext "This is a Button widget"] + set sep1 [Separator $frame.sep1 -orient vertical] + set arr1 [ArrowButton $frame.arr1 -type button \ + -width 25 -height 25 \ + -repeatdelay 300 \ + -command "DemoBasic::_butcmd command" \ + -helptext "This is an ArrowButton widget\nof type button"] + set sep2 [Separator $frame.sep2 -orient vertical] + set arr2 [ArrowButton $frame.arr2 -type arrow \ + -width 25 -height 25 -relief sunken -ipadx 0 -ipady 0 \ + -repeatdelay 300 \ + -command "DemoBasic::_butcmd command" \ + -helptext "This is an ArrowButton widget\nof type arrow"] + + pack $but -side left -padx 4 + pack $sep1 -side left -padx 4 -fill y + pack $arr1 -side left -padx 4 + pack $sep2 -side left -padx 4 -fill y + pack $arr2 -side left -padx 4 + pack $frame + + set sep3 [Separator $parent.sep3 -orient horizontal] + pack $sep3 -fill x -pady 10 + + set labf1 [LabelFrame $parent.labf1 -text "Command" -side top \ + -anchor w -relief sunken -borderwidth 1] + set subf [$labf1 getframe] + set chk1 [checkbutton $subf.chk1 -text "Disabled" \ + -variable DemoBasic::var(bstate) -onvalue disabled -offvalue normal \ + -command "DemoBasic::_bstate \$DemoBasic::var(bstate) $but $arr1 $arr2"] + set chk2 [checkbutton $subf.chk2 -text "Use -armcommand/\n-disarmcommand" \ + -justify left \ + -variable DemoBasic::var(barmcmd) \ + -command "DemoBasic::_barmcmd \$DemoBasic::var(barmcmd) $but $arr1 $arr2"] + pack $chk1 $chk2 -anchor w + + set label [label $parent.label -textvariable DemoBasic::var(butcmd) -foreground red] + pack $label -side bottom -pady 4 + + set labf2 [LabelFrame $parent.labf2 -text "Direction" -side top \ + -anchor w -relief sunken -borderwidth 1] + set subf [$labf2 getframe] + set var(bside) top + foreach dir {top left bottom right} { + set rad [radiobutton $subf.$dir -text "$dir arrow" \ + -variable DemoBasic::var(bside) -value $dir \ + -command "DemoBasic::_bside \$DemoBasic::var(bside) $arr1 $arr2"] + pack $rad -anchor w + } + + set labf3 [LabelFrame $parent.labf3 -text "Relief" -side top \ + -anchor w -relief sunken -borderwidth 1] + set subf [$labf3 getframe] + set var(brelief) raised + foreach {f lrelief} {f1 {raised sunken ridge groove} f2 {flat solid link}} { + set f [frame $subf.$f] + foreach relief $lrelief { + set rad [radiobutton $f.$relief -text $relief \ + -variable DemoBasic::var(brelief) -value $relief \ + -command "DemoBasic::_brelief \$DemoBasic::var(brelief) $but $arr1 $arr2"] + pack $rad -anchor w + } + pack $f -side left -padx 2 -anchor n + } + pack $labf1 $labf2 $labf3 -side left -fill y -padx 4 +} + + +proc DemoBasic::_bstate { state but arr1 arr2 } { + foreach but [list $but $arr1 $arr2] { + $but configure -state $state + } +} + + +proc DemoBasic::_brelief { relief but arr1 arr2 } { + $but configure -relief $relief + if { $relief != "link" } { + foreach arr [list $arr1 $arr2] { + $arr configure -relief $relief + } + } +} + + +proc DemoBasic::_bside { side args } { + foreach arr $args { + $arr configure -dir $side + } +} + + +proc DemoBasic::_barmcmd { value but arr1 arr2 } { + if { $value } { + $but configure \ + -armcommand "DemoBasic::_butcmd arm" \ + -disarmcommand "DemoBasic::_butcmd disarm" \ + -command {} + foreach arr [list $arr1 $arr2] { + $arr configure \ + -armcommand "DemoBasic::_butcmd arm" \ + -disarmcommand "DemoBasic::_butcmd disarm" \ + -command {} + } + } else { + $but configure -armcommand {} -disarmcommand {} \ + -command "DemoBasic::_butcmd command" + foreach arr [list $arr1 $arr2] { + $arr configure -armcommand {} -disarmcommand {} \ + -command "DemoBasic::_butcmd command" + } + } +} + + +proc DemoBasic::_butcmd { reason } { + variable count + variable id + + catch {after cancel $id} + if { $reason == "arm" } { + incr count + set DemoBasic::var(butcmd) "$reason command called ($count)" + } else { + set count 0 + set DemoBasic::var(butcmd) "$reason command called" + } + set id [after 500 {set DemoBasic::var(butcmd) ""}] +} + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/bwidget.xbm b/src/punk86.vfs/lib/BWidget1.9.16/demo/bwidget.xbm new file mode 100644 index 00000000..5451ebb9 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/bwidget.xbm @@ -0,0 +1,46 @@ +#define bwidget_width 76 +#define bwidget_height 64 +static char bwidget_bits[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0x00,0xb6,0x6d,0xdb,0x16,0x00,0x00,0x00,0x00,0xf0, + 0x00,0xdb,0xb6,0x6d,0xab,0x00,0x00,0x00,0x00,0xf0,0x00,0x55,0x55,0x55,0x75, + 0x01,0x00,0x00,0x00,0xf0,0x00,0x6d,0xdb,0xb6,0xad,0x02,0x00,0x00,0x00,0xf0, + 0x00,0xb6,0x6d,0xdb,0xb6,0x05,0x00,0x00,0x00,0xf0,0x00,0x55,0x55,0x55,0x55, + 0x05,0x00,0x00,0x00,0xf0,0x00,0xda,0xb6,0xad,0x6d,0x0b,0x00,0x00,0x00,0xf0, + 0x00,0x6b,0x03,0xc0,0xb6,0x05,0x00,0x00,0x00,0xf0,0x00,0x56,0x05,0x00,0x55, + 0x0d,0x00,0x00,0x00,0xf0,0x00,0xbb,0x05,0x80,0xdb,0x06,0x00,0x00,0x00,0xf0, + 0x00,0xca,0x06,0x00,0x6c,0x0b,0x00,0x00,0x00,0xf0,0x00,0xb6,0x02,0x00,0xaa, + 0x0a,0x00,0x00,0x00,0xf0,0x00,0xab,0x05,0x00,0x6c,0x0b,0x00,0x00,0x00,0xf0, + 0x00,0xdd,0x06,0x00,0xb6,0x05,0x00,0x00,0x00,0xf0,0x00,0xaa,0x02,0x00,0x55, + 0x05,0x00,0x00,0x00,0xf0,0x00,0xb7,0x05,0xc0,0xda,0x02,0x00,0x00,0x00,0xf0, + 0x00,0xd9,0x06,0x50,0x6b,0x01,0x00,0x00,0x00,0xf0,0x00,0x56,0xb5,0xad,0xad, + 0x00,0x00,0x00,0x00,0xf0,0x00,0xdb,0xd6,0x76,0x15,0x00,0x00,0x00,0x00,0xf0, + 0x00,0x6a,0xab,0xaa,0x2d,0x00,0x00,0x00,0x00,0xf0,0x00,0x56,0x75,0xad,0xb6, + 0x02,0x00,0x00,0x00,0xf0,0x00,0xbb,0xad,0xd6,0xaa,0x05,0x00,0x00,0x00,0xf0, + 0x00,0xca,0xb6,0x6b,0xdb,0x2a,0x00,0x00,0x00,0xf0,0x00,0x77,0xd5,0x5c,0x6d, + 0x2d,0x00,0x00,0x00,0xf0,0x00,0x99,0x05,0x00,0xaa,0x56,0x00,0x00,0x00,0xf0, + 0x00,0xee,0x06,0x00,0x6c,0xbb,0x00,0x00,0x00,0xf0,0x00,0xaa,0x02,0x00,0xb0, + 0x55,0x00,0x00,0x00,0xf0,0x00,0x55,0x05,0x00,0xa8,0xd6,0x00,0x00,0x00,0xf0, + 0x00,0xee,0x06,0x00,0xd0,0x6a,0x00,0x00,0x00,0xf0,0x00,0x55,0x03,0x00,0x68, + 0xb7,0xfc,0x00,0x7e,0xf0,0x00,0x6d,0x05,0x00,0xa8,0xaa,0xfc,0x80,0x7e,0xf0, + 0x00,0xb6,0x05,0x00,0x50,0xbb,0xfe,0x01,0x7e,0xf0,0x00,0x55,0x05,0x00,0x78, + 0xad,0xfe,0x81,0x1f,0xf0,0x00,0xb6,0x05,0x00,0xa4,0xb5,0xfe,0x81,0x1f,0xf0, + 0x00,0x5b,0x05,0x80,0xba,0x56,0xfe,0x83,0x1f,0xf0,0x00,0xaa,0x6b,0x5b,0xd5, + 0x5a,0xff,0x85,0x1f,0xf0,0x00,0xdb,0x5a,0xad,0x57,0x2b,0xff,0xc7,0x0f,0xf0, + 0x00,0x6d,0xad,0xd5,0x6a,0x0d,0xff,0xc7,0x0f,0xf0,0x00,0xaa,0xd6,0xb6,0xba, + 0x05,0xdf,0xc7,0x0f,0xf0,0x00,0xb7,0xb5,0x5a,0xab,0x8a,0xdf,0xcf,0x0f,0xf0, + 0x00,0xd9,0x5a,0xab,0x6d,0x8f,0xcf,0xef,0x07,0xf0,0x00,0x56,0xad,0x75,0xb5, + 0xaf,0x8f,0xef,0x07,0xf0,0x00,0xb5,0xeb,0x5a,0x00,0x9f,0xcf,0xef,0x07,0xf0, + 0x00,0x00,0x00,0x00,0x00,0xff,0x8f,0xff,0x07,0xf0,0x00,0x00,0x00,0x00,0x00, + 0xfe,0x87,0xff,0x03,0xf0,0x00,0x00,0x00,0x00,0x00,0xff,0x03,0xff,0x03,0xf0, + 0x00,0x00,0x00,0x00,0x00,0xfe,0x03,0xff,0x03,0xf0,0x00,0x00,0x00,0x00,0x00, + 0xfe,0x03,0xff,0x01,0xf0,0x00,0x00,0x00,0x00,0x00,0xfc,0x01,0xff,0x03,0xf0, + 0x00,0x00,0x00,0x00,0x00,0xfe,0x01,0xfe,0x01,0xf0,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x01,0xfe,0x01,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0}; diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/demo.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/demo.tcl new file mode 100644 index 00000000..c242c662 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/demo.tcl @@ -0,0 +1,272 @@ +#!/bin/sh +# The next line is executed by /bin/sh, but not tcl \ +exec wish "$0" ${1+"$@"} + +namespace eval Demo { + variable _wfont + + variable notebook + variable mainframe + variable status + variable prgtext + variable prgindic + variable font + variable font_name + variable toolbar1 1 + variable toolbar2 1 + + set pwd [pwd] + cd [file dirname [info script]] + variable DEMODIR [pwd] + cd $pwd + + foreach script { + manager.tcl basic.tcl select.tcl dnd.tcl tree.tcl tmpldlg.tcl + } { + namespace inscope :: source $DEMODIR/$script + } +} + +image create photo bwidget16 -data { + R0lGODlhEAAQAOMJABat6IGYffaBCUSku/KCDcCMPomXdgCy//+AANnZ2dnZ2dnZ2dnZ2dnZ2dnZ + 2dnZ2SH5BAEKAA8ALAAAAAAQABAAAAQ58MlJq70U6a0x/9c2iRb5mNmHjmpXuiecIpRA0JWJDEfw + HIffoWU4AIBBYKuABAoxSGEQ6oxins8IADs= +} + +image create photo faded16 -data { + R0lGODlhEAAQAKEDAAAAAICAgKCgoP///yH5BAEKAAMALAAAAAAQABAAAAIjnI+py+1vQEABsDoH + blUI+XyAAImk033Zsmng8hoVRNd2XQAAOw== +} + +image create photo stop16 -data { + R0lGODlhEAAQAMIFAAAAAC8DA3gKCpYMDPAUFP///////////yH5BAEKAAcALAAAAAAQABAAAAMm + SLrc/jDKqYBgAsB8CY/ZMFjTGAzUEACoFI7d83nkUysZpe/8ngAAOw== +} + +proc Demo::create { } { + global tk_patchLevel + variable _wfont + variable notebook + variable mainframe + variable font + variable prgtext + variable prgindic + + set prgtext "Please wait while loading font..." + set prgindic -1 + _create_intro + update + SelectFont::loadfont + + bind all { catch {console show} } + + # Menu description + set descmenu { + "&File" all file 0 { + {command "E&xit" {} "Exit BWidget demo" {} -command exit} + } + "&Options" all options 0 { + {checkbutton "Toolbar &1" {all option} "Show/hide toolbar 1" {} + -variable Demo::toolbar1 + -command {$Demo::mainframe showtoolbar 0 $Demo::toolbar1} + } + {checkbutton "Toolbar &2" {all option} "Show/hide toolbar 2" {} + -variable Demo::toolbar2 + -command {$Demo::mainframe showtoolbar 1 $Demo::toolbar2} + } + } + } + + set prgtext "Creating MainFrame..." + set prgindic 0 + set mainframe [MainFrame .mainframe \ + -menu $descmenu \ + -textvariable Demo::status \ + -progressvar Demo::prgindic] + + # toolbar 1 creation + incr prgindic + set tb1 [$mainframe addtoolbar] + set bbox [ButtonBox $tb1.bbox1 -spacing 0 -padx 1 -pady 1] + $bbox add -image [Bitmap::get new] \ + -highlightthickness 0 -takefocus 0 -relief link -borderwidth 1 -padx 1 -pady 1 \ + -helptext "Create a new file" + $bbox add -image [Bitmap::get open] \ + -highlightthickness 0 -takefocus 0 -relief link -borderwidth 1 -padx 1 -pady 1 \ + -helptext "Open an existing file" + $bbox add -image [Bitmap::get save] \ + -highlightthickness 0 -takefocus 0 -relief link -borderwidth 1 -padx 1 -pady 1 \ + -helptext "Save file" + pack $bbox -side left -anchor w + + set sep [Separator $tb1.sep -orient vertical] + pack $sep -side left -fill y -padx 4 -anchor w + + incr prgindic + set bbox [ButtonBox $tb1.bbox2 -spacing 0 -padx 1 -pady 1] + $bbox add -image [Bitmap::get cut] \ + -highlightthickness 0 -takefocus 0 -relief link -borderwidth 1 -padx 1 -pady 1 \ + -helptext "Cut selection" + $bbox add -image [Bitmap::get copy] \ + -highlightthickness 0 -takefocus 0 -relief link -borderwidth 1 -padx 1 -pady 1 \ + -helptext "Copy selection" + $bbox add -image [Bitmap::get paste] \ + -highlightthickness 0 -takefocus 0 -relief link -borderwidth 1 -padx 1 -pady 1 \ + -helptext "Paste selection" + pack $bbox -side left -anchor w + + # toolbar 2 creation + incr prgindic + set tb2 [$mainframe addtoolbar] + set _wfont [SelectFont $tb2.font -type toolbar \ + -command "Demo::update_font \[$tb2.font cget -font\]"] + set font [$_wfont cget -font] + pack $_wfont -side left -anchor w + + $mainframe addindicator -text "BWidget [package version BWidget]" + $mainframe addindicator -textvariable tk_patchLevel + + # NoteBook creation + set frame [$mainframe getframe] + set notebook [NoteBook $frame.nb] + + set prgtext "Creating Manager..." + incr prgindic + set f0 [DemoManager::create $notebook] + set prgtext "Creating Basic..." + incr prgindic + set f1 [DemoBasic::create $notebook] + set prgtext "Creating Select..." + incr prgindic + set f2 [DemoSelect::create $notebook] + set prgtext "Creating Dialog..." + incr prgindic + set f3b [DemoDlg::create $notebook] + set prgtext "Creating Drag and Drop..." + incr prgindic + set f4 [DemoDnd::create $notebook] + set prgtext "Creating Tree..." + incr prgindic + set f5 [DemoTree::create $notebook] + + foreach page [$notebook pages] { + $notebook itemconfigure $page \ + -image bwidget16 \ + -rimage faded16 \ + -ractiveimage stop16 \ + -rimagecmd {::Demo::_close_tab} + } + + set prgtext "Done" + incr prgindic + $notebook compute_size + pack $notebook -fill both -expand yes -padx 4 -pady 4 + $notebook raise [$notebook page 0] + + pack $mainframe -fill both -expand yes + update idletasks + destroy .intro +} + +proc Demo::_close_tab { tabSet tabName } { + after idle [list $tabSet delete $tabName] + + set tabIndex [$tabSet index $tabName] + set tabList [$tabSet pages] + set tabTot [llength $tabList] + + # Pick another tab to raise. + if {$tabTot == 1} { + # No other tabs. + exit + } elseif {$tabIndex < $tabTot - 1} { + # Raise the tab to the right. + set raiseTabName [lindex $tabList [expr {$tabIndex + 1}]] + } else { + # This tab is furthest to the right. Raise the tab to the left. + set raiseTabName [lindex $tabList [expr {$tabIndex - 1}]] + } + + $tabSet raise $raiseTabName + $tabSet see $raiseTabName + return +} + + + +proc Demo::update_font { newfont } { + variable _wfont + variable notebook + variable font + variable font_name + + . configure -cursor watch + if { $font != $newfont } { + $_wfont configure -font $newfont + $notebook configure -font $newfont + set font $newfont + } + . configure -cursor "" +} + + +proc Demo::_create_intro { } { + variable DEMODIR + + set top [toplevel .intro -relief raised -borderwidth 2] + + wm withdraw $top + wm overrideredirect $top 1 + + set ximg [label $top.x -bitmap @$DEMODIR/x1.xbm \ + -foreground grey90 -background white] + set bwimg [label $ximg.bw -bitmap @$DEMODIR/bwidget.xbm \ + -foreground grey90 -background white] + set frame [frame $ximg.f -background white] + set lab1 [label $frame.lab1 -text "Loading demo" \ + -background white -font {times 8}] + set lab2 [label $frame.lab2 -textvariable Demo::prgtext \ + -background white -font {times 8} -width 35] + set prg [ProgressBar $frame.prg -width 50 -height 10 -background white \ + -variable Demo::prgindic -maximum 10] + pack $lab1 $lab2 $prg + place $frame -x 0 -y 0 -anchor nw + place $bwimg -relx 1 -rely 1 -anchor se + pack $ximg + BWidget::place $top 0 0 center + wm deiconify $top +} + + +proc Demo::main {} { + variable DEMODIR + + lappend ::auto_path [file dirname $DEMODIR] + package require BWidget + + option add *TitleFrame.l.font {helvetica 11 bold italic} + + if {$::tk_version < 8.5} { + set helpFont {helvetica 12} + } else { + set helpFont {TkDefaultFont 10} + } + + DynamicHelp::configure \ + -background #FFFFC0 \ + -foreground #141312 \ + -padx 3 \ + -font $helpFont + + wm withdraw . + wm title . "BWidget demo" + + Demo::create + BWidget::place . 0 0 center + wm deiconify . + raise . + focus -force . +} + +Demo::main +wm geom . [wm geom .] diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/dnd.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/dnd.tcl new file mode 100644 index 00000000..fe4e1b41 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/dnd.tcl @@ -0,0 +1,42 @@ + +namespace eval DemoDnd { +} + + +proc DemoDnd::create { nb } { + + set frame [$nb insert end demoDnd -text "Drag and Drop"] + + set titf1 [TitleFrame $frame.titf1 -text "Drag sources"] + set subf [$titf1 getframe] + + set ent1 [LabelEntry $subf.e1 -label "Entry" -labelwidth 14 -dragenabled 1 -dragevent 3] + set labf1 [LabelFrame $subf.f1 -text "Label (text)" -width 14] + set f [$labf1 getframe] + set lab [Label $f.l -text "Drag this text" -dragenabled 1 -dragevent 3] + pack $lab + + set labf2 [LabelFrame $subf.f2 -text "Label (bitmap)" -width 14] + set f [$labf2 getframe] + set lab [Label $f.l -bitmap info -dragenabled 1 -dragevent 3] + pack $lab + + pack $ent1 $labf1 $labf2 -side top -fill x -pady 4 + + set titf2 [TitleFrame $frame.titf2 -text "Drop targets"] + set subf [$titf2 getframe] + + set ent1 [LabelEntry $subf.e1 -label "Entry" -labelwidth 14 -dropenabled 1] + set labf1 [LabelFrame $subf.f1 -text "Label" -width 14] + set f [$labf1 getframe] + set lab [Label $f.l -dropenabled 1 -highlightthickness 1] + pack $lab -fill x + + pack $ent1 $labf1 -side top -fill x -pady 4 + + pack $titf1 $titf2 -pady 4 + + return $frame +} + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/manager.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/manager.tcl new file mode 100644 index 00000000..ffddcc3c --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/manager.tcl @@ -0,0 +1,141 @@ + + +namespace eval DemoManager { + variable _progress 0 + variable _afterid "" + variable _status "Compute in progress..." + variable _homogeneous 0 +} + + +proc DemoManager::create { nb } { + set frame [$nb insert end demoManager -text "Manager"] + + set topf [frame $frame.topf] + set titf1 [TitleFrame $topf.titf1 -text "MainFrame"] + set titf2 [TitleFrame $topf.titf2 -text "NoteBook"] + set titf3 [TitleFrame $frame.titf3 -text "Paned & ScrolledWindow"] + + _mainframe [$titf1 getframe] + _notebook [$titf2 getframe] + _paned [$titf3 getframe] + + pack $titf1 $titf2 -padx 4 -side left -fill both -expand yes + pack $topf -fill x -pady 2 + pack $titf3 -pady 2 -padx 4 -fill both -expand yes + + return $frame +} + + +proc DemoManager::_mainframe { parent } { + set labf1 [LabelFrame $parent.labf1 -text "Toolbar" -side top -anchor w \ + -relief sunken -borderwidth 2] + set subf [$labf1 getframe] + checkbutton $subf.chk1 -text "View toolbar 1" -variable Demo::toolbar1 \ + -command {$Demo::mainframe showtoolbar 0 $Demo::toolbar1} + checkbutton $subf.chk2 -text "View toolbar 2" -variable Demo::toolbar2 \ + -command {$Demo::mainframe showtoolbar 1 $Demo::toolbar2} + pack $subf.chk1 $subf.chk2 -anchor w -fill x + pack $labf1 -fill both + + set labf2 [LabelFrame $parent.labf2 -text "Status bar" -side top -anchor w \ + -relief sunken -borderwidth 2] + set subf [$labf2 getframe] + checkbutton $subf.chk1 -text "Show Progress\nindicator" -justify left \ + -variable DemoManager::_progress \ + -command {DemoManager::_show_progress} + pack $subf.chk1 -anchor w -fill x + + pack $labf1 $labf2 -side left -padx 4 -fill both +} + + +proc DemoManager::_notebook { parent } { + checkbutton $parent.chk1 -text "Homogeneous label" \ + -variable DemoManager::_homogeneous \ + -command {$Demo::notebook configure -homogeneous $DemoManager::_homogeneous} + pack $parent.chk1 -side left -anchor n -fill x +} + + + +proc DemoManager::_paned { parent } { + set pw1 [PanedWindow $parent.pw -side top] + set pane [$pw1 add -minsize 100] + + set pw2 [PanedWindow $pane.pw -side left] + set pane1 [$pw2 add -minsize 100] + set pane2 [$pw2 add -minsize 100] + set pane3 [$pw1 add -minsize 100] + + foreach pane [list $pane1 $pane2] { + set sw [ScrolledWindow $pane.sw] + set lb [listbox $sw.lb -height 8 -width 20 -highlightthickness 0] + for {set i 1} {$i <= 8} {incr i} { + $lb insert end "Value $i" + } + $sw setwidget $lb + pack $sw -fill both -expand yes + } + + set sw [ScrolledWindow $pane3.sw -relief sunken -borderwidth 2] + set sf [ScrollableFrame $sw.f] + $sw setwidget $sf + set subf [$sf getframe] + set lab [label $subf.lab -text "This is a ScrollableFrame"] + set chk [checkbutton $subf.chk -text "Constrained width" \ + -variable DemoManager::_constw \ + -command "$sf configure -constrainedwidth \$DemoManager::_constw"] + pack $lab + pack $chk -anchor w + bind $chk "$sf see $chk" + for {set i 0} {$i <= 20} {incr i} { + pack [entry $subf.ent$i -width 50] -fill x -pady 4 + bind $subf.ent$i "$sf see $subf.ent$i" + $subf.ent$i insert end "Text field $i" + } + + pack $sw $pw2 $pw1 -fill both -expand yes +} + + +proc DemoManager::_show_progress { } { + variable _progress + variable _afterid + variable _status + + if { $_progress } { + set Demo::status "Compute in progress..." + set Demo::prgindic 0 + $Demo::mainframe showstatusbar progression + if { $_afterid == "" } { + set _afterid [after 30 DemoManager::_update_progress] + } + } else { + set Demo::status "" + $Demo::mainframe showstatusbar status + set _afterid "" + } +} + + +proc DemoManager::_update_progress { } { + variable _progress + variable _afterid + + if { $_progress } { + if { $Demo::prgindic < 100 } { + incr Demo::prgindic 5 + set _afterid [after 30 DemoManager::_update_progress] + } else { + set _progress 0 + $Demo::mainframe showstatusbar status + set Demo::status "Done" + set _afterid "" + after 500 {set Demo::status ""} + } + } else { + set _afterid "" + } +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/select.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/select.tcl new file mode 100644 index 00000000..000acdbd --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/select.tcl @@ -0,0 +1,59 @@ +namespace eval DemoSelect { + variable var +} + + +proc DemoSelect::create { nb } { + set frame [$nb insert end demoSelect -text "Spin & Combo"] + + set titf1 [TitleFrame $frame.titf1 -text SpinBox] + set subf [$titf1 getframe] + set spin [SpinBox $subf.spin \ + -range {1 100 1} -textvariable DemoSelect::var(spin,var) \ + -helptext "This is the SpinBox"] + set ent [LabelEntry $subf.ent -label "Linked var" -labelwidth 10 -labelanchor w \ + -textvariable DemoSelect::var(spin,var) -editable 0 \ + -helptext "This is an Entry reflecting\nthe linked var of SpinBox"] + set labf [LabelFrame $subf.options -text "Options" -side top -anchor w \ + -relief sunken -borderwidth 1 \ + -helptext "Modify some options of SpinBox"] + set subf [$labf getframe] + set chk1 [checkbutton $subf.chk1 -text "Non editable" \ + -variable DemoSelect::var(spin,editable) -onvalue false -offvalue true \ + -command "$spin configure -editable \$DemoSelect::var(spin,editable)"] + set chk2 [checkbutton $subf.chk2 -text "Disabled" \ + -variable DemoSelect::var(spin,state) -onvalue disabled -offvalue normal \ + -command "$spin configure -state \$DemoSelect::var(spin,state)"] + + pack $chk1 $chk2 -side left -anchor w + pack $spin $ent $labf -pady 4 -fill x + pack $titf1 + + set titf2 [TitleFrame $frame.titf2 -text ComboBox] + set subf [$titf2 getframe] + set combo [ComboBox $subf.combo \ + -textvariable DemoSelect::var(combo,var) \ + -values {"first value" "second value" "third value" "fourth value" "fifth value"} \ + -helptext "This is the ComboBox"] + set ent [LabelEntry $subf.ent -label "Linked var" -labelwidth 10 -labelanchor w \ + -textvariable DemoSelect::var(combo,var) -editable 0 \ + -helptext "This is an Entry reflecting\nthe linked var of ComboBox"] + set labf [LabelFrame $subf.options -text "Options" -side top -anchor w \ + -relief sunken -borderwidth 1 \ + -helptext "Modify some options of SpinBox"] + set subf [$labf getframe] + set chk1 [checkbutton $subf.chk1 -text "Non editable" \ + -variable DemoSelect::var(combo,editable) -onvalue false -offvalue true \ + -command "$combo configure -editable \$DemoSelect::var(combo,editable)"] + set chk2 [checkbutton $subf.chk2 -text "Disabled" \ + -variable DemoSelect::var(combo,state) -onvalue disabled -offvalue normal \ + -command "$combo configure -state \$DemoSelect::var(combo,state)"] + + pack $chk1 $chk2 -side left -anchor w + pack $combo $ent $labf -pady 4 -fill x + + pack $titf1 $titf2 -pady 4 + + return $frame +} + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/tmpldlg.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/tmpldlg.tcl new file mode 100644 index 00000000..fa005841 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/tmpldlg.tcl @@ -0,0 +1,215 @@ + +namespace eval DemoDlg { + variable tmpl + variable msg + variable progmsg + variable progval + variable resources "en" +} + + +proc DemoDlg::create { nb } { + set frame [$nb insert end demoDlg -text "Dialog"] + + set titf1 [TitleFrame $frame.titf1 -text "Resources"] + set titf2 [TitleFrame $frame.titf2 -text "Template Dialog"] + set titf3 [TitleFrame $frame.titf3 -text "Message Dialog"] + set titf4 [TitleFrame $frame.titf4 -text "Other dialog"] + + set subf [$titf1 getframe] + set cmd {option read [file join $::BWIDGET::LIBRARY "lang" $DemoDlg::resources.rc]} + set rad1 [radiobutton $subf.rad1 -text "English" \ + -variable DemoDlg::resources -value en \ + -command $cmd] + set rad2 [radiobutton $subf.rad2 -text "French" \ + -variable DemoDlg::resources -value fr \ + -command $cmd] + set rad3 [radiobutton $subf.rad3 -text "German" \ + -variable DemoDlg::resources -value de \ + -command $cmd] + pack $rad1 $rad2 $rad3 -side left + + _tmpldlg [$titf2 getframe] + _msgdlg [$titf3 getframe] + _stddlg [$titf4 getframe] + + pack $titf1 -fill x -pady 2 -padx 2 + pack $titf4 -side bottom -fill x -pady 2 -padx 2 + pack $titf2 $titf3 -side left -padx 2 -fill both -expand yes +} + + +proc DemoDlg::_tmpldlg { parent } { + variable tmpl + + set tmpl(side) bottom + set tmpl(anchor) c + + set labf1 [LabelFrame $parent.labf1 -text "Button side" -side top \ + -anchor w -relief sunken -borderwidth 1] + set subf [$labf1 getframe] + radiobutton $subf.rad1 -text "Bottom" \ + -variable DemoDlg::tmpl(side) -value bottom -anchor w + radiobutton $subf.rad2 -text "Left" \ + -variable DemoDlg::tmpl(side) -value left -anchor w + radiobutton $subf.rad3 -text "Right" \ + -variable DemoDlg::tmpl(side) -value right -anchor w + radiobutton $subf.rad4 -text "Top" \ + -variable DemoDlg::tmpl(side) -value top -anchor w + + pack $subf.rad1 $subf.rad2 $subf.rad3 $subf.rad4 -fill x -anchor w + + set labf2 [LabelFrame $parent.labf2 -text "Button anchor" -side top \ + -anchor w -relief sunken -borderwidth 1] + set subf [$labf2 getframe] + radiobutton $subf.rad1 -text "North" \ + -variable DemoDlg::tmpl(anchor) -value n -anchor w + radiobutton $subf.rad2 -text "West" \ + -variable DemoDlg::tmpl(anchor) -value w -anchor w + radiobutton $subf.rad3 -text "East" \ + -variable DemoDlg::tmpl(anchor) -value e -anchor w + radiobutton $subf.rad4 -text "South" \ + -variable DemoDlg::tmpl(anchor) -value s -anchor w + radiobutton $subf.rad5 -text "Center" \ + -variable DemoDlg::tmpl(anchor) -value c -anchor w + + pack $subf.rad1 $subf.rad2 $subf.rad3 $subf.rad4 $subf.rad5 -fill x -anchor w + + set sep [Separator $parent.sep -orient horizontal] + set button [button $parent.but -text "Show" -command DemoDlg::_show_tmpldlg] + + pack $button -side bottom + pack $sep -side bottom -fill x -pady 10 + pack $labf1 $labf2 -side left -padx 4 -anchor n +} + + +proc DemoDlg::_msgdlg { parent } { + variable msg + + set msg(type) ok + set msg(icon) info + + set labf1 [LabelFrame $parent.labf1 -text "Type" -side top \ + -anchor w -relief sunken -borderwidth 1] + set subf [$labf1 getframe] + radiobutton $subf.rad1 -text "Ok" -variable DemoDlg::msg(type) -value ok -anchor w + radiobutton $subf.rad2 -text "Ok, Cancel" -variable DemoDlg::msg(type) -value okcancel -anchor w + radiobutton $subf.rad3 -text "Retry, Cancel" -variable DemoDlg::msg(type) -value retrycancel -anchor w + radiobutton $subf.rad4 -text "Yes, No" -variable DemoDlg::msg(type) -value yesno -anchor w + radiobutton $subf.rad5 -text "Yes, No, Cancel" -variable DemoDlg::msg(type) -value yesnocancel -anchor w + radiobutton $subf.rad6 -text "Abort, Retry, Ignore" -variable DemoDlg::msg(type) -value abortretryignore -anchor w + radiobutton $subf.rad7 -text "User" -variable DemoDlg::msg(type) -value user -anchor w + Entry $subf.user -textvariable DemoDlg::msg(buttons) + + pack $subf.rad1 $subf.rad2 $subf.rad3 $subf.rad4 $subf.rad5 $subf.rad6 -fill x -anchor w + pack $subf.rad7 $subf.user -side left + + set labf2 [LabelFrame $parent.labf2 -text "Icon" -side top -anchor w -relief sunken -borderwidth 1] + set subf [$labf2 getframe] + radiobutton $subf.rad1 -text "Information" -variable DemoDlg::msg(icon) -value info -anchor w + radiobutton $subf.rad2 -text "Question" -variable DemoDlg::msg(icon) -value question -anchor w + radiobutton $subf.rad3 -text "Warning" -variable DemoDlg::msg(icon) -value warning -anchor w + radiobutton $subf.rad4 -text "Error" -variable DemoDlg::msg(icon) -value error -anchor w + pack $subf.rad1 $subf.rad2 $subf.rad3 $subf.rad4 -fill x -anchor w + + + set sep [Separator $parent.sep -orient horizontal] + set button [button $parent.but -text "Show" -command DemoDlg::_show_msgdlg] + + pack $button -side bottom + pack $sep -side bottom -fill x -pady 10 + pack $labf1 $labf2 -side left -padx 4 -anchor n +} + + +proc DemoDlg::_stddlg { parent } { + set but0 [button $parent.but0 \ + -text "Select a color " \ + -command "DemoDlg::_show_color $parent.but0"] + set but1 [button $parent.but1 \ + -text "Font selector dialog" \ + -command DemoDlg::_show_fontdlg] + set but2 [button $parent.but2 \ + -text "Progression dialog" \ + -command DemoDlg::_show_progdlg] + set but3 [button $parent.but3 \ + -text "Password dialog" \ + -command DemoDlg::_show_passdlg] + + pack $but0 $but1 $but2 $but3 -side left -padx 5 -anchor w +} + +proc DemoDlg::_show_color {w} { + set color [SelectColor::menu $w.color [list below $w] \ + -color [$w cget -background] \ + -command [list $w configure -background]] + if {[string length $color]} { + $w configure -background $color + } +} + +proc DemoDlg::_show_tmpldlg { } { + variable tmpl + + set dlg [Dialog .tmpldlg -parent . -modal local \ + -separator 1 \ + -title "Template dialog" \ + -side $tmpl(side) \ + -anchor $tmpl(anchor) \ + -default 0 -cancel 1] + $dlg add -name ok + $dlg add -name cancel + set msg [message [$dlg getframe].msg -text "Template\nDialog" -justify center -anchor c] + pack $msg -fill both -expand yes -padx 100 -pady 100 + $dlg draw + destroy $dlg +} + + +proc DemoDlg::_show_msgdlg { } { + variable msg + + destroy .msgdlg + MessageDlg .msgdlg -parent . \ + -message "Message for MessageBox" \ + -type $msg(type) \ + -icon $msg(icon) \ + -buttons $msg(buttons) +} + + +proc DemoDlg::_show_fontdlg { } { + set font [SelectFont .fontdlg -parent . -font $Demo::font] + if { $font != "" } { + Demo::update_font $font + } +} + + +proc DemoDlg::_show_progdlg { } { + set DemoDlg::progmsg "Compute in progress..." + set DemoDlg::progval 0 + + ProgressDlg .progress -parent . -title "Wait..." \ + -type infinite \ + -width 20 \ + -textvariable DemoDlg::progmsg \ + -variable DemoDlg::progval \ + -stop "Stop" \ + -command {destroy .progress} + _update_progdlg +} + + +proc DemoDlg::_update_progdlg { } { + if { [winfo exists .progress] } { + set DemoDlg::progval 2 + after 20 DemoDlg::_update_progdlg + } +} + +proc DemoDlg::_show_passdlg { } { + PasswdDlg .passwd -parent . +} + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/tree.tcl b/src/punk86.vfs/lib/BWidget1.9.16/demo/tree.tcl new file mode 100644 index 00000000..97d8d975 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/tree.tcl @@ -0,0 +1,260 @@ + +namespace eval DemoTree { + variable count + variable dblclick +} + + +proc DemoTree::create { nb } { + set frame [$nb insert end demoTree -text "Tree"] + set pw [PanedWindow $frame.pw -side top] + + set pane [$pw add -weight 1] + set title [TitleFrame $pane.lf -text "Directory tree"] + set sw [ScrolledWindow [$title getframe].sw \ + -relief sunken -borderwidth 2] + set tree [Tree $sw.tree \ + -relief flat -borderwidth 0 -width 15 -highlightthickness 0\ + -redraw 0 -dropenabled 1 -dragenabled 1 \ + -dragevent 3 \ + -droptypes { + TREE_NODE {copy {} move {} link {}} + LISTBOX_ITEM {copy {} move {} link {}} + } \ + -opencmd "DemoTree::moddir 1 $sw.tree" \ + -closecmd "DemoTree::moddir 0 $sw.tree"] + $sw setwidget $tree + + pack $sw -side top -expand yes -fill both + pack $title -fill both -expand yes + + set pane [$pw add -weight 2] + set lf [TitleFrame $pane.lf -text "Content"] + set sw [ScrolledWindow [$lf getframe].sw \ + -scrollbar horizontal -auto none -relief sunken -borderwidth 2] + set list [ListBox::create $sw.lb \ + -relief flat -borderwidth 0 \ + -dragevent 3 \ + -dropenabled 1 -dragenabled 1 \ + -width 20 -highlightthickness 0 -multicolumn true \ + -redraw 0 -dragenabled 1 \ + -droptypes { + TREE_NODE {copy {} move {} link {}} + LISTBOX_ITEM {copy {} move {} link {}}}] + $sw setwidget $list + + pack $sw $lf -fill both -expand yes + + pack $pw -fill both -expand yes + + $tree bindText "DemoTree::select tree 1 $tree $list" + $tree bindText "DemoTree::select tree 2 $tree $list" + $list bindText "DemoTree::select list 1 $tree $list" + $list bindText "DemoTree::select list 2 $tree $list" + $list bindImage "DemoTree::select list 2 $tree $list" + + $nb itemconfigure demoTree \ + -createcmd "DemoTree::init $tree $list" \ + -raisecmd { + # on windows you can get 100x100+-200+200 [PT] + regexp {[0-9]+x[0-9]+([+-]{1,2}[0-9]+)([+-]{1,2}[0-9]+)} \ + [wm geom .] global_foo global_w global_h + # {}'s left off on purpose. [PT] + BWidget::place .top 0 0 at [expr $global_w-[winfo screenwidth .]] $global_h + wm deiconify .top + bind . {wm withdraw .top} + bind . {wm deiconify .top} + bind . { + if { ![string compare %W "."] } { + # see above re: windows geometry + regexp {[0-9]+x[0-9]+([+-]{1,2}[0-9]+)([+-]{1,2}[0-9]+)} \ + [wm geom .] global_foo global_w global_h + BWidget::place .top 0 0 at [expr $global_w-[winfo screenwidth .]] $global_h + } + } + } \ + -leavecmd { + wm withdraw .top + bind . {} + bind . {} + bind . {} + return 1 + } +} + + +proc DemoTree::init { tree list args } { + global tcl_platform + variable count + + set count 0 + if { $tcl_platform(platform) == "unix" } { + set rootdir [glob "~"] + } else { + set rootdir "c:\\" + } + $tree insert end root home -text $rootdir -data $rootdir -open 1 \ + -image [Bitmap::get openfold] + getdir $tree home $rootdir + DemoTree::select tree 1 $tree $list home + $tree configure -redraw 1 + $list configure -redraw 1 + + # ScrollView + set w .top + toplevel $w + wm withdraw $w + wm protocol $w WM_DELETE_WINDOW { + # don't kill me + } + wm resizable $w 0 0 + wm title $w "Drag rectangle to scroll directory tree" + wm transient $w . + ScrollView $w.sv -window $tree -fill white -relief sunken -bd 1 \ + -width 300 -height 300 + pack $w.sv -fill both -expand yes +} + + +proc DemoTree::getdir { tree node path } { + variable count + + set lentries [glob -nocomplain [file join $path "*"]] + set lfiles {} + foreach f $lentries { + set tail [file tail $f] + if { [file isdirectory $f] } { + $tree insert end $node n:$count \ + -text $tail \ + -image [Bitmap::get folder] \ + -drawcross allways \ + -data $f + incr count + } else { + lappend lfiles $tail + } + } + $tree itemconfigure $node -drawcross auto -data $lfiles +} + + +proc DemoTree::moddir { idx tree node } { + if { $idx && [$tree itemcget $node -drawcross] == "allways" } { + getdir $tree $node [$tree itemcget $node -data] + if { [llength [$tree nodes $node]] } { + $tree itemconfigure $node -image [Bitmap::get openfold] + } else { + $tree itemconfigure $node -image [Bitmap::get folder] + } + } else { + $tree itemconfigure $node -image [Bitmap::get [lindex {folder openfold} $idx]] + } +} + + +proc DemoTree::select { where num tree list node } { + variable dblclick + + set dblclick 1 + if { $num == 1 } { + if { $where == "tree" && [lsearch [$tree selection get] $node] != -1 } { + unset dblclick + after 500 "DemoTree::edit tree $tree $list $node" + return + } + if { $where == "list" && [lsearch [$list selection get] $node] != -1 } { + unset dblclick + after 500 "DemoTree::edit list $tree $list $node" + return + } + if { $where == "tree" } { + select_node $tree $list $node + } else { + $list selection set $node + } + } elseif { $where == "list" && [$tree exists $node] } { + set parent [$tree parent $node] + while { $parent != "root" } { + $tree itemconfigure $parent -open 1 + set parent [$tree parent $parent] + } + select_node $tree $list $node + } +} + + +proc DemoTree::select_node { tree list node } { + $tree selection set $node + update + eval $list delete [$list item 0 end] + + set dir [$tree itemcget $node -data] + if { [$tree itemcget $node -drawcross] == "allways" } { + getdir $tree $node $dir + set dir [$tree itemcget $node -data] + } + + foreach subnode [$tree nodes $node] { + $list insert end $subnode \ + -text [$tree itemcget $subnode -text] \ + -image [Bitmap::get folder] + } + set num 0 + foreach f $dir { + $list insert end f:$num \ + -text $f \ + -image [Bitmap::get file] + incr num + } +} + + +proc DemoTree::edit { where tree list node } { + variable dblclick + + if { [info exists dblclick] } { + return + } + + if { $where == "tree" && [lsearch [$tree selection get] $node] != -1 } { + set res [$tree edit $node [$tree itemcget $node -text]] + if { $res != "" } { + $tree itemconfigure $node -text $res + if { [$list exists $node] } { + $list itemconfigure $node -text $res + } + $tree selection set $node + } + return + } + + if { $where == "list" } { + set res [$list edit $node [$list itemcget $node -text]] + if { $res != "" } { + $list itemconfigure $node -text $res + if { [$tree exists $node] } { + $tree itemconfigure $node -text $res + } else { + set cursel [$tree selection get] + set index [expr {[$list index $node]-[llength [$tree nodes $cursel]]}] + set data [$tree itemcget $cursel -data] + set data [lreplace $data $index $index $res] + $tree itemconfigure $cursel -data $data + } + $list selection set $node + } + } +} + + +proc DemoTree::expand { tree but } { + if { [set cur [$tree selection get]] != "" } { + if { $but == 0 } { + $tree opentree $cur + } else { + $tree closetree $cur + } + } +} + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/demo/x1.xbm b/src/punk86.vfs/lib/BWidget1.9.16/demo/x1.xbm new file mode 100644 index 00000000..6137a118 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/demo/x1.xbm @@ -0,0 +1,2258 @@ +#define x1_width 626 +#define x1_height 428 +static char x1_bits[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0x03,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x80,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x0f, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0x03,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0x3f,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff, + 0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xe0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7c,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xc0,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x80,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0x03,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x07,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0x01,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0x07, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0x03,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0xf8,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0x3f,0x00,0x00,0x00,0xc0,0xff,0xff,0x03,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x3f,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0xe0,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0x1f,0x00,0x00, + 0x00,0xf0,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0xfc,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xfe,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xfe,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0x07,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00, + 0xf8,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0x00,0xfe,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff, + 0xff,0xff,0xff,0x01,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x80,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xc0,0xff,0x07,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00, + 0xe0,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0x3f, + 0x00,0x00,0x00,0x00,0xf8,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0xfc,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0xfe,0xff,0x0f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x80,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0xc0,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0xe0,0xff,0xff, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00, + 0x00,0xf0,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0x3f,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0x1f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0x07,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0x0f,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xf0, + 0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xfd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x80,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x80, + 0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xfd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xf8,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0x03,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0x01,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0x01,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0x00,0x00,0x00, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff, + 0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0xff,0x7f,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0x3f,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0x1f,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xff,0x1f,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf0,0xff,0x0f,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0x07,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0x07,0x00, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0x03,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0x01,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0x01,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x07,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0x7f,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0x7f,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x3f,0x00,0x00,0x00,0xe0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x0f,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3f, + 0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x80,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x1f,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x07,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x80,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x3f,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x06,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfd,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xfd,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0x00, + 0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0xfc,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xfc, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xfc,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xfc,0x00,0x00,0x00,0x00,0xf8,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xfc,0x00,0x00,0x00, + 0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0xfc,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0xfc,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0xfc,0x00,0x00,0x00,0x00,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0xfc,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0xfc,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x0f,0xfc,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0xfc,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0xfc,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0xfc,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0xfc,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0xfc,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0xfc, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0xfc,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0xfc,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0xfc,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0xfc,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0xfc,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0xfc,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0xfc,0x00,0x00, + 0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f, + 0x00,0xfc,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0xfc,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0xfc,0x00,0x00,0xe0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0xfc,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0xfc,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0xfc,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0xfc,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0xfc, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x0f,0x00,0xfc,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0x00,0xfc,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0xfc,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00, + 0xfc,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0xfc,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0xfc,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0xfc,0x00,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0xfc,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0xfc,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0xfc,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0xfc,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f, + 0x00,0x00,0xfc,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0xfc,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0xfc,0x00,0xf0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0xfc, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0xfc,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xfc,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xfc,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00, + 0xfc,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x03,0x00,0x00,0xfc,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xfc,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xfc,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0xfc,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0xfc,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0xfc,0x00,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0xfc,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0xfc,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0xfc,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xfc,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xfc, + 0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0x00,0xfc,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0xfc,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0xfc,0xe0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0xfc,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0x00,0x00,0x00,0xfc,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xfc,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xfc,0xf0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00, + 0x00,0xfc,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0xfc,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0xfc,0xf8,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0xfc,0xf8, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0xfc,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0x00,0x00,0xfc,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xfc,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xfc, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00, + 0x00,0x00,0x00,0xfc,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0xfc,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0xfc,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x0f,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x07, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x80,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0xc0,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0xc0,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x01,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0xe0, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x80,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0xf0,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x80,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xf8,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0xfc,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00, + 0xfc,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0x00,0x00,0x00,0xfe,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x80,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x80,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0xc0,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0xe0,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xf0,0xff,0xff, + 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0xf8,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0x00,0xf8,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0xfc,0xff,0xff,0x03,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0xfe,0xff, + 0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff, + 0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xe0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0x3f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0x07,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0xf0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff, + 0xff,0xff,0x03,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0x01, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0x3f,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0x3f, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xf0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf8,0xff,0xff,0x1f,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xf0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0x0f,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0x07,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0x01,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff, + 0x01,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xe0,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0x7f,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x1f,0x00,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x3f,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0x03, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0x03,0x00, + 0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xc0,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0xf0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff, + 0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xfe,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0x7f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xf8,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0, + 0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xf0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0x01,0x00,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x80,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0x1f,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf0,0x01,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xc0,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0x7f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xf8,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0xfc, + 0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0x01,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfe,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0x07,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff, + 0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xc0,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0xc0,0xff,0xff, + 0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8, + 0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf8,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x7f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0x1f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x80,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0x3f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x80,0xff,0xff, + 0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf8,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7e,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0xf8, + 0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0x01,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0xf8,0xff, + 0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x80, + 0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0xff,0xff, + 0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00, + 0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff, + 0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe, + 0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x80,0x0f,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0xc0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x80, + 0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0xfc}; diff --git a/src/punk86.vfs/lib/BWidget1.9.16/dialog.tcl b/src/punk86.vfs/lib/BWidget1.9.16/dialog.tcl new file mode 100644 index 00000000..1569d0d0 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/dialog.tcl @@ -0,0 +1,361 @@ +# ---------------------------------------------------------------------------- +# dialog.tcl +# This file is part of Unifix BWidget Toolkit +# $Id: dialog.tcl,v 1.15.2.1 2010/08/04 13:07:59 oehhar Exp $ +# ---------------------------------------------------------------------------- +# Index of commands: +# - Dialog::create +# - Dialog::configure +# - Dialog::cget +# - Dialog::getframe +# - Dialog::add +# - Dialog::itemconfigure +# - Dialog::itemcget +# - Dialog::invoke +# - Dialog::setfocus +# - Dialog::enddialog +# - Dialog::draw +# - Dialog::withdraw +# - Dialog::_destroy +# ---------------------------------------------------------------------------- + +# JDC: added -transient and -place flag + +namespace eval Dialog { + Widget::define Dialog dialog ButtonBox + + Widget::bwinclude Dialog ButtonBox .bbox \ + remove {-orient} \ + initialize {-spacing 10 -padx 10} + + Widget::declare Dialog { + {-title String "" 0} + {-geometry String "" 0} + {-modal Enum local 0 {none local global}} + {-bitmap TkResource "" 1 label} + {-image TkResource "" 1 label} + {-separator Boolean 0 1} + {-cancel Int -1 0 "%d >= -1"} + {-parent String "" 0} + {-side Enum bottom 1 {bottom left top right}} + {-anchor Enum c 1 {n e w s c}} + {-class String Dialog 1} + {-transient Boolean 1 1} + {-place Enum center 0 {none center left right above below}} + } + + Widget::addmap Dialog "" :cmd {-background {}} + Widget::addmap Dialog "" .frame {-background {}} + + bind BwDialog [list Dialog::_destroy %W] + + variable _widget +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::create +# ---------------------------------------------------------------------------- +proc Dialog::create { path args } { + global tcl_platform + variable _widget + + array set maps [list Dialog {} .bbox {}] + array set maps [Widget::parseArgs Dialog $args] + + # Check to see if the -class flag was specified + set dialogClass "Dialog" + array set dialogArgs $maps(Dialog) + if { [info exists dialogArgs(-class)] } { + set dialogClass $dialogArgs(-class) + } + + if { [string equal $tcl_platform(platform) "unix"] } { + set re raised + set bd 1 + } else { + set re flat + set bd 0 + } + toplevel $path -relief $re -borderwidth $bd -class $dialogClass + wm withdraw $path + + Widget::initFromODB Dialog $path $maps(Dialog) + + bindtags $path [list $path BwDialog all] + wm overrideredirect $path 1 + wm title $path [Widget::cget $path -title] + set parent [Widget::cget $path -parent] + if { ![winfo exists $parent] } { + set parent [winfo parent $path] + } + # JDC: made transient optional + if { [Widget::getoption $path -transient] } { + wm transient $path [winfo toplevel $parent] + } + + set side [Widget::cget $path -side] + if { [string equal $side "left"] || [string equal $side "right"] } { + set orient vertical + } else { + set orient horizontal + } + + set bbox [eval [list ButtonBox::create $path.bbox] $maps(.bbox) \ + -orient $orient] + set frame [frame $path.frame -relief flat -borderwidth 0] + set bg [Widget::cget $path -background] + $path configure -background $bg + $frame configure -background $bg + if { [set bitmap [Widget::getoption $path -image]] != "" } { + set label [label $path.label -image $bitmap -background $bg] + } elseif { [set bitmap [Widget::getoption $path -bitmap]] != "" } { + set label [label $path.label -bitmap $bitmap -background $bg] + } + if { [Widget::getoption $path -separator] } { + Separator::create $path.sep -orient $orient -background $bg + } + set _widget($path,realized) 0 + set _widget($path,nbut) 0 + + set cancel [Widget::getoption $path -cancel] + bind $path [list ButtonBox::invoke $path.bbox $cancel] + if {$cancel != -1} { + wm protocol $path WM_DELETE_WINDOW [list ButtonBox::invoke $path.bbox $cancel] + } + bind $path [list ButtonBox::invoke $path.bbox default] + # Tk8.5 (TIP158) separated numeric keyboard enter and main keyboard + # enter on Unix. So bind for both. This does not harm on Tk8.4 so no + # check required. BWidget Ticket [3e31f04367]. + bind $path [list ButtonBox::invoke $path.bbox default] + + return [Widget::create Dialog $path] +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::configure +# ---------------------------------------------------------------------------- +proc Dialog::configure { path args } { + set res [Widget::configure $path $args] + + if { [Widget::hasChanged $path -title title] } { + wm title $path $title + } + if { [Widget::hasChanged $path -background bg] } { + if { [winfo exists $path.label] } { + $path.label configure -background $bg + } + if { [winfo exists $path.sep] } { + Separator::configure $path.sep -background $bg + } + } + if { [Widget::hasChanged $path -cancel cancel] } { + bind $path [list ButtonBox::invoke $path.bbox $cancel] + if {$cancel == -1} { + wm protocol $path WM_DELETE_WINDOW "" + } else { + wm protocol $path WM_DELETE_WINDOW [list ButtonBox::invoke $path.bbox $cancel] + } + } + return $res +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::cget +# ---------------------------------------------------------------------------- +proc Dialog::cget { path option } { + return [Widget::cget $path $option] +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::getframe +# ---------------------------------------------------------------------------- +proc Dialog::getframe { path } { + return $path.frame +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::add +# ---------------------------------------------------------------------------- +proc Dialog::add { path args } { + variable _widget + + if {[string equal $::tcl_platform(platform) "windows"] + && $::tk_version >= 8.4} { + set width -11 + } else { + set width 8 + } + set cmd [list ButtonBox::add $path.bbox -width $width \ + -command [list Dialog::enddialog $path $_widget($path,nbut)]] + set res [eval $cmd $args] + incr _widget($path,nbut) + return $res +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::itemconfigure +# ---------------------------------------------------------------------------- +proc Dialog::itemconfigure { path index args } { + return [eval [list ButtonBox::itemconfigure $path.bbox $index] $args] +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::itemcget +# ---------------------------------------------------------------------------- +proc Dialog::itemcget { path index option } { + return [ButtonBox::itemcget $path.bbox $index $option] +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::invoke +# ---------------------------------------------------------------------------- +proc Dialog::invoke { path index } { + ButtonBox::invoke $path.bbox $index +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::setfocus +# ---------------------------------------------------------------------------- +proc Dialog::setfocus { path index } { + ButtonBox::setfocus $path.bbox $index +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::enddialog +# ---------------------------------------------------------------------------- +proc Dialog::enddialog { path result } { + variable _widget + + set _widget($path,result) $result +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::draw +# ---------------------------------------------------------------------------- +proc Dialog::draw { path {focus ""} {overrideredirect 0} {geometry ""}} { + variable _widget + + set parent [Widget::getoption $path -parent] + if { !$_widget($path,realized) } { + set _widget($path,realized) 1 + if { [llength [winfo children $path.bbox]] } { + set side [Widget::getoption $path -side] + if {[string equal $side "left"] || [string equal $side "right"]} { + set pad -padx + set fill y + } else { + set pad -pady + set fill x + } + pack $path.bbox -side $side -padx 1m -pady 1m \ + -anchor [Widget::getoption $path -anchor] + if { [winfo exists $path.sep] } { + pack $path.sep -side $side -fill $fill $pad 2m + } + } + if { [winfo exists $path.label] } { + pack $path.label -side left -anchor n -padx 3m -pady 3m + } + pack $path.frame -padx 1m -pady 1m -fill both -expand yes + } + + set geom [Widget::getMegawidgetOption $path -geometry] + if { $geom != "" } { + wm geometry $path $geom + } + + if { [string equal $geometry ""] && ($geom == "") } { + set place [Widget::getoption $path -place] + if { ![string equal $place none] } { + if { [winfo exists $parent] } { + BWidget::place $path 0 0 $place $parent + } else { + BWidget::place $path 0 0 $place + } + } + } else { + if { $geom != "" } { + wm geometry $path $geom + } else { + wm geometry $path $geometry + } + } + update idletasks + wm overrideredirect $path $overrideredirect + wm deiconify $path + + # patch by Bastien Chevreux (bach@mwgdna.com) + # As seen on Windows systems *sigh* + # When the toplevel is withdrawn, the tkwait command will wait forever. + # So, check that we are not withdrawn + if {![winfo exists $parent] || \ + ([wm state [winfo toplevel $parent]] != "withdrawn")} { + tkwait visibility $path + } + BWidget::focus set $path + if { [winfo exists $focus] } { + focus -force $focus + } else { + ButtonBox::setfocus $path.bbox default + } + + if { [set grab [Widget::cget $path -modal]] != "none" } { + BWidget::grab $grab $path + if {[info exists _widget($path,result)]} { + unset _widget($path,result) + } + tkwait variable Dialog::_widget($path,result) + if { [info exists _widget($path,result)] } { + set res $_widget($path,result) + unset _widget($path,result) + } else { + set res -1 + } + withdraw $path + return $res + } + return "" +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::withdraw +# ---------------------------------------------------------------------------- +proc Dialog::withdraw { path } { + BWidget::grab release $path + BWidget::focus release $path + if { [winfo exists $path] } { + wm withdraw $path + } +} + + +# ---------------------------------------------------------------------------- +# Command Dialog::_destroy +# ---------------------------------------------------------------------------- +proc Dialog::_destroy { path } { + variable _widget + + Dialog::enddialog $path -1 + + BWidget::grab release $path + BWidget::focus release $path + if {[info exists _widget($path,result)]} { + unset _widget($path,result) + } + unset _widget($path,realized) + unset _widget($path,nbut) + + Widget::destroy $path +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/dragsite.tcl b/src/punk86.vfs/lib/BWidget1.9.16/dragsite.tcl new file mode 100644 index 00000000..bb7b3e7e --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/dragsite.tcl @@ -0,0 +1,197 @@ +# ------------------------------------------------------------------------------ +# dragsite.tcl +# This file is part of Unifix BWidget Toolkit +# $Id: dragsite.tcl,v 1.8 2003/10/20 21:23:52 damonc Exp $ +# ------------------------------------------------------------------------------ +# Index of commands: +# - DragSite::include +# - DragSite::setdrag +# - DragSite::register +# - DragSite::_begin_drag +# - DragSite::_init_drag +# - DragSite::_end_drag +# - DragSite::_update_operation +# ---------------------------------------------------------------------------- + +namespace eval DragSite { + Widget::define DragSite dragsite -classonly + + Widget::declare DragSite [list \ + [list -dragevent Enum 1 0 [list 1 2 3]] \ + [list -draginitcmd String "" 0] \ + [list -dragendcmd String "" 0] \ + ] + + variable _topw ".drag" + variable _tabops + variable _state + variable _x0 + variable _y0 + + bind BwDrag1 {DragSite::_begin_drag press %W %s %X %Y} + bind BwDrag1 {DragSite::_begin_drag motion %W %s %X %Y} + bind BwDrag2 {DragSite::_begin_drag press %W %s %X %Y} + bind BwDrag2 {DragSite::_begin_drag motion %W %s %X %Y} + bind BwDrag3 {DragSite::_begin_drag press %W %s %X %Y} + bind BwDrag3 {DragSite::_begin_drag motion %W %s %X %Y} + + proc use {} {} +} + + +# ---------------------------------------------------------------------------- +# Command DragSite::include +# ---------------------------------------------------------------------------- +proc DragSite::include { class type event } { + set dragoptions [list \ + [list -dragenabled Boolean 0 0] \ + [list -draginitcmd String "" 0] \ + [list -dragendcmd String "" 0] \ + [list -dragtype String $type 0] \ + [list -dragevent Enum $event 0 [list 1 2 3]] \ + ] + Widget::declare $class $dragoptions +} + + +# ---------------------------------------------------------------------------- +# Command DragSite::setdrag +# Widget interface to register +# ---------------------------------------------------------------------------- +proc DragSite::setdrag { path subpath initcmd endcmd {force 0}} { + set cen [Widget::hasChanged $path -dragenabled en] + set cdragevt [Widget::hasChanged $path -dragevent dragevt] + if { $en } { + if { $force || $cen || $cdragevt } { + register $subpath \ + -draginitcmd $initcmd \ + -dragendcmd $endcmd \ + -dragevent $dragevt + } + } else { + register $subpath + } +} + + +# ---------------------------------------------------------------------------- +# Command DragSite::register +# ---------------------------------------------------------------------------- +proc DragSite::register { path args } { + upvar \#0 DragSite::$path drag + + if { [info exists drag] } { + bind $path $drag(evt) {} + unset drag + } + Widget::init DragSite .drag$path $args + set event [Widget::getMegawidgetOption .drag$path -dragevent] + set initcmd [Widget::getMegawidgetOption .drag$path -draginitcmd] + set endcmd [Widget::getMegawidgetOption .drag$path -dragendcmd] + set tags [bindtags $path] + set idx [lsearch $tags "BwDrag*"] + Widget::destroy .drag$path + if { $initcmd != "" } { + if { $idx != -1 } { + bindtags $path [lreplace $tags $idx $idx BwDrag$event] + } else { + bindtags $path [concat $tags BwDrag$event] + } + set drag(initcmd) $initcmd + set drag(endcmd) $endcmd + set drag(evt) $event + } elseif { $idx != -1 } { + bindtags $path [lreplace $tags $idx $idx] + } +} + + +# ---------------------------------------------------------------------------- +# Command DragSite::_begin_drag +# ---------------------------------------------------------------------------- +proc DragSite::_begin_drag { event source state X Y } { + variable _x0 + variable _y0 + variable _state + + switch -- $event { + press { + set _x0 $X + set _y0 $Y + set _state "press" + } + motion { + if { ![info exists _state] } { + # This is just extra protection. There seem to be + # rare cases where the motion comes before the press. + return + } + if { [string equal $_state "press"] } { + if { abs($_x0-$X) > 3 || abs($_y0-$Y) > 3 } { + set _state "done" + _init_drag $source $state $X $Y + } + } + } + } +} + + +# ---------------------------------------------------------------------------- +# Command DragSite::_init_drag +# ---------------------------------------------------------------------------- +proc DragSite::_init_drag { source state X Y } { + variable _topw + upvar \#0 DragSite::$source drag + + destroy $_topw + toplevel $_topw + wm withdraw $_topw + wm overrideredirect $_topw 1 + + set info [uplevel \#0 $drag(initcmd) [list $source $X $Y .drag]] + if { $info != "" } { + set type [lindex $info 0] + set ops [lindex $info 1] + set data [lindex $info 2] + + if { [winfo children $_topw] == "" } { + if { [string equal $type "BITMAP"] || [string equal $type "IMAGE"] } { + label $_topw.l -image [Bitmap::get dragicon] -relief flat -bd 0 + } else { + label $_topw.l -image [Bitmap::get dragfile] -relief flat -bd 0 + } + pack $_topw.l + } + wm geometry $_topw +[expr {$X+1}]+[expr {$Y+1}] + wm deiconify $_topw + if {[catch {tkwait visibility $_topw}]} { + return + } + BWidget::grab set $_topw + BWidget::focus set $_topw + + bindtags $_topw [list $_topw DragTop] + DropSite::_init_drag $_topw $drag(evt) $source $state $X $Y $type $ops $data + } else { + destroy $_topw + } +} + + +# ---------------------------------------------------------------------------- +# Command DragSite::_end_drag +# ---------------------------------------------------------------------------- +proc DragSite::_end_drag { source target op type data result } { + variable _topw + upvar \#0 DragSite::$source drag + + BWidget::grab release $_topw + BWidget::focus release $_topw + destroy $_topw + if { $drag(endcmd) != "" } { + uplevel \#0 $drag(endcmd) [list $source $target $op $type $data $result] + } +} + + diff --git a/src/punk86.vfs/lib/BWidget1.9.16/dropsite.tcl b/src/punk86.vfs/lib/BWidget1.9.16/dropsite.tcl new file mode 100644 index 00000000..8d4fbf32 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/dropsite.tcl @@ -0,0 +1,461 @@ +# ------------------------------------------------------------------------------ +# dropsite.tcl +# This file is part of Unifix BWidget Toolkit +# $Id: dropsite.tcl,v 1.8 2009/06/30 16:17:37 oehhar Exp $ +# ------------------------------------------------------------------------------ +# Index of commands: +# - DropSite::include +# - DropSite::setdrop +# - DropSite::register +# - DropSite::setcursor +# - DropSite::setoperation +# - DropSite::_update_operation +# - DropSite::_compute_operation +# - DropSite::_draw_operation +# - DropSite::_init_drag +# - DropSite::_motion +# - DropSite::_release +# ---------------------------------------------------------------------------- + + +namespace eval DropSite { + Widget::define DropSite dropsite -classonly + + Widget::declare DropSite [list \ + [list -dropovercmd String "" 0] \ + [list -dropcmd String "" 0] \ + [list -droptypes String "" 0] \ + ] + + proc use {} {} + + variable _top ".drag" + variable _opw ".drag.\#op" + variable _target "" + variable _status 0 + variable _tabops + variable _defops + variable _source + variable _type + variable _data + variable _evt + # key win unix + # shift 1 | 1 -> 1 + # control 4 | 4 -> 4 + # alt 8 | 16 -> 24 + # meta | 64 -> 88 + + array set _tabops { + mod,none 0 + mod,shift 1 + mod,control 4 + mod,alt 24 + ops,copy 1 + ops,move 1 + ops,link 1 + } + + if { $tcl_platform(platform) == "unix" } { + set _tabops(mod,alt) 8 + } else { + set _tabops(mod,alt) 16 + } + array set _defops \ + [list \ + copy,mod shift \ + move,mod control \ + link,mod alt \ + copy,img @[file join $::BWIDGET::LIBRARY "images" "opcopy.xbm"] \ + move,img @[file join $::BWIDGET::LIBRARY "images" "opmove.xbm"] \ + link,img @[file join $::BWIDGET::LIBRARY "images" "oplink.xbm"]] + + bind DragTop {DropSite::_update_operation [expr %s | 1]} + bind DragTop {DropSite::_update_operation [expr %s | 1]} + bind DragTop {DropSite::_update_operation [expr %s | 4]} + bind DragTop {DropSite::_update_operation [expr %s | 4]} + if { $tcl_platform(platform) == "unix" } { + bind DragTop {DropSite::_update_operation [expr %s | 8]} + bind DragTop {DropSite::_update_operation [expr %s | 8]} + } else { + bind DragTop {DropSite::_update_operation [expr %s | 16]} + bind DragTop {DropSite::_update_operation [expr %s | 16]} + } + + bind DragTop {DropSite::_update_operation [expr %s & ~1]} + bind DragTop {DropSite::_update_operation [expr %s & ~1]} + bind DragTop {DropSite::_update_operation [expr %s & ~4]} + bind DragTop {DropSite::_update_operation [expr %s & ~4]} + if { $tcl_platform(platform) == "unix" } { + bind DragTop {DropSite::_update_operation [expr %s & ~8]} + bind DragTop {DropSite::_update_operation [expr %s & ~8]} + } else { + bind DragTop {DropSite::_update_operation [expr %s & ~16]} + bind DragTop {DropSite::_update_operation [expr %s & ~16]} + } +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::include +# ---------------------------------------------------------------------------- +proc DropSite::include { class types } { + set dropoptions [list \ + [list -dropenabled Boolean 0 0] \ + [list -dropovercmd String "" 0] \ + [list -dropcmd String "" 0] \ + [list -droptypes String $types 0] \ + ] + Widget::declare $class $dropoptions +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::setdrop +# Widget interface to register +# ---------------------------------------------------------------------------- +proc DropSite::setdrop { path subpath dropover drop {force 0}} { + set cen [Widget::hasChanged $path -dropenabled en] + set ctypes [Widget::hasChanged $path -droptypes types] + if { $en } { + if { $force || $cen || $ctypes } { + register $subpath \ + -droptypes $types \ + -dropcmd $drop \ + -dropovercmd $dropover + } + } else { + register $subpath + } +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::register +# ---------------------------------------------------------------------------- +proc DropSite::register { path args } { + variable _tabops + variable _defops + upvar \#0 DropSite::$path drop + + Widget::init DropSite .drop$path $args + if { [info exists drop] } { + unset drop + } + set dropcmd [Widget::getMegawidgetOption .drop$path -dropcmd] + set types [Widget::getMegawidgetOption .drop$path -droptypes] + set overcmd [Widget::getMegawidgetOption .drop$path -dropovercmd] + Widget::destroy .drop$path + if { $dropcmd != "" && $types != "" } { + set drop(dropcmd) $dropcmd + set drop(overcmd) $overcmd + foreach {type ops} $types { + set drop($type,ops) {} + set masklist {} + foreach {descop lmod} $ops { + if { ![llength $descop] || [llength $descop] > 3 } { + return -code error "invalid operation description \"$descop\"" + } + foreach {subop baseop imgop} $descop { + set subop [string trim $subop] + if { ![string length $subop] } { + return -code error "sub operation is empty" + } + if { ![string length $baseop] } { + set baseop $subop + } + if { [info exists drop($type,ops,$subop)] } { + return -code error "operation \"$subop\" already defined" + } + if { ![info exists _tabops(ops,$baseop)] } { + return -code error "invalid base operation \"$baseop\"" + } + if { ![string equal $subop $baseop] && + [info exists _tabops(ops,$subop)] } { + return -code error "sub operation \"$subop\" is a base operation" + } + if { ![string length $imgop] } { + set imgop $_defops($baseop,img) + } + } + if { [string equal $lmod "program"] } { + set drop($type,ops,$subop) $baseop + set drop($type,img,$subop) $imgop + } else { + if { ![string length $lmod] } { + set lmod $_defops($baseop,mod) + } + set mask 0 + foreach mod $lmod { + if { ![info exists _tabops(mod,$mod)] } { + return -code error "invalid modifier \"$mod\"" + } + set mask [expr {$mask | $_tabops(mod,$mod)}] + } + if { ($mask == 0) != ([string equal $subop "default"]) } { + return -code error "sub operation default can only be used with modifier \"none\"" + } + set drop($type,mod,$mask) $subop + set drop($type,ops,$subop) $baseop + set drop($type,img,$subop) $imgop + lappend masklist $mask + } + } + if { ![info exists drop($type,mod,0)] } { + set drop($type,mod,0) default + set drop($type,ops,default) copy + set drop($type,img,default) $_defops(copy,img) + lappend masklist 0 + } + set drop($type,ops,force) copy + set drop($type,img,force) $_defops(copy,img) + foreach mask [lsort -integer -decreasing $masklist] { + lappend drop($type,ops) $mask $drop($type,mod,$mask) + } + } + } +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::setcursor +# ---------------------------------------------------------------------------- +proc DropSite::setcursor { cursor } { + catch {.drag configure -cursor $cursor} +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::setoperation +# ---------------------------------------------------------------------------- +proc DropSite::setoperation { op } { + variable _curop + variable _dragops + variable _target + variable _type + upvar \#0 DropSite::$_target drop + + if { [info exist drop($_type,ops,$op)] && + $_dragops($drop($_type,ops,$op)) } { + set _curop $op + } else { + # force to a copy operation + set _curop force + } +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::_init_drag +# ---------------------------------------------------------------------------- +proc DropSite::_init_drag { top evt source state X Y type ops data } { + variable _top + variable _source + variable _type + variable _data + variable _target + variable _status + variable _state + variable _dragops + variable _opw + variable _evt + + if {[info exists _dragops]} { + unset _dragops + } + array set _dragops {copy 1 move 0 link 0} + foreach op $ops { + set _dragops($op) 1 + } + set _target "" + set _status 0 + set _top $top + set _source $source + set _type $type + set _data $data + + label $_opw -relief flat -bd 0 -highlightthickness 0 \ + -foreground black -background white + + bind $top {DropSite::_release %X %Y} + bind $top {DropSite::_motion %X %Y} + bind $top {DropSite::_release %X %Y} + set _state $state + set _evt $evt + _motion $X $Y +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::_update_operation +# ---------------------------------------------------------------------------- +proc DropSite::_update_operation { state } { + variable _top + variable _status + variable _state + + if { $_status & 3 } { + set _state $state + _motion [winfo pointerx $_top] [winfo pointery $_top] + } +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::_compute_operation +# ---------------------------------------------------------------------------- +proc DropSite::_compute_operation { target state type } { + variable _curop + variable _dragops + upvar \#0 DropSite::$target drop + + foreach {mask op} $drop($type,ops) { + if { ($state & $mask) == $mask } { + if { $_dragops($drop($type,ops,$op)) } { + set _curop $op + return + } + } + } + set _curop force +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::_draw_operation +# ---------------------------------------------------------------------------- +proc DropSite::_draw_operation { target type } { + variable _opw + variable _curop + variable _dragops + variable _tabops + variable _status + + upvar \#0 DropSite::$target drop + + if { !($_status & 1) } { + catch {place forget $_opw} + return + } + + if { 0 } { + if { ![info exist drop($type,ops,$_curop)] || + !$_dragops($drop($type,ops,$_curop)) } { + # force to a copy operation + set _curop copy + catch { + $_opw configure -bitmap $_tabops(img,copy) + place $_opw -relx 1 -rely 1 -anchor se + } + } + } elseif { [string equal $_curop "default"] } { + catch {place forget $_opw} + } else { + catch { + $_opw configure -bitmap $drop($type,img,$_curop) + place $_opw -relx 1 -rely 1 -anchor se + } + } +} + + +# ---------------------------------------------------------------------------- +# Command DropSite::_motion +# ---------------------------------------------------------------------------- +proc DropSite::_motion { X Y } { + variable _top + variable _target + variable _status + variable _state + variable _curop + variable _type + variable _data + variable _source + variable _evt + + set script [bind $_top ] + bind $_top {} + bind $_top {} + wm geometry $_top "+[expr {$X+1}]+[expr {$Y+1}]" + update + if { ![winfo exists $_top] } { + return + } + set path [winfo containing $X $Y] + if { ![string equal $path $_target] } { + # path != current target + if { $_status & 2 } { + # current target is valid and has recall status + # generate leave event + upvar \#0 DropSite::$_target drop + uplevel \#0 $drop(overcmd) [list $_target $_source leave $X $Y $_curop $_type $_data] + } + set _target $path + upvar \#0 DropSite::$_target drop + if { [info exists drop($_type,ops)] } { + # path is a valid target + _compute_operation $_target $_state $_type + if { $drop(overcmd) != "" } { + set arg [list $_target $_source enter $X $Y $_curop $_type $_data] + set _status [uplevel \#0 $drop(overcmd) $arg] + } else { + set _status 1 + catch {$_top configure -cursor based_arrow_down} + } + _draw_operation $_target $_type + update + catch { + bind $_top {DropSite::_motion %X %Y} + bind $_top {DropSite::_release %X %Y} + } + return + } else { + set _status 0 + catch {$_top configure -cursor dot} + _draw_operation "" "" + } + } elseif { $_status & 2 } { + upvar \#0 DropSite::$_target drop + _compute_operation $_target $_state $_type + set arg [list $_target $_source motion $X $Y $_curop $_type $_data] + set _status [uplevel \#0 $drop(overcmd) $arg] + _draw_operation $_target $_type + } + update + catch { + bind $_top {DropSite::_motion %X %Y} + bind $_top {DropSite::_release %X %Y} + } +} + + + +# ---------------------------------------------------------------------------- +# Command DropSite::_release +# ---------------------------------------------------------------------------- +proc DropSite::_release { X Y } { + variable _target + variable _status + variable _curop + variable _source + variable _type + variable _data + + if { $_status & 1 } { + upvar \#0 DropSite::$_target drop + + # Ticket [1ef1f56cd1] wke/amc 2022-10-12 + # Prevent motion events to be handled as + # drop events when handler calls update and causes pending + # motion events to fire. + set _status [expr {$_status & ~1}]; + set res [uplevel \#0 $drop(dropcmd) [list $_target $_source $X $Y $_curop $_type $_data]] + DragSite::_end_drag $_source $_target $drop($_type,ops,$_curop) $_type $_data $res + } else { + if { $_status & 2 } { + # notify leave event + upvar \#0 DropSite::$_target drop + uplevel \#0 $drop(overcmd) [list $_target $_source leave $X $Y $_curop $_type $_data] + } + DragSite::_end_drag $_source "" "" $_type $_data 0 + } +} diff --git a/src/punk86.vfs/lib/BWidget1.9.16/dynhelp.tcl b/src/punk86.vfs/lib/BWidget1.9.16/dynhelp.tcl new file mode 100644 index 00000000..d7146b66 --- /dev/null +++ b/src/punk86.vfs/lib/BWidget1.9.16/dynhelp.tcl @@ -0,0 +1,796 @@ +# ---------------------------------------------------------------------------- +# dynhelp.tcl +# This file is part of Unifix BWidget Toolkit +# $Id: dynhelp.tcl,v 1.20.2.1 2009/08/12 07:20:21 oehhar Exp $ +# ---------------------------------------------------------------------------- +# Index of commands: +# - DynamicHelp::configure +# - DynamicHelp::include +# - DynamicHelp::sethelp +# - DynamicHelp::register +# - DynamicHelp::_motion_balloon +# - DynamicHelp::_motion_info +# - DynamicHelp::_leave_info +# - DynamicHelp::_menu_info +# - DynamicHelp::_show_help +# - DynamicHelp::_init +# ---------------------------------------------------------------------------- + +namespace eval DynamicHelp { + Widget::define DynamicHelp dynhelp -classonly + + if {$::tcl_version >= 8.5} { + set fontdefault TkTooltipFont + } elseif {$Widget::_aqua} { + set fontdefault {helvetica 11} + } else { + set fontdefault {helvetica 8} + } + + Widget::declare DynamicHelp [list\ + {-foreground TkResource black 0 label}\ + {-topbackground TkResource black 0 {label -foreground}}\ + {-background TkResource "#FFFFC0" 0 label}\ + {-borderwidth TkResource 1 0 label}\ + {-justify TkResource left 0 label}\ + [list -font TkResource $fontdefault 0 label]\ + {-delay Int 600 0 "%d >= 100 & %d <= 2000"}\ + {-state Enum "normal" 0 {normal disabled}}\ + {-padx TkResource 1 0 label}\ + {-pady TkResource 1 0 label}\ + {-bd Synonym -borderwidth}\ + {-bg Synonym -background}\ + {-fg Synonym -foreground}\ + {-topbg Synonym -topbackground}\ + ] + + proc use {} {} + + variable _registered + variable _canvases + variable _texts + + variable _top ".help_shell" + variable _id "" + variable _delay 600 + variable _current_balloon "" + variable _current_variable "" + variable _saved + + Widget::init DynamicHelp $_top {} + + bind BwHelpBalloon {DynamicHelp::_motion_balloon enter %W %X %Y} + bind BwHelpBalloon {DynamicHelp::_motion_balloon motion %W %X %Y} + bind BwHelpBalloon {DynamicHelp::_motion_balloon leave %W %X %Y} + bind BwHelpBalloon