00001 /* 00002 * $XConsortium: SmeBSBP.h,v 1.8 94/04/17 21:44:11 rws Exp $ 00003 * 00004 Copyright (c) 1989, 1994 X Consortium 00005 00006 Permission is hereby granted, free of charge, to any person obtaining a copy 00007 of this software and associated documentation files (the "Software"), to deal 00008 in the Software without restriction, including without limitation the rights 00009 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 00010 copies of the Software, and to permit persons to whom the Software is 00011 furnished to do so, subject to the following conditions: 00012 00013 The above copyright notice and this permission notice shall be included in 00014 all copies or substantial portions of the Software. 00015 00016 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00017 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00018 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 00019 X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 00020 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 00021 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 00022 00023 Except as contained in this notice, the name of the X Consortium shall not be 00024 used in advertising or otherwise to promote the sale, use or other dealings 00025 in this Software without prior written authorization from the X Consortium. 00026 * 00027 * Author: Chris D. Peterson, MIT X Consortium 00028 */ 00029 00030 /* 00031 * SmeP.h - Private definitions for Sme object 00032 * 00033 */ 00034 00035 #ifndef _XawSmeBSBP_h 00036 #define _XawSmeBSBP_h 00037 00038 /*********************************************************************** 00039 * 00040 * Sme Object Private Data 00041 * 00042 ***********************************************************************/ 00043 00044 #include <X11/Xaw3d/SmeThreeDP.h> 00045 #include <X11/Xaw3d/SmeBSB.h> 00046 00047 /************************************************************ 00048 * 00049 * New fields for the Sme Object class record. 00050 * 00051 ************************************************************/ 00052 00053 typedef struct _SmeBSBClassPart { 00054 XtPointer extension; 00055 } SmeBSBClassPart; 00056 00057 /* Full class record declaration */ 00058 typedef struct _SmeBSBClassRec { 00059 RectObjClassPart rect_class; 00060 SmeClassPart sme_class; 00061 SmeThreeDClassPart sme_threeD_class; 00062 SmeBSBClassPart sme_bsb_class; 00063 } SmeBSBClassRec; 00064 00065 extern SmeBSBClassRec smeBSBClassRec; 00066 00067 /* New fields for the Sme Object record */ 00068 typedef struct { 00069 /* resources */ 00070 String label; /* The entry label. */ 00071 int vert_space; /* extra vert space to leave, as a percentage 00072 of the font height of the label. */ 00073 Pixmap left_bitmap, right_bitmap; /* bitmaps to show. */ 00074 Dimension left_margin, right_margin; /* left and right margins. */ 00075 Pixel foreground; /* foreground color. */ 00076 XFontStruct * font; /* The font to show label in. */ 00077 XFontSet fontset; /* or fontset */ 00078 XtJustify justify; /* Justification for the label. */ 00079 00080 /* private resources. */ 00081 00082 Boolean set_values_area_cleared; /* Remember if we need to unhighlight. */ 00083 GC norm_gc; /* noral color gc. */ 00084 GC rev_gc; /* reverse color gc. */ 00085 GC norm_gray_gc; /* Normal color (grayed out) gc. */ 00086 GC invert_gc; /* gc for flipping colors. */ 00087 00088 Dimension left_bitmap_width; /* size of each bitmap. */ 00089 Dimension left_bitmap_height; 00090 Dimension right_bitmap_width; 00091 Dimension right_bitmap_height; 00092 00093 } SmeBSBPart; 00094 00095 /**************************************************************** 00096 * 00097 * Full instance record declaration 00098 * 00099 ****************************************************************/ 00100 00101 typedef struct _SmeBSBRec { 00102 ObjectPart object; 00103 RectObjPart rectangle; 00104 SmePart sme; 00105 SmeThreeDPart sme_threeD; 00106 SmeBSBPart sme_bsb; 00107 } SmeBSBRec; 00108 00109 /************************************************************ 00110 * 00111 * Private declarations. 00112 * 00113 ************************************************************/ 00114 00115 #endif /* _XawSmeBSBP_h */
1.5.1