diff -r 000000000000 -r ae805ac0140d python-2.5.2/win32/tcl/tix8.4/demos/MkScroll.tcl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/python-2.5.2/win32/tcl/tix8.4/demos/MkScroll.tcl Fri Apr 03 17:19:34 2009 +0100 @@ -0,0 +1,160 @@ +# -*-mode: tcl; fill-column: 75; tab-width: 8; coding: iso-latin-1-unix -*- +# +# $Id: MkScroll.tcl,v 1.3 2001/12/09 05:34:59 idiscovery Exp $ +# +# MkScroll.tcl -- +# +# This file implements the "Scrolled Widgets" page in the widget demo +# +# This file has not been properly documented. It is NOT intended +# to be used as an introductory demo program about Tix +# programming. For such demos, please see the files in the +# demos/samples directory or go to the "Samples" page in the +# "widget demo" +# +# +# Copyright (c) 1996, Expert Interface Technologies +# +# See the file "license.terms" for information on usage and redistribution +# of this file, and for a DISCLAIMER OF ALL WARRANTIES. +# + +proc MkScroll {nb page} { + set w [$nb subwidget $page] + + set name [tixOptionName $w] + option add *$name*TixLabelFrame*label.padX 4 + + tixLabelFrame $w.sls -label "tixScrolledListBox" + tixLabelFrame $w.swn -label "tixScrolledWindow" + tixLabelFrame $w.stx -label "tixScrolledText" + MkSList [$w.sls subwidget frame] + + MkSText [$w.stx subwidget frame] + MkSWindow [$w.swn subwidget frame] + + tixForm $w.sls -top 0 -left 0 -right %33 -bottom -1 + tixForm $w.swn -top 0 -left $w.sls -right %66 -bottom -1 + tixForm $w.stx -top 0 -left $w.swn -right -1 -bottom -1 +} + +#---------------------------------------------------------------------- +# ScrolledListBox +#---------------------------------------------------------------------- +proc MkSList {w} { + frame $w.top -width 300 -height 330 + frame $w.bot + + message $w.top.msg \ + -relief flat -width 200 -anchor n\ + -text {This TixScrolledListBox is configured so that it uses\ +scrollbars only when it is necessary. Use the handles to\ +resize the listbox and watch the scrollbars automatically\ +appear and disappear.} + + set list [tixScrolledListBox $w.top.list -scrollbar auto] + place $list -x 50 -y 150 -width 120 -height 80 + $list subwidget listbox insert end Alabama + $list subwidget listbox insert end California + $list subwidget listbox insert end Montana + $list subwidget listbox insert end "New Jersy" + $list subwidget listbox insert end "New York" + $list subwidget listbox insert end Pennsylvania + $list subwidget listbox insert end Washington + + set rh [tixResizeHandle $w.top.r -relief raised \ + -handlesize 8 -gridded true -minwidth 50 -minheight 30] + + button $w.bot.btn -text Reset -command "SList:Reset $rh $list" + pack propagate $w.top 0 + pack $w.top.msg -fill x + pack $w.bot.btn -anchor c + pack $w.top -expand yes -fill both + pack $w.bot -fill both + + bind $list "tixDoWhenIdle $rh attachwidget $list" +} + +proc SList:Reset {rh list} { + place $list -x 50 -y 150 -width 120 -height 80 + update + $rh attachwidget $list +} + +#---------------------------------------------------------------------- +# ScrolledWindow +#---------------------------------------------------------------------- +proc MkSWindow {w} { + global demo_dir + frame $w.top -width 330 -height 330 + frame $w.bot + + message $w.top.msg \ + -relief flat -width 200 -anchor n\ + -text {The TixScrolledWindow widget allows you\ +to scroll any kind of TK widget. It is more versatile\ +than a scrolled canvas widget} + + set win [tixScrolledWindow $w.top.win -scrollbar auto] + set f [$win subwidget window] + set image [image create photo -file $demo_dir/bitmaps/tix.gif] + + label $f.b1 -image $image + + pack $f.b1 -expand yes -fill both + + place $win -x 30 -y 150 -width 190 -height 120 + set rh [tixResizeHandle $w.top.r -relief raised \ + -handlesize 8 -gridded true -minwidth 50 -minheight 30] + + button $w.bot.btn -text Reset -command "SWindow:Reset $rh $win" + pack propagate $w.top 0 + pack $w.top.msg -fill x + pack $w.bot.btn -anchor c + pack $w.top -expand yes -fill both + pack $w.bot -fill both + + bind $win "tixDoWhenIdle $rh attachwidget $win" +} + +proc SWindow:Reset {rh win} { + place $win -x 30 -y 150 -width 190 -height 120 + update + $rh attachwidget $win +} + +#---------------------------------------------------------------------- +# ScrolledText +#---------------------------------------------------------------------- +proc MkSText {w} { + frame $w.top -width 330 -height 330 + frame $w.bot + + message $w.top.msg \ + -relief flat -width 200 -anchor n\ + -text {The TixScrolledWindow widget allows you\ +to scroll any kind of TK widget. It is more versatile\ +than a scrolled canvas widget} + + set win [tixScrolledText $w.top.win -scrollbar both] + $win subwidget text config -wrap none + + place $win -x 30 -y 150 -width 190 -height 100 + set rh [tixResizeHandle $w.top.r -relief raised \ + -handlesize 8 -gridded true -minwidth 50 -minheight 30] + + button $w.bot.btn -text Reset -command "SText:Reset $rh $win" + pack propagate $w.top 0 + pack $w.top.msg -fill x + pack $w.bot.btn -anchor c + pack $w.top -expand yes -fill both + pack $w.bot -fill both + + bind $win "tixDoWhenIdle $rh attachwidget $win" +} + +proc SText:Reset {rh win} { + place $win -x 30 -y 150 -width 190 -height 100 + update + $rh attachwidget $win +}