749N/A/*
749N/A* $XConsortium: Paned.h,v 1.15 94/04/17 20:12:29 kaleb Exp $
749N/A*/
749N/A
749N/A
749N/A/***********************************************************
749N/A
749N/ACopyright (c) 1987, 1988, 1994 X Consortium
749N/A
749N/APermission is hereby granted, free of charge, to any person obtaining a copy
749N/Aof this software and associated documentation files (the "Software"), to deal
749N/Ain the Software without restriction, including without limitation the rights
749N/Ato use, copy, modify, merge, publish, distribute, sublicense, and/or sell
749N/Acopies of the Software, and to permit persons to whom the Software is
749N/Afurnished to do so, subject to the following conditions:
749N/A
749N/AThe above copyright notice and this permission notice shall be included in
749N/Aall copies or substantial portions of the Software.
749N/A
749N/ATHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
749N/AIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
749N/AFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
749N/AX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
749N/AAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
749N/ACONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
749N/A
749N/AExcept as contained in this notice, the name of the X Consortium shall not be
749N/Aused in advertising or otherwise to promote the sale, use or other dealings
749N/Ain this Software without prior written authorization from the X Consortium.
749N/A
749N/A
749N/ACopyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
749N/A
749N/A All Rights Reserved
749N/A
749N/APermission to use, copy, modify, and distribute this software and its
749N/Adocumentation for any purpose and without fee is hereby granted,
749N/Aprovided that the above copyright notice appear in all copies and that
749N/Aboth that copyright notice and this permission notice appear in
749N/Asupporting documentation, and that the name of Digital not be
749N/Aused in advertising or publicity pertaining to distribution of the
749N/Asoftware without specific, written prior permission.
749N/A
749N/ADIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
749N/AALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
749N/ADIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
749N/AANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
749N/AWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
749N/AARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
749N/ASOFTWARE.
749N/A
749N/A******************************************************************/
749N/A
749N/A/*
749N/A * Paned.h - Paned Composite Widget's public header file.
749N/A *
749N/A * Updated and significantly modifided from the Athena VPaned Widget.
749N/A *
749N/A * Date: March 1, 1989
749N/A *
749N/A * By: Chris D. Peterson
749N/A * MIT X Consortium
749N/A * kit@expo.lcs.mit.edu
749N/A */
749N/A
749N/A#ifndef _XawPaned_h
749N/A#define _XawPaned_h
749N/A
749N/A#include <X11/Constraint.h>
749N/A#include <X11/Xmu/Converters.h>
749N/A
749N/A/****************************************************************
749N/A *
749N/A * Vertical Paned Widget (SubClass of CompositeClass)
749N/A *
749N/A ****************************************************************/
749N/A
749N/A/* RESOURCES:
749N/A
749N/A Name Class RepType Default Value
749N/A ---- ----- ------- -------------
749N/A background Background Pixel XtDefaultBackground
749N/A betweenCursor Cursor Cursor **
749N/A border BorderColor Pixel XtDefaultForeground
749N/A borderWidth BorderWidth Dimension 1
749N/A cursor Cursor Cursor None
749N/A destroyCallback Callback Pointer NULL
749N/A height Height Dimension 0
749N/A gripIndent GripIndent Position 16
749N/A gripCursor Cursor Cursor **
749N/A horizontalGripCursol Cursor Cursor sb_h_double_arrow
749N/A horizontalBetweencursor Cursor Cursor sb_up_arrow
749N/A internalBorderColor BorderColor Pixel XtDefaultForeground
749N/A internalBorderWidth BorderWidth Position 1
749N/A leftCursor Cursor Cursor sb_left_arrow
749N/A lowerCursor Cursor Cursor sb_down_arrow
749N/A mappedWhenManaged MappedWhenManaged Boolean True
749N/A orientation Orientation XtOrientation XtorientVertical
749N/A refigureMode Boolean Boolean On
749N/A rightCursor Cursor Cursor sb_right_arrow
749N/A sensitive Sensitive Boolean True
749N/A upperCursor Cursor Cursor sb_up_arrow
749N/A verticalBetweenCursor Cursor Cursor sb_left_arrow
749N/A verticalGripCursor Cursor Cursor sb_v_double_arrow
749N/A width Width Dimension 0
749N/A x Position Position 0
749N/A y Position Position 0
749N/A
749N/A** These resources now are set to the vertical or horizontal cursor
749N/A depending upon orientation, by default. If a value is specified here
749N/A then that cursor will be used reguardless of orientation.
749N/A
749N/A
749N/ACONSTRAINT RESOURCES:
749N/A
749N/A Name Class RepType Default Value
749N/A ---- ----- ------- -------------
749N/A allowResize Boolean Boolean False
749N/A max Max Dimension unlimited
749N/A min Min Dimension Grip Size
749N/A preferredPaneSize PerferredPaneSize Dimension PANED_ASK_CHILD
749N/A resizeToPreferred Boolean Boolean False
749N/A showGrip ShowGrip Boolean True
749N/A skipAdjust Boolean Boolean False
749N/A
749N/A*/
749N/A
749N/A#define PANED_ASK_CHILD 0
749N/A#define PANED_GRIP_SIZE 0
749N/A
749N/A/* New Fields */
749N/A#define XtNallowResize "allowResize"
749N/A#define XtNbetweenCursor "betweenCursor"
749N/A#define XtNverticalBetweenCursor "verticalBetweenCursor"
749N/A#define XtNhorizontalBetweenCursor "horizontalBetweenCursor"
749N/A#define XtNgripCursor "gripCursor"
749N/A#define XtNgripIndent "gripIndent"
749N/A#define XtNhorizontalGripCursor "horizontalGripCursor"
749N/A#define XtNinternalBorderColor "internalBorderColor"
749N/A#define XtNinternalBorderWidth "internalBorderWidth"
749N/A#define XtNleftCursor "leftCursor"
749N/A#define XtNlowerCursor "lowerCursor"
749N/A#define XtNrefigureMode "refigureMode"
749N/A#define XtNposition "position"
749N/A#define XtNmin "min"
749N/A#define XtNmax "max"
749N/A#define XtNpreferredPaneSize "preferredPaneSize"
749N/A#define XtNresizeToPreferred "resizeToPreferred"
749N/A#define XtNrightCursor "rightCursor"
749N/A#define XtNshowGrip "showGrip"
749N/A#define XtNskipAdjust "skipAdjust"
749N/A#define XtNupperCursor "upperCursor"
749N/A#define XtNverticalGripCursor "verticalGripCursor"
749N/A
749N/A#define XtCGripIndent "GripIndent"
749N/A#define XtCMin "Min"
749N/A#define XtCMax "Max"
749N/A#define XtCPreferredPaneSize "PreferredPaneSize"
749N/A#define XtCShowGrip "ShowGrip"
749N/A
749N/A/* Class record constant */
749N/Aextern WidgetClass panedWidgetClass;
749N/A
749N/Atypedef struct _PanedClassRec *PanedWidgetClass;
749N/Atypedef struct _PanedRec *PanedWidget;
749N/A
749N/A/************************************************************
749N/A *
749N/A * Public Procedures
749N/A *
749N/A ************************************************************/
749N/A
749N/A_XFUNCPROTOBEGIN
749N/A
749N/A/* Function Name: XawPanedSetMinMax
749N/A * Description: Sets the min and max size for a pane.
749N/A * Arguments: widget - the widget that is a child of the Paned widget.
749N/A * min, max - the new min and max size for the pane.
749N/A * Returns: none.
749N/A */
749N/A
749N/Aextern void XawPanedSetMinMax(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */,
749N/A int /* min */,
749N/A int /* max */
749N/A#endif
749N/A);
749N/A
749N/A/* Function Name: XawPanedGetMinMax
749N/A * Description: Gets the min and max size for a pane.
749N/A * Arguments: widget - the widget that is a child of the Paned widget.
749N/A ** RETURNED ** min, max - the current min and max size for the pane.
749N/A * Returns: none.
749N/A */
749N/A
749N/Aextern void XawPanedGetMinMax(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */,
749N/A int * /* min_return */,
749N/A int * /* max_return */
749N/A#endif
749N/A);
749N/A
749N/A/* Function Name: XawPanedSetRefigureMode
749N/A * Description: Allows a flag to be set the will inhibit
749N/A * the paned widgets relayout routine.
749N/A * Arguments: w - the paned widget.
749N/A * mode - if FALSE then inhibit refigure.
749N/A * Returns: none.
749N/A */
749N/A
749N/Aextern void XawPanedSetRefigureMode(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */,
749N/A#if NeedWidePrototypes
749N/A /* Boolean */ int /* mode */
749N/A#else
749N/A Boolean /* mode */
749N/A#endif
749N/A#endif
749N/A);
749N/A
749N/A/* Function Name: XawPanedGetNumSub
749N/A * Description: Returns the number of panes in the paned widget.
749N/A * Arguments: w - the paned widget.
749N/A * Returns: the number of panes in the paned widget.
749N/A */
749N/A
749N/Aextern int XawPanedGetNumSub(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */
749N/A#endif
749N/A);
749N/A
749N/A/* Function Name: XawPanedAllowResize
749N/A * Description: Allows a flag to be set that determines if the paned
749N/A * widget will allow geometry requests from this child
749N/A * Arguments: widget - a child of the paned widget.
749N/A * Returns: none.
749N/A */
749N/A
749N/Aextern void XawPanedAllowResize(
749N/A#if NeedFunctionPrototypes
749N/A Widget /* w */,
749N/A#if NeedWidePrototypes
749N/A /* Boolean */ int /* allow_resize */
749N/A#else
749N/A Boolean /* allow_resize */
749N/A#endif
749N/A#endif
749N/A);
749N/A
749N/A_XFUNCPROTOEND
749N/A
749N/A#endif /* _XawPaned_h */