Paned.h revision 7a84e134
1/* 2* $Xorg: Paned.h,v 1.5 2001/02/09 02:03:45 xorgcvs Exp $ 3*/ 4 5 6/*********************************************************** 7 8Copyright 1987, 1988, 1994, 1998 The Open Group 9 10Permission to use, copy, modify, distribute, and sell this software and its 11documentation for any purpose is hereby granted without fee, provided that 12the above copyright notice appear in all copies and that both that 13copyright notice and this permission notice appear in supporting 14documentation. 15 16The above copyright notice and this permission notice shall be included in 17all copies or substantial portions of the Software. 18 19THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 23AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 24CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25 26Except as contained in this notice, the name of The Open Group shall not be 27used in advertising or otherwise to promote the sale, use or other dealings 28in this Software without prior written authorization from The Open Group. 29 30 31Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. 32 33 All Rights Reserved 34 35Permission to use, copy, modify, and distribute this software and its 36documentation for any purpose and without fee is hereby granted, 37provided that the above copyright notice appear in all copies and that 38both that copyright notice and this permission notice appear in 39supporting documentation, and that the name of Digital not be 40used in advertising or publicity pertaining to distribution of the 41software without specific, written prior permission. 42 43DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 44ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 45DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR 46ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 47WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 48ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS 49SOFTWARE. 50 51******************************************************************/ 52/* $XFree86: xc/lib/Xaw/Paned.h,v 1.6 2001/01/17 19:42:28 dawes Exp $ */ 53 54/* 55 * Paned.h - Paned Composite Widget's public header file. 56 * 57 * Updated and significantly modifided from the Athena VPaned Widget. 58 * 59 * Date: March 1, 1989 60 * 61 * By: Chris D. Peterson 62 * MIT X Consortium 63 * kit@expo.lcs.mit.edu 64 */ 65 66#ifndef _XawPaned_h 67#define _XawPaned_h 68 69#include <X11/Intrinsic.h> 70#include <X11/Xmu/Converters.h> 71 72/* RESOURCES: 73 74 Name Class RepType Default Value 75 ---- ----- ------- ------------- 76 background Background Pixel XtDefaultBackground 77 betweenCursor Cursor Cursor ** 78 border BorderColor Pixel XtDefaultForeground 79 borderWidth BorderWidth Dimension 1 80 cursor Cursor Cursor None 81 destroyCallback Callback Pointer NULL 82 height Height Dimension 0 83 gripIndent GripIndent Position 16 84 gripCursor Cursor Cursor ** 85 horizontalGripCursol Cursor Cursor sb_h_double_arrow 86 horizontalBetweencursor Cursor Cursor sb_up_arrow 87 internalBorderColor BorderColor Pixel XtDefaultForeground 88 internalBorderWidth BorderWidth Position 1 89 leftCursor Cursor Cursor sb_left_arrow 90 lowerCursor Cursor Cursor sb_down_arrow 91 mappedWhenManaged MappedWhenManaged Boolean True 92 orientation Orientation XtOrientation XtorientVertical 93 refigureMode Boolean Boolean On 94 rightCursor Cursor Cursor sb_right_arrow 95 sensitive Sensitive Boolean True 96 upperCursor Cursor Cursor sb_up_arrow 97 verticalBetweenCursor Cursor Cursor sb_left_arrow 98 verticalGripCursor Cursor Cursor sb_v_double_arrow 99 width Width Dimension 0 100 x Position Position 0 101 y Position Position 0 102 103** These resources now are set to the vertical or horizontal cursor 104 depending upon orientation, by default. If a value is specified here 105 then that cursor will be used reguardless of orientation. 106 107 108CONSTRAINT RESOURCES: 109 110 Name Class RepType Default Value 111 ---- ----- ------- ------------- 112 allowResize Boolean Boolean False 113 max Max Dimension unlimited 114 min Min Dimension Grip Size 115 preferredPaneSize PreferredPaneSize Dimension PANED_ASK_CHILD 116 resizeToPreferred Boolean Boolean False 117 showGrip ShowGrip Boolean True 118 skipAdjust Boolean Boolean False 119 120*/ 121 122#define PANED_ASK_CHILD 0 123#define PANED_GRIP_SIZE 0 124 125#define XtNallowResize "allowResize" 126#define XtNbetweenCursor "betweenCursor" 127#define XtNverticalBetweenCursor "verticalBetweenCursor" 128#define XtNhorizontalBetweenCursor "horizontalBetweenCursor" 129#define XtNgripCursor "gripCursor" 130#define XtNgripIndent "gripIndent" 131#define XtNhorizontalGripCursor "horizontalGripCursor" 132#define XtNinternalBorderColor "internalBorderColor" 133#define XtNinternalBorderWidth "internalBorderWidth" 134#define XtNleftCursor "leftCursor" 135#define XtNlowerCursor "lowerCursor" 136#define XtNrefigureMode "refigureMode" 137#define XtNposition "position" 138#define XtNmin "min" 139#define XtNmax "max" 140#define XtNpreferredPaneSize "preferredPaneSize" 141#define XtNresizeToPreferred "resizeToPreferred" 142#define XtNrightCursor "rightCursor" 143#define XtNshowGrip "showGrip" 144#define XtNskipAdjust "skipAdjust" 145#define XtNupperCursor "upperCursor" 146#define XtNverticalGripCursor "verticalGripCursor" 147 148#define XtCGripIndent "GripIndent" 149#define XtCMin "Min" 150#define XtCMax "Max" 151#define XtCPreferredPaneSize "PreferredPaneSize" 152#define XtCShowGrip "ShowGrip" 153 154/* Class record constant */ 155extern WidgetClass panedWidgetClass; 156 157typedef struct _PanedClassRec *PanedWidgetClass; 158typedef struct _PanedRec *PanedWidget; 159 160/* 161 * Public Procedures 162 */ 163 164_XFUNCPROTOBEGIN 165 166/* 167 * Function: 168 * XawPanedSetMinMax 169 * 170 * Parameters: 171 * widget - widget that is a child of the Paned widget 172 * min - new min and max size for the pane 173 * max - "" 174 * 175 * Description: 176 * Sets the min and max size for a pane. 177 */ 178void XawPanedSetMinMax 179( 180 Widget w, 181 int min, 182 int max 183 ); 184 185/* 186 * Function: 187 * XawPanedGetMinMax 188 * 189 * Parameters: 190 * widget - widget that is a child of the Paned widget 191 * min - return the current min and max size for the pane 192 * max - "" 193 * 194 * Description: 195 * Gets the min and max size for a pane. 196 */ 197void XawPanedGetMinMax 198( 199 Widget w, 200 int *min_return, 201 int *max_return 202 ); 203 204/* 205 * Function: 206 * XawPanedSetRefigureMode 207 * 208 * Parameters: 209 * w - paned widget 210 * mode - if False then inhibit refigure 211 * 212 * Description: 213 * Allows a flag to be set the will inhibit the paned widgets 214 * relayout routine. 215 */ 216void XawPanedSetRefigureMode 217( 218 Widget w, 219#if NeedWidePrototypes 220 int mode 221#else 222 Boolean mode 223#endif 224 ); 225 226/* 227 * Function: 228 * XawPanedGetNumSub 229 * 230 * Parameters: 231 * w - paned widget 232 * 233 * Returns: 234 * Number of panes in the paned widget. 235 */ 236int XawPanedGetNumSub 237( 238 Widget w 239 ); 240 241/* 242 * Function: 243 * XawPanedAllowResize 244 * 245 * Parameters: 246 * widget - child of the paned widget 247 * 248 * Description: 249 * Allows a flag to be set that determines if the paned widget will 250 * allow geometry requests from this child 251 */ 252void XawPanedAllowResize 253( 254 Widget w, 255#if NeedWidePrototypes 256 int allow_resize 257#else 258 Boolean allow_resize 259#endif 260 ); 261 262_XFUNCPROTOEND 263 264#endif /* _XawPaned_h */ 265