home *** CD-ROM | disk | FTP | other *** search
- #
- # itk.tcl
- # ----------------------------------------------------------------------
- # Invoked automatically upon startup to customize the interpreter
- # for [incr Tk].
- # ----------------------------------------------------------------------
- # AUTHOR: Michael J. McLennan
- # Bell Labs Innovations for Lucent Technologies
- # mmclennan@lucent.com
- # http://www.tcltk.com/itcl
- #
- # RCS: $Id: itk.tcl,v 1.2 2000/07/06 06:43:33 mmc Exp $
- # ----------------------------------------------------------------------
- # Copyright (c) 1993-1998 Lucent Technologies, Inc.
- # ======================================================================
- # See the file "license.terms" for information on usage and
- # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
-
- #
- # Provide transparent access to all [incr Tk] commands
- #
- if {$tcl_platform(os) == "MacOS"} {
- source -rsrc itk:tclIndex
- } else {
- lappend auto_path ${itk::library}
- }
-
- # ----------------------------------------------------------------------
- # USAGE: itk::remove_destroy_hook <widget>
- #
- # Used internally via "itk_component delete" when disconnecting a
- # component <widget> from the mega-widget that contains it.
- # Each component has a special binding for the <Destroy> event
- # that causes it to disconnect itself from its parent when destroyed.
- # This procedure removes the binding from the binding tag list and
- # deletes the binding. It is much easier to implement this in
- # Tcl than C.
- # ----------------------------------------------------------------------
- proc ::itk::remove_destroy_hook {widget} {
- set tags [bindtags $widget]
- set i [lsearch $tags "itk-destroy-$widget"]
- if {$i >= 0} {
- bindtags $widget [lreplace $tags $i $i]
- }
- bind itk-destroy-$widget <Destroy> {}
- }
-
- #
- # Define "usual" option-handling code for the Tk widgets:
- #
- itk::usual Button {
- keep -background -cursor -foreground -font
- keep -activebackground -activeforeground -disabledforeground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Canvas {
- keep -background -cursor
- keep -insertbackground -insertborderwidth -insertwidth
- keep -insertontime -insertofftime
- keep -selectbackground -selectborderwidth -selectforeground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Checkbutton {
- keep -background -cursor -foreground -font
- keep -activebackground -activeforeground -disabledforeground
- keep -selectcolor
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Entry {
- keep -background -cursor -foreground -font
- keep -insertbackground -insertborderwidth -insertwidth
- keep -insertontime -insertofftime
- keep -selectbackground -selectborderwidth -selectforeground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Frame {
- keep -background -cursor
- }
-
- itk::usual Label {
- keep -background -cursor -foreground -font
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Listbox {
- keep -background -cursor -foreground -font
- keep -selectbackground -selectborderwidth -selectforeground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Menu {
- keep -background -cursor -foreground -font
- keep -activebackground -activeforeground -disabledforeground
- keep -selectcolor -tearoff
- }
-
- itk::usual Menubutton {
- keep -background -cursor -foreground -font
- keep -activebackground -activeforeground -disabledforeground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Message {
- keep -background -cursor -foreground -font
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Radiobutton {
- keep -background -cursor -foreground -font
- keep -activebackground -activeforeground -disabledforeground
- keep -selectcolor
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Scale {
- keep -background -cursor -foreground -font -troughcolor
- keep -activebackground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Scrollbar {
- keep -background -cursor -troughcolor
- keep -activebackground -activerelief
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Text {
- keep -background -cursor -foreground -font
- keep -insertbackground -insertborderwidth -insertwidth
- keep -insertontime -insertofftime
- keep -selectbackground -selectborderwidth -selectforeground
- keep -highlightcolor -highlightthickness
- rename -highlightbackground -background background Background
- }
-
- itk::usual Toplevel {
- keep -background -cursor
- }
-