|
|
1.1 ! root 1: # tk.tcl -- ! 2: # ! 3: # Initialization script normally executed in the interpreter for each ! 4: # Tk-based application. Arranges class bindings for widgets. ! 5: # ! 6: # $Header: /user6/ouster/wish/scripts/RCS/tk.tcl,v 1.19 92/08/08 14:50:08 ouster Exp $ SPRITE (Berkeley) ! 7: # ! 8: # Copyright 1992 Regents of the University of California ! 9: # Permission to use, copy, modify, and distribute this ! 10: # software and its documentation for any purpose and without ! 11: # fee is hereby granted, provided that this copyright ! 12: # notice appears in all copies. The University of California ! 13: # makes no representations about the suitability of this ! 14: # software for any purpose. It is provided "as is" without ! 15: # express or implied warranty. ! 16: ! 17: # Insist on running with a compatible version of Tcl. ! 18: ! 19: if "[info tclversion] != {6.4}" { ! 20: error "wrong version of Tcl loaded ([info tclversion]): need 6.4" ! 21: } ! 22: ! 23: # Initialize the auto-load path to include Tk's directory as well as ! 24: # Tcl's directory: ! 25: ! 26: set auto_path "$tk_library [info library]" ! 27: ! 28: # ---------------------------------------------------------------------- ! 29: # Class bindings for various flavors of button widgets. ! 30: # ---------------------------------------------------------------------- ! 31: ! 32: bind Button <Any-Enter> {tk_butEnter %W} ! 33: bind Button <Any-Leave> {tk_butLeave %W} ! 34: bind Button <1> {tk_butDown %W} ! 35: bind Button <ButtonRelease-1> {tk_butUp %W} ! 36: bind Button <2> {tk_butDown %W} ! 37: bind Button <ButtonRelease-2> {tk_butUp %W} ! 38: bind Button <3> {tk_butDown %W} ! 39: bind Button <ButtonRelease-3> {tk_butUp %W} ! 40: ! 41: bind CheckButton <Any-Enter> {tk_butEnter %W} ! 42: bind CheckButton <Any-Leave> {tk_butLeave %W} ! 43: bind CheckButton <1> {tk_butDown %W} ! 44: bind CheckButton <ButtonRelease-1> {tk_butUp %W} ! 45: bind CheckButton <2> {tk_butDown %W} ! 46: bind CheckButton <ButtonRelease-2> {tk_butUp %W} ! 47: bind CheckButton <3> {tk_butDown %W} ! 48: bind CheckButton <ButtonRelease-3> {tk_butUp %W} ! 49: ! 50: bind RadioButton <Any-Enter> {tk_butEnter %W} ! 51: bind RadioButton <Any-Leave> {tk_butLeave %W} ! 52: bind RadioButton <1> {tk_butDown %W} ! 53: bind RadioButton <ButtonRelease-1> {tk_butUp %W} ! 54: bind RadioButton <2> {tk_butDown %W} ! 55: bind RadioButton <ButtonRelease-2> {tk_butUp %W} ! 56: bind RadioButton <3> {tk_butDown %W} ! 57: bind RadioButton <ButtonRelease-3> {tk_butUp %W} ! 58: ! 59: # ---------------------------------------------------------------------- ! 60: # Class bindings for entry widgets. ! 61: # ---------------------------------------------------------------------- ! 62: ! 63: bind Entry <1> { ! 64: %W cursor @%x ! 65: %W select from @%x ! 66: if {[lindex [%W config -state] 4] == "normal"} {focus %W} ! 67: } ! 68: bind Entry <B1-Motion> {%W select to @%x} ! 69: bind Entry <Shift-1> {%W select adjust @%x} ! 70: bind Entry <Shift-B1-Motion> {%W select to @%x} ! 71: bind Entry <2> {%W scan mark %x} ! 72: bind Entry <B2-Motion> {%W scan dragto %x} ! 73: bind Entry <Any-KeyPress> { ! 74: tk_entryCutPress %W ! 75: if {"%A" != ""} { ! 76: %W insert cursor %A ! 77: tk_entrySeeCaret %W ! 78: } ! 79: } ! 80: bind Entry <Delete> {tk_entryDelPress %W} ! 81: bind Entry <BackSpace> {tk_entryDelPress %W} ! 82: bind Entry <Control-h> {tk_entryDelPress %W} ! 83: bind Entry <Control-d> {tk_entryCutPress %W} ! 84: bind Entry <Control-u> {tk_entryDelLine %W} ! 85: bind Entry <Control-x> {tk_entryCutPress %W} ! 86: bind Entry <Control-y> {tk_entryCopyPress %W} ! 87: bind Entry <Control-v> {tk_entryCopyPress %W} ! 88: bind Entry <Control-w> {tk_entryBackword %W; tk_entrySeeCaret %W} ! 89: tk_bindForTraversal Entry ! 90: ! 91: # ---------------------------------------------------------------------- ! 92: # Class bindings for listbox widgets. ! 93: # ---------------------------------------------------------------------- ! 94: ! 95: bind Listbox <1> {%W select from [%W nearest %y]} ! 96: bind Listbox <B1-Motion> {%W select to [%W nearest %y]} ! 97: bind Listbox <Shift-1> {%W select adjust [%W nearest %y]} ! 98: bind Listbox <Shift-B1-Motion> {%W select to [%W nearest %y]} ! 99: bind Listbox <2> {%W scan mark %x %y} ! 100: bind Listbox <B2-Motion> {%W scan dragto %x %y} ! 101: bind Listbox <3> {%W select from [%W nearest %y]} ! 102: bind Listbox <B3-Motion> {%W select to [%W nearest %y]} ! 103: bind Listbox <Shift-3> {%W select adjust [%W nearest %y]} ! 104: bind Listbox <Shift-B3-Motion> {%W select to [%W nearest %y]} ! 105: ! 106: # ---------------------------------------------------------------------- ! 107: # Class bindings for scrollbar widgets. ! 108: # ---------------------------------------------------------------------- ! 109: ! 110: # ---------------------------------------------------------------------- ! 111: # Class bindings for scale widgets. ! 112: # ---------------------------------------------------------------------- ! 113: ! 114: # ---------------------------------------------------------------------- ! 115: # Class bindings for menubutton widgets. ! 116: # ---------------------------------------------------------------------- ! 117: ! 118: bind Menubutton <Enter> {tk_mbButtonEnter %W %m} ! 119: bind Menubutton <Any-Leave> {tk_mbButtonLeave %W} ! 120: bind Menubutton <1> {tk_mbButtonDown %W %X %Y} ! 121: bind Menubutton <Any-ButtonRelease-1> {tk_mbButtonUp %W %X %Y} ! 122: bind Menubutton <B1-Enter> {tk_mbButton1Enter %W %m} ! 123: bind Menubutton <2> {tk_mbButtonDown %W %X %Y} ! 124: bind Menubutton <ButtonRelease-2> {tk_mbButtonUp %W %X %Y} ! 125: bind Menubutton <3> {tk_mbButtonDown %W %X %Y} ! 126: bind Menubutton <ButtonRelease-3> {tk_mbButtonUp %W %X %Y} ! 127: ! 128: # ---------------------------------------------------------------------- ! 129: # Class bindings for menu widgets. ! 130: # ---------------------------------------------------------------------- ! 131: ! 132: bind Menu <Any-Enter> {tk_menuEnter %W %y} ! 133: bind Menu <Any-Leave> {tk_menuLeave %W} ! 134: bind Menu <Any-Motion> {tk_menuMotion %W %y} ! 135: bind Menu <ButtonRelease-1> {tk_menuUp %W %y} ! 136: bind Menu <ButtonRelease-2> {tk_menuUp %W %y} ! 137: bind Menu <ButtonRelease-3> {tk_menuUp %W %y} ! 138: ! 139: bind Menu <Escape> {tk_mbUnpost %W} ! 140: bind Menu <Any-KeyPress> {tk_traverseWithinMenu %W %A} ! 141: bind Menu <Left> {tk_nextMenu %W -1} ! 142: bind Menu <Right> {tk_nextMenu %W 1} ! 143: bind Menu <Up> {tk_nextMenuEntry %W -1} ! 144: bind Menu <Down> {tk_nextMenuEntry %W 1} ! 145: bind Menu <Return> {tk_invokeMenu %W} ! 146: ! 147: # ---------------------------------------------------------------------- ! 148: # Class bindings for text widgets. ! 149: # ---------------------------------------------------------------------- ! 150: ! 151: #bind Text <1> {tk_textDown %W %x %y} ! 152: #bind Text <Double-1> {tk_textDoubleDown %W %x %y} ! 153: #bind Text <Triple-1> {tk_textTripleDown %W %x %y} ! 154: #bind Text <B1-Motion> {tk_textSelectTo %W %x %y} ! 155: #bind Text <Shift-1> {tk_textAdjustTo %W %x %y} ! 156: #bind Text <Shift-B1-Motion> {tk_textSelectTo %W %x %y} ! 157: bind Text <2> {%W scan mark %y} ! 158: bind Text <B2-Motion> {%W scan dragto %y} ! 159: bind Text <Any-KeyPress> {tk_textKeyPress %W %A} ! 160: bind Text <Return> {tk_textReturnPress %W} ! 161: bind Text <BackSpace> {tk_textDelPress %W} ! 162: bind Text <Delete> {tk_textDelPress %W} ! 163: bind Text <Control-h> {tk_textDelPress %W} ! 164: bind Text <Control-d> {tk_textCutPress %W} ! 165: bind Text <Control-v> {tk_textCopyPress %W} ! 166: tk_bindForTraversal Text ! 167: ! 168: # Initialize the elements of tk_priv that require initialization.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.