home *** CD-ROM | disk | FTP | other *** search
- #
- # Dialog
- # ----------------------------------------------------------------------
- # Implements a standard dialog box providing standard buttons and a
- # child site for use in derived classes. The buttons include ok, apply,
- # cancel, and help. Options exist to configure the buttons.
- #
- # ----------------------------------------------------------------------
- # AUTHOR: Mark L. Ulferts EMAIL: mulferts@austin.dsccc.com
- #
- # @(#) $Id: dialog.itk,v 1.2 2001/08/07 19:56:47 smithc Exp $
- # ----------------------------------------------------------------------
- # 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 Dialog {
- keep -background -cursor -foreground -modality
- }
-
- # ------------------------------------------------------------------
- # DIALOG
- # ------------------------------------------------------------------
- itcl::class iwidgets::Dialog {
- inherit iwidgets::Dialogshell
-
- constructor {args} {}
- }
-
- #
- # Provide a lowercased access method for the Dialog class.
- #
- proc ::iwidgets::dialog {pathName args} {
- uplevel ::iwidgets::Dialog $pathName $args
- }
-
- #
- # Use option database to override default resources of base classes.
- #
- option add *Dialog.master "." widgetDefault
-
- # ------------------------------------------------------------------
- # CONSTRUCTOR
- # ------------------------------------------------------------------
- itcl::body iwidgets::Dialog::constructor {args} {
- #
- # Add the standard buttons: OK, Apply, Cancel, and Help, making
- # OK be the default button.
- #
- add OK -text OK -command [itcl::code $this deactivate 1]
- add Apply -text Apply
- add Cancel -text Cancel -command [itcl::code $this deactivate 0]
- add Help -text Help
-
- default OK
-
- #
- # Bind the window manager delete protocol to invocation of the
- # cancel button. This can be overridden by the user via the
- # execution of a similar command outside the class.
- #
- wm protocol $itk_component(hull) WM_DELETE_WINDOW \
- [itcl::code $this invoke Cancel]
-
- #
- # Initialize the widget based on the command line options.
- #
- eval itk_initialize $args
- }
-
-