gwenhywfar 5.12.0
gtk2/w_dialog.c
Go to the documentation of this file.
1/***************************************************************************
2 begin : Sun May 16 2010
3 copyright : (C) 2010 by Martin Preuss
4 email : martin@libchipcard.de
5
6 ***************************************************************************
7 * Please see toplevel file COPYING for license details *
8 ***************************************************************************/
9
10
11
12
13
14static GWENHYWFAR_CB
17 GWEN_UNUSED int index,
18 int value,
19 GWEN_UNUSED int doSignal)
20{
21 GtkWindow *g;
22
24 assert(g);
25
26 switch (prop) {
28 gtk_widget_set_sensitive(GTK_WIDGET(g), (value==0)?FALSE:TRUE);
29 return 0;
30
32 gtk_widget_grab_focus(GTK_WIDGET(g));
33 return 0;
34
36 gint width, height;
37
38 gtk_window_get_size(GTK_WINDOW(g), &width, &height);
39 gtk_window_resize(GTK_WINDOW(g), value, height);
40 return 0;
41 }
42
44 gint width, height;
45
46 gtk_window_get_size(GTK_WINDOW(g), &width, &height);
47 gtk_window_resize(GTK_WINDOW(g), width, value);
48 return 0;
49 }
50
51 default:
52 break;
53 }
54
56 "Function is not appropriate for this type of widget (%s)",
58 return GWEN_ERROR_INVALID;
59}
60
61
62
63
64static GWENHYWFAR_CB
67 GWEN_UNUSED int index,
68 int defaultValue)
69{
70 GtkWindow *g;
71
73 assert(g);
74
75 switch (prop) {
77 return (gtk_widget_get_sensitive(GTK_WIDGET(g))==TRUE)?1:0;
78
80 return (gtk_widget_has_focus(GTK_WIDGET(g))==TRUE)?1:0;
81 return 0;
82
84 gint width, height;
85
86 gtk_window_get_size(GTK_WINDOW(g), &width, &height);
87 return width;
88 }
89
91 gint width, height;
92
93 gtk_window_get_size(GTK_WINDOW(g), &width, &height);
94 return height;
95 }
96
97 default:
98 break;
99 }
100
102 "Function is not appropriate for this type of widget (%s)",
104 return defaultValue;
105}
106
107
108
109static GWENHYWFAR_CB
112 GWEN_UNUSED int index,
113 const char *value,
114 GWEN_UNUSED int doSignal)
115{
116 GtkWindow *g;
117
119 assert(g);
120
121 switch (prop) {
123 gtk_window_set_title(GTK_WINDOW(g), value);
124 return 0;
125 default:
126 break;
127 }
128
130 "Function is not appropriate for this type of widget (%s)",
132 return GWEN_ERROR_INVALID;
133}
134
135
136
137static GWENHYWFAR_CB
140 GWEN_UNUSED int index,
141 const char *defaultValue)
142{
143 GtkWindow *g;
144
146 assert(g);
147
148 switch (prop) {
150 return gtk_window_get_title(GTK_WINDOW(g));
151 default:
152 break;
153 }
154
156 "Function is not appropriate for this type of widget (%s)",
158 return defaultValue;
159}
160
161
162
163static GWENHYWFAR_CB
165{
166 GtkWidget *g;
167 GtkWidget *gChild;
168
170 assert(g);
171
172 gChild=GTK_WIDGET(GWEN_Widget_GetImplData(wChild, GTK2_DIALOG_WIDGET_REAL));
173 assert(gChild);
174
175 gtk_container_add(GTK_CONTAINER(g), gChild);
176
177 return 0;
178}
179
180
181
183{
184 GtkWidget *g;
185 const char *s;
186 /*uint32_t flags;*/
187
188 /*flags=GWEN_Widget_GetFlags(w);*/
189 s=GWEN_Widget_GetText(w, 0);
190
191 g=gtk_window_new(GTK_WINDOW_TOPLEVEL);
192 gtk_window_set_modal(GTK_WINDOW(g), TRUE);
193 if (s && *s)
194 gtk_window_set_title(GTK_WINDOW(g), s);
195
198
204
205 return 0;
206}
207
208
#define DBG_WARN(dbg_logger, format,...)
Definition debug.h:125
GWEN_DIALOG_PROPERTY
Definition dialog.h:260
@ GWEN_DialogProperty_Title
Definition dialog.h:263
@ GWEN_DialogProperty_Height
Definition dialog.h:273
@ GWEN_DialogProperty_Enabled
Definition dialog.h:267
@ GWEN_DialogProperty_Focus
Definition dialog.h:276
@ GWEN_DialogProperty_Width
Definition dialog.h:272
#define GWEN_ERROR_INVALID
Definition error.h:67
static GWENHYWFAR_CB const char * Gtk2Gui_WDialog_GetCharProperty(GWEN_WIDGET *w, GWEN_DIALOG_PROPERTY prop, GWEN_UNUSED int index, const char *defaultValue)
static GWENHYWFAR_CB int Gtk2Gui_WDialog_GetIntProperty(GWEN_WIDGET *w, GWEN_DIALOG_PROPERTY prop, GWEN_UNUSED int index, int defaultValue)
static GWENHYWFAR_CB int Gtk2Gui_WDialog_AddChildGuiWidget(GWEN_WIDGET *w, GWEN_WIDGET *wChild)
static GWENHYWFAR_CB int Gtk2Gui_WDialog_SetCharProperty(GWEN_WIDGET *w, GWEN_DIALOG_PROPERTY prop, GWEN_UNUSED int index, const char *value, GWEN_UNUSED int doSignal)
static GWENHYWFAR_CB int Gtk2Gui_WDialog_SetIntProperty(GWEN_WIDGET *w, GWEN_DIALOG_PROPERTY prop, GWEN_UNUSED int index, int value, GWEN_UNUSED int doSignal)
int Gtk2Gui_WDialog_Setup(GWEN_WIDGET *w)
#define GTK2_DIALOG_WIDGET_REAL
#define GTK2_DIALOG_WIDGET_CONTENT
#define GWEN_UNUSED
#define GWENHYWFAR_CB
#define GWEN_LOGDOMAIN
Definition logger.h:35
GWEN_WIDGET_GETCHARPROPERTY_FN GWEN_Widget_SetGetCharPropertyFn(GWEN_WIDGET *w, GWEN_WIDGET_GETCHARPROPERTY_FN fn)
Definition widget.c:732
GWEN_WIDGET_GETINTPROPERTY_FN GWEN_Widget_SetGetIntPropertyFn(GWEN_WIDGET *w, GWEN_WIDGET_GETINTPROPERTY_FN fn)
Definition widget.c:702
GWEN_WIDGET_ADDCHILDGUIWIDGET_FN GWEN_Widget_SetAddChildGuiWidgetFn(GWEN_WIDGET *w, GWEN_WIDGET_ADDCHILDGUIWIDGET_FN fn)
Definition widget.c:747
void GWEN_Widget_SetImplData(GWEN_WIDGET *w, int index, void *ptr)
Store a pointer with the widget.
Definition widget.c:136
void * GWEN_Widget_GetImplData(const GWEN_WIDGET *w, int index)
Definition widget.c:122
GWEN_WIDGET_SETINTPROPERTY_FN GWEN_Widget_SetSetIntPropertyFn(GWEN_WIDGET *w, GWEN_WIDGET_SETINTPROPERTY_FN fn)
Definition widget.c:687
const char * GWEN_Widget_GetText(const GWEN_WIDGET *w, int idx)
Definition widget.c:293
const char * GWEN_Widget_Type_toString(GWEN_WIDGET_TYPE t)
Definition widget.c:452
GWEN_WIDGET_TYPE GWEN_Widget_GetType(const GWEN_WIDGET *w)
Definition widget.c:185
GWEN_WIDGET_SETCHARPROPERTY_FN GWEN_Widget_SetSetCharPropertyFn(GWEN_WIDGET *w, GWEN_WIDGET_SETCHARPROPERTY_FN fn)
Definition widget.c:717
struct GWEN_WIDGET GWEN_WIDGET
Definition widget_be.h:34