2 * CDE - Common Desktop Environment
4 * Copyright (c) 1993-2012, The Open Group. All rights reserved.
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)
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
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with these libraries and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
23 /******************************************************************************
24 *******************************************************************************
26 * (c) Copyright 1992 HEWLETT-PACKARD COMPANY
29 *******************************************************************************
30 ******************************************************************************/
36 #include <Xm/GadgetP.h>
37 #include <Xm/ManagerP.h>
39 #if defined(__cplusplus) || defined(c_plusplus)
43 /* Arrow class structure */
45 typedef struct _DtButtonGadgetClassPart
48 } DtButtonGadgetClassPart;
51 /* Full class record declaration for Arrow class */
53 typedef struct _DtButtonGadgetClassRec
55 RectObjClassPart rect_class;
56 XmGadgetClassPart gadget_class;
57 DtButtonGadgetClassPart button_class;
58 } DtButtonGadgetClassRec;
60 externalref DtButtonGadgetClassRec dtButtonGadgetClassRec;
63 /* The button instance record */
65 typedef struct _DtButtonGadgetPart
67 XtCallbackList callback;
77 unsigned char multiClick; /* KEEP/DISCARD resource */
80 Time activateTimeStamp;
83 XtPointer push_function;
84 XtPointer push_argument;
89 Dimension pixmap_width;
90 Dimension pixmap_height;
97 /* Full instance record declaration */
99 typedef struct _DtButtonGadgetRec
102 RectObjPart rectangle;
104 DtButtonGadgetPart button;
107 #define B_Expose(w,e,r) \
108 (w -> core.widget_class->core_class.expose)(w,e,r)
109 #define B_ArmColor(w) (w -> button.arm_color)
110 #define B_CursorFont(w) (w -> button.cursor_font)
111 #define B_Armed(w) (w -> button.armed)
112 #define B_PushFunction(w) (w -> button.push_function)
113 #define B_PushArgument(w) (w -> button.push_argument)
114 #define B_Subpanel(w) (w -> button.subpanel)
115 #define B_Callback(w) (w -> button.callback)
116 #define B_PixmapWidth(w) (w -> button.pixmap_width)
117 #define B_PixmapHeight(w) (w -> button.pixmap_height)
118 #define B_ImageName(w) (w -> button.image_name)
119 #define B_Mask(w) (w -> button.mask)
120 #define B_Pixmap(w) (w -> button.pixmap)
121 #define M_TopShadowColor(w) (w -> manager.top_shadow_color)
122 #define M_BottomShadowColor(w) (w -> manager.bottom_shadow_color)
124 #if defined(__cplusplus) || defined(c_plusplus)
125 } /* Close scope of 'extern "C"' declaration which encloses file. */
128 #endif /* _DtButtonP_h */
129 /* DON'T ADD ANYTHING AFTER THIS #endif */