1 /* 2 * Motif 3 * 4 * Copyright (c) 1987-2012, The Open Group. All rights reserved. 5 * 6 * These libraries and programs are free software; you can 7 * redistribute them and/or modify them under the terms of the GNU 8 * Lesser General Public License as published by the Free Software 9 * Foundation; either version 2 of the License, or (at your option) 10 * any later version. 11 * 12 * These libraries and programs are distributed in the hope that 13 * they will be useful, but WITHOUT ANY WARRANTY; without even the 14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 15 * PURPOSE. See the GNU Lesser General Public License for more 16 * details. 17 * 18 * You should have received a copy of the GNU Lesser General Public 19 * License along with these librararies and programs; if not, write 20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth 21 * Floor, Boston, MA 02110-1301 USA 22 */ 23 /* 24 * SashP.h - Private definitions for Sash widget (Used by VPane Widget) 25 * 26 */ 27 28 #ifndef _XmSashP_h 29 #define _XmSashP_h 30 31 #include <Xm/PrimitiveP.h> 32 33 #ifdef __cplusplus 34 extern "C" { 35 #endif 36 37 /***************************************************************************** 38 * 39 * Sash Widget Private Data 40 * 41 *****************************************************************************/ 42 43 /* New fields for the Sash widget class record */ 44 typedef struct { 45 XtPointer extension; /* Pointer to extension record */ 46 } XmSashClassPart; 47 48 /* Full Class record declaration */ 49 typedef struct _XmSashClassRec { 50 CoreClassPart core_class; 51 XmPrimitiveClassPart primitive_class; 52 XmSashClassPart sash_class; 53 } XmSashClassRec; 54 55 typedef struct _XmSashClassRec *XmSashWidgetClass; 56 57 externalref XmSashClassRec xmSashClassRec; 58 59 /* New fields for the Sash widget record */ 60 typedef struct { 61 XtCallbackList sash_action; 62 Boolean has_focus; 63 } XmSashPart; 64 65 /***************************************************************************** 66 * 67 * Full instance record declaration 68 * 69 ****************************************************************************/ 70 71 typedef struct _XmSashRec { 72 CorePart core; 73 XmPrimitivePart primitive; 74 XmSashPart sash; 75 } XmSashRec; 76 77 typedef struct _XmSashRec *XmSashWidget; 78 79 typedef struct { 80 XEvent *event; /* the event causing the SashAction */ 81 String *params; /* the TranslationTable params */ 82 Cardinal num_params; /* count of params */ 83 } SashCallDataRec, *SashCallData; 84 85 /* Class Record Constant */ 86 87 externalref WidgetClass xmSashWidgetClass; 88 89 #ifndef XmIsSash 90 #define XmIsSash(w) XtIsSubclass(w, xmSashWidgetClass) 91 #endif /* XmIsSash */ 92 93 94 /******** Private Function Declarations ********/ 95 96 97 /******** End Private Function Declarations ********/ 98 99 100 #ifdef __cplusplus 101 } /* Close scope of 'extern "C"' declaration which encloses file. */ 102 #endif 103 104 #endif /* _XmSashP_h */ 105 /* DON'T ADD ANYTHING AFTER THIS #endif */ 106