📄 pane.itk
字号:
## Paned# ----------------------------------------------------------------------# Implements a pane for a paned window widget. The pane is itself a # frame with a child site for other widgets. The pane class performs# basic option management.## ----------------------------------------------------------------------# AUTHOR: Mark L. Ulferts EMAIL: mulferts@austin.dsccc.com## @(#) $Id: pane.itk 144 2003-02-05 10:56:26Z mdejong $# ----------------------------------------------------------------------# Copyright (c) 1995 DSC Technologies Corporation# ======================================================================# Permission to use, copy, modify, distribute and license this software # and its documentation for any purpose, and without fee or written # agreement with DSC, is hereby granted, provided that the above copyright # notice appears in all copies and that both the copyright notice and # warranty disclaimer below appear in supporting documentation, and that # the names of DSC Technologies Corporation or DSC Communications # Corporation not be used in advertising or publicity pertaining to the # software without specific, written prior permission.# # DSC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING # ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, AND NON-# INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND THE# AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. IN NO EVENT SHALL # DSC BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR # ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTUOUS ACTION,# ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS # SOFTWARE.# ======================================================================## Usual options.#itk::usual Pane { keep -background -cursor}# ------------------------------------------------------------------# PANE# ------------------------------------------------------------------class iwidgets::Pane { inherit itk::Widget constructor {args} {} itk_option define -minimum minimum Minimum 10 itk_option define -margin margin Margin 8 public method childSite {} {}}## Provide a lowercased access method for the Pane class.# proc ::iwidgets::pane {pathName args} { uplevel ::iwidgets::Pane $pathName $args}# ------------------------------------------------------------------# CONSTRUCTOR# ------------------------------------------------------------------body iwidgets::Pane::constructor {args} { # # Create the pane childsite. # itk_component add childsite { frame $itk_interior.childsite } { keep -background -cursor } pack $itk_component(childsite) -fill both -expand yes # # Set the itk_interior variable to be the childsite for derived # classes. # set itk_interior $itk_component(childsite) eval itk_initialize $args}# ------------------------------------------------------------------# OPTIONS# ------------------------------------------------------------------# ------------------------------------------------------------------# OPTION: -minimum## Specifies the minimum size that the pane may reach.# ------------------------------------------------------------------configbody iwidgets::Pane::minimum { set pixels \ [winfo pixels $itk_component(hull) $itk_option(-minimum)] set itk_option(-minimum) $pixels}# ------------------------------------------------------------------# OPTION: -margin## Specifies the border distance between the pane and pane contents.# This is done by setting the borderwidth of the pane to the margin.# ------------------------------------------------------------------configbody iwidgets::Pane::margin { set pixels [winfo pixels $itk_component(hull) $itk_option(-margin)] set itk_option(-margin) $pixels $itk_component(childsite) configure \ -borderwidth $itk_option(-margin)}# ------------------------------------------------------------------# METHODS# ------------------------------------------------------------------# ------------------------------------------------------------------# METHOD: childSite## Return the pane child site path name.# ------------------------------------------------------------------body iwidgets::Pane::childSite {} { return $itk_component(childsite)}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -