1#!/usr/local/bin/bltwish 2 3package require BLT 4# -------------------------------------------------------------------------- 5# Starting with Tcl 8.x, the BLT commands are stored in their own 6# namespace called "blt". The idea is to prevent name clashes with 7# Tcl commands and variables from other packages, such as a "table" 8# command in two different packages. 9# 10# You can access the BLT commands in a couple of ways. You can prefix 11# all the BLT commands with the namespace qualifier "blt::" 12# 13# blt::graph .g 14# blt::table . .g -resize both 15# 16# or you can import all the command into the global namespace. 17# 18# namespace import blt::* 19# graph .g 20# table . .g -resize both 21# 22# -------------------------------------------------------------------------- 23if { $tcl_version >= 8.0 } { 24 namespace import blt::* 25 namespace import -force blt::tile::* 26} 27source scripts/demo.tcl 28#bltdebug 100 29 30image create photo label1 -file ./images/mini-book1.gif 31image create photo label2 -file ./images/mini-book2.gif 32image create photo testImage -file ./images/txtrflag.gif 33 34tabset .t \ 35 -textside right \ 36 -slant both \ 37 -side right \ 38 -samewidth yes \ 39 -highlightcolor yellow \ 40 -tiers 5 \ 41 -scrollcommand { .s set } \ 42 -scrollincrement 1 43 44label .t.l -image testImage 45 46#option add *Tabset.Tab.font -*-helvetica-bold-r-*-*-12-*-*-*-*-*-*-* 47#option add *Tabset.Tab.fill both 48 49set attributes { 50 graph1 "Graph \#1" pink 51 graph2 "Graph \#2" lightblue 52 graph3 "Graph \#3" orange 53 graph5 "Graph \#5" yellow 54 barchart2 "Barchart \#2" green 55} 56 57foreach { name label color } $attributes { 58 .t insert end $name -text $label \ 59 -selectbackground ${color}3 \ 60 -background ${color}3 \ 61 -activebackground ${color}2 62} 63 64.t insert end Image -selectbackground salmon2 -background salmon3 \ 65 -selectbackground salmon3 -activebackground salmon2 -window .t.l 66 67set tabLabels { 68 Aarhus Aaron Ababa aback abaft abandon abandoned abandoning 69 abandonment abandons abase abased abasement abasements abases 70 abash abashed abashes abashing abasing abate abated abatement 71 abatements abater abates abating Abba abbe abbey abbeys abbot 72 abbots Abbott abbreviate abbreviated abbreviates abbreviating 73 abbreviation abbreviations Abby abdomen abdomens abdominal 74 abduct abducted abduction abductions abductor abductors abducts 75 Abe abed Abel Abelian Abelson Aberdeen Abernathy aberrant 76 aberration aberrations abet abets abetted abetter abetting 77 abeyance abhor abhorred abhorrent abhorrer abhorring abhors 78 abide abided abides abiding Abidjan Abigail Abilene abilities 79 ability abject abjection abjections abjectly abjectness abjure 80 abjured abjures abjuring ablate ablated ablates ablating 81 ablation ablative ablaze able abler ablest ably Abner abnormal 82 abnormalities abnormality abnormally Abo aboard abode abodes 83 abolish abolished abolisher abolishers abolishes abolishing 84 abolishment abolishments abolition abolitionist abolitionists 85 abominable abominate aboriginal aborigine aborigines abort 86 aborted aborting abortion abortions abortive abortively aborts 87 Abos abound abounded abounding abounds about above aboveboard 88 aboveground abovementioned abrade abraded abrades abrading 89 Abraham Abram Abrams Abramson abrasion abrasions abrasive 90 abreaction abreactions abreast abridge abridged abridges 91 abridging abridgment abroad abrogate abrogated abrogates 92 abrogating abrupt abruptly abruptness abscess abscessed 93 abscesses abscissa abscissas abscond absconded absconding 94 absconds absence absences absent absented absentee 95 absenteeism absentees absentia absenting absently absentminded 96 absents absinthe absolute absolutely absoluteness absolutes 97 absolution absolve absolved absolves absolving absorb 98 absorbed absorbency absorbent absorber absorbing absorbs 99 absorption absorptions absorptive abstain abstained abstainer 100 abstaining abstains abstention abstentions abstinence 101 abstract abstracted abstracting abstraction abstractionism 102 abstractionist abstractions abstractly abstractness 103 abstractor abstractors abstracts abstruse abstruseness 104 absurd absurdities absurdity absurdly Abu abundance abundant 105 abundantly abuse abused abuses abusing abusive abut abutment 106 abuts abutted abutter abutters abutting abysmal abysmally 107 abyss abysses Abyssinia Abyssinian Abyssinians acacia 108 academia academic academically academics academies academy 109 Acadia Acapulco accede acceded accedes accelerate accelerated 110 accelerates accelerating acceleration accelerations 111 accelerator accelerators accelerometer accelerometers accent 112 accented accenting accents accentual accentuate accentuated 113 accentuates accentuating accentuation accept acceptability 114 acceptable acceptably acceptance acceptances accepted 115 accepter accepters accepting acceptor acceptors accepts 116 access accessed accesses accessibility accessible accessibly 117 accessing accession accessions accessories accessors 118 accessory accident accidental accidentally accidently 119 accidents acclaim acclaimed acclaiming acclaims acclamation 120 acclimate acclimated acclimates acclimating acclimatization 121 acclimatized accolade accolades accommodate accommodated 122 accommodates accommodating accommodation accommodations 123 accompanied accompanies accompaniment accompaniments 124 accompanist accompanists accompany accompanying accomplice 125 accomplices accomplish accomplished accomplisher accomplishers 126 accomplishes accomplishing accomplishment accomplishments 127 accord accordance accorded accorder accorders according 128 accordingly accordion accordions accords accost accosted 129 accosting accosts account accountability accountable accountably 130 accountancy accountant accountants accounted accounting 131 accounts Accra accredit accreditation accreditations 132 accredited accretion accretions accrue accrued accrues 133 accruing acculturate acculturated acculturates acculturating 134 acculturation accumulate accumulated accumulates accumulating 135 accumulation accumulations accumulator accumulators 136 accuracies accuracy accurate accurately accurateness accursed 137 accusal accusation accusations accusative accuse accused 138 accuser accuses accusing accusingly accustom accustomed 139 accustoming accustoms ace aces acetate acetone acetylene 140 Achaean Achaeans ache ached aches achievable achieve achieved 141 achievement achievements achiever achievers achieves achieving 142 Achilles aching acid acidic acidities acidity acidly acids 143 acidulous Ackerman Ackley acknowledge acknowledgeable 144 acknowledged acknowledgement acknowledgements acknowledger 145 acknowledgers acknowledges acknowledging acknowledgment 146 acknowledgments acme acne acolyte acolytes acorn acorns 147 acoustic acoustical acoustically acoustician acoustics 148 acquaint acquaintance acquaintances acquainted acquainting 149 acquaints acquiesce acquiesced acquiescence acquiescent 150 acquiesces acquiescing acquirable acquire acquired acquires 151 acquiring acquisition acquisitions 152} 153 154for { set i 0 } { $i < 500 } { incr i } { 155 .t insert end [lindex $tabLabels $i] -state normal 156} 157 158scrollbar .s -command { .t view } -orient horizontal 159radiobutton .left -text "Left" -variable side -value "left" \ 160 -command { .t configure -side $side -rotate 90 } 161radiobutton .right -text "Right" -variable side -value "right" \ 162 -command { .t configure -side $side -rotate 270 } 163radiobutton .top -text "Top" -variable side -value "top" \ 164 -command { .t configure -side $side -rotate 0 } 165radiobutton .bottom -text "Bottom" -variable side -value "bottom" \ 166 -command { .t configure -side $side -rotate 0 } 167 168table . \ 169 .t 0,0 -fill both -cspan 2 \ 170 .s 1,0 -fill x -cspan 2 \ 171 .top 2,0 -cspan 2 \ 172 .left 3,0 \ 173 .right 3,1 \ 174 .bottom 4,0 -cspan 2 175 176table configure . r1 r3 r4 r2 -resize none 177focus .t 178 179.t focus 0 180 181after 3000 { 182 .t move 0 after 3 183 .t tab configure [.t get 3] -state disabled 184} 185 186foreach file { graph1 graph2 graph3 graph5 barchart2 } { 187 namespace eval $file { 188 if { [string match graph* $file] } { 189 set graph [graph .t.$file] 190 } else { 191 set graph [barchart .t.$file] 192 } 193 source scripts/$file.tcl 194 .t tab configure $file -window $graph -fill both 195 } 196} 197 198.top invoke 199 200