PHP 7.4.33
Preview: SGrid.tcl Size: 5.80 KB
/home/godevadmin/public_html/upload_images/home/000~ROOT~000/lib64/tcl8.6/Tix8.4.3/SGrid.tcl

# -*- mode: TCL; fill-column: 75; tab-width: 8; coding: iso-latin-1-unix -*-
#
#	$Id: SGrid.tcl,v 1.6 2002/01/24 09:13:58 idiscovery Exp $
#
# SGrid.tcl --
#
#	This file implements Scrolled Grid 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.
#

global tkPriv
if {![llength [info globals tkPriv]]} {
    tk::unsupported::ExposePrivateVariable tkPriv
}
#--------------------------------------------------------------------------
# tkPriv elements used in this file:
#
# x -	
# y -	
# X -	
# Y -	
#--------------------------------------------------------------------------
#

tixWidgetClass tixScrolledGrid {
    -classname TixScrolledGrid
    -superclass tixScrolledWidget
    -method {
    }
    -flag {
    }
    -configspec {
    }
    -default {
	{.scrollbar			auto}
	{*grid.borderWidth		1}
	{*grid.Background		#c3c3c3}
	{*grid.highlightBackground	#d9d9d9}
	{*grid.relief			sunken}
	{*grid.takeFocus		1}
	{*Scrollbar.takeFocus		0}
    }
}

proc tixScrolledGrid:ConstructWidget {w} {
    upvar #0 $w data

    tixChainMethod $w ConstructWidget

    set data(w:grid) [tixGrid $w.grid]

    set data(w:hsb) \
	[scrollbar $w.hsb -orient horizontal -takefocus 0]
    set data(w:vsb) \
	[scrollbar $w.vsb -orient vertical -takefocus 0]

    set data(pw:client) $data(w:grid)

    pack $data(w:grid) -expand yes -fill both -padx 0 -pady 0
}

proc tixScrolledGrid:SetBindings {w} {
    upvar #0 $w data

    tixChainMethod $w SetBindings

    $data(w:grid) config \
	-xscrollcommand "$data(w:hsb) set"\
	-yscrollcommand "$data(w:vsb) set"\
	-sizecmd [list tixScrolledWidget:Configure $w] \
	-formatcmd "tixCallMethod $w FormatCmd"

    $data(w:hsb) config -command "$data(w:grid) xview"
    $data(w:vsb) config -command "$data(w:grid) yview"

    bindtags $data(w:grid) \
	"$data(w:grid) TixSGrid TixGrid [winfo toplevel $data(w:grid)] all"    

    tixSetMegaWidget $data(w:grid) $w
}

#----------------------------------------------------------------------
#			RAW event bindings
#----------------------------------------------------------------------
proc tixScrolledGridBind {} {
    tixBind TixScrolledGrid <ButtonPress-1> {
	tixScrolledGrid:Button-1 [tixGetMegaWidget %W] %x %y
    }
    tixBind TixScrolledGrid <Shift-ButtonPress-1> {
	tixScrolledGrid:Shift-Button-1 %W %x %y
    }
    tixBind TixScrolledGrid <Control-ButtonPress-1> {
	tixScrolledGrid:Control-Button-1 %W %x %y
    }
    tixBind TixScrolledGrid <ButtonRelease-1> {
	tixScrolledGrid:ButtonRelease-1 %W %x %y
    }
    tixBind TixScrolledGrid <Double-ButtonPress-1> {
	tixScrolledGrid:Double-1 %W  %x %y
    }
    tixBind TixScrolledGrid <B1-Motion> {
	set tkPriv(x) %x 
	set tkPriv(y) %y
	set tkPriv(X) %X
	set tkPriv(Y) %Y

	tixScrolledGrid:B1-Motion %W %x %y
    }
    tixBind TixScrolledGrid <Control-B1-Motion> {
	set tkPriv(x) %x 
	set tkPriv(y) %y
	set tkPriv(X) %X
	set tkPriv(Y) %Y

	tixScrolledGrid:Control-B1-Motion %W %x %y
    }
    tixBind TixScrolledGrid <B1-Leave> {
	set tkPriv(x) %x 
	set tkPriv(y) %y
	set tkPriv(X) %X
	set tkPriv(Y) %Y

	tixScrolledGrid:B1-Leave %W
    }
    tixBind TixScrolledGrid <B1-Enter> {
	tixScrolledGrid:B1-Enter %W %x %y
    }
    tixBind TixScrolledGrid <Control-B1-Leave> {
	set tkPriv(x) %x 
	set tkPriv(y) %y
	set tkPriv(X) %X
	set tkPriv(Y) %Y

	tixScrolledGrid:Control-B1-Leave %W
    }
    tixBind TixScrolledGrid <Control-B1-Enter> {
	tixScrolledGrid:Control-B1-Enter %W %x %y
    }

    # Keyboard bindings
    #
    tixBind TixScrolledGrid <Up> {
	tixScrolledGrid:DirKey %W up
    }
    tixBind TixScrolledGrid <Down> {
	tixScrolledGrid:DirKey %W down
    }
    tixBind TixScrolledGrid <Left> {
	tixScrolledGrid:DirKey %W left
    }
    tixBind TixScrolledGrid <Right> {
	tixScrolledGrid:DirKey %W right
    }
    tixBind TixScrolledGrid <Prior> {
	%W yview scroll -1 pages
    }
    tixBind TixScrolledGrid <Next> {
	%W yview scroll 1 pages
    }
    tixBind TixScrolledGrid <Return> {
	tixScrolledGrid:Return %W 
    }
    tixBind TixScrolledGrid <space> {
	tixScrolledGrid:Space %W 
    }
}

#----------------------------------------------------------------------
#
#
#			 Mouse bindings
#
#
#----------------------------------------------------------------------
proc tixScrolledGrid:Button-1 {w x y} {
    if {[$w cget -state] == "disabled"} {
	return
    }
    if {[$w cget -takefocus]} {
	focus $w
    }
    case [tixScrolled:GetState $w] {
	{0} {
	    tixScrolledGrid:GoState s1 $w $x $y
       	}
	{b0} {
	    tixScrolledGrid:GoState b1 $w $x $y
       	}
	{m0} {
	    tixScrolledGrid:GoState m1 $w $x $y
       	}
	{e0} {
	    tixScrolledGrid:GoState e1 $w $x $y
       	}
    }
}



#----------------------------------------------------------------------
#
#		option configs
#----------------------------------------------------------------------

#----------------------------------------------------------------------
#
#		Widget commands
#----------------------------------------------------------------------


#----------------------------------------------------------------------
#
#		Private Methods
#----------------------------------------------------------------------

#----------------------------------------------------------------------
#		Virtual Methods
#----------------------------------------------------------------------
proc tixScrolledGrid:FormatCmd {w area x1 y1 x2 y2} {
    # do nothing
}

#----------------------------------------------------------------------
# virtual functions to query the client window's scroll requirement
#----------------------------------------------------------------------
proc tixScrolledGrid:GeometryInfo {w mW mH} {
    upvar #0 $w data


    if {$mW < 1} {
	set mW 1
    }
    if {$mH < 1} {
	set mH 1
    }

    return [$data(w:grid) geometryinfo $mW $mH]
}

Directory Contents

Dirs: 3 × Files: 70

Name Size Perms Modified Actions
bitmaps DIR
- drwxr-xr-x 2024-08-07 14:25:42
Edit Download
html DIR
- drwxr-xr-x 2019-10-22 12:47:10
Edit Download
pref DIR
- drwxr-xr-x 2024-08-07 14:25:42
Edit Download
12.97 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.61 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
4.97 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
7.56 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
35.42 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
870 B lrw-r--r-- 2019-10-22 12:47:10
Edit Download
14.95 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
12.11 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.94 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
4.20 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
5.30 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.15 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
6.90 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
8.76 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.93 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1002 B lrw-r--r-- 2019-10-22 12:47:10
Edit Download
11.12 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.68 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
5.11 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
14.00 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.42 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.13 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
7.15 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.10 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.90 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
21.16 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
17.72 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
4.39 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
5.97 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
6.05 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.09 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.15 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.86 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
341.30 KB lrwxr-xr-x 2019-10-22 12:47:11
Edit Download
2.76 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.50 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.04 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.62 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
6.02 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.98 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
9.17 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
27.68 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
122 B lrw-r--r-- 2019-10-22 12:47:10
Edit Download
5.37 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
10.28 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
987 B lrw-r--r-- 2019-10-22 12:47:10
Edit Download
12.94 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
7.04 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
5.80 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.06 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.70 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.13 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
6.97 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.95 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.31 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.62 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
1.15 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
3.09 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.37 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
9.52 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
6.75 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
9.51 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
17.59 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
4.57 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
10.54 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
2.50 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
4.95 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
9.42 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
4.31 KB lrw-r--r-- 2019-10-22 12:47:10
Edit Download
965 B lrw-r--r-- 2019-10-22 12:47:10
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).