Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:15:25

0001 /* 
0002  * Motif
0003  *
0004  * Copyright (c) 1987-2012, The Open Group. All rights reserved.
0005  *
0006  * These libraries and programs are free software; you can
0007  * redistribute them and/or modify them under the terms of the GNU
0008  * Lesser General Public License as published by the Free Software
0009  * Foundation; either version 2 of the License, or (at your option)
0010  * any later version.
0011  *
0012  * These libraries and programs are distributed in the hope that
0013  * they will be useful, but WITHOUT ANY WARRANTY; without even the
0014  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
0015  * PURPOSE. See the GNU Lesser General Public License for more
0016  * details.
0017  *
0018  * You should have received a copy of the GNU Lesser General Public
0019  * License along with these librararies and programs; if not, write
0020  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
0021  * Floor, Boston, MA 02110-1301 USA
0022  */ 
0023 #ifndef _XmExtObjectP_h
0024 #define _XmExtObjectP_h
0025 
0026 #include <Xm/XmP.h>
0027 
0028 #ifdef __cplusplus
0029 extern "C" {
0030 #endif
0031 
0032 enum {
0033   XmCACHE_EXTENSION = 1,        XmDESKTOP_EXTENSION,
0034   XmSHELL_EXTENSION,            XmPROTOCOL_EXTENSION,
0035   XmDEFAULT_EXTENSION
0036 };
0037 
0038 #ifndef XmIsExtObject
0039 #define XmIsExtObject(w)    XtIsSubclass(w, xmExtObjectClass)
0040 #endif /* XmIsExtObject */
0041 
0042 #define XmLOGICAL_PARENT_RESOURCE   (0x80 << sizeof(Cardinal))
0043 
0044 /* Class record constants */
0045 
0046 typedef struct _XmExtRec *XmExtObject;
0047 typedef struct _XmExtClassRec *XmExtObjectClass;
0048 
0049 externalref WidgetClass xmExtObjectClass;
0050 
0051 /* Class Extension definitions */
0052 
0053 typedef struct _XmExtClassPart {
0054   XmSyntheticResource *syn_resources;   
0055   int              num_syn_resources;   
0056   XtPointer        extension;
0057 } XmExtClassPart, *XmExtClassPartPtr;
0058 
0059 typedef struct _XmExtClassRec {
0060   ObjectClassPart object_class;
0061   XmExtClassPart  ext_class;
0062 } XmExtClassRec;
0063 
0064 typedef struct {
0065   Widget    logicalParent;
0066   unsigned char extensionType;
0067 } XmExtPart, *XmExtPartPtr;
0068 
0069 externalref XmExtClassRec xmExtClassRec;
0070 
0071 typedef struct _XmExtRec {
0072   ObjectPart object;
0073   XmExtPart  ext;
0074 } XmExtRec;
0075 
0076 
0077 #ifdef __cplusplus
0078 }  /* Close scope of 'extern "C"' declaration which encloses file. */
0079 #endif
0080 
0081 #endif  /* _XmExtObjectP_h */