1 /* vi:set ts=8 sts=4 sw=4 noet:
2  *
3  * VIM - Vi IMproved	by Bram Moolenaar
4  *
5  * Do ":help uganda"  in Vim to read copying and usage conditions.
6  * Do ":help credits" in Vim to see a list of people who contributed.
7  * See README.txt for an overview of the Vim source code.
8  */
9 /*
10  *
11  * (C) 2002,2005 by Marcin Dalecki <martin@dalecki.de>
12  *
13  * MARCIN DALECKI ASSUMES NO RESPONSIBILITY FOR THE USE OR INABILITY TO USE ANY
14  * OF THIS SOFTWARE . THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
15  * KIND, AND MARCIN DALECKI EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES,
16  * INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
17  * FITNESS FOR A PARTICULAR PURPOSE.
18  */
19 
20 #ifndef EnhancedBP_H
21 #define EnhancedBP_H
22 
23 #include <Xm/PushBP.h>
24 
25 #include "gui_xmebw.h"
26 
27 
28 /*
29  * EnhancedButton class structure.
30  */
31 typedef struct _XmEnhancedButtonClassPart
32 {
33     Pixmap stipple_bitmap;
34 } XmEnhancedButtonClassPart;
35 
36 /*
37  * Full class record declaration for EnhancedButton class.
38  */
39 typedef struct
40 {
41     CoreClassPart core_class;
42     XmPrimitiveClassPart primitive_class;
43     XmLabelClassPart label_class;
44     XmPushButtonClassPart pushbutton_class;
45     XmEnhancedButtonClassPart enhancedbutton_class;
46 } XmEnhancedButtonClassRec;
47 
48 
49 extern XmEnhancedButtonClassRec xmEnhancedButtonClassRec;
50 
51 /*
52  * EnhancedButton instance record.
53  */
54 typedef struct _XmEnhancedButtonPart
55 {
56     // public resources
57     String pixmap_data;
58     String pixmap_file;
59     Dimension spacing;
60     int label_location;
61 
62     // private resources
63     int pixmap_depth;
64     Dimension pixmap_width;
65     Dimension pixmap_height;
66     Pixmap normal_pixmap;
67     Pixmap armed_pixmap;
68     Pixmap insensitive_pixmap;
69     Pixmap highlight_pixmap;
70 
71     int doing_setvalues;
72     int doing_destroy;
73 } XmEnhancedButtonPart;
74 
75 
76 /*
77  * Full instance record declaration.
78  */
79 typedef struct _XmEnhancedButtonRec
80 {
81     CorePart core;
82     XmPrimitivePart primitive;
83     XmLabelPart label;
84     XmPushButtonPart pushbutton;
85     XmEnhancedButtonPart enhancedbutton;
86 } XmEnhancedButtonRec;
87 
88 #endif
89