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 librararies and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
23 /* $XConsortium: ControlP.h /main/6 1996/03/25 11:17:48 rswiston $ */
24 /**---------------------------------------------------------------------
28 *** project: MotifPlus Widgets
30 *** description: Private include file for DtControl class.
33 *** (c) Copyright 1992 by Hewlett-Packard Company.
36 ***-------------------------------------------------------------------*/
44 #include <Dt/Control.h>
46 typedef struct _DtControlCacheObjClassPart
49 } DtControlCacheObjClassPart;
52 typedef struct _DtControlCacheObjClassRec /* label cache class record */
54 ObjectClassPart object_class;
55 XmExtClassPart ext_class;
56 DtControlCacheObjClassPart control_class_cache;
57 } DtControlCacheObjClassRec;
59 externalref DtControlCacheObjClassRec dtControlCacheObjClassRec;
62 /* The Control Gadget Cache instance record */
64 typedef struct _DtControlCacheObjPart
67 } DtControlCacheObjPart;
69 typedef struct _DtControlCacheObjRec
73 DtControlCacheObjPart control_cache;
74 } DtControlCacheObjRec;
76 /*-------------------------------------------------------------
82 typedef struct _DtControlClassPart
84 XmCacheClassPartPtr cache_part;
90 typedef struct _DtControlClassRec
92 RectObjClassPart rect_class;
93 XmGadgetClassPart gadget_class;
94 DtIconClassPart icon_class;
95 DtControlClassPart control_class;
100 extern DtControlClassRec dtControlClassRec;
104 /*-------------------------------------------------------------
105 ** Instance Structure
110 typedef struct _DtControlPart
112 XtPointer push_function;
113 XtPointer push_argument;
118 int push_image_position;
120 Pixmap *push_pixmaps;
126 int drop_image_position;
128 Pixmap *drop_pixmaps;
138 Dimension alt_string_width;
139 Dimension alt_string_height;
145 XtIntervalId monitor_timer;
148 Boolean file_changed;
151 Boolean use_embossed_text;
152 Boolean use_label_adj;
154 unsigned char control_type;
159 XtIntervalId click_timer;
166 XtIntervalId blink_timer;
168 XtIntervalId date_timer;
169 XtIntervalId push_animation_timer;
170 XtIntervalId drop_animation_timer;
173 /* Full Instance Record
175 typedef struct _DtControlRec
178 RectObjPart rectangle;
181 DtControlPart control;
185 /*-------------------------------------------------------------
186 ** Class and Instance Macros
189 /* DtControl Class Macros
192 /* DtControl Instance Macros
194 #define G_Format(g) (g -> control.format)
195 #define G_TopShadowGC(g) (g -> control.top_shadow_gc)
196 #define G_BottomShadowGC(g) (g -> control.bottom_shadow_gc)
197 #define G_Busy(g) (g -> control.busy)
198 #define G_PushImagePosition(g) (g -> control.push_image_position)
199 #define G_NumPushImages(g) (g -> control.num_push_images)
200 #define G_MaxPushImages(g) (g -> control.max_push_images)
201 #define G_PushDelays(g) (g -> control.push_delays)
202 #define G_PushPixmaps(g) (g -> control.push_pixmaps)
203 #define G_PushMasks(g) (g -> control.push_masks)
204 #define G_DropImagePosition(g) (g -> control.drop_image_position)
205 #define G_NumDropImages(g) (g -> control.num_drop_images)
206 #define G_MaxDropImages(g) (g -> control.max_drop_images)
207 #define G_DropDelays(g) (g -> control.drop_delays)
208 #define G_DropPixmaps(g) (g -> control.drop_pixmaps)
209 #define G_DropMasks(g) (g -> control.drop_masks)
210 #define G_DropAction(g) (g -> control.drop_action)
211 #define G_PushAction(g) (g -> control.push_action)
212 #define G__DoUpdate(g) (g -> control._do_update)
213 #define G_PushFunction(g) (g -> control.push_function)
214 #define G_PushArgument(g) (g -> control.push_argument)
215 #define G_Subpanel(g) (g -> control.subpanel)
216 #define G_AltMask(g) (g -> control.alt_mask)
217 #define G_AltPix(g) (g -> control.alt_pix)
218 #define G_AltString(g) (g -> control.alt_string)
219 #define G_AltStringWidth(g) (g -> control.alt_string_width)
220 #define G_AltStringHeight(g) (g -> control.alt_string_height)
221 #define G_ControlType(g) (g -> control.control_type)
222 #define G_AltImage(g) (g -> control.alt_image)
223 #define G_FileChanged(g) (g -> control.file_changed)
224 #define G_FileName(g) (g -> control.file_name)
225 #define G_FileSize(g) (g -> control.file_size)
226 #define G_Chime(g) (g -> control.chime)
227 #define G_MonitorTimer(g) (g -> control.monitor_timer)
228 #define G_MonitorTime(g) (g -> control.monitor_time)
229 #define G_ClickTime(g) (g -> control.click_time)
230 #define G_ClickTimer(g) (g -> control.click_timer)
231 #define G_DateTimer(g) (g -> control.date_timer)
232 #define G_PushAnimationTimer(g) (g -> control.push_animation_timer)
233 #define G_DropAnimationTimer(g) (g -> control.drop_animation_timer)
234 #define G_BlinkCount(g) (g -> control.blink_count)
235 #define G_BlinkElapsed(g) (g -> control.blink_elapsed)
236 #define G_MaxBlinkTime(g) (g -> control.max_blink_time)
237 #define G_BlinkTime(g) (g -> control.blink_time)
238 #define G_BlinkTimer(g) (g -> control.blink_timer)
239 #define G_BlinkTime(g) (g -> control.blink_time)
240 #define G_UseEmbossedText(g) (g -> control.use_embossed_text)
241 #define G_UseLabelAdjustment(g) (g -> control.use_label_adj)
244 #endif /* _DtControlP_h */
245 /* DON'T ADD ANYTHING AFTER THIS #endif */