golden hour
/lib64/tcl8.5/Tix8.4.3
⬆️ Go Up
Upload
File/Folder
Size
Actions
Balloon.tcl
12.97 KB
Del
OK
BtnBox.tcl
2.61 KB
Del
OK
CObjView.tcl
7.56 KB
Del
OK
ChkList.tcl
4.97 KB
Del
OK
ComboBox.tcl
35.42 KB
Del
OK
Compat.tcl
870 B
Del
OK
Console.tcl
14.95 KB
Del
OK
Control.tcl
12.11 KB
Del
OK
DefSchm.tcl
2.94 KB
Del
OK
DialogS.tcl
4.2 KB
Del
OK
DirBox.tcl
5.3 KB
Del
OK
DirDlg.tcl
2.15 KB
Del
OK
DirList.tcl
6.9 KB
Del
OK
DirTree.tcl
8.76 KB
Del
OK
DragDrop.tcl
3.93 KB
Del
OK
DtlList.tcl
1002 B
Del
OK
EFileBox.tcl
11.12 KB
Del
OK
EFileDlg.tcl
1.68 KB
Del
OK
Event.tcl
5.11 KB
Del
OK
FileBox.tcl
14 KB
Del
OK
FileCbx.tcl
2.42 KB
Del
OK
FileDlg.tcl
2.13 KB
Del
OK
FileEnt.tcl
7.15 KB
Del
OK
FloatEnt.tcl
3.1 KB
Del
OK
Grid.tcl
21.16 KB
Del
OK
HList.tcl
17.72 KB
Del
OK
HListDD.tcl
4.39 KB
Del
OK
IconView.tcl
5.97 KB
Del
OK
Init.tcl
6.05 KB
Del
OK
LabEntry.tcl
2.09 KB
Del
OK
LabFrame.tcl
1.15 KB
Del
OK
LabWidg.tcl
3.86 KB
Del
OK
ListNBk.tcl
3.5 KB
Del
OK
Meter.tcl
3.04 KB
Del
OK
MultView.tcl
3.62 KB
Del
OK
NoteBook.tcl
6.02 KB
Del
OK
OldUtil.tcl
2.98 KB
Del
OK
OptMenu.tcl
9.17 KB
Del
OK
PanedWin.tcl
27.68 KB
Del
OK
PopMenu.tcl
5.37 KB
Del
OK
Primitiv.tcl
10.28 KB
Del
OK
README.txt
987 B
Del
OK
ResizeH.tcl
12.94 KB
Del
OK
SGrid.tcl
5.8 KB
Del
OK
SHList.tcl
3.7 KB
Del
OK
SListBox.tcl
6.97 KB
Del
OK
STList.tcl
2.37 KB
Del
OK
SText.tcl
3.09 KB
Del
OK
SWidget.tcl
9.52 KB
Del
OK
SWindow.tcl
6.75 KB
Del
OK
Select.tcl
7.04 KB
Del
OK
Shell.tcl
1.06 KB
Del
OK
SimpDlg.tcl
1.13 KB
Del
OK
StackWin.tcl
1.95 KB
Del
OK
StatBar.tcl
1.31 KB
Del
OK
StdBBox.tcl
1.62 KB
Del
OK
StdShell.tcl
1.15 KB
Del
OK
TList.tcl
17.59 KB
Del
OK
Tix.tcl
9.51 KB
Del
OK
Tree.tcl
4.57 KB
Del
OK
Utils.tcl
10.54 KB
Del
OK
VResize.tcl
4.95 KB
Del
OK
VStack.tcl
9.42 KB
Del
OK
VTree.tcl
4.31 KB
Del
OK
Variable.tcl
2.5 KB
Del
OK
WInfo.tcl
965 B
Del
OK
bitmaps
-
Del
OK
fs.tcl
3.9 KB
Del
OK
html
-
Del
OK
libTix.so
320.71 KB
Del
OK
license.terms
2.76 KB
Del
OK
pkgIndex.tcl
122 B
Del
OK
pref
-
Del
OK
Edit: SWidget.tcl
# -*- mode: TCL; fill-column: 75; tab-width: 8; coding: iso-latin-1-unix -*- # # $Id: SWidget.tcl,v 1.5 2002/01/24 09:13:58 idiscovery Exp $ # # SWidget.tcl -- # # tixScrolledWidget: virtual base class. Do not instantiate # This is the core class for all scrolled widgets. # # Copyright (c) 1993-1999 Ioi Kim Lam. # Copyright (c) 2000-2001 Tix Project Group. # # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # tixWidgetClass tixScrolledWidget { -virtual true -classname TixScrolledWidget -superclass tixPrimitive -method { } -flag { -scrollbar -scrollbarspace } -configspec { {-scrollbar scrollbar Scrollbar both} {-scrollbarspace scrollbarSpace ScrollbarSpace {both}} {-sizebox sizeBox SizeBox 0} } } proc tixScrolledWidget:InitWidgetRec {w} { upvar #0 $w data tixChainMethod $w InitWidgetRec set data(x,first) 0 set data(x,last) 0 set data(y,first) 0 set data(y,last) 0 set data(lastSpec) "" set data(lastMW) "" set data(lastMH) "" set data(lastScbW) "" set data(lastScbH) "" set data(repack) 0 set data(counter) 0 set data(vsbPadY) 0 set data(hsbPadX) 0 } proc tixScrolledWidget:SetBindings {w} { upvar #0 $w data tixChainMethod $w SetBindings tixManageGeometry $data(pw:client) "tixScrolledWidget:ClientGeomProc $w" bind $data(pw:client) <Configure> \ [list tixScrolledWidget:ClientGeomProc $w "" $data(pw:client)] tixManageGeometry $data(w:hsb) "tixScrolledWidget:ClientGeomProc $w" bind $data(w:hsb) <Configure> \ [list tixScrolledWidget:ClientGeomProc $w "" $data(w:hsb)] tixManageGeometry $data(w:vsb) "tixScrolledWidget:ClientGeomProc $w" bind $data(w:vsb) <Configure> \ [list tixScrolledWidget:ClientGeomProc $w "" $data(w:vsb)] bind $w <Configure> "tixScrolledWidget:MasterGeomProc $w" tixWidgetDoWhenIdle tixScrolledWidget:Repack $w set data(repack) 1 } proc tixScrolledWidget:config-scrollbar {w value} { upvar #0 $w data global tcl_platform if {[lindex $value 0] == "auto"} { foreach xspec [lrange $value 1 end] { case $xspec { {+x -x +y -y} {} default { error "bad -scrollbar value \"$value\"" } } } } else { case $value in { {none x y both} {} default { error "bad -scrollbar value \"$value\"" } } } if {$data(-sizebox) && $tcl_platform(platform) == "windows"} { set data(-scrollbar) both } if {$data(repack) == 0} { set data(repack) 1 tixWidgetDoWhenIdle tixScrolledWidget:Repack $w } } proc tixScrolledWidget:config-scrollbarspace {w value} { upvar #0 $w data if {$data(repack) == 0} { set data(repack) 1 tixWidgetDoWhenIdle tixScrolledWidget:Repack $w } } proc tixScrolledWidget:config-sizebox {w value} { error "unimplemented" } #---------------------------------------------------------------------- # # Scrollbar calculations # #---------------------------------------------------------------------- proc tixScrolledWidget:ClientGeomProc {w type client} { upvar #0 $w data if {$data(repack) == 0} { set data(repack) 1 tixWidgetDoWhenIdle tixScrolledWidget:Repack $w } } proc tixScrolledWidget:MasterGeomProc {w} { upvar #0 $w data if {$data(repack) == 0} { set data(repack) 1 tixWidgetDoWhenIdle tixScrolledWidget:Repack $w } } proc tixScrolledWidget:Configure {w} { if {![winfo exists $w]} { return } upvar #0 $w data if {$data(repack) == 0} { set data(repack) 1 tixWidgetDoWhenIdle tixScrolledWidget:Repack $w } } proc tixScrolledWidget:ScrollCmd {w scrollbar axis first last} { upvar #0 $w data $scrollbar set $first $last } # Show or hide the scrollbars as required. # # spec: 00 = need none # spec: 01 = need y # spec: 10 = need x # spec: 11 = need xy # proc tixScrolledWidget:Repack {w} { tixCallMethod $w RepackHook } proc tixScrolledWidget:RepackHook {w} { upvar #0 $w data global tcl_platform if {![winfo exists $w]} { # This was generated by the <Destroy> event # return } set client $data(pw:client) # Calculate the size of the master # set mreqw [winfo reqwidth $w] set mreqh [winfo reqheight $w] set creqw [winfo reqwidth $client] set creqh [winfo reqheight $client] set scbW [winfo reqwidth $w.vsb] set scbH [winfo reqheight $w.hsb] case $data(-scrollbarspace) { "x" { incr creqh $scbH } "y" { incr creqw $scbW } "both" { incr creqw $scbW incr creqh $scbH } } if {$data(-width) != 0} { set creqw $data(-width) } if {$data(-height) != 0} { set creqh $data(-height) } if {$mreqw != $creqw || $mreqh != $creqh } { if {![info exists data(counter)]} { set data(counter) 0 } if {$data(counter) < 50} { incr data(counter) tixGeometryRequest $w $creqw $creqh tixWidgetDoWhenIdle tixScrolledWidget:Repack $w set data(repack) 1 return } } set data(counter) 0 set mw [winfo width $w] set mh [winfo height $w] set cw [expr $mw - $scbW] set ch [expr $mh - $scbH] set scbx [expr $mw - $scbW] set scby [expr $mh - $scbH] # Check the validity of the sizes: if window was not mapped then # sizes will be below 1x1 if {$cw < 1} { set cw 1 } if {$ch < 1} { set ch 1 } if {$scbx < 1} { set scbx 1 } if {$scby < 1} { set scby 1 } if {[lindex $data(-scrollbar) 0] == "auto"} { # Find out how we are going to pack the scrollbars # set spec [tixScrolledWidget:CheckScrollbars $w $scbW $scbH] foreach xspec [lrange $data(-scrollbar) 1 end] { case $xspec { +x { set spec [expr $spec | 10] } -x { set spec [expr $spec & 01] } +y { set spec [expr $spec | 01] } -y { set spec [expr $spec & 10] } } } if {$spec == 0} { set spec 00 } if {$spec == 1} { set spec 01 } } else { case $data(-scrollbar) in { none { set spec 00 } x { set spec 10 } y { set spec 01 } both { set spec 11 } } } if {$data(lastSpec)==$spec && $data(lastMW)==$mw && $data(lastMH)==$mh} { if {$data(lastScbW) == $scbW && $data(lastScbH) == $scbH} { tixCallMethod $w PlaceWindow set data(repack) 0 return } } set vsbH [expr $mh - $data(vsbPadY)] set hsbW [expr $mw - $data(hsbPadX)] if {$vsbH < 1} { set vsbH 1 } if {$hsbW < 1} { set hsbW 1 } case $spec in { "00" { tixMoveResizeWindow $client 0 0 $mw $mh tixMapWindow $client tixUnmapWindow $data(w:hsb) tixUnmapWindow $data(w:vsb) } "01" { tixMoveResizeWindow $client 0 0 $cw $mh tixMoveResizeWindow $data(w:vsb) $scbx $data(vsbPadY) $scbW $vsbH tixMapWindow $client tixUnmapWindow $data(w:hsb) tixMapWindow $data(w:vsb) } "10" { tixMoveResizeWindow $client 0 0 $mw $ch tixMoveResizeWindow $data(w:hsb) $data(hsbPadX) $scby $hsbW $scbH tixMapWindow $client tixMapWindow $data(w:hsb) tixUnmapWindow $data(w:vsb) } "11" { set vsbH [expr $ch - $data(vsbPadY)] set hsbW [expr $cw - $data(hsbPadX)] if {$vsbH < 1} { set vsbH 1 } if {$hsbW < 1} { set hsbW 1 } tixMoveResizeWindow $client 0 0 $cw $ch tixMoveResizeWindow $data(w:vsb) $scbx $data(vsbPadY) $scbW $vsbH tixMoveResizeWindow $data(w:hsb) $data(hsbPadX) $scby $hsbW $scbH if {$data(-sizebox) && $tcl_platform(platform) == "windows"} { tixMoveResizeWindow $data(w:sizebox) $scbx $scby $scbW $scbH } tixMapWindow $client tixMapWindow $data(w:hsb) tixMapWindow $data(w:vsb) if {$data(-sizebox) && $tcl_platform(platform) == "windows"} { tixMapWindow $data(w:sizebox) } } } set data(lastSpec) $spec set data(lastMW) $mw set data(lastMH) $mh set data(lastScbW) $scbW set data(lastScbH) $scbH tixCallMethod $w PlaceWindow set data(repack) 0 } proc tixScrolledWidget:PlaceWindow {w} { # virtual base function } # # Helper function # proc tixScrolledWidget:NeedScrollbar {w axis} { upvar #0 $w data if {$data($axis,first) > 0.0} { return 1 } if {$data($axis,last) < 1.0} { return 1 } return 0 } # Return whether H and V needs scrollbars in a list of two booleans # # proc tixScrolledWidget:CheckScrollbars {w scbW scbH} { upvar #0 $w data set mW [winfo width $w] set mH [winfo height $w] set info [tixCallMethod $w GeometryInfo $mW $mH] if {$info != ""} { set xSpec [lindex $info 0] set ySpec [lindex $info 1] set data(x,first) [lindex $xSpec 0] set data(x,last) [lindex $xSpec 1] set data(y,first) [lindex $ySpec 0] set data(y,last) [lindex $ySpec 1] } set needX [tixScrolledWidget:NeedScrollbar $w x] set needY [tixScrolledWidget:NeedScrollbar $w y] if {[winfo ismapped $w]==0} { return "$needX$needY" } if {$needX && $needY} { return 11 } if {$needX == 0 && $needY == 0} { return 00 } if {$needX} { set mH [expr $mH - $scbH] } if {$needY} { set mW [expr $mW - $scbW] } set info [tixCallMethod $w GeometryInfo $mW $mH] if {$info != ""} { set xSpec [lindex $info 0] set ySpec [lindex $info 1] set data(x,first) [lindex $xSpec 0] set data(x,last) [lindex $xSpec 1] set data(y,first) [lindex $ySpec 0] set data(y,last) [lindex $ySpec 1] } set needX [tixScrolledWidget:NeedScrollbar $w x] set needY [tixScrolledWidget:NeedScrollbar $w y] return "$needX$needY" }
Save