| /* | |
| * $XConsortium: SmeMenuButtP.h,v 1.6 89/12/11 15:20:15 kit Exp $ | |
| * | |
| * Copyright 1989 Massachusetts Institute of Technology | |
| * | |
| * Permission to use, copy, modify, distribute, and sell this software and its | |
| * documentation for any purpose is hereby granted without fee, provided that | |
| * the above copyright notice appear in all copies and that both that | |
| * copyright notice and this permission notice appear in supporting | |
| * documentation, and that the name of M.I.T. not be used in advertising or | |
| * publicity pertaining to distribution of the software without specific, | |
| * written prior permission. M.I.T. makes no representations about the | |
| * suitability of this software for any purpose. It is provided "as is" | |
| * without express or implied warranty. | |
| * | |
| * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL | |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T. | |
| * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
| * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION | |
| * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN | |
| * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
| * | |
| * Author: Chris D. Peterson, MIT X Consortium | |
| * | |
| * Modifications for Wine | |
| * | |
| * 8/23/93 David Metcalfe (david@prism.demon.co.uk) | |
| * Added code to translate ampersand to underlined char | |
| */ | |
| /* | |
| * SmeP.h - Private definitions for Sme object | |
| * | |
| */ | |
| #ifndef _XawSmeMenuButtP_h | |
| #define _XawSmeMenuButtP_h | |
| /*********************************************************************** | |
| * | |
| * Sme Object Private Data | |
| * | |
| ***********************************************************************/ | |
| #include <X11/Xaw/SmeP.h> | |
| #include "SmeMenuButto.h" | |
| /************************************************************ | |
| * | |
| * New fields for the Sme Object class record. | |
| * | |
| ************************************************************/ | |
| typedef struct _SmeMenuButtonClassPart { | |
| XtPointer extension; | |
| } SmeMenuButtonClassPart; | |
| /* Full class record declaration */ | |
| typedef struct _SmeMenuButtonClassRec { | |
| RectObjClassPart rect_class; | |
| SmeClassPart sme_class; | |
| SmeMenuButtonClassPart sme_bsb_class; | |
| } SmeMenuButtonClassRec; | |
| extern SmeMenuButtonClassRec smeMenuButtonClassRec; | |
| /* New fields for the Sme Object record */ | |
| typedef struct { | |
| /* resources */ | |
| String label; /* The entry label. */ | |
| int vert_space; /* extra vert space to leave, as a percentage | |
| of the font height of the label. */ | |
| Pixmap left_bitmap, right_bitmap; /* bitmaps to show. */ | |
| Dimension left_margin, right_margin; /* left and right margins. */ | |
| Pixel foreground; /* foreground color. */ | |
| XFontStruct * font; /* The font to show label in. */ | |
| XtJustify justify; /* Justification for the label. */ | |
| String menu_name; /* Menu to activate */ | |
| Boolean inactive; /* True if can't be selected */ | |
| /* private resources. */ | |
| Boolean set_values_area_cleared; /* Remember if we need to unhighlight. */ | |
| GC norm_gc; /* noral color gc. */ | |
| GC rev_gc; /* reverse color gc. */ | |
| GC norm_gray_gc; /* Normal color (grayed out) gc. */ | |
| GC invert_gc; /* gc for flipping colors. */ | |
| Dimension left_bitmap_width; /* size of each bitmap. */ | |
| Dimension left_bitmap_height; | |
| Dimension right_bitmap_width; | |
| Dimension right_bitmap_height; | |
| int ul_pos; /* Offset in chars of underlined character */ | |
| /* in label */ | |
| } SmeMenuButtonPart; | |
| /**************************************************************** | |
| * | |
| * Full instance record declaration | |
| * | |
| ****************************************************************/ | |
| typedef struct _SmeMenuButtonRec { | |
| ObjectPart object; | |
| RectObjPart rectangle; | |
| SmePart sme; | |
| SmeMenuButtonPart sme_bsb; | |
| } SmeMenuButtonRec; | |
| /************************************************************ | |
| * | |
| * Private declarations. | |
| * | |
| ************************************************************/ | |
| #endif /* _XawSmeMenuButtP_h */ |