5626
|
1 #ifndef LWLIB_INTERNAL_H
|
|
2 #define LWLIB_INTERNAL_H
|
|
3
|
|
4 #include "lwlib.h"
|
|
5
|
|
6 /*
|
|
7 extern char *strdup (const char *);
|
|
8 extern int strcasecmp (const char *, const char *);
|
|
9 */
|
|
10
|
|
11 typedef struct _widget_instance
|
|
12 {
|
|
13 Widget widget;
|
|
14 Widget parent;
|
|
15 Boolean pop_up_p;
|
|
16 struct _widget_info* info;
|
|
17 struct _widget_instance* next;
|
|
18 } widget_instance;
|
|
19
|
|
20 typedef struct _widget_info
|
|
21 {
|
|
22 char* type;
|
|
23 char* name;
|
|
24 LWLIB_ID id;
|
|
25 widget_value* val;
|
|
26 Boolean busy;
|
|
27 lw_callback pre_activate_cb;
|
|
28 lw_callback selection_cb;
|
|
29 lw_callback post_activate_cb;
|
|
30 struct _widget_instance* instances;
|
|
31 struct _widget_info* next;
|
|
32 } widget_info;
|
|
33
|
|
34 typedef Widget
|
|
35 (*widget_creation_function) (widget_instance* instance);
|
|
36
|
|
37 typedef struct _widget_creation_entry
|
|
38 {
|
|
39 char* type;
|
|
40 widget_creation_function function;
|
|
41 } widget_creation_entry;
|
|
42
|
|
43 /* update all other instances of a widget. Can be used in a callback when
|
|
44 a wiget has been used by the user */
|
|
45 void
|
|
46 lw_internal_update_other_instances (Widget widget, XtPointer closure,
|
|
47 XtPointer call_data);
|
|
48
|
|
49 /* get the widget_value for a widget in a given instance */
|
|
50 widget_value*
|
|
51 lw_get_widget_value_for_widget (widget_instance* instance, Widget w);
|
|
52
|
|
53 #endif /* LWLIB_INTERNAL_H */
|
|
54
|