1 /* $XConsortium: TabBP.h /main/4 1995/07/15 20:42:11 drk $ */ 2 /* 3 * Motif 4 * 5 * Copyright (c) 1987-2012, The Open Group. All rights reserved. 6 * 7 * These libraries and programs are free software; you can 8 * redistribute them and/or modify them under the terms of the GNU 9 * Lesser General Public License as published by the Free Software 10 * Foundation; either version 2 of the License, or (at your option) 11 * any later version. 12 * 13 * These libraries and programs are distributed in the hope that 14 * they will be useful, but WITHOUT ANY WARRANTY; without even the 15 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 16 * PURPOSE. See the GNU Lesser General Public License for more 17 * details. 18 * 19 * You should have received a copy of the GNU Lesser General Public 20 * License along with these librararies and programs; if not, write 21 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth 22 * Floor, Boston, MA 02110-1301 USA 23 */ 24 /* 25 * HISTORY 26 */ 27 28 /******************************************************************************* 29 * 30 * TabBP.h: The widget private header file for the ExmTabButton demonstration 31 * widget. 32 * 33 ******************************************************************************/ 34 35 /* Ensure that the file be included only once. */ 36 #ifndef _ExmTabBP_h 37 #define _ExmTabBP_h 38 39 /* Include appropriate files. */ 40 #include <Exm/TabB.h> /* public header file for ExmTabButton */ 41 #include <Exm/CommandBP.h> /* private header file for ExmCommandButton */ 42 43 /* Allow for C++ compilation. */ 44 #ifdef __cplusplus 45 extern "C" { 46 #endif 47 48 /* This widget does not provide any inheritable methods. */ 49 50 51 /* Define the widget class part. */ 52 typedef struct _ExmTabButtonClassPart 53 { 54 XtPointer extension; 55 } ExmTabButtonClassPart; 56 57 58 /* Define the full class record. */ 59 typedef struct _ExmTabButtonClassRec 60 { 61 CoreClassPart core_class; 62 XmPrimitiveClassPart primitive_class; 63 ExmSimpleClassPart simple_class; 64 ExmStringClassPart string_class; 65 ExmCommandButtonClassPart command_button_class; 66 ExmTabButtonClassPart tab_button_class; 67 } ExmTabButtonClassRec; 68 69 /* Define the subclassing level index to be used with ResolvePartOffset */ 70 #define ExmTabButtonIndex (ExmCommandButtonIndex + 1) 71 72 /* Make the full class record externally accessible. */ 73 externalref ExmTabButtonClassRec exmTabButtonClassRec; 74 75 76 /* Define the widget instance part. */ 77 typedef struct _ExmTabButtonPart 78 { 79 /* Provide space for the one resource of ExmTabButton. */ 80 XtEnum open_side; 81 /* Provide space for the size of the join shadow_thickness */ 82 Dimension join_shadow_thickness; 83 } ExmTabButtonPart; 84 85 86 /* Define the full instance record. */ 87 typedef struct _ExmTabButtonRec 88 { 89 CorePart core; 90 XmPrimitivePart primitive; 91 ExmSimplePart simple; 92 ExmStringPart string; 93 ExmCommandButtonPart command_button; 94 ExmTabButtonPart tab_button; 95 } ExmTabButtonRec; 96 97 /* Allow for C++ compilation. */ 98 #ifdef __cplusplus 99 } /* Close scope of 'extern "C"' declaration which encloses file. */ 100 #endif 101 102 103 /* Ensure that the file be included only once. */ 104 #endif /* _ExmTabBP_h */ 105 /* DON'T ADD ANYTHING AFTER THIS #endif */ 106