File: | testsuite/ctk/builder.c |
Warning: | line 2035, column 3 Value stored to 'label' is never read |
Press '?' to see keyboard shortcuts
Keyboard shortcuts:
1 | /* buildertest.c |
2 | * Copyright (C) 2006-2007 Async Open Source |
3 | * Authors: Johan Dahlin |
4 | * Henrique Romano |
5 | * |
6 | * This library is free software; you can redistribute it and/or |
7 | * modify it under the terms of the GNU Library General Public |
8 | * License as published by the Free Software Foundation; either |
9 | * version 2 of the License, or (at your option) any later version. |
10 | * |
11 | * This library is distributed in the hope that it will be useful, |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 | * Library General Public License for more details. |
15 | * |
16 | * You should have received a copy of the GNU Library General Public |
17 | * License along with this library. If not, see <http://www.gnu.org/licenses/>. |
18 | */ |
19 | |
20 | #include <string.h> |
21 | #include <libintl.h> |
22 | #include <locale.h> |
23 | #include <math.h> |
24 | |
25 | #include <ctk/ctk.h> |
26 | #include <cdk/cdkkeysyms.h> |
27 | |
28 | /* exported for CtkBuilder */ |
29 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_normal (CtkWindow *window, GParamSpec *spec); |
30 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_after (CtkWindow *window, GParamSpec *spec); |
31 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_object (CtkButton *button, GParamSpec *spec); |
32 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_object_after (CtkButton *button, GParamSpec *spec); |
33 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_first (CtkButton *button, GParamSpec *spec); |
34 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_second (CtkButton *button, GParamSpec *spec); |
35 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_extra (CtkButton *button, GParamSpec *spec); |
36 | G_MODULE_EXPORT__attribute__((visibility("default"))) void signal_extra2 (CtkButton *button, GParamSpec *spec); |
37 | |
38 | /* Copied from ctkiconfactory.c; keep in sync! */ |
39 | struct _CtkIconSet |
40 | { |
41 | guint ref_count; |
42 | GSList *sources; |
43 | GSList *cache; |
44 | guint cache_size; |
45 | guint cache_serial; |
46 | }; |
47 | |
48 | |
49 | static CtkBuilder * |
50 | builder_new_from_string (const gchar *buffer, |
51 | gsize length, |
52 | const gchar *domain) |
53 | { |
54 | CtkBuilder *builder; |
55 | GError *error = NULL((void*)0); |
56 | |
57 | builder = ctk_builder_new (); |
58 | if (domain) |
59 | ctk_builder_set_translation_domain (builder, domain); |
60 | ctk_builder_add_from_string (builder, buffer, length, &error); |
61 | if (error) |
62 | { |
63 | g_print ("ERROR: %s", error->message); |
64 | g_error_free (error); |
65 | } |
66 | |
67 | return builder; |
68 | } |
69 | |
70 | static void |
71 | test_parser (void) |
72 | { |
73 | CtkBuilder *builder; |
74 | GError *error; |
75 | |
76 | builder = ctk_builder_new (); |
77 | |
78 | error = NULL((void*)0); |
79 | ctk_builder_add_from_string (builder, "<xxx/>", -1, &error); |
80 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_UNHANDLED_TAG)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_UNHANDLED_TAG) g_assertion_message_error (((gchar*) 0), "builder.c", 80, ((const char*) (__func__)), "error" , error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_UNHANDLED_TAG ); } while (0); |
81 | g_error_free (error); |
82 | |
83 | error = NULL((void*)0); |
84 | ctk_builder_add_from_string (builder, "<interface invalid=\"X\"/>", -1, &error); |
85 | g_assert_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE)do { if (!error || (error)->domain != g_markup_error_quark () || (error)->code != G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE) g_assertion_message_error (((gchar*) 0), "builder.c", 85, ((const char*) (__func__)), "error" , error, g_markup_error_quark (), G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE ); } while (0); |
86 | g_error_free (error); |
87 | |
88 | error = NULL((void*)0); |
89 | ctk_builder_add_from_string (builder, "<interface><child/></interface>", -1, &error); |
90 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_TAG)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_TAG) g_assertion_message_error (((gchar*) 0), "builder.c", 90, ((const char*) (__func__)), "error" , error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_TAG ); } while (0); |
91 | g_error_free (error); |
92 | |
93 | error = NULL((void*)0); |
94 | ctk_builder_add_from_string (builder, "<interface><object class=\"CtkVBox\" id=\"a\"><object class=\"CtkHBox\" id=\"b\"/></object></interface>", -1, &error); |
95 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_TAG)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_TAG) g_assertion_message_error (((gchar*) 0), "builder.c", 95, ((const char*) (__func__)), "error" , error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_TAG ); } while (0); |
96 | g_error_free (error); |
97 | |
98 | error = NULL((void*)0); |
99 | ctk_builder_add_from_string (builder, "<interface><object class=\"Unknown\" id=\"a\"></object></interface>", -1, &error); |
100 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 100, ((const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
101 | g_error_free (error); |
102 | |
103 | error = NULL((void*)0); |
104 | ctk_builder_add_from_string (builder, "<interface><object class=\"CtkWidget\" id=\"a\" constructor=\"none\"></object></interface>", -1, &error); |
105 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 105, ((const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
106 | g_error_free (error); |
107 | |
108 | error = NULL((void*)0); |
109 | ctk_builder_add_from_string (builder, "<interface><object class=\"CtkButton\" id=\"a\"><child internal-child=\"foobar\"><object class=\"CtkButton\" id=\"int\"/></child></object></interface>", -1, &error); |
110 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 110, ((const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
111 | g_error_free (error); |
112 | |
113 | error = NULL((void*)0); |
114 | ctk_builder_add_from_string (builder, "<interface><object class=\"CtkButton\" id=\"a\"></object><object class=\"CtkButton\" id=\"a\"/></object></interface>", -1, &error); |
115 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_DUPLICATE_ID)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_DUPLICATE_ID) g_assertion_message_error (((gchar*) 0), "builder.c", 115, ((const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_DUPLICATE_ID ); } while (0); |
116 | g_error_free (error); |
117 | |
118 | error = NULL((void*)0); |
119 | ctk_builder_add_from_string (builder, "<interface><object class=\"CtkButton\" id=\"a\"><property name=\"deafbeef\"></property></object></interface>", -1, &error); |
120 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_PROPERTY)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_PROPERTY ) g_assertion_message_error (((gchar*) 0), "builder.c", 120, ( (const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_PROPERTY); } while (0); |
121 | g_error_free (error); |
122 | |
123 | error = NULL((void*)0); |
124 | ctk_builder_add_from_string (builder, "<interface><object class=\"CtkButton\" id=\"a\"><signal name=\"deafbeef\" handler=\"ctk_true\"/></object></interface>", -1, &error); |
125 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_SIGNAL)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_SIGNAL) g_assertion_message_error (((gchar*) 0), "builder.c", 125, ( (const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_SIGNAL); } while (0); |
126 | g_error_free (error); |
127 | |
128 | g_object_unref (builder); |
129 | } |
130 | |
131 | static int normal = 0; |
132 | static int after = 0; |
133 | static int object = 0; |
134 | static int object_after = 0; |
135 | |
136 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
137 | signal_normal (CtkWindow *window, GParamSpec *spec) |
138 | { |
139 | g_assert (CTK_IS_WINDOW (window))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 139, (( const char*) (__func__)), "CTK_IS_WINDOW (window)"); } while ( 0); |
140 | g_assert (normal == 0)do { if (normal == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 140, ((const char*) (__func__)), "normal == 0" ); } while (0); |
141 | g_assert (after == 0)do { if (after == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 141, ((const char*) (__func__)), "after == 0" ); } while (0); |
142 | |
143 | normal++; |
144 | } |
145 | |
146 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
147 | signal_after (CtkWindow *window, GParamSpec *spec) |
148 | { |
149 | g_assert (CTK_IS_WINDOW (window))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 149, (( const char*) (__func__)), "CTK_IS_WINDOW (window)"); } while ( 0); |
150 | g_assert (normal == 1)do { if (normal == 1) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 150, ((const char*) (__func__)), "normal == 1" ); } while (0); |
151 | g_assert (after == 0)do { if (after == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 151, ((const char*) (__func__)), "after == 0" ); } while (0); |
152 | |
153 | after++; |
154 | } |
155 | |
156 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
157 | signal_object (CtkButton *button, GParamSpec *spec) |
158 | { |
159 | g_assert (CTK_IS_BUTTON (button))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((button)); GType __t = ((ctk_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 159, (( const char*) (__func__)), "CTK_IS_BUTTON (button)"); } while ( 0); |
160 | g_assert (object == 0)do { if (object == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 160, ((const char*) (__func__)), "object == 0" ); } while (0); |
161 | g_assert (object_after == 0)do { if (object_after == 0) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 161, ((const char*) (__func__)), "object_after == 0" ); } while (0); |
162 | |
163 | object++; |
164 | } |
165 | |
166 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
167 | signal_object_after (CtkButton *button, GParamSpec *spec) |
168 | { |
169 | g_assert (CTK_IS_BUTTON (button))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((button)); GType __t = ((ctk_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 169, (( const char*) (__func__)), "CTK_IS_BUTTON (button)"); } while ( 0); |
170 | g_assert (object == 1)do { if (object == 1) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 170, ((const char*) (__func__)), "object == 1" ); } while (0); |
171 | g_assert (object_after == 0)do { if (object_after == 0) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 171, ((const char*) (__func__)), "object_after == 0" ); } while (0); |
172 | |
173 | object_after++; |
174 | } |
175 | |
176 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
177 | signal_first (CtkButton *button, GParamSpec *spec) |
178 | { |
179 | g_assert (normal == 0)do { if (normal == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 179, ((const char*) (__func__)), "normal == 0" ); } while (0); |
180 | normal = 10; |
181 | } |
182 | |
183 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
184 | signal_second (CtkButton *button, GParamSpec *spec) |
185 | { |
186 | g_assert (normal == 10)do { if (normal == 10) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 186, ((const char*) (__func__)), "normal == 10" ); } while (0); |
187 | normal = 20; |
188 | } |
189 | |
190 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
191 | signal_extra (CtkButton *button, GParamSpec *spec) |
192 | { |
193 | g_assert (normal == 20)do { if (normal == 20) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 193, ((const char*) (__func__)), "normal == 20" ); } while (0); |
194 | normal = 30; |
195 | } |
196 | |
197 | G_MODULE_EXPORT__attribute__((visibility("default"))) void /* exported for CtkBuilder */ |
198 | signal_extra2 (CtkButton *button, GParamSpec *spec) |
199 | { |
200 | g_assert (normal == 30)do { if (normal == 30) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 200, ((const char*) (__func__)), "normal == 30" ); } while (0); |
201 | normal = 40; |
202 | } |
203 | |
204 | static void |
205 | test_connect_signals (void) |
206 | { |
207 | CtkBuilder *builder; |
208 | GObject *window; |
209 | const gchar buffer[] = |
210 | "<interface>" |
211 | " <object class=\"CtkButton\" id=\"button\"/>" |
212 | " <object class=\"CtkWindow\" id=\"window1\">" |
213 | " <signal name=\"notify::title\" handler=\"signal_normal\"/>" |
214 | " <signal name=\"notify::title\" handler=\"signal_after\" after=\"yes\"/>" |
215 | " <signal name=\"notify::title\" handler=\"signal_object\"" |
216 | " object=\"button\"/>" |
217 | " <signal name=\"notify::title\" handler=\"signal_object_after\"" |
218 | " object=\"button\" after=\"yes\"/>" |
219 | " </object>" |
220 | "</interface>"; |
221 | const gchar buffer_order[] = |
222 | "<interface>" |
223 | " <object class=\"CtkWindow\" id=\"window1\">" |
224 | " <signal name=\"notify::title\" handler=\"signal_first\"/>" |
225 | " <signal name=\"notify::title\" handler=\"signal_second\"/>" |
226 | " </object>" |
227 | "</interface>"; |
228 | const gchar buffer_extra[] = |
229 | "<interface>" |
230 | " <object class=\"CtkWindow\" id=\"window2\">" |
231 | " <signal name=\"notify::title\" handler=\"signal_extra\"/>" |
232 | " </object>" |
233 | "</interface>"; |
234 | const gchar buffer_extra2[] = |
235 | "<interface>" |
236 | " <object class=\"CtkWindow\" id=\"window3\">" |
237 | " <signal name=\"notify::title\" handler=\"signal_extra2\"/>" |
238 | " </object>" |
239 | "</interface>"; |
240 | const gchar buffer_after_child[] = |
241 | "<interface>" |
242 | " <object class=\"CtkWindow\" id=\"window1\">" |
243 | " <child>" |
244 | " <object class=\"CtkButton\" id=\"button1\"/>" |
245 | " </child>" |
246 | " <signal name=\"notify::title\" handler=\"signal_normal\"/>" |
247 | " </object>" |
248 | "</interface>"; |
249 | |
250 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
251 | ctk_builder_connect_signals (builder, NULL((void*)0)); |
252 | |
253 | window = ctk_builder_get_object (builder, "window1"); |
254 | ctk_window_set_title (CTK_WINDOW (window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_window_get_type ())))))), "test"); |
255 | |
256 | g_assert_cmpint (normal, ==, 1)do { gint64 __n1 = (normal), __n2 = (1); if (__n1 == __n2) ; else g_assertion_message_cmpint (((gchar*) 0), "builder.c", 256, ( (const char*) (__func__)), "normal" " " "==" " " "1", (guint64 )__n1, "==", (guint64)__n2, 'i'); } while (0); |
257 | g_assert_cmpint (after, ==, 1)do { gint64 __n1 = (after), __n2 = (1); if (__n1 == __n2) ; else g_assertion_message_cmpint (((gchar*) 0), "builder.c", 257, ( (const char*) (__func__)), "after" " " "==" " " "1", (guint64 )__n1, "==", (guint64)__n2, 'i'); } while (0); |
258 | g_assert_cmpint (object, ==, 1)do { gint64 __n1 = (object), __n2 = (1); if (__n1 == __n2) ; else g_assertion_message_cmpint (((gchar*) 0), "builder.c", 258, ( (const char*) (__func__)), "object" " " "==" " " "1", (guint64 )__n1, "==", (guint64)__n2, 'i'); } while (0); |
259 | g_assert_cmpint (object_after, ==, 1)do { gint64 __n1 = (object_after), __n2 = (1); if (__n1 == __n2 ) ; else g_assertion_message_cmpint (((gchar*) 0), "builder.c" , 259, ((const char*) (__func__)), "object_after" " " "==" " " "1", (guint64)__n1, "==", (guint64)__n2, 'i'); } while (0); |
260 | |
261 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
262 | g_object_unref (builder); |
263 | |
264 | builder = builder_new_from_string (buffer_order, -1, NULL((void*)0)); |
265 | ctk_builder_connect_signals (builder, NULL((void*)0)); |
266 | window = ctk_builder_get_object (builder, "window1"); |
267 | normal = 0; |
268 | ctk_window_set_title (CTK_WINDOW (window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_window_get_type ())))))), "test"); |
269 | g_assert (normal == 20)do { if (normal == 20) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 269, ((const char*) (__func__)), "normal == 20" ); } while (0); |
270 | |
271 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
272 | |
273 | ctk_builder_add_from_string (builder, buffer_extra, |
274 | strlen (buffer_extra), NULL((void*)0)); |
275 | ctk_builder_add_from_string (builder, buffer_extra2, |
276 | strlen (buffer_extra2), NULL((void*)0)); |
277 | ctk_builder_connect_signals (builder, NULL((void*)0)); |
278 | window = ctk_builder_get_object (builder, "window2"); |
279 | ctk_window_set_title (CTK_WINDOW (window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_window_get_type ())))))), "test"); |
280 | g_assert (normal == 30)do { if (normal == 30) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 280, ((const char*) (__func__)), "normal == 30" ); } while (0); |
281 | |
282 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
283 | window = ctk_builder_get_object (builder, "window3"); |
284 | ctk_window_set_title (CTK_WINDOW (window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_window_get_type ())))))), "test"); |
285 | g_assert (normal == 40)do { if (normal == 40) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 285, ((const char*) (__func__)), "normal == 40" ); } while (0); |
286 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
287 | |
288 | g_object_unref (builder); |
289 | |
290 | /* new test, reset globals */ |
291 | after = 0; |
292 | normal = 0; |
293 | |
294 | builder = builder_new_from_string (buffer_after_child, -1, NULL((void*)0)); |
295 | window = ctk_builder_get_object (builder, "window1"); |
296 | ctk_builder_connect_signals (builder, NULL((void*)0)); |
297 | ctk_window_set_title (CTK_WINDOW (window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_window_get_type ())))))), "test"); |
298 | |
299 | g_assert (normal == 1)do { if (normal == 1) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 299, ((const char*) (__func__)), "normal == 1" ); } while (0); |
300 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
301 | g_object_unref (builder); |
302 | } |
303 | |
304 | static void |
305 | test_uimanager_simple (void) |
306 | { |
307 | CtkBuilder *builder; |
308 | GObject *window, *uimgr, *menubar; |
309 | GObject *menu, *label; |
310 | GList *children; |
311 | const gchar buffer[] = |
312 | "<interface>" |
313 | " <object class=\"CtkUIManager\" id=\"uimgr1\"/>" |
314 | "</interface>"; |
315 | |
316 | const gchar buffer2[] = |
317 | "<interface>" |
318 | " <object class=\"CtkUIManager\" id=\"uimgr1\">" |
319 | " <child>" |
320 | " <object class=\"CtkActionGroup\" id=\"ag1\">" |
321 | " <child>" |
322 | " <object class=\"CtkAction\" id=\"file\">" |
323 | " <property name=\"label\">_File</property>" |
324 | " </object>" |
325 | " <accelerator key=\"n\" modifiers=\"CDK_CONTROL_MASK\"/>" |
326 | " </child>" |
327 | " </object>" |
328 | " </child>" |
329 | " <ui>" |
330 | " <menubar name=\"menubar1\">" |
331 | " <menu action=\"file\">" |
332 | " </menu>" |
333 | " </menubar>" |
334 | " </ui>" |
335 | " </object>" |
336 | " <object class=\"CtkWindow\" id=\"window1\">" |
337 | " <child>" |
338 | " <object class=\"CtkMenuBar\" id=\"menubar1\" constructor=\"uimgr1\"/>" |
339 | " </child>" |
340 | " </object>" |
341 | "</interface>"; |
342 | |
343 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
344 | |
345 | uimgr = ctk_builder_get_object (builder, "uimgr1"); |
346 | g_assert (CTK_IS_UI_MANAGER (uimgr))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((uimgr)); GType __t = ((ctk_ui_manager_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 346, (( const char*) (__func__)), "CTK_IS_UI_MANAGER (uimgr)"); } while (0); |
347 | g_object_unref (builder); |
348 | |
349 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
350 | |
351 | menubar = ctk_builder_get_object (builder, "menubar1"); |
352 | g_assert (CTK_IS_MENU_BAR (menubar))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((menubar)); GType __t = ((ctk_menu_bar_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 352, (( const char*) (__func__)), "CTK_IS_MENU_BAR (menubar)"); } while (0); |
353 | |
354 | children = ctk_container_get_children (CTK_CONTAINER (menubar)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((menubar)), ((ctk_container_get_type ()))))))); |
355 | menu = children->data; |
356 | g_assert (CTK_IS_MENU_ITEM (menu))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((menu)); GType __t = ((ctk_menu_item_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 356, (( const char*) (__func__)), "CTK_IS_MENU_ITEM (menu)"); } while (0); |
357 | g_assert (strcmp (ctk_widget_get_name (CTK_WIDGET (menu)), "file") == 0)do { if (strcmp (ctk_widget_get_name (((((CtkWidget*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((menu)), ((ctk_widget_get_type ()))))))), "file") == 0) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 357, ((const char*) (__func__)), "strcmp (ctk_widget_get_name (CTK_WIDGET (menu)), \"file\") == 0" ); } while (0); |
358 | g_list_free (children); |
359 | |
360 | label = G_OBJECT (ctk_bin_get_child (CTK_BIN (menu)))((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_bin_get_child (((((CtkBin*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((menu)), ((ctk_bin_get_type ()))))))))), ( ((GType) ((20) << (2)))))))); |
361 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 361, (( const char*) (__func__)), "CTK_IS_LABEL (label)"); } while (0 ); |
362 | g_assert (strcmp (ctk_label_get_text (CTK_LABEL (label)), "File") == 0)do { if (strcmp (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "File") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 362, ((const char*) (__func__)), "strcmp (ctk_label_get_text (CTK_LABEL (label)), \"File\") == 0" ); } while (0); |
363 | |
364 | window = ctk_builder_get_object (builder, "window1"); |
365 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
366 | g_object_unref (builder); |
367 | } |
368 | |
369 | static void |
370 | test_domain (void) |
371 | { |
372 | CtkBuilder *builder; |
373 | const gchar buffer1[] = "<interface/>"; |
374 | const gchar buffer2[] = "<interface domain=\"domain\"/>"; |
375 | const gchar *domain; |
376 | |
377 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
378 | domain = ctk_builder_get_translation_domain (builder); |
379 | g_assert (domain == NULL)do { if (domain == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 379, ((const char*) (__func__)), "domain == NULL"); } while (0); |
380 | g_object_unref (builder); |
381 | |
382 | builder = builder_new_from_string (buffer1, -1, "domain-1"); |
383 | domain = ctk_builder_get_translation_domain (builder); |
384 | g_assert (domain)do { if (domain) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 384, ((const char*) (__func__)), "domain"); } while (0); |
385 | g_assert (strcmp (domain, "domain-1") == 0)do { if (strcmp (domain, "domain-1") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 385, ((const char*) (__func__)), "strcmp (domain, \"domain-1\") == 0"); } while (0); |
386 | g_object_unref (builder); |
387 | |
388 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
389 | domain = ctk_builder_get_translation_domain (builder); |
390 | g_assert (domain == NULL)do { if (domain == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 390, ((const char*) (__func__)), "domain == NULL"); } while (0); |
391 | g_object_unref (builder); |
392 | } |
393 | |
394 | #if 0 |
395 | static void |
396 | test_translation (void) |
397 | { |
398 | CtkBuilder *builder; |
399 | const gchar buffer[] = |
400 | "<interface>" |
401 | " <object class=\"CtkWindow\" id=\"window1\">" |
402 | " <child>" |
403 | " <object class=\"CtkLabel\" id=\"label\">" |
404 | " <property name=\"label\" translatable=\"yes\">File</property>" |
405 | " </object>" |
406 | " </child>" |
407 | " </object>" |
408 | "</interface>"; |
409 | CtkLabel *window, *label; |
410 | |
411 | setlocale (LC_ALL6, "sv_SE"); |
412 | textdomain ("builder"); |
413 | bindtextdomain ("builder", "tests"); |
414 | |
415 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
416 | label = CTK_LABEL (ctk_builder_get_object (builder, "label"))((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_builder_get_object (builder, "label"))), ((ctk_label_get_type ())))))); |
417 | g_assert (strcmp (ctk_label_get_text (label), "Arkiv") == 0)do { if (strcmp (ctk_label_get_text (label), "Arkiv") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 417 , ((const char*) (__func__)), "strcmp (ctk_label_get_text (label), \"Arkiv\") == 0" ); } while (0); |
418 | |
419 | window = ctk_builder_get_object (builder, "window1"); |
420 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
421 | g_object_unref (builder); |
422 | } |
423 | #endif |
424 | |
425 | static void |
426 | test_sizegroup (void) |
427 | { |
428 | CtkBuilder * builder; |
429 | const gchar buffer1[] = |
430 | "<interface domain=\"test\">" |
431 | " <object class=\"CtkSizeGroup\" id=\"sizegroup1\">" |
432 | " <property name=\"mode\">CTK_SIZE_GROUP_HORIZONTAL</property>" |
433 | " <widgets>" |
434 | " <widget name=\"radio1\"/>" |
435 | " <widget name=\"radio2\"/>" |
436 | " </widgets>" |
437 | " </object>" |
438 | " <object class=\"CtkWindow\" id=\"window1\">" |
439 | " <child>" |
440 | " <object class=\"CtkVBox\" id=\"vbox1\">" |
441 | " <child>" |
442 | " <object class=\"CtkRadioButton\" id=\"radio1\"/>" |
443 | " </child>" |
444 | " <child>" |
445 | " <object class=\"CtkRadioButton\" id=\"radio2\"/>" |
446 | " </child>" |
447 | " </object>" |
448 | " </child>" |
449 | " </object>" |
450 | "</interface>"; |
451 | const gchar buffer2[] = |
452 | "<interface domain=\"test\">" |
453 | " <object class=\"CtkSizeGroup\" id=\"sizegroup1\">" |
454 | " <property name=\"mode\">CTK_SIZE_GROUP_HORIZONTAL</property>" |
455 | " <widgets>" |
456 | " </widgets>" |
457 | " </object>" |
458 | "</interface>"; |
459 | const gchar buffer3[] = |
460 | "<interface domain=\"test\">" |
461 | " <object class=\"CtkSizeGroup\" id=\"sizegroup1\">" |
462 | " <property name=\"mode\">CTK_SIZE_GROUP_HORIZONTAL</property>" |
463 | " <widgets>" |
464 | " <widget name=\"radio1\"/>" |
465 | " <widget name=\"radio2\"/>" |
466 | " </widgets>" |
467 | " </object>" |
468 | " <object class=\"CtkSizeGroup\" id=\"sizegroup2\">" |
469 | " <property name=\"mode\">CTK_SIZE_GROUP_HORIZONTAL</property>" |
470 | " <widgets>" |
471 | " <widget name=\"radio1\"/>" |
472 | " <widget name=\"radio2\"/>" |
473 | " </widgets>" |
474 | " </object>" |
475 | " <object class=\"CtkWindow\" id=\"window1\">" |
476 | " <child>" |
477 | " <object class=\"CtkVBox\" id=\"vbox1\">" |
478 | " <child>" |
479 | " <object class=\"CtkRadioButton\" id=\"radio1\"/>" |
480 | " </child>" |
481 | " <child>" |
482 | " <object class=\"CtkRadioButton\" id=\"radio2\"/>" |
483 | " </child>" |
484 | " </object>" |
485 | " </child>" |
486 | " </object>" |
487 | "</interface>"; |
488 | GObject *sizegroup; |
489 | GSList *widgets; |
490 | |
491 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
492 | sizegroup = ctk_builder_get_object (builder, "sizegroup1"); |
493 | widgets = ctk_size_group_get_widgets (CTK_SIZE_GROUP (sizegroup)((((CtkSizeGroup*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((sizegroup)), ((ctk_size_group_get_type ()))))))); |
494 | g_assert (g_slist_length (widgets) == 2)do { if (g_slist_length (widgets) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 494, ((const char*) (__func__)), "g_slist_length (widgets) == 2"); } while (0); |
495 | g_slist_free (widgets); |
496 | g_object_unref (builder); |
497 | |
498 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
499 | sizegroup = ctk_builder_get_object (builder, "sizegroup1"); |
500 | widgets = ctk_size_group_get_widgets (CTK_SIZE_GROUP (sizegroup)((((CtkSizeGroup*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((sizegroup)), ((ctk_size_group_get_type ()))))))); |
501 | g_assert (g_slist_length (widgets) == 0)do { if (g_slist_length (widgets) == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 501, ((const char*) (__func__)), "g_slist_length (widgets) == 0"); } while (0); |
502 | g_slist_free (widgets); |
503 | g_object_unref (builder); |
504 | |
505 | builder = builder_new_from_string (buffer3, -1, NULL((void*)0)); |
506 | sizegroup = ctk_builder_get_object (builder, "sizegroup1"); |
507 | widgets = ctk_size_group_get_widgets (CTK_SIZE_GROUP (sizegroup)((((CtkSizeGroup*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((sizegroup)), ((ctk_size_group_get_type ()))))))); |
508 | g_assert (g_slist_length (widgets) == 2)do { if (g_slist_length (widgets) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 508, ((const char*) (__func__)), "g_slist_length (widgets) == 2"); } while (0); |
509 | g_slist_free (widgets); |
510 | sizegroup = ctk_builder_get_object (builder, "sizegroup2"); |
511 | widgets = ctk_size_group_get_widgets (CTK_SIZE_GROUP (sizegroup)((((CtkSizeGroup*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((sizegroup)), ((ctk_size_group_get_type ()))))))); |
512 | g_assert (g_slist_length (widgets) == 2)do { if (g_slist_length (widgets) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 512, ((const char*) (__func__)), "g_slist_length (widgets) == 2"); } while (0); |
513 | g_slist_free (widgets); |
514 | |
515 | #if 0 |
516 | { |
517 | GObject *window; |
518 | window = ctk_builder_get_object (builder, "window1"); |
519 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
520 | } |
521 | #endif |
522 | g_object_unref (builder); |
523 | } |
524 | |
525 | static void |
526 | test_list_store (void) |
527 | { |
528 | const gchar buffer1[] = |
529 | "<interface>" |
530 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
531 | " <columns>" |
532 | " <column type=\"gchararray\"/>" |
533 | " <column type=\"guint\"/>" |
534 | " </columns>" |
535 | " </object>" |
536 | "</interface>"; |
537 | const char buffer2[] = |
538 | "<interface>" |
539 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
540 | " <columns>" |
541 | " <column type=\"gchararray\"/>" |
542 | " <column type=\"gchararray\"/>" |
543 | " <column type=\"gint\"/>" |
544 | " </columns>" |
545 | " <data>" |
546 | " <row>" |
547 | " <col id=\"0\" translatable=\"yes\">John</col>" |
548 | " <col id=\"1\" context=\"foo\">Doe</col>" |
549 | " <col id=\"2\" comments=\"foobar\">25</col>" |
550 | " </row>" |
551 | " <row>" |
552 | " <col id=\"0\">Johan</col>" |
553 | " <col id=\"1\">Dole</col>" |
554 | " <col id=\"2\">50</col>" |
555 | " </row>" |
556 | " </data>" |
557 | " </object>" |
558 | "</interface>"; |
559 | const char buffer3[] = |
560 | "<interface>" |
561 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
562 | " <columns>" |
563 | " <column type=\"gchararray\"/>" |
564 | " <column type=\"gchararray\"/>" |
565 | " <column type=\"gint\"/>" |
566 | " </columns>" |
567 | " <data>" |
568 | " <row>" |
569 | " <col id=\"1\" context=\"foo\">Doe</col>" |
570 | " <col id=\"0\" translatable=\"yes\">John</col>" |
571 | " <col id=\"2\" comments=\"foobar\">25</col>" |
572 | " </row>" |
573 | " <row>" |
574 | " <col id=\"2\">50</col>" |
575 | " <col id=\"1\">Dole</col>" |
576 | " <col id=\"0\">Johan</col>" |
577 | " </row>" |
578 | " <row>" |
579 | " <col id=\"2\">19</col>" |
580 | " </row>" |
581 | " </data>" |
582 | " </object>" |
583 | "</interface>"; |
584 | CtkBuilder *builder; |
585 | GObject *store; |
586 | CtkTreeIter iter; |
587 | gchar *surname, *lastname; |
588 | int age; |
589 | |
590 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
591 | store = ctk_builder_get_object (builder, "liststore1"); |
592 | g_assert (ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 2)do { if (ctk_tree_model_get_n_columns (((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((store)), ( (ctk_tree_model_get_type ()))))))) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 592, ((const char*) (__func__)), "ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 2" ); } while (0); |
593 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 0) == ((GType) ((16) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 593, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING" ); } while (0); |
594 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_UINT)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 1) == ((GType) ((7) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 594, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_UINT" ); } while (0); |
595 | g_object_unref (builder); |
596 | |
597 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
598 | store = ctk_builder_get_object (builder, "liststore1"); |
599 | g_assert (ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 3)do { if (ctk_tree_model_get_n_columns (((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((store)), ( (ctk_tree_model_get_type ()))))))) == 3) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 599, ((const char*) (__func__)), "ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 3" ); } while (0); |
600 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 0) == ((GType) ((16) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 600, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING" ); } while (0); |
601 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_STRING)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 1) == ((GType) ((16) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 601, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_STRING" ); } while (0); |
602 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 2) == G_TYPE_INT)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 2) == ((GType) ((6) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 602, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 2) == G_TYPE_INT" ); } while (0); |
603 | |
604 | g_assert (ctk_tree_model_get_iter_first (CTK_TREE_MODEL (store), &iter) == TRUE)do { if (ctk_tree_model_get_iter_first (((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((store)), ( (ctk_tree_model_get_type ())))))), &iter) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 604, (( const char*) (__func__)), "ctk_tree_model_get_iter_first (CTK_TREE_MODEL (store), &iter) == TRUE" ); } while (0); |
605 | ctk_tree_model_get (CTK_TREE_MODEL (store)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((store)), ((ctk_tree_model_get_type ())))))), &iter, |
606 | 0, &surname, |
607 | 1, &lastname, |
608 | 2, &age, |
609 | -1); |
610 | g_assert (surname != NULL)do { if (surname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 610, ((const char*) (__func__)), "surname != NULL"); } while (0); |
611 | g_assert (strcmp (surname, "John") == 0)do { if (strcmp (surname, "John") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 611, ((const char*) (__func__)), "strcmp (surname, \"John\") == 0"); } while (0); |
612 | g_free (surname); |
613 | g_assert (lastname != NULL)do { if (lastname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 613, ((const char*) (__func__)), "lastname != NULL"); } while (0); |
614 | g_assert (strcmp (lastname, "Doe") == 0)do { if (strcmp (lastname, "Doe") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 614, ((const char*) (__func__)), "strcmp (lastname, \"Doe\") == 0"); } while (0); |
615 | g_free (lastname); |
616 | g_assert (age == 25)do { if (age == 25) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 616, ((const char*) (__func__)), "age == 25" ); } while (0); |
617 | g_assert (ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == TRUE)do { if (ctk_tree_model_iter_next (((((CtkTreeModel*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((store)), ((ctk_tree_model_get_type ())))))), &iter) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 617, ((const char*) (__func__)), "ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == TRUE" ); } while (0); |
618 | |
619 | ctk_tree_model_get (CTK_TREE_MODEL (store)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((store)), ((ctk_tree_model_get_type ())))))), &iter, |
620 | 0, &surname, |
621 | 1, &lastname, |
622 | 2, &age, |
623 | -1); |
624 | g_assert (surname != NULL)do { if (surname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 624, ((const char*) (__func__)), "surname != NULL"); } while (0); |
625 | g_assert (strcmp (surname, "Johan") == 0)do { if (strcmp (surname, "Johan") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 625, ((const char*) (__func__)), "strcmp (surname, \"Johan\") == 0"); } while (0); |
626 | g_free (surname); |
627 | g_assert (lastname != NULL)do { if (lastname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 627, ((const char*) (__func__)), "lastname != NULL"); } while (0); |
628 | g_assert (strcmp (lastname, "Dole") == 0)do { if (strcmp (lastname, "Dole") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 628, ((const char*) (__func__)), "strcmp (lastname, \"Dole\") == 0"); } while (0); |
629 | g_free (lastname); |
630 | g_assert (age == 50)do { if (age == 50) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 630, ((const char*) (__func__)), "age == 50" ); } while (0); |
631 | g_assert (ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == FALSE)do { if (ctk_tree_model_iter_next (((((CtkTreeModel*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((store)), ((ctk_tree_model_get_type ())))))), &iter) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 631, ((const char*) (__func__)), "ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == FALSE" ); } while (0); |
632 | |
633 | g_object_unref (builder); |
634 | |
635 | builder = builder_new_from_string (buffer3, -1, NULL((void*)0)); |
636 | store = ctk_builder_get_object (builder, "liststore1"); |
637 | g_assert (ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 3)do { if (ctk_tree_model_get_n_columns (((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((store)), ( (ctk_tree_model_get_type ()))))))) == 3) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 637, ((const char*) (__func__)), "ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 3" ); } while (0); |
638 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 0) == ((GType) ((16) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 638, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING" ); } while (0); |
639 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_STRING)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 1) == ((GType) ((16) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 639, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_STRING" ); } while (0); |
640 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 2) == G_TYPE_INT)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 2) == ((GType) ((6) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 640, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 2) == G_TYPE_INT" ); } while (0); |
641 | |
642 | g_assert (ctk_tree_model_get_iter_first (CTK_TREE_MODEL (store), &iter) == TRUE)do { if (ctk_tree_model_get_iter_first (((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((store)), ( (ctk_tree_model_get_type ())))))), &iter) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 642, (( const char*) (__func__)), "ctk_tree_model_get_iter_first (CTK_TREE_MODEL (store), &iter) == TRUE" ); } while (0); |
643 | ctk_tree_model_get (CTK_TREE_MODEL (store)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((store)), ((ctk_tree_model_get_type ())))))), &iter, |
644 | 0, &surname, |
645 | 1, &lastname, |
646 | 2, &age, |
647 | -1); |
648 | g_assert (surname != NULL)do { if (surname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 648, ((const char*) (__func__)), "surname != NULL"); } while (0); |
649 | g_assert (strcmp (surname, "John") == 0)do { if (strcmp (surname, "John") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 649, ((const char*) (__func__)), "strcmp (surname, \"John\") == 0"); } while (0); |
650 | g_free (surname); |
651 | g_assert (lastname != NULL)do { if (lastname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 651, ((const char*) (__func__)), "lastname != NULL"); } while (0); |
652 | g_assert (strcmp (lastname, "Doe") == 0)do { if (strcmp (lastname, "Doe") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 652, ((const char*) (__func__)), "strcmp (lastname, \"Doe\") == 0"); } while (0); |
653 | g_free (lastname); |
654 | g_assert (age == 25)do { if (age == 25) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 654, ((const char*) (__func__)), "age == 25" ); } while (0); |
655 | g_assert (ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == TRUE)do { if (ctk_tree_model_iter_next (((((CtkTreeModel*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((store)), ((ctk_tree_model_get_type ())))))), &iter) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 655, ((const char*) (__func__)), "ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == TRUE" ); } while (0); |
656 | |
657 | ctk_tree_model_get (CTK_TREE_MODEL (store)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((store)), ((ctk_tree_model_get_type ())))))), &iter, |
658 | 0, &surname, |
659 | 1, &lastname, |
660 | 2, &age, |
661 | -1); |
662 | g_assert (surname != NULL)do { if (surname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 662, ((const char*) (__func__)), "surname != NULL"); } while (0); |
663 | g_assert (strcmp (surname, "Johan") == 0)do { if (strcmp (surname, "Johan") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 663, ((const char*) (__func__)), "strcmp (surname, \"Johan\") == 0"); } while (0); |
664 | g_free (surname); |
665 | g_assert (lastname != NULL)do { if (lastname != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 665, ((const char*) (__func__)), "lastname != NULL"); } while (0); |
666 | g_assert (strcmp (lastname, "Dole") == 0)do { if (strcmp (lastname, "Dole") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 666, ((const char*) (__func__)), "strcmp (lastname, \"Dole\") == 0"); } while (0); |
667 | g_free (lastname); |
668 | g_assert (age == 50)do { if (age == 50) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 668, ((const char*) (__func__)), "age == 50" ); } while (0); |
669 | g_assert (ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == TRUE)do { if (ctk_tree_model_iter_next (((((CtkTreeModel*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((store)), ((ctk_tree_model_get_type ())))))), &iter) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 669, ((const char*) (__func__)), "ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == TRUE" ); } while (0); |
670 | |
671 | ctk_tree_model_get (CTK_TREE_MODEL (store)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((store)), ((ctk_tree_model_get_type ())))))), &iter, |
672 | 0, &surname, |
673 | 1, &lastname, |
674 | 2, &age, |
675 | -1); |
676 | g_assert (surname == NULL)do { if (surname == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 676, ((const char*) (__func__)), "surname == NULL"); } while (0); |
677 | g_assert (lastname == NULL)do { if (lastname == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 677, ((const char*) (__func__)), "lastname == NULL"); } while (0); |
678 | g_assert (age == 19)do { if (age == 19) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 678, ((const char*) (__func__)), "age == 19" ); } while (0); |
679 | g_assert (ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == FALSE)do { if (ctk_tree_model_iter_next (((((CtkTreeModel*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((store)), ((ctk_tree_model_get_type ())))))), &iter) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 679, ((const char*) (__func__)), "ctk_tree_model_iter_next (CTK_TREE_MODEL (store), &iter) == FALSE" ); } while (0); |
680 | |
681 | g_object_unref (builder); |
682 | } |
683 | |
684 | static void |
685 | test_tree_store (void) |
686 | { |
687 | const gchar buffer[] = |
688 | "<interface domain=\"test\">" |
689 | " <object class=\"CtkTreeStore\" id=\"treestore1\">" |
690 | " <columns>" |
691 | " <column type=\"gchararray\"/>" |
692 | " <column type=\"guint\"/>" |
693 | " </columns>" |
694 | " </object>" |
695 | "</interface>"; |
696 | CtkBuilder *builder; |
697 | GObject *store; |
698 | |
699 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
700 | store = ctk_builder_get_object (builder, "treestore1"); |
701 | g_assert (ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 2)do { if (ctk_tree_model_get_n_columns (((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((store)), ( (ctk_tree_model_get_type ()))))))) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 701, ((const char*) (__func__)), "ctk_tree_model_get_n_columns (CTK_TREE_MODEL (store)) == 2" ); } while (0); |
702 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 0) == ((GType) ((16) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 702, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 0) == G_TYPE_STRING" ); } while (0); |
703 | g_assert (ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_UINT)do { if (ctk_tree_model_get_column_type (((((CtkTreeModel*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((store) ), ((ctk_tree_model_get_type ())))))), 1) == ((GType) ((7) << (2)))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 703, ((const char*) (__func__)), "ctk_tree_model_get_column_type (CTK_TREE_MODEL (store), 1) == G_TYPE_UINT" ); } while (0); |
704 | |
705 | g_object_unref (builder); |
706 | } |
707 | |
708 | static void |
709 | test_types (void) |
710 | { |
711 | const gchar buffer[] = |
712 | "<interface>" |
713 | " <object class=\"CtkAction\" id=\"action\"/>" |
714 | " <object class=\"CtkActionGroup\" id=\"actiongroup\"/>" |
715 | " <object class=\"CtkAlignment\" id=\"alignment\"/>" |
716 | " <object class=\"CtkArrow\" id=\"arrow\"/>" |
717 | " <object class=\"CtkButton\" id=\"button\"/>" |
718 | " <object class=\"CtkCheckButton\" id=\"checkbutton\"/>" |
719 | " <object class=\"CtkDialog\" id=\"dialog\"/>" |
720 | " <object class=\"CtkDrawingArea\" id=\"drawingarea\"/>" |
721 | " <object class=\"CtkEventBox\" id=\"eventbox\"/>" |
722 | " <object class=\"CtkEntry\" id=\"entry\"/>" |
723 | " <object class=\"CtkFontButton\" id=\"fontbutton\"/>" |
724 | " <object class=\"CtkHButtonBox\" id=\"hbuttonbox\"/>" |
725 | " <object class=\"CtkHBox\" id=\"hbox\"/>" |
726 | " <object class=\"CtkHPaned\" id=\"hpaned\"/>" |
727 | " <object class=\"CtkHScale\" id=\"hscale\"/>" |
728 | " <object class=\"CtkHScrollbar\" id=\"hscrollbar\"/>" |
729 | " <object class=\"CtkHSeparator\" id=\"hseparator\"/>" |
730 | " <object class=\"CtkImage\" id=\"image\"/>" |
731 | " <object class=\"CtkLabel\" id=\"label\"/>" |
732 | " <object class=\"CtkListStore\" id=\"liststore\"/>" |
733 | " <object class=\"CtkMenuBar\" id=\"menubar\"/>" |
734 | " <object class=\"CtkNotebook\" id=\"notebook\"/>" |
735 | " <object class=\"CtkProgressBar\" id=\"progressbar\"/>" |
736 | " <object class=\"CtkRadioButton\" id=\"radiobutton\"/>" |
737 | " <object class=\"CtkSizeGroup\" id=\"sizegroup\"/>" |
738 | " <object class=\"CtkScrolledWindow\" id=\"scrolledwindow\"/>" |
739 | " <object class=\"CtkSpinButton\" id=\"spinbutton\"/>" |
740 | " <object class=\"CtkStatusbar\" id=\"statusbar\"/>" |
741 | " <object class=\"CtkTextView\" id=\"textview\"/>" |
742 | " <object class=\"CtkToggleAction\" id=\"toggleaction\"/>" |
743 | " <object class=\"CtkToggleButton\" id=\"togglebutton\"/>" |
744 | " <object class=\"CtkToolbar\" id=\"toolbar\"/>" |
745 | " <object class=\"CtkTreeStore\" id=\"treestore\"/>" |
746 | " <object class=\"CtkTreeView\" id=\"treeview\"/>" |
747 | " <object class=\"CtkTable\" id=\"table\"/>" |
748 | " <object class=\"CtkVBox\" id=\"vbox\"/>" |
749 | " <object class=\"CtkVButtonBox\" id=\"vbuttonbox\"/>" |
750 | " <object class=\"CtkVScrollbar\" id=\"vscrollbar\"/>" |
751 | " <object class=\"CtkVSeparator\" id=\"vseparator\"/>" |
752 | " <object class=\"CtkViewport\" id=\"viewport\"/>" |
753 | " <object class=\"CtkVPaned\" id=\"vpaned\"/>" |
754 | " <object class=\"CtkVScale\" id=\"vscale\"/>" |
755 | " <object class=\"CtkWindow\" id=\"window\"/>" |
756 | " <object class=\"CtkUIManager\" id=\"uimanager\"/>" |
757 | "</interface>"; |
758 | const gchar buffer2[] = |
759 | "<interface>" |
760 | " <object type-func=\"ctk_window_get_type\" id=\"window\"/>" |
761 | "</interface>"; |
762 | const gchar buffer3[] = |
763 | "<interface>" |
764 | " <object class=\"XXXInvalidType\" type-func=\"ctk_window_get_type\" id=\"window\"/>" |
765 | "</interface>"; |
766 | const gchar buffer4[] = |
767 | "<interface>" |
768 | " <object type-func=\"xxx_invalid_get_type_function\" id=\"window\"/>" |
769 | "</interface>"; |
770 | CtkBuilder *builder; |
771 | GObject *window; |
772 | GError *error; |
773 | |
774 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
775 | ctk_widget_destroy (CTK_WIDGET (ctk_builder_get_object (builder, "dialog"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_builder_get_object (builder, "dialog"))), ((ctk_widget_get_type ()))))))); |
776 | ctk_widget_destroy (CTK_WIDGET (ctk_builder_get_object (builder, "window"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_builder_get_object (builder, "window"))), ((ctk_widget_get_type ()))))))); |
777 | g_object_unref (builder); |
778 | |
779 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
780 | window = ctk_builder_get_object (builder, "window"); |
781 | g_assert (CTK_IS_WINDOW (window))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 781, (( const char*) (__func__)), "CTK_IS_WINDOW (window)"); } while ( 0); |
782 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
783 | g_object_unref (builder); |
784 | |
785 | builder = builder_new_from_string (buffer3, -1, NULL((void*)0)); |
786 | window = ctk_builder_get_object (builder, "window"); |
787 | g_assert (CTK_IS_WINDOW (window))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 787, (( const char*) (__func__)), "CTK_IS_WINDOW (window)"); } while ( 0); |
788 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
789 | g_object_unref (builder); |
790 | |
791 | error = NULL((void*)0); |
792 | builder = ctk_builder_new (); |
793 | ctk_builder_add_from_string (builder, buffer4, -1, &error); |
794 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION ) g_assertion_message_error (((gchar*) 0), "builder.c", 794, ( (const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION); } while (0); |
795 | g_error_free (error); |
796 | g_object_unref (builder); |
797 | } |
798 | |
799 | static void |
800 | test_spin_button (void) |
801 | { |
802 | CtkBuilder *builder; |
803 | const gchar buffer[] = |
804 | "<interface>" |
805 | "<object class=\"CtkAdjustment\" id=\"adjustment1\">" |
806 | "<property name=\"lower\">0</property>" |
807 | "<property name=\"upper\">10</property>" |
808 | "<property name=\"step-increment\">2</property>" |
809 | "<property name=\"page-increment\">3</property>" |
810 | "<property name=\"page-size\">0</property>" |
811 | "<property name=\"value\">1</property>" |
812 | "</object>" |
813 | "<object class=\"CtkSpinButton\" id=\"spinbutton1\">" |
814 | "<property name=\"visible\">True</property>" |
815 | "<property name=\"adjustment\">adjustment1</property>" |
816 | "</object>" |
817 | "</interface>"; |
818 | GObject *obj; |
819 | CtkAdjustment *adjustment; |
820 | gdouble value; |
821 | |
822 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
823 | obj = ctk_builder_get_object (builder, "spinbutton1"); |
824 | g_assert (CTK_IS_SPIN_BUTTON (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_spin_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 824, (( const char*) (__func__)), "CTK_IS_SPIN_BUTTON (obj)"); } while (0); |
825 | adjustment = ctk_spin_button_get_adjustment (CTK_SPIN_BUTTON (obj)((((CtkSpinButton*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_spin_button_get_type ()))))))); |
826 | g_assert (CTK_IS_ADJUSTMENT (adjustment))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((adjustment)); GType __t = ((ctk_adjustment_get_type ())) ; gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0) ); else __r = g_type_check_instance_is_a (__inst, __t); __r; } ))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 826, ((const char*) (__func__)), "CTK_IS_ADJUSTMENT (adjustment)" ); } while (0); |
827 | g_object_get (adjustment, "value", &value, NULL((void*)0)); |
828 | g_assert (value == 1)do { if (value == 1) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 828, ((const char*) (__func__)), "value == 1" ); } while (0); |
829 | g_object_get (adjustment, "lower", &value, NULL((void*)0)); |
830 | g_assert (value == 0)do { if (value == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 830, ((const char*) (__func__)), "value == 0" ); } while (0); |
831 | g_object_get (adjustment, "upper", &value, NULL((void*)0)); |
832 | g_assert (value == 10)do { if (value == 10) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 832, ((const char*) (__func__)), "value == 10" ); } while (0); |
833 | g_object_get (adjustment, "step-increment", &value, NULL((void*)0)); |
834 | g_assert (value == 2)do { if (value == 2) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 834, ((const char*) (__func__)), "value == 2" ); } while (0); |
835 | g_object_get (adjustment, "page-increment", &value, NULL((void*)0)); |
836 | g_assert (value == 3)do { if (value == 3) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 836, ((const char*) (__func__)), "value == 3" ); } while (0); |
837 | g_object_get (adjustment, "page-size", &value, NULL((void*)0)); |
838 | g_assert (value == 0)do { if (value == 0) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 838, ((const char*) (__func__)), "value == 0" ); } while (0); |
839 | |
840 | g_object_unref (builder); |
841 | } |
842 | |
843 | static void |
844 | test_notebook (void) |
845 | { |
846 | CtkBuilder *builder; |
847 | const gchar buffer[] = |
848 | "<interface>" |
849 | " <object class=\"CtkNotebook\" id=\"notebook1\">" |
850 | " <child>" |
851 | " <object class=\"CtkLabel\" id=\"label1\">" |
852 | " <property name=\"label\">label1</property>" |
853 | " </object>" |
854 | " </child>" |
855 | " <child type=\"tab\">" |
856 | " <object class=\"CtkLabel\" id=\"tablabel1\">" |
857 | " <property name=\"label\">tab_label1</property>" |
858 | " </object>" |
859 | " </child>" |
860 | " <child>" |
861 | " <object class=\"CtkLabel\" id=\"label2\">" |
862 | " <property name=\"label\">label2</property>" |
863 | " </object>" |
864 | " </child>" |
865 | " <child type=\"tab\">" |
866 | " <object class=\"CtkLabel\" id=\"tablabel2\">" |
867 | " <property name=\"label\">tab_label2</property>" |
868 | " </object>" |
869 | " </child>" |
870 | " </object>" |
871 | "</interface>"; |
872 | GObject *notebook; |
873 | CtkWidget *label; |
874 | |
875 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
876 | notebook = ctk_builder_get_object (builder, "notebook1"); |
877 | g_assert (notebook != NULL)do { if (notebook != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 877, ((const char*) (__func__)), "notebook != NULL"); } while (0); |
878 | g_assert (ctk_notebook_get_n_pages (CTK_NOTEBOOK (notebook)) == 2)do { if (ctk_notebook_get_n_pages (((((CtkNotebook*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((notebook)), ( (ctk_notebook_get_type ()))))))) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 878, ((const char*) (__func__)), "ctk_notebook_get_n_pages (CTK_NOTEBOOK (notebook)) == 2"); } while (0); |
879 | |
880 | label = ctk_notebook_get_nth_page (CTK_NOTEBOOK (notebook)((((CtkNotebook*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((notebook)), ((ctk_notebook_get_type ())))))), 0); |
881 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 881, (( const char*) (__func__)), "CTK_IS_LABEL (label)"); } while (0 ); |
882 | g_assert (strcmp (ctk_label_get_label (CTK_LABEL (label)), "label1") == 0)do { if (strcmp (ctk_label_get_label (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "label1") == 0) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 882, ((const char*) (__func__)), "strcmp (ctk_label_get_label (CTK_LABEL (label)), \"label1\") == 0" ); } while (0); |
883 | label = ctk_notebook_get_tab_label (CTK_NOTEBOOK (notebook)((((CtkNotebook*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((notebook)), ((ctk_notebook_get_type ())))))), label); |
884 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 884, (( const char*) (__func__)), "CTK_IS_LABEL (label)"); } while (0 ); |
885 | g_assert (strcmp (ctk_label_get_label (CTK_LABEL (label)), "tab_label1") == 0)do { if (strcmp (ctk_label_get_label (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "tab_label1") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 885, ((const char*) (__func__)), "strcmp (ctk_label_get_label (CTK_LABEL (label)), \"tab_label1\") == 0" ); } while (0); |
886 | |
887 | label = ctk_notebook_get_nth_page (CTK_NOTEBOOK (notebook)((((CtkNotebook*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((notebook)), ((ctk_notebook_get_type ())))))), 1); |
888 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 888, (( const char*) (__func__)), "CTK_IS_LABEL (label)"); } while (0 ); |
889 | g_assert (strcmp (ctk_label_get_label (CTK_LABEL (label)), "label2") == 0)do { if (strcmp (ctk_label_get_label (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "label2") == 0) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 889, ((const char*) (__func__)), "strcmp (ctk_label_get_label (CTK_LABEL (label)), \"label2\") == 0" ); } while (0); |
890 | label = ctk_notebook_get_tab_label (CTK_NOTEBOOK (notebook)((((CtkNotebook*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((notebook)), ((ctk_notebook_get_type ())))))), label); |
891 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 891, (( const char*) (__func__)), "CTK_IS_LABEL (label)"); } while (0 ); |
892 | g_assert (strcmp (ctk_label_get_label (CTK_LABEL (label)), "tab_label2") == 0)do { if (strcmp (ctk_label_get_label (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "tab_label2") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 892, ((const char*) (__func__)), "strcmp (ctk_label_get_label (CTK_LABEL (label)), \"tab_label2\") == 0" ); } while (0); |
893 | |
894 | g_object_unref (builder); |
895 | } |
896 | |
897 | static void |
898 | test_construct_only_property (void) |
899 | { |
900 | CtkBuilder *builder; |
901 | const gchar buffer[] = |
902 | "<interface>" |
903 | " <object class=\"CtkWindow\" id=\"window1\">" |
904 | " <property name=\"type\">CTK_WINDOW_POPUP</property>" |
905 | " </object>" |
906 | "</interface>"; |
907 | const gchar buffer2[] = |
908 | "<interface>" |
909 | " <object class=\"CtkTextTagTable\" id=\"tagtable1\"/>" |
910 | " <object class=\"CtkTextBuffer\" id=\"textbuffer1\">" |
911 | " <property name=\"tag-table\">tagtable1</property>" |
912 | " </object>" |
913 | "</interface>"; |
914 | GObject *widget, *tagtable, *textbuffer; |
915 | CtkWindowType type; |
916 | |
917 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
918 | widget = ctk_builder_get_object (builder, "window1"); |
919 | g_object_get (widget, "type", &type, NULL((void*)0)); |
920 | g_assert (type == CTK_WINDOW_POPUP)do { if (type == CTK_WINDOW_POPUP) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 920, ((const char*) (__func__)), "type == CTK_WINDOW_POPUP"); } while (0); |
921 | |
922 | ctk_widget_destroy (CTK_WIDGET (widget)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((widget)), ((ctk_widget_get_type ()))))))); |
923 | g_object_unref (builder); |
924 | |
925 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
926 | textbuffer = ctk_builder_get_object (builder, "textbuffer1"); |
927 | g_assert (textbuffer != NULL)do { if (textbuffer != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 927, ((const char*) (__func__)), "textbuffer != NULL"); } while (0); |
928 | g_object_get (textbuffer, "tag-table", &tagtable, NULL((void*)0)); |
929 | g_assert (tagtable == ctk_builder_get_object (builder, "tagtable1"))do { if (tagtable == ctk_builder_get_object (builder, "tagtable1" )) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 929, ((const char*) (__func__)), "tagtable == ctk_builder_get_object (builder, \"tagtable1\")" ); } while (0); |
930 | g_object_unref (tagtable); |
931 | g_object_unref (builder); |
932 | } |
933 | |
934 | static void |
935 | test_object_properties (void) |
936 | { |
937 | CtkBuilder *builder; |
938 | const gchar buffer[] = |
939 | "<interface>" |
940 | " <object class=\"CtkWindow\" id=\"window1\">" |
941 | " <child>" |
942 | " <object class=\"CtkVBox\" id=\"vbox\">" |
943 | " <property name=\"border-width\">10</property>" |
944 | " <child>" |
945 | " <object class=\"CtkLabel\" id=\"label1\">" |
946 | " <property name=\"mnemonic-widget\">spinbutton1</property>" |
947 | " </object>" |
948 | " </child>" |
949 | " <child>" |
950 | " <object class=\"CtkSpinButton\" id=\"spinbutton1\"/>" |
951 | " </child>" |
952 | " </object>" |
953 | " </child>" |
954 | " </object>" |
955 | "</interface>"; |
956 | const gchar buffer2[] = |
957 | "<interface>" |
958 | " <object class=\"CtkWindow\" id=\"window2\"/>" |
959 | "</interface>"; |
960 | GObject *label, *spinbutton, *window; |
961 | |
962 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
963 | label = ctk_builder_get_object (builder, "label1"); |
964 | g_assert (label != NULL)do { if (label != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 964, ((const char*) (__func__)), "label != NULL"); } while (0); |
965 | spinbutton = ctk_builder_get_object (builder, "spinbutton1"); |
966 | g_assert (spinbutton != NULL)do { if (spinbutton != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 966, ((const char*) (__func__)), "spinbutton != NULL"); } while (0); |
967 | g_assert (spinbutton == (GObject*)ctk_label_get_mnemonic_widget (CTK_LABEL (label)))do { if (spinbutton == (GObject*)ctk_label_get_mnemonic_widget (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((label)), ((ctk_label_get_type ())))))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 967, ((const char*) (__func__)), "spinbutton == (GObject*)ctk_label_get_mnemonic_widget (CTK_LABEL (label))" ); } while (0); |
968 | |
969 | ctk_builder_add_from_string (builder, buffer2, -1, NULL((void*)0)); |
970 | window = ctk_builder_get_object (builder, "window2"); |
971 | g_assert (window != NULL)do { if (window != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 971, ((const char*) (__func__)), "window != NULL"); } while (0); |
972 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
973 | |
974 | g_object_unref (builder); |
975 | } |
976 | |
977 | static void |
978 | test_children (void) |
979 | { |
980 | CtkBuilder * builder; |
981 | CtkWidget *content_area, *dialog_action_area; |
982 | GList *children; |
983 | const gchar buffer1[] = |
984 | "<interface>" |
985 | " <object class=\"CtkWindow\" id=\"window1\">" |
986 | " <child>" |
987 | " <object class=\"CtkButton\" id=\"button1\">" |
988 | " <property name=\"label\">Hello</property>" |
989 | " </object>" |
990 | " </child>" |
991 | " </object>" |
992 | "</interface>"; |
993 | const gchar buffer2[] = |
994 | "<interface>" |
995 | " <object class=\"CtkDialog\" id=\"dialog1\">" |
996 | " <property name=\"use_header_bar\">1</property>" |
997 | " <child internal-child=\"vbox\">" |
998 | " <object class=\"CtkVBox\" id=\"dialog1-vbox\">" |
999 | " <property name=\"border-width\">10</property>" |
1000 | " <child internal-child=\"action_area\">" |
1001 | " <object class=\"CtkHButtonBox\" id=\"dialog1-action_area\">" |
1002 | " <property name=\"border-width\">20</property>" |
1003 | " </object>" |
1004 | " </child>" |
1005 | " </object>" |
1006 | " </child>" |
1007 | " </object>" |
1008 | "</interface>"; |
1009 | |
1010 | GObject *window, *button; |
1011 | GObject *dialog, *vbox, *action_area; |
1012 | |
1013 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1014 | window = ctk_builder_get_object (builder, "window1"); |
1015 | g_assert (window != NULL)do { if (window != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1015, ((const char*) (__func__)) , "window != NULL"); } while (0); |
1016 | g_assert (CTK_IS_WINDOW (window))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1016, ( (const char*) (__func__)), "CTK_IS_WINDOW (window)"); } while (0); |
1017 | |
1018 | button = ctk_builder_get_object (builder, "button1"); |
1019 | g_assert (button != NULL)do { if (button != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1019, ((const char*) (__func__)) , "button != NULL"); } while (0); |
1020 | g_assert (CTK_IS_BUTTON (button))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((button)); GType __t = ((ctk_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1020, ( (const char*) (__func__)), "CTK_IS_BUTTON (button)"); } while (0); |
1021 | g_assert (ctk_widget_get_parent (CTK_WIDGET(button)) != NULL)do { if (ctk_widget_get_parent (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button)), ((ctk_widget_get_type ())))))) ) != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 1021, ((const char*) (__func__)), "ctk_widget_get_parent (CTK_WIDGET(button)) != NULL" ); } while (0); |
1022 | g_assert (strcmp (ctk_buildable_get_name (CTK_BUILDABLE (ctk_widget_get_parent (CTK_WIDGET (button)))), "window1") == 0)do { if (strcmp (ctk_buildable_get_name (((((CtkBuildable*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((ctk_widget_get_parent (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((button)), ((ctk_widget_get_type ()))))))))), ((ctk_buildable_get_type ()))))))), "window1") == 0) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 1022, ((const char*) (__func__)), "strcmp (ctk_buildable_get_name (CTK_BUILDABLE (ctk_widget_get_parent (CTK_WIDGET (button)))), \"window1\") == 0" ); } while (0); |
1023 | |
1024 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1025 | g_object_unref (builder); |
1026 | |
1027 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
1028 | dialog = ctk_builder_get_object (builder, "dialog1"); |
1029 | g_assert (dialog != NULL)do { if (dialog != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1029, ((const char*) (__func__)) , "dialog != NULL"); } while (0); |
1030 | g_assert (CTK_IS_DIALOG (dialog))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((dialog)); GType __t = ((ctk_dialog_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1030, ( (const char*) (__func__)), "CTK_IS_DIALOG (dialog)"); } while (0); |
1031 | children = ctk_container_get_children (CTK_CONTAINER (dialog)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((dialog)), ((ctk_container_get_type ()))))))); |
1032 | g_assert_cmpint (g_list_length (children), ==, 2)do { gint64 __n1 = (g_list_length (children)), __n2 = (2); if (__n1 == __n2) ; else g_assertion_message_cmpint (((gchar*) 0 ), "builder.c", 1032, ((const char*) (__func__)), "g_list_length (children)" " " "==" " " "2", (guint64)__n1, "==", (guint64)__n2, 'i'); } while (0); |
1033 | g_list_free (children); |
1034 | |
1035 | vbox = ctk_builder_get_object (builder, "dialog1-vbox"); |
1036 | content_area = ctk_dialog_get_content_area (CTK_DIALOG (dialog)((((CtkDialog*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((dialog)), ((ctk_dialog_get_type ()))))))); |
1037 | g_assert (vbox != NULL)do { if (vbox != ((void*)0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 1037, ((const char*) (__func__)), "vbox != NULL" ); } while (0); |
1038 | g_assert (CTK_IS_BOX (vbox))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((vbox)); GType __t = ((ctk_box_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1038, ( (const char*) (__func__)), "CTK_IS_BOX (vbox)"); } while (0); |
1039 | g_assert (ctk_orientable_get_orientation (CTK_ORIENTABLE (vbox)) == CTK_ORIENTATION_VERTICAL)do { if (ctk_orientable_get_orientation (((((CtkOrientable*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((vbox)) , ((ctk_orientable_get_type ()))))))) == CTK_ORIENTATION_VERTICAL ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1039, ((const char*) (__func__)), "ctk_orientable_get_orientation (CTK_ORIENTABLE (vbox)) == CTK_ORIENTATION_VERTICAL" ); } while (0); |
1040 | g_assert (strcmp (ctk_buildable_get_name (CTK_BUILDABLE (ctk_widget_get_parent (CTK_WIDGET (vbox)))), "dialog1") == 0)do { if (strcmp (ctk_buildable_get_name (((((CtkBuildable*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((ctk_widget_get_parent (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((vbox)), ((ctk_widget_get_type ()))))))))), ((ctk_buildable_get_type ()))))))), "dialog1") == 0) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 1040, ((const char*) (__func__)), "strcmp (ctk_buildable_get_name (CTK_BUILDABLE (ctk_widget_get_parent (CTK_WIDGET (vbox)))), \"dialog1\") == 0" ); } while (0); |
1041 | g_assert (ctk_container_get_border_width (CTK_CONTAINER (vbox)) == 10)do { if (ctk_container_get_border_width (((((CtkContainer*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((vbox)) , ((ctk_container_get_type ()))))))) == 10) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1041, ((const char*) (__func__)) , "ctk_container_get_border_width (CTK_CONTAINER (vbox)) == 10" ); } while (0); |
1042 | g_assert (strcmp (ctk_buildable_get_name (CTK_BUILDABLE (content_area)), "dialog1-vbox") == 0)do { if (strcmp (ctk_buildable_get_name (((((CtkBuildable*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((content_area )), ((ctk_buildable_get_type ()))))))), "dialog1-vbox") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1042 , ((const char*) (__func__)), "strcmp (ctk_buildable_get_name (CTK_BUILDABLE (content_area)), \"dialog1-vbox\") == 0" ); } while (0); |
1043 | |
1044 | action_area = ctk_builder_get_object (builder, "dialog1-action_area"); |
1045 | dialog_action_area = ctk_dialog_get_action_area (CTK_DIALOG (dialog)((((CtkDialog*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((dialog)), ((ctk_dialog_get_type ()))))))); |
1046 | |
1047 | g_assert (action_area != NULL)do { if (action_area != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1047, ((const char*) (__func__)) , "action_area != NULL"); } while (0); |
1048 | g_assert (CTK_IS_BUTTON_BOX (action_area))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((action_area)); GType __t = ((ctk_button_box_get_type ()) ); gboolean __r; if (!__inst) __r = (0); else if (__inst-> g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1048, ((const char*) (__func__)), "CTK_IS_BUTTON_BOX (action_area)" ); } while (0); |
1049 | g_assert (ctk_orientable_get_orientation (CTK_ORIENTABLE (action_area)) == CTK_ORIENTATION_HORIZONTAL)do { if (ctk_orientable_get_orientation (((((CtkOrientable*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((action_area )), ((ctk_orientable_get_type ()))))))) == CTK_ORIENTATION_HORIZONTAL ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1049, ((const char*) (__func__)), "ctk_orientable_get_orientation (CTK_ORIENTABLE (action_area)) == CTK_ORIENTATION_HORIZONTAL" ); } while (0); |
1050 | g_assert (ctk_widget_get_parent (CTK_WIDGET (action_area)) != NULL)do { if (ctk_widget_get_parent (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((action_area)), ((ctk_widget_get_type ()) )))))) != ((void*)0)) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 1050, ((const char*) (__func__)), "ctk_widget_get_parent (CTK_WIDGET (action_area)) != NULL" ); } while (0); |
1051 | g_assert (ctk_container_get_border_width (CTK_CONTAINER (action_area)) == 20)do { if (ctk_container_get_border_width (((((CtkContainer*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((action_area )), ((ctk_container_get_type ()))))))) == 20) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1051, ((const char*) (__func__)) , "ctk_container_get_border_width (CTK_CONTAINER (action_area)) == 20" ); } while (0); |
1052 | g_assert (dialog_action_area != NULL)do { if (dialog_action_area != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1052, ((const char*) (__func__)) , "dialog_action_area != NULL"); } while (0); |
1053 | g_assert (ctk_buildable_get_name (CTK_BUILDABLE (action_area)) != NULL)do { if (ctk_buildable_get_name (((((CtkBuildable*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((action_area)), ((ctk_buildable_get_type ( )))))))) != ((void*)0)) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 1053, ((const char*) (__func__)), "ctk_buildable_get_name (CTK_BUILDABLE (action_area)) != NULL" ); } while (0); |
1054 | g_assert (strcmp (ctk_buildable_get_name (CTK_BUILDABLE (dialog_action_area)), "dialog1-action_area") == 0)do { if (strcmp (ctk_buildable_get_name (((((CtkBuildable*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((dialog_action_area )), ((ctk_buildable_get_type ()))))))), "dialog1-action_area" ) == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1054, ((const char*) (__func__)), "strcmp (ctk_buildable_get_name (CTK_BUILDABLE (dialog_action_area)), \"dialog1-action_area\") == 0" ); } while (0); |
1055 | ctk_widget_destroy (CTK_WIDGET (dialog)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((dialog)), ((ctk_widget_get_type ()))))))); |
1056 | g_object_unref (builder); |
1057 | } |
1058 | |
1059 | static void |
1060 | test_child_properties (void) |
1061 | { |
1062 | CtkBuilder * builder; |
1063 | const gchar buffer1[] = |
1064 | "<interface>" |
1065 | " <object class=\"CtkBox\" id=\"vbox1\">" |
1066 | " <child>" |
1067 | " <object class=\"CtkLabel\" id=\"label1\"/>" |
1068 | " <packing>" |
1069 | " <property name=\"pack-type\">start</property>" |
1070 | " </packing>" |
1071 | " </child>" |
1072 | " <child>" |
1073 | " <object class=\"CtkLabel\" id=\"label2\"/>" |
1074 | " <packing>" |
1075 | " <property name=\"pack-type\">end</property>" |
1076 | " </packing>" |
1077 | " </child>" |
1078 | " </object>" |
1079 | "</interface>"; |
1080 | |
1081 | GObject *label, *vbox; |
1082 | CtkPackType pack_type; |
1083 | |
1084 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1085 | vbox = ctk_builder_get_object (builder, "vbox1"); |
1086 | g_assert (CTK_IS_BOX (vbox))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((vbox)); GType __t = ((ctk_box_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1086, ( (const char*) (__func__)), "CTK_IS_BOX (vbox)"); } while (0); |
1087 | |
1088 | label = ctk_builder_get_object (builder, "label1"); |
1089 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1089, ( (const char*) (__func__)), "CTK_IS_LABEL (label)"); } while ( 0); |
1090 | ctk_container_child_get (CTK_CONTAINER (vbox)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((vbox)), ((ctk_container_get_type ())))))), |
1091 | CTK_WIDGET (label)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((label)), ((ctk_widget_get_type ())))))), |
1092 | "pack-type", |
1093 | &pack_type, |
1094 | NULL((void*)0)); |
1095 | g_assert (pack_type == CTK_PACK_START)do { if (pack_type == CTK_PACK_START) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1095, ((const char*) (__func__)) , "pack_type == CTK_PACK_START"); } while (0); |
1096 | |
1097 | label = ctk_builder_get_object (builder, "label2"); |
1098 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1098, ( (const char*) (__func__)), "CTK_IS_LABEL (label)"); } while ( 0); |
1099 | ctk_container_child_get (CTK_CONTAINER (vbox)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((vbox)), ((ctk_container_get_type ())))))), |
1100 | CTK_WIDGET (label)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((label)), ((ctk_widget_get_type ())))))), |
1101 | "pack-type", |
1102 | &pack_type, |
1103 | NULL((void*)0)); |
1104 | g_assert (pack_type == CTK_PACK_END)do { if (pack_type == CTK_PACK_END) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1104, ((const char*) (__func__)) , "pack_type == CTK_PACK_END"); } while (0); |
1105 | |
1106 | g_object_unref (builder); |
1107 | } |
1108 | |
1109 | static void |
1110 | test_treeview_column (void) |
1111 | { |
1112 | CtkBuilder *builder; |
1113 | const gchar buffer[] = |
1114 | "<interface>" |
1115 | "<object class=\"CtkListStore\" id=\"liststore1\">" |
1116 | " <columns>" |
1117 | " <column type=\"gchararray\"/>" |
1118 | " <column type=\"guint\"/>" |
1119 | " </columns>" |
1120 | " <data>" |
1121 | " <row>" |
1122 | " <col id=\"0\">John</col>" |
1123 | " <col id=\"1\">25</col>" |
1124 | " </row>" |
1125 | " </data>" |
1126 | "</object>" |
1127 | "<object class=\"CtkWindow\" id=\"window1\">" |
1128 | " <child>" |
1129 | " <object class=\"CtkTreeView\" id=\"treeview1\">" |
1130 | " <property name=\"visible\">True</property>" |
1131 | " <property name=\"model\">liststore1</property>" |
1132 | " <child>" |
1133 | " <object class=\"CtkTreeViewColumn\" id=\"column1\">" |
1134 | " <property name=\"title\">Test</property>" |
1135 | " <child>" |
1136 | " <object class=\"CtkCellRendererText\" id=\"renderer1\"/>" |
1137 | " <attributes>" |
1138 | " <attribute name=\"text\">1</attribute>" |
1139 | " </attributes>" |
1140 | " </child>" |
1141 | " </object>" |
1142 | " </child>" |
1143 | " <child>" |
1144 | " <object class=\"CtkTreeViewColumn\" id=\"column2\">" |
1145 | " <property name=\"title\">Number</property>" |
1146 | " <child>" |
1147 | " <object class=\"CtkCellRendererText\" id=\"renderer2\"/>" |
1148 | " <attributes>" |
1149 | " <attribute name=\"text\">0</attribute>" |
1150 | " </attributes>" |
1151 | " </child>" |
1152 | " </object>" |
1153 | " </child>" |
1154 | " </object>" |
1155 | " </child>" |
1156 | "</object>" |
1157 | "</interface>"; |
1158 | GObject *window, *treeview; |
1159 | CtkTreeViewColumn *column; |
1160 | GList *renderers; |
1161 | GObject *renderer; |
1162 | |
1163 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1164 | treeview = ctk_builder_get_object (builder, "treeview1"); |
1165 | g_assert (treeview)do { if (treeview) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1165, ((const char*) (__func__)), "treeview" ); } while (0); |
1166 | g_assert (CTK_IS_TREE_VIEW (treeview))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((treeview)); GType __t = ((ctk_tree_view_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1166, ( (const char*) (__func__)), "CTK_IS_TREE_VIEW (treeview)"); } while (0); |
1167 | column = ctk_tree_view_get_column (CTK_TREE_VIEW (treeview)((((CtkTreeView*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((treeview)), ((ctk_tree_view_get_type ())))))), 0); |
1168 | g_assert (CTK_IS_TREE_VIEW_COLUMN (column))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((column)); GType __t = ((ctk_tree_view_column_get_type () )); gboolean __r; if (!__inst) __r = (0); else if (__inst-> g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1168, ((const char*) (__func__)), "CTK_IS_TREE_VIEW_COLUMN (column)" ); } while (0); |
1169 | g_assert (strcmp (ctk_tree_view_column_get_title (column), "Test") == 0)do { if (strcmp (ctk_tree_view_column_get_title (column), "Test" ) == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1169, ((const char*) (__func__)), "strcmp (ctk_tree_view_column_get_title (column), \"Test\") == 0" ); } while (0); |
1170 | |
1171 | renderers = ctk_cell_layout_get_cells (CTK_CELL_LAYOUT (column)((((CtkCellLayout*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((column)), ((ctk_cell_layout_get_type ()))))))); |
1172 | g_assert (g_list_length (renderers) == 1)do { if (g_list_length (renderers) == 1) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1172, ((const char*) (__func__)) , "g_list_length (renderers) == 1"); } while (0); |
1173 | renderer = g_list_nth_data (renderers, 0); |
1174 | g_assert (renderer)do { if (renderer) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1174, ((const char*) (__func__)), "renderer" ); } while (0); |
1175 | g_assert (CTK_IS_CELL_RENDERER_TEXT (renderer))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((renderer)); GType __t = ((ctk_cell_renderer_text_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst-> g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1175, ((const char*) (__func__)), "CTK_IS_CELL_RENDERER_TEXT (renderer)" ); } while (0); |
1176 | g_list_free (renderers); |
1177 | |
1178 | window = ctk_builder_get_object (builder, "window1"); |
1179 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1180 | |
1181 | g_object_unref (builder); |
1182 | } |
1183 | |
1184 | static void |
1185 | test_icon_view (void) |
1186 | { |
1187 | CtkBuilder *builder; |
1188 | const gchar buffer[] = |
1189 | "<interface>" |
1190 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
1191 | " <columns>" |
1192 | " <column type=\"gchararray\"/>" |
1193 | " <column type=\"GdkPixbuf\"/>" |
1194 | " </columns>" |
1195 | " <data>" |
1196 | " <row>" |
1197 | " <col id=\"0\">test</col>" |
1198 | " </row>" |
1199 | " </data>" |
1200 | " </object>" |
1201 | " <object class=\"CtkWindow\" id=\"window1\">" |
1202 | " <child>" |
1203 | " <object class=\"CtkIconView\" id=\"iconview1\">" |
1204 | " <property name=\"model\">liststore1</property>" |
1205 | " <property name=\"text-column\">0</property>" |
1206 | " <property name=\"pixbuf-column\">1</property>" |
1207 | " <property name=\"visible\">True</property>" |
1208 | " <child>" |
1209 | " <object class=\"CtkCellRendererText\" id=\"renderer1\"/>" |
1210 | " <attributes>" |
1211 | " <attribute name=\"text\">0</attribute>" |
1212 | " </attributes>" |
1213 | " </child>" |
1214 | " </object>" |
1215 | " </child>" |
1216 | " </object>" |
1217 | "</interface>"; |
1218 | GObject *window, *iconview; |
1219 | |
1220 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1221 | iconview = ctk_builder_get_object (builder, "iconview1"); |
1222 | g_assert (iconview)do { if (iconview) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1222, ((const char*) (__func__)), "iconview" ); } while (0); |
1223 | g_assert (CTK_IS_ICON_VIEW (iconview))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((iconview)); GType __t = ((ctk_icon_view_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1223, ( (const char*) (__func__)), "CTK_IS_ICON_VIEW (iconview)"); } while (0); |
1224 | |
1225 | window = ctk_builder_get_object (builder, "window1"); |
1226 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1227 | g_object_unref (builder); |
1228 | } |
1229 | |
1230 | static void |
1231 | test_combo_box (void) |
1232 | { |
1233 | CtkBuilder *builder; |
1234 | const gchar buffer[] = |
1235 | "<interface>" |
1236 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
1237 | " <columns>" |
1238 | " <column type=\"guint\"/>" |
1239 | " <column type=\"gchararray\"/>" |
1240 | " </columns>" |
1241 | " <data>" |
1242 | " <row>" |
1243 | " <col id=\"0\">1</col>" |
1244 | " <col id=\"1\">Foo</col>" |
1245 | " </row>" |
1246 | " <row>" |
1247 | " <col id=\"0\">2</col>" |
1248 | " <col id=\"1\">Bar</col>" |
1249 | " </row>" |
1250 | " </data>" |
1251 | " </object>" |
1252 | " <object class=\"CtkWindow\" id=\"window1\">" |
1253 | " <child>" |
1254 | " <object class=\"CtkComboBox\" id=\"combobox1\">" |
1255 | " <property name=\"model\">liststore1</property>" |
1256 | " <property name=\"visible\">True</property>" |
1257 | " <child>" |
1258 | " <object class=\"CtkCellRendererText\" id=\"renderer1\"/>" |
1259 | " <attributes>" |
1260 | " <attribute name=\"text\">0</attribute>" |
1261 | " </attributes>" |
1262 | " </child>" |
1263 | " <child>" |
1264 | " <object class=\"CtkCellRendererText\" id=\"renderer2\"/>" |
1265 | " <attributes>" |
1266 | " <attribute name=\"text\">1</attribute>" |
1267 | " </attributes>" |
1268 | " </child>" |
1269 | " </object>" |
1270 | " </child>" |
1271 | " </object>" |
1272 | "</interface>"; |
1273 | GObject *window, *combobox; |
1274 | |
1275 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1276 | combobox = ctk_builder_get_object (builder, "combobox1"); |
1277 | g_assert (combobox)do { if (combobox) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1277, ((const char*) (__func__)), "combobox" ); } while (0); |
1278 | |
1279 | window = ctk_builder_get_object (builder, "window1"); |
1280 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1281 | |
1282 | g_object_unref (builder); |
1283 | } |
1284 | |
1285 | #if 0 |
1286 | static void |
1287 | test_combo_box_entry (void) |
1288 | { |
1289 | CtkBuilder *builder; |
1290 | const gchar buffer[] = |
1291 | "<interface>" |
1292 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
1293 | " <columns>" |
1294 | " <column type=\"guint\"/>" |
1295 | " <column type=\"gchararray\"/>" |
1296 | " </columns>" |
1297 | " <data>" |
1298 | " <row>" |
1299 | " <col id=\"0\">1</col>" |
1300 | " <col id=\"1\">Foo</col>" |
1301 | " </row>" |
1302 | " <row>" |
1303 | " <col id=\"0\">2</col>" |
1304 | " <col id=\"1\">Bar</col>" |
1305 | " </row>" |
1306 | " </data>" |
1307 | " </object>" |
1308 | " <object class=\"CtkWindow\" id=\"window1\">" |
1309 | " <child>" |
1310 | " <object class=\"CtkComboBox\" id=\"comboboxentry1\">" |
1311 | " <property name=\"model\">liststore1</property>" |
1312 | " <property name=\"has-entry\">True</property>" |
1313 | " <property name=\"visible\">True</property>" |
1314 | " <child>" |
1315 | " <object class=\"CtkCellRendererText\" id=\"renderer1\"/>" |
1316 | " <attributes>" |
1317 | " <attribute name=\"text\">0</attribute>" |
1318 | " </attributes>" |
1319 | " </child>" |
1320 | " <child>" |
1321 | " <object class=\"CtkCellRendererText\" id=\"renderer2\"/>" |
1322 | " <attributes>" |
1323 | " <attribute name=\"text\">1</attribute>" |
1324 | " </attributes>" |
1325 | " </child>" |
1326 | " </object>" |
1327 | " </child>" |
1328 | " </object>" |
1329 | "</interface>"; |
1330 | GObject *window, *combobox, *renderer; |
1331 | gchar *text; |
1332 | |
1333 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1334 | combobox = ctk_builder_get_object (builder, "comboboxentry1"); |
1335 | g_assert (combobox)do { if (combobox) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1335, ((const char*) (__func__)), "combobox" ); } while (0); |
1336 | |
1337 | renderer = ctk_builder_get_object (builder, "renderer2"); |
1338 | g_assert (renderer)do { if (renderer) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1338, ((const char*) (__func__)), "renderer" ); } while (0); |
1339 | g_object_get (renderer, "text", &text, NULL((void*)0)); |
1340 | g_assert (text)do { if (text) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1340, ((const char*) (__func__)), "text"); } while (0); |
1341 | g_assert (strcmp (text, "Bar") == 0)do { if (strcmp (text, "Bar") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1341, ((const char*) (__func__)) , "strcmp (text, \"Bar\") == 0"); } while (0); |
1342 | g_free (text); |
1343 | |
1344 | renderer = ctk_builder_get_object (builder, "renderer1"); |
1345 | g_assert (renderer)do { if (renderer) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1345, ((const char*) (__func__)), "renderer" ); } while (0); |
1346 | g_object_get (renderer, "text", &text, NULL((void*)0)); |
1347 | g_assert (text)do { if (text) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1347, ((const char*) (__func__)), "text"); } while (0); |
1348 | g_assert (strcmp (text, "2") == 0)do { if (strcmp (text, "2") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1348, ((const char*) (__func__)) , "strcmp (text, \"2\") == 0"); } while (0); |
1349 | g_free (text); |
1350 | |
1351 | window = ctk_builder_get_object (builder, "window1"); |
1352 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1353 | |
1354 | g_object_unref (builder); |
1355 | } |
1356 | #endif |
1357 | |
1358 | static void |
1359 | test_cell_view (void) |
1360 | { |
1361 | CtkBuilder *builder; |
1362 | const gchar *buffer = |
1363 | "<interface>" |
1364 | " <object class=\"CtkListStore\" id=\"liststore1\">" |
1365 | " <columns>" |
1366 | " <column type=\"gchararray\"/>" |
1367 | " </columns>" |
1368 | " <data>" |
1369 | " <row>" |
1370 | " <col id=\"0\">test</col>" |
1371 | " </row>" |
1372 | " </data>" |
1373 | " </object>" |
1374 | " <object class=\"CtkWindow\" id=\"window1\">" |
1375 | " <child>" |
1376 | " <object class=\"CtkCellView\" id=\"cellview1\">" |
1377 | " <property name=\"visible\">True</property>" |
1378 | " <property name=\"model\">liststore1</property>" |
1379 | " <accelerator key=\"f\" modifiers=\"CDK_CONTROL_MASK\" signal=\"grab_focus\"/>" |
1380 | " <child>" |
1381 | " <object class=\"CtkCellRendererText\" id=\"renderer1\"/>" |
1382 | " <attributes>" |
1383 | " <attribute name=\"text\">0</attribute>" |
1384 | " </attributes>" |
1385 | " </child>" |
1386 | " </object>" |
1387 | " </child>" |
1388 | " </object>" |
1389 | "</interface>"; |
1390 | GObject *cellview; |
1391 | GObject *model, *window; |
1392 | CtkTreePath *path; |
1393 | GList *renderers; |
1394 | |
1395 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1396 | cellview = ctk_builder_get_object (builder, "cellview1"); |
1397 | g_assert (builder)do { if (builder) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 1397, ((const char*) (__func__)), "builder"); } while (0); |
1398 | g_assert (cellview)do { if (cellview) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1398, ((const char*) (__func__)), "cellview" ); } while (0); |
1399 | g_assert (CTK_IS_CELL_VIEW (cellview))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((cellview)); GType __t = ((ctk_cell_view_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1399, ( (const char*) (__func__)), "CTK_IS_CELL_VIEW (cellview)"); } while (0); |
1400 | g_object_get (cellview, "model", &model, NULL((void*)0)); |
1401 | g_assert (model)do { if (model) ; else g_assertion_message_expr (((gchar*) 0) , "builder.c", 1401, ((const char*) (__func__)), "model"); } while (0); |
1402 | g_assert (CTK_IS_TREE_MODEL (model))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((model)); GType __t = ((ctk_tree_model_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1402, ( (const char*) (__func__)), "CTK_IS_TREE_MODEL (model)"); } while (0); |
1403 | g_object_unref (model); |
1404 | path = ctk_tree_path_new_first (); |
1405 | ctk_cell_view_set_displayed_row (CTK_CELL_VIEW (cellview)((((CtkCellView*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((cellview)), ((ctk_cell_view_get_type ())))))), path); |
1406 | |
1407 | renderers = ctk_cell_layout_get_cells (CTK_CELL_LAYOUT (cellview)((((CtkCellLayout*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((cellview)), ((ctk_cell_layout_get_type ()))))))); |
1408 | g_assert (renderers)do { if (renderers) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1408, ((const char*) (__func__)), "renderers" ); } while (0); |
1409 | g_assert (g_list_length (renderers) == 1)do { if (g_list_length (renderers) == 1) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1409, ((const char*) (__func__)) , "g_list_length (renderers) == 1"); } while (0); |
1410 | |
1411 | window = ctk_builder_get_object (builder, "window1"); |
1412 | g_assert (window)do { if (window) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 1412, ((const char*) (__func__)), "window"); } while (0); |
1413 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1414 | |
1415 | g_object_unref (builder); |
1416 | } |
1417 | |
1418 | static void |
1419 | test_dialog (void) |
1420 | { |
1421 | CtkBuilder * builder; |
1422 | const gchar buffer1[] = |
1423 | "<interface>" |
1424 | " <object class=\"CtkDialog\" id=\"dialog1\">" |
1425 | " <child internal-child=\"vbox\">" |
1426 | " <object class=\"CtkVBox\" id=\"dialog1-vbox\">" |
1427 | " <child internal-child=\"action_area\">" |
1428 | " <object class=\"CtkHButtonBox\" id=\"dialog1-action_area\">" |
1429 | " <child>" |
1430 | " <object class=\"CtkButton\" id=\"button_cancel\"/>" |
1431 | " </child>" |
1432 | " <child>" |
1433 | " <object class=\"CtkButton\" id=\"button_ok\"/>" |
1434 | " </child>" |
1435 | " </object>" |
1436 | " </child>" |
1437 | " </object>" |
1438 | " </child>" |
1439 | " <action-widgets>" |
1440 | " <action-widget response=\"3\">button_ok</action-widget>" |
1441 | " <action-widget response=\"-5\">button_cancel</action-widget>" |
1442 | " </action-widgets>" |
1443 | " </object>" |
1444 | "</interface>"; |
1445 | |
1446 | GObject *dialog1; |
1447 | GObject *button_ok; |
1448 | GObject *button_cancel; |
1449 | |
1450 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1451 | dialog1 = ctk_builder_get_object (builder, "dialog1"); |
1452 | button_ok = ctk_builder_get_object (builder, "button_ok"); |
1453 | g_assert (ctk_dialog_get_response_for_widget (CTK_DIALOG (dialog1), CTK_WIDGET (button_ok)) == 3)do { if (ctk_dialog_get_response_for_widget (((((CtkDialog*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((dialog1 )), ((ctk_dialog_get_type ())))))), ((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button_ok)), ((ctk_widget_get_type ()))) )))) == 3) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1453, ((const char*) (__func__)), "ctk_dialog_get_response_for_widget (CTK_DIALOG (dialog1), CTK_WIDGET (button_ok)) == 3" ); } while (0); |
1454 | button_cancel = ctk_builder_get_object (builder, "button_cancel"); |
1455 | g_assert (ctk_dialog_get_response_for_widget (CTK_DIALOG (dialog1), CTK_WIDGET (button_cancel)) == -5)do { if (ctk_dialog_get_response_for_widget (((((CtkDialog*) ( void *) g_type_check_instance_cast ((GTypeInstance*) ((dialog1 )), ((ctk_dialog_get_type ())))))), ((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button_cancel)), ((ctk_widget_get_type ( )))))))) == -5) ; else g_assertion_message_expr (((gchar*) 0) , "builder.c", 1455, ((const char*) (__func__)), "ctk_dialog_get_response_for_widget (CTK_DIALOG (dialog1), CTK_WIDGET (button_cancel)) == -5" ); } while (0); |
1456 | |
1457 | ctk_widget_destroy (CTK_WIDGET (dialog1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((dialog1)), ((ctk_widget_get_type ()))))))); |
1458 | g_object_unref (builder); |
1459 | } |
1460 | |
1461 | static void |
1462 | test_message_dialog (void) |
1463 | { |
1464 | CtkBuilder * builder; |
1465 | const gchar buffer1[] = |
1466 | "<interface>" |
1467 | " <object class=\"CtkMessageDialog\" id=\"dialog1\">" |
1468 | " <child internal-child=\"message_area\">" |
1469 | " <object class=\"CtkVBox\" id=\"dialog-message-area\">" |
1470 | " <child>" |
1471 | " <object class=\"CtkExpander\" id=\"expander\"/>" |
1472 | " </child>" |
1473 | " </object>" |
1474 | " </child>" |
1475 | " </object>" |
1476 | "</interface>"; |
1477 | |
1478 | GObject *dialog1; |
1479 | GObject *expander; |
1480 | |
1481 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1482 | dialog1 = ctk_builder_get_object (builder, "dialog1"); |
1483 | expander = ctk_builder_get_object (builder, "expander"); |
1484 | g_assert (CTK_IS_EXPANDER (expander))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((expander)); GType __t = ((ctk_expander_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1484, ( (const char*) (__func__)), "CTK_IS_EXPANDER (expander)"); } while (0); |
1485 | g_assert (ctk_widget_get_parent (CTK_WIDGET (expander)) == ctk_message_dialog_get_message_area (CTK_MESSAGE_DIALOG (dialog1)))do { if (ctk_widget_get_parent (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((expander)), ((ctk_widget_get_type ())))) ))) == ctk_message_dialog_get_message_area (((((CtkMessageDialog *) (void *) g_type_check_instance_cast ((GTypeInstance*) ((dialog1 )), ((ctk_message_dialog_get_type ())))))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1485, ((const char*) (__func__)) , "ctk_widget_get_parent (CTK_WIDGET (expander)) == ctk_message_dialog_get_message_area (CTK_MESSAGE_DIALOG (dialog1))" ); } while (0); |
1486 | |
1487 | ctk_widget_destroy (CTK_WIDGET (dialog1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((dialog1)), ((ctk_widget_get_type ()))))))); |
1488 | g_object_unref (builder); |
1489 | } |
1490 | |
1491 | static void |
1492 | test_accelerators (void) |
1493 | { |
1494 | CtkBuilder *builder; |
1495 | const gchar *buffer = |
1496 | "<interface>" |
1497 | " <object class=\"CtkWindow\" id=\"window1\">" |
1498 | " <child>" |
1499 | " <object class=\"CtkButton\" id=\"button1\">" |
1500 | " <accelerator key=\"q\" modifiers=\"CDK_CONTROL_MASK\" signal=\"clicked\"/>" |
1501 | " </object>" |
1502 | " </child>" |
1503 | " </object>" |
1504 | "</interface>"; |
1505 | const gchar *buffer2 = |
1506 | "<interface>" |
1507 | " <object class=\"CtkWindow\" id=\"window1\">" |
1508 | " <child>" |
1509 | " <object class=\"CtkTreeView\" id=\"treeview1\">" |
1510 | " <signal name=\"cursor-changed\" handler=\"ctk_main_quit\"/>" |
1511 | " <accelerator key=\"f\" modifiers=\"CDK_CONTROL_MASK\" signal=\"grab_focus\"/>" |
1512 | " </object>" |
1513 | " </child>" |
1514 | " </object>" |
1515 | "</interface>"; |
1516 | GObject *window1; |
1517 | GSList *accel_groups; |
1518 | GObject *accel_group; |
1519 | |
1520 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1521 | window1 = ctk_builder_get_object (builder, "window1"); |
1522 | g_assert (window1)do { if (window1) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 1522, ((const char*) (__func__)), "window1"); } while (0); |
1523 | g_assert (CTK_IS_WINDOW (window1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window1)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1523, ( (const char*) (__func__)), "CTK_IS_WINDOW (window1)"); } while (0); |
1524 | |
1525 | accel_groups = ctk_accel_groups_from_object (window1); |
1526 | g_assert (g_slist_length (accel_groups) == 1)do { if (g_slist_length (accel_groups) == 1) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1526, ((const char*) (__func__)) , "g_slist_length (accel_groups) == 1"); } while (0); |
1527 | accel_group = g_slist_nth_data (accel_groups, 0); |
1528 | g_assert (accel_group)do { if (accel_group) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 1528, ((const char*) (__func__)), "accel_group" ); } while (0); |
1529 | |
1530 | ctk_widget_destroy (CTK_WIDGET (window1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window1)), ((ctk_widget_get_type ()))))))); |
1531 | g_object_unref (builder); |
1532 | |
1533 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
1534 | window1 = ctk_builder_get_object (builder, "window1"); |
1535 | g_assert (window1)do { if (window1) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 1535, ((const char*) (__func__)), "window1"); } while (0); |
1536 | g_assert (CTK_IS_WINDOW (window1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((window1)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1536, ( (const char*) (__func__)), "CTK_IS_WINDOW (window1)"); } while (0); |
1537 | |
1538 | accel_groups = ctk_accel_groups_from_object (window1); |
1539 | g_assert (g_slist_length (accel_groups) == 1)do { if (g_slist_length (accel_groups) == 1) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1539, ((const char*) (__func__)) , "g_slist_length (accel_groups) == 1"); } while (0); |
1540 | accel_group = g_slist_nth_data (accel_groups, 0); |
1541 | g_assert (accel_group)do { if (accel_group) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 1541, ((const char*) (__func__)), "accel_group" ); } while (0); |
1542 | |
1543 | ctk_widget_destroy (CTK_WIDGET (window1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window1)), ((ctk_widget_get_type ()))))))); |
1544 | g_object_unref (builder); |
1545 | } |
1546 | |
1547 | static void |
1548 | test_widget (void) |
1549 | { |
1550 | const gchar *buffer = |
1551 | "<interface>" |
1552 | " <object class=\"CtkWindow\" id=\"window1\">" |
1553 | " <child>" |
1554 | " <object class=\"CtkButton\" id=\"button1\">" |
1555 | " <property name=\"can-focus\">True</property>" |
1556 | " <property name=\"has-focus\">True</property>" |
1557 | " </object>" |
1558 | " </child>" |
1559 | " </object>" |
1560 | "</interface>"; |
1561 | const gchar *buffer2 = |
1562 | "<interface>" |
1563 | " <object class=\"CtkWindow\" id=\"window1\">" |
1564 | " <child>" |
1565 | " <object class=\"CtkButton\" id=\"button1\">" |
1566 | " <property name=\"can-default\">True</property>" |
1567 | " <property name=\"has-default\">True</property>" |
1568 | " </object>" |
1569 | " </child>" |
1570 | " </object>" |
1571 | "</interface>"; |
1572 | const gchar *buffer3 = |
1573 | "<interface>" |
1574 | " <object class=\"CtkWindow\" id=\"window1\">" |
1575 | " <child>" |
1576 | " <object class=\"CtkVBox\" id=\"vbox1\">" |
1577 | " <child>" |
1578 | " <object class=\"CtkLabel\" id=\"label1\">" |
1579 | " <child internal-child=\"accessible\">" |
1580 | " <object class=\"AtkObject\" id=\"a11y-label1\">" |
1581 | " <property name=\"AtkObject::accessible-name\">A Label</property>" |
1582 | " </object>" |
1583 | " </child>" |
1584 | " <accessibility>" |
1585 | " <relation target=\"button1\" type=\"label-for\"/>" |
1586 | " </accessibility>" |
1587 | " </object>" |
1588 | " </child>" |
1589 | " <child>" |
1590 | " <object class=\"CtkButton\" id=\"button1\">" |
1591 | " <accessibility>" |
1592 | " <action action_name=\"click\" description=\"Sliff\"/>" |
1593 | " <action action_name=\"clack\" translatable=\"yes\">Sniff</action>" |
1594 | " </accessibility>" |
1595 | " </object>" |
1596 | " </child>" |
1597 | " </object>" |
1598 | " </child>" |
1599 | " </object>" |
1600 | "</interface>"; |
1601 | CtkBuilder *builder; |
1602 | GObject *window1, *button1, *label1; |
1603 | AtkObject *accessible; |
1604 | AtkRelationSet *relation_set; |
1605 | AtkRelation *relation; |
1606 | char *name; |
1607 | |
1608 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
1609 | button1 = ctk_builder_get_object (builder, "button1"); |
1610 | |
1611 | #if 0 |
1612 | g_assert (ctk_widget_has_focus (CTK_WIDGET (button1)))do { if (ctk_widget_has_focus (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button1)), ((ctk_widget_get_type ()))))) ))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1612, ((const char*) (__func__)), "ctk_widget_has_focus (CTK_WIDGET (button1))" ); } while (0); |
1613 | #endif |
1614 | window1 = ctk_builder_get_object (builder, "window1"); |
1615 | ctk_widget_destroy (CTK_WIDGET (window1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window1)), ((ctk_widget_get_type ()))))))); |
1616 | |
1617 | g_object_unref (builder); |
1618 | |
1619 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
1620 | button1 = ctk_builder_get_object (builder, "button1"); |
1621 | |
1622 | g_assert (ctk_widget_get_receives_default (CTK_WIDGET (button1)))do { if (ctk_widget_get_receives_default (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button1)), ((ctk_widget_get_type ())))))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1622, ((const char*) (__func__)) , "ctk_widget_get_receives_default (CTK_WIDGET (button1))"); } while (0); |
1623 | |
1624 | g_object_unref (builder); |
1625 | |
1626 | builder = builder_new_from_string (buffer3, -1, NULL((void*)0)); |
1627 | |
1628 | window1 = ctk_builder_get_object (builder, "window1"); |
1629 | label1 = ctk_builder_get_object (builder, "label1"); |
1630 | |
1631 | accessible = ctk_widget_get_accessible (CTK_WIDGET (label1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((label1)), ((ctk_widget_get_type ()))))))); |
1632 | relation_set = atk_object_ref_relation_set (accessible); |
1633 | g_return_if_fail (atk_relation_set_get_n_relations (relation_set) == 1)do { if ((atk_relation_set_get_n_relations (relation_set) == 1 )) { } else { g_return_if_fail_warning (((gchar*) 0), ((const char*) (__func__)), "atk_relation_set_get_n_relations (relation_set) == 1" ); return; } } while (0); |
1634 | relation = atk_relation_set_get_relation (relation_set, 0); |
1635 | g_return_if_fail (relation != NULL)do { if ((relation != ((void*)0))) { } else { g_return_if_fail_warning (((gchar*) 0), ((const char*) (__func__)), "relation != NULL" ); return; } } while (0); |
1636 | g_return_if_fail (ATK_IS_RELATION (relation))do { if (((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((relation)); GType __t = ((atk_relation_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; })))))) { } else { g_return_if_fail_warning (((gchar*) 0), ((const char* ) (__func__)), "ATK_IS_RELATION (relation)"); return; } } while (0); |
1637 | g_return_if_fail (atk_relation_get_relation_type (relation) != ATK_RELATION_LABELLED_BY)do { if ((atk_relation_get_relation_type (relation) != ATK_RELATION_LABELLED_BY )) { } else { g_return_if_fail_warning (((gchar*) 0), ((const char*) (__func__)), "atk_relation_get_relation_type (relation) != ATK_RELATION_LABELLED_BY" ); return; } } while (0); |
1638 | g_object_unref (relation_set); |
1639 | |
1640 | g_object_get (G_OBJECT (accessible)((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((accessible)), (((GType) ((20) << (2)))))))), "accessible-name", &name, NULL((void*)0)); |
1641 | g_return_if_fail (strcmp (name, "A Label") == 0)do { if ((strcmp (name, "A Label") == 0)) { } else { g_return_if_fail_warning (((gchar*) 0), ((const char*) (__func__)), "strcmp (name, \"A Label\") == 0" ); return; } } while (0); |
1642 | g_free (name); |
1643 | |
1644 | ctk_widget_destroy (CTK_WIDGET (window1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window1)), ((ctk_widget_get_type ()))))))); |
1645 | g_object_unref (builder); |
1646 | } |
1647 | |
1648 | static void |
1649 | test_window (void) |
1650 | { |
1651 | const gchar *buffer1 = |
1652 | "<interface>" |
1653 | " <object class=\"CtkWindow\" id=\"window1\">" |
1654 | " <property name=\"title\"></property>" |
1655 | " </object>" |
1656 | "</interface>"; |
1657 | const gchar *buffer2 = |
1658 | "<interface>" |
1659 | " <object class=\"CtkWindow\" id=\"window1\">" |
1660 | " </object>" |
1661 | "</interface>"; |
1662 | CtkBuilder *builder; |
1663 | GObject *window1; |
1664 | gchar *title; |
1665 | |
1666 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1667 | window1 = ctk_builder_get_object (builder, "window1"); |
1668 | g_object_get (window1, "title", &title, NULL((void*)0)); |
1669 | g_assert (strcmp (title, "") == 0)do { if (strcmp (title, "") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1669, ((const char*) (__func__)) , "strcmp (title, \"\") == 0"); } while (0); |
1670 | g_free (title); |
1671 | ctk_widget_destroy (CTK_WIDGET (window1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window1)), ((ctk_widget_get_type ()))))))); |
1672 | g_object_unref (builder); |
1673 | |
1674 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
1675 | window1 = ctk_builder_get_object (builder, "window1"); |
1676 | ctk_widget_destroy (CTK_WIDGET (window1)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window1)), ((ctk_widget_get_type ()))))))); |
1677 | g_object_unref (builder); |
1678 | } |
1679 | |
1680 | static void |
1681 | test_value_from_string (void) |
1682 | { |
1683 | GValue value = G_VALUE_INIT{ 0, { { 0 } } }; |
1684 | GError *error = NULL((void*)0); |
1685 | CtkBuilder *builder; |
1686 | |
1687 | builder = ctk_builder_new (); |
1688 | |
1689 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_STRING, "test", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((16) << (2))), "test", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1689, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_STRING, \"test\", &value, &error)" ); } while (0); |
1690 | g_assert (G_VALUE_HOLDS_STRING (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((16) << (2))) ); gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1690, ((const char*) (__func__)), "G_VALUE_HOLDS_STRING (&value)" ); } while (0); |
1691 | g_assert (strcmp (g_value_get_string (&value), "test") == 0)do { if (strcmp (g_value_get_string (&value), "test") == 0 ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1691, ((const char*) (__func__)), "strcmp (g_value_get_string (&value), \"test\") == 0" ); } while (0); |
1692 | g_value_unset (&value); |
1693 | |
1694 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "true", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "true", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1694, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"true\", &value, &error)" ); } while (0); |
1695 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1695, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1696 | g_assert (g_value_get_boolean (&value) == TRUE)do { if (g_value_get_boolean (&value) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1696, ((const char*) (__func__)) , "g_value_get_boolean (&value) == TRUE"); } while (0); |
1697 | g_value_unset (&value); |
1698 | |
1699 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "false", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "false", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1699, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"false\", &value, &error)" ); } while (0); |
1700 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1700, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1701 | g_assert (g_value_get_boolean (&value) == FALSE)do { if (g_value_get_boolean (&value) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1701, ((const char*) (__func__)) , "g_value_get_boolean (&value) == FALSE"); } while (0); |
1702 | g_value_unset (&value); |
1703 | |
1704 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "yes", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "yes", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1704, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"yes\", &value, &error)" ); } while (0); |
1705 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1705, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1706 | g_assert (g_value_get_boolean (&value) == TRUE)do { if (g_value_get_boolean (&value) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1706, ((const char*) (__func__)) , "g_value_get_boolean (&value) == TRUE"); } while (0); |
1707 | g_value_unset (&value); |
1708 | |
1709 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "no", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "no", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1709, ((const char*) (__func__)) , "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"no\", &value, &error)" ); } while (0); |
1710 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1710, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1711 | g_assert (g_value_get_boolean (&value) == FALSE)do { if (g_value_get_boolean (&value) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1711, ((const char*) (__func__)) , "g_value_get_boolean (&value) == FALSE"); } while (0); |
1712 | g_value_unset (&value); |
1713 | |
1714 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "0", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "0", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1714, ((const char*) (__func__)) , "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"0\", &value, &error)" ); } while (0); |
1715 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1715, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1716 | g_assert (g_value_get_boolean (&value) == FALSE)do { if (g_value_get_boolean (&value) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1716, ((const char*) (__func__)) , "g_value_get_boolean (&value) == FALSE"); } while (0); |
1717 | g_value_unset (&value); |
1718 | |
1719 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "1", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "1", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1719, ((const char*) (__func__)) , "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"1\", &value, &error)" ); } while (0); |
1720 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1720, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1721 | g_assert (g_value_get_boolean (&value) == TRUE)do { if (g_value_get_boolean (&value) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1721, ((const char*) (__func__)) , "g_value_get_boolean (&value) == TRUE"); } while (0); |
1722 | g_value_unset (&value); |
1723 | |
1724 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "tRuE", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "tRuE", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1724, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"tRuE\", &value, &error)" ); } while (0); |
1725 | g_assert (G_VALUE_HOLDS_BOOLEAN (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((5) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1725, ((const char*) (__func__)), "G_VALUE_HOLDS_BOOLEAN (&value)" ); } while (0); |
1726 | g_assert (g_value_get_boolean (&value) == TRUE)do { if (g_value_get_boolean (&value) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1726, ((const char*) (__func__)) , "g_value_get_boolean (&value) == TRUE"); } while (0); |
1727 | g_value_unset (&value); |
1728 | |
1729 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "blaurgh", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "blaurgh", &value, &error) == ( 0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1729, ((const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"blaurgh\", &value, &error) == FALSE" ); } while (0); |
1730 | g_value_unset (&value); |
1731 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1731, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1732 | g_error_free (error); |
1733 | error = NULL((void*)0); |
1734 | |
1735 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "yess", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "yess", &value, &error) == (0) ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1735, ((const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"yess\", &value, &error) == FALSE" ); } while (0); |
1736 | g_value_unset (&value); |
1737 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1737, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1738 | g_error_free (error); |
1739 | error = NULL((void*)0); |
1740 | |
1741 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "trueee", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "trueee", &value, &error) == ( 0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1741, ((const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"trueee\", &value, &error) == FALSE" ); } while (0); |
1742 | g_value_unset (&value); |
1743 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1743, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1744 | g_error_free (error); |
1745 | error = NULL((void*)0); |
1746 | |
1747 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, "", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((5) << (2))), "", &value, &error) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1747, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_BOOLEAN, \"\", &value, &error) == FALSE" ); } while (0); |
1748 | g_value_unset (&value); |
1749 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1749, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1750 | g_error_free (error); |
1751 | error = NULL((void*)0); |
1752 | |
1753 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_INT, "12345", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((6) << (2))), "12345", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1753, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_INT, \"12345\", &value, &error)" ); } while (0); |
1754 | g_assert (G_VALUE_HOLDS_INT (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((6) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1754, ((const char*) (__func__)), "G_VALUE_HOLDS_INT (&value)" ); } while (0); |
1755 | g_assert (g_value_get_int (&value) == 12345)do { if (g_value_get_int (&value) == 12345) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1755, ((const char*) (__func__)) , "g_value_get_int (&value) == 12345"); } while (0); |
1756 | g_value_unset (&value); |
1757 | |
1758 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_LONG, "9912345", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((8) << (2))), "9912345", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1758, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_LONG, \"9912345\", &value, &error)" ); } while (0); |
1759 | g_assert (G_VALUE_HOLDS_LONG (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((8) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1759, ((const char*) (__func__)), "G_VALUE_HOLDS_LONG (&value)" ); } while (0); |
1760 | g_assert (g_value_get_long (&value) == 9912345)do { if (g_value_get_long (&value) == 9912345) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1760, ((const char*) (__func__)) , "g_value_get_long (&value) == 9912345"); } while (0); |
1761 | g_value_unset (&value); |
1762 | |
1763 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_UINT, "2345", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((7) << (2))), "2345", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1763, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_UINT, \"2345\", &value, &error)" ); } while (0); |
1764 | g_assert (G_VALUE_HOLDS_UINT (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((7) << (2)))) ; gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1764, ((const char*) (__func__)), "G_VALUE_HOLDS_UINT (&value)" ); } while (0); |
1765 | g_assert (g_value_get_uint (&value) == 2345)do { if (g_value_get_uint (&value) == 2345) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1765, ((const char*) (__func__)) , "g_value_get_uint (&value) == 2345"); } while (0); |
1766 | g_value_unset (&value); |
1767 | |
1768 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_INT64, "-2345", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((10) << (2))), "-2345", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1768, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_INT64, \"-2345\", &value, &error)" ); } while (0); |
1769 | g_assert (G_VALUE_HOLDS_INT64 (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((10) << (2))) ); gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1769, ((const char*) (__func__)), "G_VALUE_HOLDS_INT64 (&value)" ); } while (0); |
1770 | g_assert (g_value_get_int64 (&value) == -2345)do { if (g_value_get_int64 (&value) == -2345) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1770, ((const char*) (__func__)) , "g_value_get_int64 (&value) == -2345"); } while (0); |
1771 | g_value_unset (&value); |
1772 | |
1773 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_UINT64, "2345", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((11) << (2))), "2345", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1773, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_UINT64, \"2345\", &value, &error)" ); } while (0); |
1774 | g_assert (G_VALUE_HOLDS_UINT64 (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((11) << (2))) ); gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1774, ((const char*) (__func__)), "G_VALUE_HOLDS_UINT64 (&value)" ); } while (0); |
1775 | g_assert (g_value_get_uint64 (&value) == 2345)do { if (g_value_get_uint64 (&value) == 2345) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1775, ((const char*) (__func__)) , "g_value_get_uint64 (&value) == 2345"); } while (0); |
1776 | g_value_unset (&value); |
1777 | |
1778 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_FLOAT, "1.454", &value, &error))do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((14) << (2))), "1.454", &value, &error)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1778, ( (const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_FLOAT, \"1.454\", &value, &error)" ); } while (0); |
1779 | g_assert (G_VALUE_HOLDS_FLOAT (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((14) << (2))) ); gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1779, ((const char*) (__func__)), "G_VALUE_HOLDS_FLOAT (&value)" ); } while (0); |
1780 | g_assert (fabs (g_value_get_float (&value) - 1.454) < 0.00001)do { if (fabs (g_value_get_float (&value) - 1.454) < 0.00001 ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1780, ((const char*) (__func__)), "fabs (g_value_get_float (&value) - 1.454) < 0.00001" ); } while (0); |
1781 | g_value_unset (&value); |
1782 | |
1783 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_FLOAT, "abc", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((14) << (2))), "abc", &value, &error) == (0) ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1783, ((const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_FLOAT, \"abc\", &value, &error) == FALSE" ); } while (0); |
1784 | g_value_unset (&value); |
1785 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1785, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1786 | g_error_free (error); |
1787 | error = NULL((void*)0); |
1788 | |
1789 | g_assert (ctk_builder_value_from_string_type (builder, G_TYPE_INT, "/-+,abc", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, ((GType ) ((6) << (2))), "/-+,abc", &value, &error) == ( 0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 1789, ((const char*) (__func__)), "ctk_builder_value_from_string_type (builder, G_TYPE_INT, \"/-+,abc\", &value, &error) == FALSE" ); } while (0); |
1790 | g_value_unset (&value); |
1791 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1791, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1792 | g_error_free (error); |
1793 | error = NULL((void*)0); |
1794 | |
1795 | g_assert (ctk_builder_value_from_string_type (builder, CTK_TYPE_WINDOW_TYPE, "toplevel", &value, &error) == TRUE)do { if (ctk_builder_value_from_string_type (builder, (ctk_window_type_get_type ()), "toplevel", &value, &error) == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1795, ((const char*) (__func__)) , "ctk_builder_value_from_string_type (builder, CTK_TYPE_WINDOW_TYPE, \"toplevel\", &value, &error) == TRUE" ); } while (0); |
1796 | g_assert (G_VALUE_HOLDS_ENUM (&value))do { if ((((__extension__ ({ const GValue *__val = (const GValue *) ((&value)); GType __t = (((GType) ((12) << (2))) ); gboolean __r; if (!__val) __r = (0); else if (__val->g_type == __t) __r = (!(0)); else __r = g_type_check_value_holds (__val , __t); __r; }))))) ; else g_assertion_message_expr (((gchar* ) 0), "builder.c", 1796, ((const char*) (__func__)), "G_VALUE_HOLDS_ENUM (&value)" ); } while (0); |
1797 | g_assert (g_value_get_enum (&value) == CTK_WINDOW_TOPLEVEL)do { if (g_value_get_enum (&value) == CTK_WINDOW_TOPLEVEL ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1797, ((const char*) (__func__)), "g_value_get_enum (&value) == CTK_WINDOW_TOPLEVEL" ); } while (0); |
1798 | g_value_unset (&value); |
1799 | |
1800 | g_assert (ctk_builder_value_from_string_type (builder, CTK_TYPE_WINDOW_TYPE, "sliff", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, (ctk_window_type_get_type ()), "sliff", &value, &error) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1800, ((const char*) (__func__)) , "ctk_builder_value_from_string_type (builder, CTK_TYPE_WINDOW_TYPE, \"sliff\", &value, &error) == FALSE" ); } while (0); |
1801 | g_value_unset (&value); |
1802 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1802, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1803 | g_error_free (error); |
1804 | error = NULL((void*)0); |
1805 | |
1806 | g_assert (ctk_builder_value_from_string_type (builder, CTK_TYPE_WINDOW_TYPE, "foobar", &value, &error) == FALSE)do { if (ctk_builder_value_from_string_type (builder, (ctk_window_type_get_type ()), "foobar", &value, &error) == (0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1806, ((const char*) (__func__)) , "ctk_builder_value_from_string_type (builder, CTK_TYPE_WINDOW_TYPE, \"foobar\", &value, &error) == FALSE" ); } while (0); |
1807 | g_value_unset (&value); |
1808 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_INVALID_VALUE)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_INVALID_VALUE) g_assertion_message_error (((gchar*) 0), "builder.c", 1808, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_INVALID_VALUE ); } while (0); |
1809 | g_error_free (error); |
1810 | error = NULL((void*)0); |
1811 | |
1812 | g_object_unref (builder); |
1813 | } |
1814 | |
1815 | static gboolean model_freed = FALSE(0); |
1816 | |
1817 | static void |
1818 | model_weakref (gpointer data, |
1819 | GObject *model) |
1820 | { |
1821 | model_freed = TRUE(!(0)); |
1822 | } |
1823 | |
1824 | static void |
1825 | test_reference_counting (void) |
1826 | { |
1827 | CtkBuilder *builder; |
1828 | const gchar buffer1[] = |
1829 | "<interface>" |
1830 | " <object class=\"CtkListStore\" id=\"liststore1\"/>" |
1831 | " <object class=\"CtkListStore\" id=\"liststore2\"/>" |
1832 | " <object class=\"CtkWindow\" id=\"window1\">" |
1833 | " <child>" |
1834 | " <object class=\"CtkTreeView\" id=\"treeview1\">" |
1835 | " <property name=\"model\">liststore1</property>" |
1836 | " </object>" |
1837 | " </child>" |
1838 | " </object>" |
1839 | "</interface>"; |
1840 | const gchar buffer2[] = |
1841 | "<interface>" |
1842 | " <object class=\"CtkVBox\" id=\"vbox1\">" |
1843 | " <child>" |
1844 | " <object class=\"CtkLabel\" id=\"label1\"/>" |
1845 | " <packing>" |
1846 | " <property name=\"pack-type\">start</property>" |
1847 | " </packing>" |
1848 | " </child>" |
1849 | " </object>" |
1850 | "</interface>"; |
1851 | GObject *window, *treeview, *model; |
1852 | |
1853 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1854 | window = ctk_builder_get_object (builder, "window1"); |
1855 | treeview = ctk_builder_get_object (builder, "treeview1"); |
1856 | model = ctk_builder_get_object (builder, "liststore1"); |
1857 | g_object_unref (builder); |
1858 | |
1859 | g_object_weak_ref (model, (GWeakNotify)model_weakref, NULL((void*)0)); |
1860 | |
1861 | g_assert (model_freed == FALSE)do { if (model_freed == (0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 1861, ((const char*) (__func__)), "model_freed == FALSE" ); } while (0); |
1862 | ctk_tree_view_set_model (CTK_TREE_VIEW (treeview)((((CtkTreeView*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((treeview)), ((ctk_tree_view_get_type ())))))), NULL((void*)0)); |
1863 | g_assert (model_freed == TRUE)do { if (model_freed == (!(0))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1863, ((const char*) (__func__)) , "model_freed == TRUE"); } while (0); |
1864 | |
1865 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
1866 | |
1867 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
1868 | g_object_unref (builder); |
1869 | } |
1870 | |
1871 | static void |
1872 | test_icon_factory (void) |
1873 | { |
1874 | CtkBuilder *builder; |
1875 | const gchar buffer1[] = |
1876 | "<interface>" |
1877 | " <object class=\"CtkIconFactory\" id=\"iconfactory1\">" |
1878 | " <sources>" |
1879 | " <source stock-id=\"apple-red\" filename=\"apple-red.png\"/>" |
1880 | " </sources>" |
1881 | " </object>" |
1882 | "</interface>"; |
1883 | const gchar buffer2[] = |
1884 | "<interface>" |
1885 | " <object class=\"CtkIconFactory\" id=\"iconfactory1\">" |
1886 | " <sources>" |
1887 | " <source stock-id=\"sliff\" direction=\"rtl\" state=\"active\"" |
1888 | " size=\"menu\" filename=\"sloff.png\"/>" |
1889 | " <source stock-id=\"sliff\" direction=\"ltr\" state=\"selected\"" |
1890 | " size=\"dnd\" filename=\"slurf.png\"/>" |
1891 | " </sources>" |
1892 | " </object>" |
1893 | "</interface>"; |
1894 | GObject *factory; |
1895 | CtkIconSet *icon_set; |
1896 | CtkIconSource *icon_source; |
1897 | CtkWidget *image; |
1898 | |
1899 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
1900 | factory = ctk_builder_get_object (builder, "iconfactory1"); |
1901 | g_assert (factory != NULL)do { if (factory != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1901, ((const char*) (__func__)) , "factory != NULL"); } while (0); |
1902 | |
1903 | icon_set = ctk_icon_factory_lookup (CTK_ICON_FACTORY (factory)((((CtkIconFactory*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((factory)), ((ctk_icon_factory_get_type ())))))), "apple-red"); |
1904 | g_assert (icon_set != NULL)do { if (icon_set != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1904, ((const char*) (__func__)) , "icon_set != NULL"); } while (0); |
1905 | ctk_icon_factory_add_default (CTK_ICON_FACTORY (factory)((((CtkIconFactory*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((factory)), ((ctk_icon_factory_get_type ()))))))); |
1906 | G_GNUC_BEGIN_IGNORE_DEPRECATIONSclang diagnostic push
clang diagnostic ignored "-Wdeprecated-declarations" ; |
1907 | image = ctk_image_new_from_stock ("apple-red", CTK_ICON_SIZE_BUTTON); |
1908 | G_GNUC_END_IGNORE_DEPRECATIONSclang diagnostic pop ; |
1909 | g_assert (image != NULL)do { if (image != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1909, ((const char*) (__func__)) , "image != NULL"); } while (0); |
1910 | g_object_ref_sink (image)((__typeof__ (image)) (g_object_ref_sink) (image)); |
1911 | g_object_unref (image); |
1912 | |
1913 | g_object_unref (builder); |
1914 | |
1915 | builder = builder_new_from_string (buffer2, -1, NULL((void*)0)); |
1916 | factory = ctk_builder_get_object (builder, "iconfactory1"); |
1917 | g_assert (factory != NULL)do { if (factory != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1917, ((const char*) (__func__)) , "factory != NULL"); } while (0); |
1918 | |
1919 | icon_set = ctk_icon_factory_lookup (CTK_ICON_FACTORY (factory)((((CtkIconFactory*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((factory)), ((ctk_icon_factory_get_type ())))))), "sliff"); |
1920 | g_assert (icon_set != NULL)do { if (icon_set != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1920, ((const char*) (__func__)) , "icon_set != NULL"); } while (0); |
1921 | g_assert (g_slist_length (icon_set->sources) == 2)do { if (g_slist_length (icon_set->sources) == 2) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1921, ((const char*) (__func__)) , "g_slist_length (icon_set->sources) == 2"); } while (0); |
1922 | |
1923 | icon_source = icon_set->sources->data; |
1924 | g_assert (ctk_icon_source_get_direction (icon_source) == CTK_TEXT_DIR_RTL)do { if (ctk_icon_source_get_direction (icon_source) == CTK_TEXT_DIR_RTL ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1924, ((const char*) (__func__)), "ctk_icon_source_get_direction (icon_source) == CTK_TEXT_DIR_RTL" ); } while (0); |
1925 | g_assert (ctk_icon_source_get_state (icon_source) == CTK_STATE_ACTIVE)do { if (ctk_icon_source_get_state (icon_source) == CTK_STATE_ACTIVE ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1925, ((const char*) (__func__)), "ctk_icon_source_get_state (icon_source) == CTK_STATE_ACTIVE" ); } while (0); |
1926 | g_assert (ctk_icon_source_get_size (icon_source) == CTK_ICON_SIZE_MENU)do { if (ctk_icon_source_get_size (icon_source) == CTK_ICON_SIZE_MENU ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1926, ((const char*) (__func__)), "ctk_icon_source_get_size (icon_source) == CTK_ICON_SIZE_MENU" ); } while (0); |
1927 | g_assert (g_str_has_suffix (ctk_icon_source_get_filename (icon_source), "sloff.png"))do { if ((__builtin_constant_p ("sloff.png")? __extension__ ( { const char * const __str = (ctk_icon_source_get_filename (icon_source )); const char * const __suffix = ("sloff.png"); gboolean __result = (0); if (__str == ((void*)0) || __suffix == ((void*)0)) __result = (g_str_has_suffix) (__str, __suffix); else { const size_t __str_len = strlen (((__str) + !(__str))); const size_t __suffix_len = strlen (((__suffix) + !(__suffix))); if (__str_len >= __suffix_len ) __result = memcmp (__str + __str_len - __suffix_len, ((__suffix ) + !(__suffix)), __suffix_len) == 0; } __result; }) : (g_str_has_suffix ) (ctk_icon_source_get_filename (icon_source), "sloff.png") ) ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1927, ((const char*) (__func__)), "g_str_has_suffix (ctk_icon_source_get_filename (icon_source), \"sloff.png\")" ); } while (0); |
1928 | |
1929 | icon_source = icon_set->sources->next->data; |
1930 | g_assert (ctk_icon_source_get_direction (icon_source) == CTK_TEXT_DIR_LTR)do { if (ctk_icon_source_get_direction (icon_source) == CTK_TEXT_DIR_LTR ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1930, ((const char*) (__func__)), "ctk_icon_source_get_direction (icon_source) == CTK_TEXT_DIR_LTR" ); } while (0); |
1931 | g_assert (ctk_icon_source_get_state (icon_source) == CTK_STATE_SELECTED)do { if (ctk_icon_source_get_state (icon_source) == CTK_STATE_SELECTED ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1931, ((const char*) (__func__)), "ctk_icon_source_get_state (icon_source) == CTK_STATE_SELECTED" ); } while (0); |
1932 | g_assert (ctk_icon_source_get_size (icon_source) == CTK_ICON_SIZE_DND)do { if (ctk_icon_source_get_size (icon_source) == CTK_ICON_SIZE_DND ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1932, ((const char*) (__func__)), "ctk_icon_source_get_size (icon_source) == CTK_ICON_SIZE_DND" ); } while (0); |
1933 | g_assert (g_str_has_suffix (ctk_icon_source_get_filename (icon_source), "slurf.png"))do { if ((__builtin_constant_p ("slurf.png")? __extension__ ( { const char * const __str = (ctk_icon_source_get_filename (icon_source )); const char * const __suffix = ("slurf.png"); gboolean __result = (0); if (__str == ((void*)0) || __suffix == ((void*)0)) __result = (g_str_has_suffix) (__str, __suffix); else { const size_t __str_len = strlen (((__str) + !(__str))); const size_t __suffix_len = strlen (((__suffix) + !(__suffix))); if (__str_len >= __suffix_len ) __result = memcmp (__str + __str_len - __suffix_len, ((__suffix ) + !(__suffix)), __suffix_len) == 0; } __result; }) : (g_str_has_suffix ) (ctk_icon_source_get_filename (icon_source), "slurf.png") ) ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 1933, ((const char*) (__func__)), "g_str_has_suffix (ctk_icon_source_get_filename (icon_source), \"slurf.png\")" ); } while (0); |
1934 | |
1935 | g_object_unref (builder); |
1936 | } |
1937 | |
1938 | typedef struct { |
1939 | gboolean weight; |
1940 | gboolean foreground; |
1941 | gboolean underline; |
1942 | gboolean size; |
1943 | gboolean font_desc; |
1944 | gboolean language; |
1945 | } FoundAttrs; |
1946 | |
1947 | static gboolean |
1948 | filter_pango_attrs (PangoAttribute *attr, |
1949 | gpointer data) |
1950 | { |
1951 | FoundAttrs *found = (FoundAttrs *)data; |
1952 | |
1953 | if (attr->klass->type == PANGO_ATTR_WEIGHT) |
1954 | found->weight = TRUE(!(0)); |
1955 | else if (attr->klass->type == PANGO_ATTR_FOREGROUND) |
1956 | found->foreground = TRUE(!(0)); |
1957 | else if (attr->klass->type == PANGO_ATTR_UNDERLINE) |
1958 | found->underline = TRUE(!(0)); |
1959 | /* Make sure optional start/end properties are working */ |
1960 | else if (attr->klass->type == PANGO_ATTR_SIZE && |
1961 | attr->start_index == 5 && |
1962 | attr->end_index == 10) |
1963 | found->size = TRUE(!(0)); |
1964 | else if (attr->klass->type == PANGO_ATTR_FONT_DESC) |
1965 | found->font_desc = TRUE(!(0)); |
1966 | else if (attr->klass->type == PANGO_ATTR_LANGUAGE) |
1967 | found->language = TRUE(!(0)); |
1968 | |
1969 | return TRUE(!(0)); |
1970 | } |
1971 | |
1972 | static void |
1973 | test_pango_attributes (void) |
1974 | { |
1975 | CtkBuilder *builder; |
1976 | FoundAttrs found = { 0, }; |
1977 | const gchar buffer[] = |
1978 | "<interface>" |
1979 | " <object class=\"CtkLabel\" id=\"label1\">" |
1980 | " <attributes>" |
1981 | " <attribute name=\"weight\" value=\"PANGO_WEIGHT_BOLD\"/>" |
1982 | " <attribute name=\"foreground\" value=\"DarkSlateGray\"/>" |
1983 | " <attribute name=\"underline\" value=\"True\"/>" |
1984 | " <attribute name=\"size\" value=\"4\" start=\"5\" end=\"10\"/>" |
1985 | " <attribute name=\"font-desc\" value=\"Sans Italic 22\"/>" |
1986 | " <attribute name=\"language\" value=\"pt_BR\"/>" |
1987 | " </attributes>" |
1988 | " </object>" |
1989 | "</interface>"; |
1990 | const gchar err_buffer1[] = |
1991 | "<interface>" |
1992 | " <object class=\"CtkLabel\" id=\"label1\">" |
1993 | " <attributes>" |
1994 | " <attribute name=\"weight\"/>" |
1995 | " </attributes>" |
1996 | " </object>" |
1997 | "</interface>"; |
1998 | const gchar err_buffer2[] = |
1999 | "<interface>" |
2000 | " <object class=\"CtkLabel\" id=\"label1\">" |
2001 | " <attributes>" |
2002 | " <attribute name=\"weight\" value=\"PANGO_WEIGHT_BOLD\" unrecognized=\"True\"/>" |
2003 | " </attributes>" |
2004 | " </object>" |
2005 | "</interface>"; |
2006 | |
2007 | GObject *label; |
2008 | GError *error = NULL((void*)0); |
2009 | PangoAttrList *attrs, *filtered; |
2010 | |
2011 | /* Test attributes are set */ |
2012 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2013 | label = ctk_builder_get_object (builder, "label1"); |
2014 | g_assert (label != NULL)do { if (label != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2014, ((const char*) (__func__)) , "label != NULL"); } while (0); |
2015 | |
2016 | attrs = ctk_label_get_attributes (CTK_LABEL (label)((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((label)), ((ctk_label_get_type ()))))))); |
2017 | g_assert (attrs != NULL)do { if (attrs != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2017, ((const char*) (__func__)) , "attrs != NULL"); } while (0); |
2018 | |
2019 | filtered = pango_attr_list_filter (attrs, filter_pango_attrs, &found); |
2020 | g_assert (filtered)do { if (filtered) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2020, ((const char*) (__func__)), "filtered" ); } while (0); |
2021 | pango_attr_list_unref (filtered); |
2022 | |
2023 | g_assert (found.weight)do { if (found.weight) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 2023, ((const char*) (__func__)), "found.weight" ); } while (0); |
2024 | g_assert (found.foreground)do { if (found.foreground) ; else g_assertion_message_expr (( (gchar*) 0), "builder.c", 2024, ((const char*) (__func__)), "found.foreground" ); } while (0); |
2025 | g_assert (found.underline)do { if (found.underline) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 2025, ((const char*) (__func__)), "found.underline" ); } while (0); |
2026 | g_assert (found.size)do { if (found.size) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 2026, ((const char*) (__func__)), "found.size" ); } while (0); |
2027 | g_assert (found.language)do { if (found.language) ; else g_assertion_message_expr (((gchar *) 0), "builder.c", 2027, ((const char*) (__func__)), "found.language" ); } while (0); |
2028 | g_assert (found.font_desc)do { if (found.font_desc) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 2028, ((const char*) (__func__)), "found.font_desc" ); } while (0); |
2029 | |
2030 | g_object_unref (builder); |
2031 | |
2032 | /* Test errors are set */ |
2033 | builder = ctk_builder_new (); |
2034 | ctk_builder_add_from_string (builder, err_buffer1, -1, &error); |
2035 | label = ctk_builder_get_object (builder, "label1"); |
Value stored to 'label' is never read | |
2036 | g_assert_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_MISSING_ATTRIBUTE)do { if (!error || (error)->domain != g_markup_error_quark () || (error)->code != G_MARKUP_ERROR_MISSING_ATTRIBUTE) g_assertion_message_error (((gchar*) 0), "builder.c", 2036, ((const char*) (__func__)) , "error", error, g_markup_error_quark (), G_MARKUP_ERROR_MISSING_ATTRIBUTE ); } while (0); |
2037 | g_object_unref (builder); |
2038 | g_error_free (error); |
2039 | error = NULL((void*)0); |
2040 | |
2041 | builder = ctk_builder_new (); |
2042 | ctk_builder_add_from_string (builder, err_buffer2, -1, &error); |
2043 | label = ctk_builder_get_object (builder, "label1"); |
2044 | |
2045 | g_assert_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE)do { if (!error || (error)->domain != g_markup_error_quark () || (error)->code != G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE) g_assertion_message_error (((gchar*) 0), "builder.c", 2045, ((const char*) (__func__)) , "error", error, g_markup_error_quark (), G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE ); } while (0); |
2046 | g_object_unref (builder); |
2047 | g_error_free (error); |
2048 | } |
2049 | |
2050 | static void |
2051 | test_requires (void) |
2052 | { |
2053 | CtkBuilder *builder; |
2054 | GError *error = NULL((void*)0); |
2055 | gchar *buffer; |
2056 | const gchar buffer_fmt[] = |
2057 | "<interface>" |
2058 | " <requires lib=\"ctk+\" version=\"%d.%d\"/>" |
2059 | "</interface>"; |
2060 | |
2061 | buffer = g_strdup_printf (buffer_fmt, CTK_MAJOR_VERSION(3), CTK_MINOR_VERSION(25) + 1); |
2062 | builder = ctk_builder_new (); |
2063 | ctk_builder_add_from_string (builder, buffer, -1, &error); |
2064 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_VERSION_MISMATCH)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_VERSION_MISMATCH ) g_assertion_message_error (((gchar*) 0), "builder.c", 2064, ((const char*) (__func__)), "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_VERSION_MISMATCH); } while (0); |
2065 | g_object_unref (builder); |
2066 | g_error_free (error); |
2067 | g_free (buffer); |
2068 | } |
2069 | |
2070 | static void |
2071 | test_add_objects (void) |
2072 | { |
2073 | CtkBuilder *builder; |
2074 | GError *error; |
2075 | gint ret; |
2076 | GObject *obj; |
2077 | CtkUIManager *manager; |
2078 | CtkWidget *menubar; |
2079 | GObject *menu, *label; |
2080 | GList *children; |
2081 | gchar *objects[2] = {"mainbox", NULL((void*)0)}; |
2082 | gchar *objects2[3] = {"mainbox", "window2", NULL((void*)0)}; |
2083 | gchar *objects3[3] = {"uimgr1", "menubar1"}; |
2084 | gchar *objects4[2] = {"uimgr1", NULL((void*)0)}; |
2085 | const gchar buffer[] = |
2086 | "<interface>" |
2087 | " <object class=\"CtkWindow\" id=\"window\">" |
2088 | " <child>" |
2089 | " <object class=\"CtkVBox\" id=\"mainbox\">" |
2090 | " <property name=\"visible\">True</property>" |
2091 | " <child>" |
2092 | " <object class=\"CtkLabel\" id=\"label1\">" |
2093 | " <property name=\"visible\">True</property>" |
2094 | " <property name=\"label\" translatable=\"no\">first label</property>" |
2095 | " </object>" |
2096 | " </child>" |
2097 | " <child>" |
2098 | " <object class=\"CtkLabel\" id=\"label2\">" |
2099 | " <property name=\"visible\">True</property>" |
2100 | " <property name=\"label\" translatable=\"no\">second label</property>" |
2101 | " </object>" |
2102 | " <packing>" |
2103 | " <property name=\"position\">1</property>" |
2104 | " </packing>" |
2105 | " </child>" |
2106 | " </object>" |
2107 | " </child>" |
2108 | " </object>" |
2109 | " <object class=\"CtkWindow\" id=\"window2\">" |
2110 | " <child>" |
2111 | " <object class=\"CtkLabel\" id=\"label3\">" |
2112 | " <property name=\"label\" translatable=\"no\">second label</property>" |
2113 | " </object>" |
2114 | " </child>" |
2115 | " </object>" |
2116 | "<interface/>"; |
2117 | const gchar buffer2[] = |
2118 | "<interface>" |
2119 | " <object class=\"CtkUIManager\" id=\"uimgr1\">" |
2120 | " <child>" |
2121 | " <object class=\"CtkActionGroup\" id=\"ag1\">" |
2122 | " <child>" |
2123 | " <object class=\"CtkAction\" id=\"file\">" |
2124 | " <property name=\"label\">_File</property>" |
2125 | " </object>" |
2126 | " <accelerator key=\"n\" modifiers=\"CDK_CONTROL_MASK\"/>" |
2127 | " </child>" |
2128 | " </object>" |
2129 | " </child>" |
2130 | " <ui>" |
2131 | " <menubar name=\"menubar1\">" |
2132 | " <menu action=\"file\">" |
2133 | " </menu>" |
2134 | " </menubar>" |
2135 | " </ui>" |
2136 | " </object>" |
2137 | " <object class=\"CtkWindow\" id=\"window1\">" |
2138 | " <child>" |
2139 | " <object class=\"CtkMenuBar\" id=\"menubar1\" constructor=\"uimgr1\"/>" |
2140 | " </child>" |
2141 | " </object>" |
2142 | "</interface>"; |
2143 | |
2144 | error = NULL((void*)0); |
2145 | builder = ctk_builder_new (); |
2146 | ret = ctk_builder_add_objects_from_string (builder, buffer, -1, objects, &error); |
2147 | g_assert (ret)do { if (ret) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2147, ((const char*) (__func__)), "ret"); } while (0); |
2148 | g_assert (error == NULL)do { if (error == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2148, ((const char*) (__func__)) , "error == NULL"); } while (0); |
2149 | obj = ctk_builder_get_object (builder, "window"); |
2150 | g_assert (obj == NULL)do { if (obj == ((void*)0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 2150, ((const char*) (__func__)), "obj == NULL" ); } while (0); |
2151 | obj = ctk_builder_get_object (builder, "window2"); |
2152 | g_assert (obj == NULL)do { if (obj == ((void*)0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 2152, ((const char*) (__func__)), "obj == NULL" ); } while (0); |
2153 | obj = ctk_builder_get_object (builder, "mainbox"); |
2154 | g_assert (CTK_IS_WIDGET (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_widget_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2154, ( (const char*) (__func__)), "CTK_IS_WIDGET (obj)"); } while (0 ); |
2155 | g_object_unref (builder); |
2156 | |
2157 | error = NULL((void*)0); |
2158 | builder = ctk_builder_new (); |
2159 | ret = ctk_builder_add_objects_from_string (builder, buffer, -1, objects2, &error); |
2160 | g_assert (ret)do { if (ret) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2160, ((const char*) (__func__)), "ret"); } while (0); |
2161 | g_assert (error == NULL)do { if (error == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2161, ((const char*) (__func__)) , "error == NULL"); } while (0); |
2162 | obj = ctk_builder_get_object (builder, "window"); |
2163 | g_assert (obj == NULL)do { if (obj == ((void*)0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 2163, ((const char*) (__func__)), "obj == NULL" ); } while (0); |
2164 | obj = ctk_builder_get_object (builder, "window2"); |
2165 | g_assert (CTK_IS_WINDOW (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_window_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2165, ( (const char*) (__func__)), "CTK_IS_WINDOW (obj)"); } while (0 ); |
2166 | ctk_widget_destroy (CTK_WIDGET (obj)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_widget_get_type ()))))))); |
2167 | obj = ctk_builder_get_object (builder, "mainbox"); |
2168 | g_assert (CTK_IS_WIDGET (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_widget_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2168, ( (const char*) (__func__)), "CTK_IS_WIDGET (obj)"); } while (0 ); |
2169 | g_object_unref (builder); |
2170 | |
2171 | /* test cherry picking a ui manager and menubar that depends on it */ |
2172 | error = NULL((void*)0); |
2173 | builder = ctk_builder_new (); |
2174 | ret = ctk_builder_add_objects_from_string (builder, buffer2, -1, objects3, &error); |
2175 | g_assert (ret)do { if (ret) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2175, ((const char*) (__func__)), "ret"); } while (0); |
2176 | obj = ctk_builder_get_object (builder, "uimgr1"); |
2177 | g_assert (CTK_IS_UI_MANAGER (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_ui_manager_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2177, ( (const char*) (__func__)), "CTK_IS_UI_MANAGER (obj)"); } while (0); |
2178 | obj = ctk_builder_get_object (builder, "file"); |
2179 | g_assert (CTK_IS_ACTION (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_action_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2179, ( (const char*) (__func__)), "CTK_IS_ACTION (obj)"); } while (0 ); |
2180 | obj = ctk_builder_get_object (builder, "menubar1"); |
2181 | g_assert (CTK_IS_MENU_BAR (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_menu_bar_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2181, ( (const char*) (__func__)), "CTK_IS_MENU_BAR (obj)"); } while ( 0); |
2182 | menubar = CTK_WIDGET (obj)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_widget_get_type ())))))); |
2183 | |
2184 | children = ctk_container_get_children (CTK_CONTAINER (menubar)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((menubar)), ((ctk_container_get_type ()))))))); |
2185 | menu = children->data; |
2186 | g_assert (menu != NULL)do { if (menu != ((void*)0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 2186, ((const char*) (__func__)), "menu != NULL" ); } while (0); |
2187 | g_assert (CTK_IS_MENU_ITEM (menu))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((menu)); GType __t = ((ctk_menu_item_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2187, ( (const char*) (__func__)), "CTK_IS_MENU_ITEM (menu)"); } while (0); |
2188 | g_assert (strcmp (ctk_widget_get_name (CTK_WIDGET (menu)), "file") == 0)do { if (strcmp (ctk_widget_get_name (((((CtkWidget*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((menu)), ((ctk_widget_get_type ()))))))), "file") == 0) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 2188, ((const char*) (__func__)), "strcmp (ctk_widget_get_name (CTK_WIDGET (menu)), \"file\") == 0" ); } while (0); |
2189 | g_list_free (children); |
2190 | |
2191 | label = G_OBJECT (ctk_bin_get_child (CTK_BIN (menu)))((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_bin_get_child (((((CtkBin*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((menu)), ((ctk_bin_get_type ()))))))))), ( ((GType) ((20) << (2)))))))); |
2192 | g_assert (label != NULL)do { if (label != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2192, ((const char*) (__func__)) , "label != NULL"); } while (0); |
2193 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2193, ( (const char*) (__func__)), "CTK_IS_LABEL (label)"); } while ( 0); |
2194 | g_assert (strcmp (ctk_label_get_text (CTK_LABEL (label)), "File") == 0)do { if (strcmp (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "File") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2194, ((const char*) (__func__)), "strcmp (ctk_label_get_text (CTK_LABEL (label)), \"File\") == 0" ); } while (0); |
2195 | |
2196 | g_object_unref (builder); |
2197 | |
2198 | /* test cherry picking just the ui manager */ |
2199 | error = NULL((void*)0); |
2200 | builder = ctk_builder_new (); |
2201 | ret = ctk_builder_add_objects_from_string (builder, buffer2, -1, objects4, &error); |
2202 | g_assert (ret)do { if (ret) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2202, ((const char*) (__func__)), "ret"); } while (0); |
2203 | obj = ctk_builder_get_object (builder, "uimgr1"); |
2204 | g_assert (CTK_IS_UI_MANAGER (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_ui_manager_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2204, ( (const char*) (__func__)), "CTK_IS_UI_MANAGER (obj)"); } while (0); |
2205 | manager = CTK_UI_MANAGER (obj)((((CtkUIManager*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_ui_manager_get_type ())))))); |
2206 | obj = ctk_builder_get_object (builder, "file"); |
2207 | g_assert (CTK_IS_ACTION (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_action_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2207, ( (const char*) (__func__)), "CTK_IS_ACTION (obj)"); } while (0 ); |
2208 | menubar = ctk_ui_manager_get_widget (manager, "/menubar1"); |
2209 | g_assert (CTK_IS_MENU_BAR (menubar))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((menubar)); GType __t = ((ctk_menu_bar_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2209, ( (const char*) (__func__)), "CTK_IS_MENU_BAR (menubar)"); } while (0); |
2210 | |
2211 | children = ctk_container_get_children (CTK_CONTAINER (menubar)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((menubar)), ((ctk_container_get_type ()))))))); |
2212 | menu = children->data; |
2213 | g_assert (menu != NULL)do { if (menu != ((void*)0)) ; else g_assertion_message_expr ( ((gchar*) 0), "builder.c", 2213, ((const char*) (__func__)), "menu != NULL" ); } while (0); |
2214 | g_assert (CTK_IS_MENU_ITEM (menu))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((menu)); GType __t = ((ctk_menu_item_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2214, ( (const char*) (__func__)), "CTK_IS_MENU_ITEM (menu)"); } while (0); |
2215 | g_assert (strcmp (ctk_widget_get_name (CTK_WIDGET (menu)), "file") == 0)do { if (strcmp (ctk_widget_get_name (((((CtkWidget*) (void * ) g_type_check_instance_cast ((GTypeInstance*) ((menu)), ((ctk_widget_get_type ()))))))), "file") == 0) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 2215, ((const char*) (__func__)), "strcmp (ctk_widget_get_name (CTK_WIDGET (menu)), \"file\") == 0" ); } while (0); |
2216 | g_list_free (children); |
2217 | |
2218 | label = G_OBJECT (ctk_bin_get_child (CTK_BIN (menu)))((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_bin_get_child (((((CtkBin*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((menu)), ((ctk_bin_get_type ()))))))))), ( ((GType) ((20) << (2)))))))); |
2219 | g_assert (label != NULL)do { if (label != ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2219, ((const char*) (__func__)) , "label != NULL"); } while (0); |
2220 | g_assert (CTK_IS_LABEL (label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2220, ( (const char*) (__func__)), "CTK_IS_LABEL (label)"); } while ( 0); |
2221 | g_assert (strcmp (ctk_label_get_text (CTK_LABEL (label)), "File") == 0)do { if (strcmp (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((label)), ((ctk_label_get_type ()))))))), "File") == 0) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2221, ((const char*) (__func__)), "strcmp (ctk_label_get_text (CTK_LABEL (label)), \"File\") == 0" ); } while (0); |
2222 | |
2223 | g_object_unref (builder); |
2224 | } |
2225 | |
2226 | static CtkWidget * |
2227 | get_parent_menubar (CtkWidget *menuitem) |
2228 | { |
2229 | CtkMenuShell *menu_shell; |
2230 | CtkWidget *attach = NULL((void*)0); |
2231 | |
2232 | menu_shell = CTK_MENU_SHELL (ctk_widget_get_parent (menuitem))((((CtkMenuShell*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_widget_get_parent (menuitem))), ((ctk_menu_shell_get_type ())))))); |
2233 | |
2234 | g_assert (CTK_IS_MENU_SHELL (menu_shell))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((menu_shell)); GType __t = ((ctk_menu_shell_get_type ())) ; gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0) ); else __r = g_type_check_instance_is_a (__inst, __t); __r; } ))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2234, ((const char*) (__func__)), "CTK_IS_MENU_SHELL (menu_shell)" ); } while (0); |
2235 | |
2236 | while (menu_shell && !CTK_IS_MENU_BAR (menu_shell)(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ( (menu_shell)); GType __t = ((ctk_menu_bar_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) |
2237 | { |
2238 | if (CTK_IS_MENU (menu_shell)(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ( (menu_shell)); GType __t = ((ctk_menu_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; })))) && |
2239 | (attach = ctk_menu_get_attach_widget (CTK_MENU (menu_shell)((((CtkMenu*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((menu_shell)), ((ctk_menu_get_type ())))))))) != NULL((void*)0)) |
2240 | menu_shell = CTK_MENU_SHELL (ctk_widget_get_parent (attach))((((CtkMenuShell*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((ctk_widget_get_parent (attach))), ((ctk_menu_shell_get_type ())))))); |
2241 | else |
2242 | menu_shell = NULL((void*)0); |
2243 | } |
2244 | |
2245 | return menu_shell ? CTK_WIDGET (menu_shell)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((menu_shell)), ((ctk_widget_get_type ())))))) : NULL((void*)0); |
2246 | } |
2247 | |
2248 | static void |
2249 | test_menus (void) |
2250 | { |
2251 | const gchar *buffer = |
2252 | "<interface>" |
2253 | " <object class=\"CtkWindow\" id=\"window1\">" |
2254 | " <accel-groups>" |
2255 | " <group name=\"accelgroup1\"/>" |
2256 | " </accel-groups>" |
2257 | " <child>" |
2258 | " <object class=\"CtkVBox\" id=\"vbox1\">" |
2259 | " <property name=\"visible\">True</property>" |
2260 | " <property name=\"orientation\">vertical</property>" |
2261 | " <child>" |
2262 | " <object class=\"CtkMenuBar\" id=\"menubar1\">" |
2263 | " <property name=\"visible\">True</property>" |
2264 | " <child>" |
2265 | " <object class=\"CtkMenuItem\" id=\"menuitem1\">" |
2266 | " <property name=\"visible\">True</property>" |
2267 | " <property name=\"label\" translatable=\"yes\">_File</property>" |
2268 | " <property name=\"use_underline\">True</property>" |
2269 | " <child type=\"submenu\">" |
2270 | " <object class=\"CtkMenu\" id=\"menu1\">" |
2271 | " <property name=\"visible\">True</property>" |
2272 | " <child>" |
2273 | " <object class=\"CtkImageMenuItem\" id=\"imagemenuitem1\">" |
2274 | " <property name=\"label\">ctk-new</property>" |
2275 | " <property name=\"visible\">True</property>" |
2276 | " <property name=\"use_stock\">True</property>" |
2277 | " <property name=\"accel_group\">accelgroup1</property>" |
2278 | " </object>" |
2279 | " </child>" |
2280 | " </object>" |
2281 | " </child>" |
2282 | " </object>" |
2283 | " </child>" |
2284 | " </object>" |
2285 | " </child>" |
2286 | " </object>" |
2287 | " </child>" |
2288 | " </object>" |
2289 | "<object class=\"CtkAccelGroup\" id=\"accelgroup1\"/>" |
2290 | "</interface>"; |
2291 | |
2292 | const gchar *buffer1 = |
2293 | "<interface>" |
2294 | " <object class=\"CtkWindow\" id=\"window1\">" |
2295 | " <accel-groups>" |
2296 | " <group name=\"accelgroup1\"/>" |
2297 | " </accel-groups>" |
2298 | " <child>" |
2299 | " <object class=\"CtkVBox\" id=\"vbox1\">" |
2300 | " <property name=\"visible\">True</property>" |
2301 | " <property name=\"orientation\">vertical</property>" |
2302 | " <child>" |
2303 | " <object class=\"CtkMenuBar\" id=\"menubar1\">" |
2304 | " <property name=\"visible\">True</property>" |
2305 | " <child>" |
2306 | " <object class=\"CtkImageMenuItem\" id=\"imagemenuitem1\">" |
2307 | " <property name=\"visible\">True</property>" |
2308 | " <child>" |
2309 | " <object class=\"CtkLabel\" id=\"custom1\">" |
2310 | " <property name=\"visible\">True</property>" |
2311 | " <property name=\"label\">a label</property>" |
2312 | " </object>" |
2313 | " </child>" |
2314 | " </object>" |
2315 | " </child>" |
2316 | " </object>" |
2317 | " </child>" |
2318 | " </object>" |
2319 | " </child>" |
2320 | " </object>" |
2321 | "<object class=\"CtkAccelGroup\" id=\"accelgroup1\"/>" |
2322 | "</interface>"; |
2323 | CtkBuilder *builder; |
2324 | CtkWidget *child; |
2325 | CtkWidget *window, *item; |
2326 | CtkAccelGroup *accel_group; |
2327 | CtkWidget *item_accel_label, *sample_accel_label, *sample_menu_item, *custom; |
2328 | |
2329 | /* Check that the item has the correct accel label string set |
2330 | */ |
2331 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2332 | window = (CtkWidget *)ctk_builder_get_object (builder, "window1"); |
2333 | item = (CtkWidget *)ctk_builder_get_object (builder, "imagemenuitem1"); |
2334 | accel_group = (CtkAccelGroup *)ctk_builder_get_object (builder, "accelgroup1"); |
2335 | |
2336 | ctk_widget_show_all (window); |
2337 | |
2338 | sample_menu_item = ctk_image_menu_item_new_from_stock (CTK_STOCK_NEW((CtkStock)"ctk-new"), accel_group); |
2339 | |
2340 | child = ctk_bin_get_child (CTK_BIN (sample_menu_item)((((CtkBin*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((sample_menu_item)), ((ctk_bin_get_type ()))))))); |
2341 | g_assert (child)do { if (child) ; else g_assertion_message_expr (((gchar*) 0) , "builder.c", 2341, ((const char*) (__func__)), "child"); } while (0); |
2342 | g_assert (CTK_IS_ACCEL_LABEL (child))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((child)); GType __t = ((ctk_accel_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2342, ( (const char*) (__func__)), "CTK_IS_ACCEL_LABEL (child)"); } while (0); |
2343 | sample_accel_label = child; |
2344 | ctk_widget_show (sample_accel_label); |
2345 | |
2346 | child = ctk_bin_get_child (CTK_BIN (item)((((CtkBin*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((item)), ((ctk_bin_get_type ()))))))); |
2347 | g_assert (child)do { if (child) ; else g_assertion_message_expr (((gchar*) 0) , "builder.c", 2347, ((const char*) (__func__)), "child"); } while (0); |
2348 | g_assert (CTK_IS_ACCEL_LABEL (child))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((child)); GType __t = ((ctk_accel_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2348, ( (const char*) (__func__)), "CTK_IS_ACCEL_LABEL (child)"); } while (0); |
2349 | item_accel_label = child; |
2350 | |
2351 | ctk_accel_label_refetch (CTK_ACCEL_LABEL (sample_accel_label)((((CtkAccelLabel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((sample_accel_label)), ((ctk_accel_label_get_type ()))))) )); |
2352 | ctk_accel_label_refetch (CTK_ACCEL_LABEL (item_accel_label)((((CtkAccelLabel*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((item_accel_label)), ((ctk_accel_label_get_type ()))))))); |
2353 | |
2354 | g_assert (ctk_label_get_text (CTK_LABEL (sample_accel_label)) != NULL)do { if (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((sample_accel_label)), ((ctk_label_get_type ()))))))) != ((void*)0)) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 2354, ((const char*) (__func__)), "ctk_label_get_text (CTK_LABEL (sample_accel_label)) != NULL" ); } while (0); |
2355 | g_assert (ctk_label_get_text (CTK_LABEL (item_accel_label)) != NULL)do { if (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((item_accel_label)), ((ctk_label_get_type ()))))))) != ((void*)0)) ; else g_assertion_message_expr ((( gchar*) 0), "builder.c", 2355, ((const char*) (__func__)), "ctk_label_get_text (CTK_LABEL (item_accel_label)) != NULL" ); } while (0); |
2356 | g_assert (strcmp (ctk_label_get_text (CTK_LABEL (item_accel_label)),do { if (strcmp (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((item_accel_label)), ((ctk_label_get_type ()))))))), ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((sample_accel_label)), ((ctk_label_get_type ())))))))) == 0) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 2357, ((const char*) (__func__)), "strcmp (ctk_label_get_text (CTK_LABEL (item_accel_label)), ctk_label_get_text (CTK_LABEL (sample_accel_label))) == 0" ); } while (0) |
2357 | ctk_label_get_text (CTK_LABEL (sample_accel_label))) == 0)do { if (strcmp (ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((item_accel_label)), ((ctk_label_get_type ()))))))), ctk_label_get_text (((((CtkLabel*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((sample_accel_label)), ((ctk_label_get_type ())))))))) == 0) ; else g_assertion_message_expr (((gchar*) 0 ), "builder.c", 2357, ((const char*) (__func__)), "strcmp (ctk_label_get_text (CTK_LABEL (item_accel_label)), ctk_label_get_text (CTK_LABEL (sample_accel_label))) == 0" ); } while (0); |
2358 | |
2359 | /* Check the menu hierarchy worked here */ |
2360 | g_assert (get_parent_menubar (item))do { if (get_parent_menubar (item)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2360, ((const char*) (__func__)) , "get_parent_menubar (item)"); } while (0); |
2361 | |
2362 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
2363 | ctk_widget_destroy (sample_menu_item); |
2364 | g_object_unref (builder); |
2365 | |
2366 | |
2367 | /* Check that we can add alien children to menu items via normal |
2368 | * CtkContainer apis. |
2369 | */ |
2370 | builder = builder_new_from_string (buffer1, -1, NULL((void*)0)); |
2371 | window = (CtkWidget *)ctk_builder_get_object (builder, "window1"); |
2372 | item = (CtkWidget *)ctk_builder_get_object (builder, "imagemenuitem1"); |
2373 | custom = (CtkWidget *)ctk_builder_get_object (builder, "custom1"); |
2374 | |
2375 | g_assert (ctk_widget_get_parent (custom) == item)do { if (ctk_widget_get_parent (custom) == item) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2375, ((const char*) (__func__)) , "ctk_widget_get_parent (custom) == item"); } while (0); |
2376 | |
2377 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
2378 | g_object_unref (builder); |
2379 | } |
2380 | |
2381 | static void |
2382 | test_file (const gchar *filename) |
2383 | { |
2384 | CtkBuilder *builder; |
2385 | GError *error = NULL((void*)0); |
2386 | GSList *l, *objects; |
2387 | |
2388 | builder = ctk_builder_new (); |
2389 | |
2390 | if (!ctk_builder_add_from_file (builder, filename, &error)) |
2391 | { |
2392 | g_error ("%s", error->message); |
2393 | g_error_free (error); |
2394 | return; |
2395 | } |
2396 | |
2397 | objects = ctk_builder_get_objects (builder); |
2398 | for (l = objects; l; l = l->next) |
2399 | { |
2400 | GObject *obj = (GObject*)l->data; |
2401 | |
2402 | if (CTK_IS_DIALOG (obj)(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ( (obj)); GType __t = ((ctk_dialog_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) |
2403 | { |
2404 | g_print ("Running dialog %s.\n", |
2405 | ctk_widget_get_name (CTK_WIDGET (obj)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_widget_get_type ())))))))); |
2406 | ctk_dialog_run (CTK_DIALOG (obj)((((CtkDialog*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_dialog_get_type ()))))))); |
2407 | } |
2408 | else if (CTK_IS_WINDOW (obj)(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ( (obj)); GType __t = ((ctk_window_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) |
2409 | { |
2410 | g_signal_connect (obj, "destroy", G_CALLBACK (ctk_main_quit), NULL)g_signal_connect_data ((obj), ("destroy"), (((GCallback) (ctk_main_quit ))), (((void*)0)), ((void*)0), (GConnectFlags) 0); |
2411 | g_print ("Showing %s.\n", |
2412 | ctk_widget_get_name (CTK_WIDGET (obj)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_widget_get_type ())))))))); |
2413 | ctk_widget_show_all (CTK_WIDGET (obj)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_widget_get_type ()))))))); |
2414 | } |
2415 | } |
2416 | |
2417 | ctk_main (); |
2418 | |
2419 | g_object_unref (builder); |
2420 | } |
2421 | |
2422 | static void |
2423 | test_message_area (void) |
2424 | { |
2425 | CtkBuilder *builder; |
2426 | GObject *obj, *obj1; |
2427 | const gchar buffer[] = |
2428 | "<interface>" |
2429 | " <object class=\"CtkInfoBar\" id=\"infobar1\">" |
2430 | " <child internal-child=\"content_area\">" |
2431 | " <object class=\"CtkHBox\" id=\"contentarea1\">" |
2432 | " <child>" |
2433 | " <object class=\"CtkLabel\" id=\"content\">" |
2434 | " <property name=\"label\" translatable=\"yes\">Message</property>" |
2435 | " </object>" |
2436 | " <packing>" |
2437 | " <property name='expand'>False</property>" |
2438 | " </packing>" |
2439 | " </child>" |
2440 | " </object>" |
2441 | " </child>" |
2442 | " <child internal-child=\"action_area\">" |
2443 | " <object class=\"CtkVButtonBox\" id=\"actionarea1\">" |
2444 | " <child>" |
2445 | " <object class=\"CtkButton\" id=\"button_ok\">" |
2446 | " <property name=\"label\">ctk-ok</property>" |
2447 | " <property name=\"use-stock\">yes</property>" |
2448 | " </object>" |
2449 | " </child>" |
2450 | " </object>" |
2451 | " </child>" |
2452 | " <action-widgets>" |
2453 | " <action-widget response=\"1\">button_ok</action-widget>" |
2454 | " </action-widgets>" |
2455 | " </object>" |
2456 | "</interface>"; |
2457 | |
2458 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2459 | obj = ctk_builder_get_object (builder, "infobar1"); |
2460 | g_assert (CTK_IS_INFO_BAR (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_info_bar_get_type())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2460, ( (const char*) (__func__)), "CTK_IS_INFO_BAR (obj)"); } while ( 0); |
2461 | obj1 = ctk_builder_get_object (builder, "content"); |
2462 | g_assert (CTK_IS_LABEL (obj1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj1)); GType __t = ((ctk_label_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2462, ( (const char*) (__func__)), "CTK_IS_LABEL (obj1)"); } while (0 ); |
2463 | |
2464 | obj1 = ctk_builder_get_object (builder, "button_ok"); |
2465 | g_assert (CTK_IS_BUTTON (obj1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj1)); GType __t = ((ctk_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2465, ( (const char*) (__func__)), "CTK_IS_BUTTON (obj1)"); } while ( 0); |
2466 | |
2467 | g_object_unref (builder); |
2468 | } |
2469 | |
2470 | static void |
2471 | test_gmenu (void) |
2472 | { |
2473 | CtkBuilder *builder; |
2474 | GObject *obj, *obj1; |
2475 | const gchar buffer[] = |
2476 | "<interface>" |
2477 | " <object class=\"CtkWindow\" id=\"window\">" |
2478 | " </object>" |
2479 | " <menu id='edit-menu'>" |
2480 | " <section>" |
2481 | " <item>" |
2482 | " <attribute name='label'>Undo</attribute>" |
2483 | " <attribute name='action'>undo</attribute>" |
2484 | " </item>" |
2485 | " <item>" |
2486 | " <attribute name='label'>Redo</attribute>" |
2487 | " <attribute name='action'>redo</attribute>" |
2488 | " </item>" |
2489 | " </section>" |
2490 | " <section></section>" |
2491 | " <section>" |
2492 | " <attribute name='label'>Copy & Paste</attribute>" |
2493 | " <item>" |
2494 | " <attribute name='label'>Cut</attribute>" |
2495 | " <attribute name='action'>cut</attribute>" |
2496 | " </item>" |
2497 | " <item>" |
2498 | " <attribute name='label'>Copy</attribute>" |
2499 | " <attribute name='action'>copy</attribute>" |
2500 | " </item>" |
2501 | " <item>" |
2502 | " <attribute name='label'>Paste</attribute>" |
2503 | " <attribute name='action'>paste</attribute>" |
2504 | " </item>" |
2505 | " </section>" |
2506 | " <item><link name='section' id='blargh'>" |
2507 | " <item>" |
2508 | " <attribute name='label'>Bold</attribute>" |
2509 | " <attribute name='action'>bold</attribute>" |
2510 | " </item>" |
2511 | " <submenu>" |
2512 | " <attribute name='label'>Language</attribute>" |
2513 | " <item>" |
2514 | " <attribute name='label'>Latin</attribute>" |
2515 | " <attribute name='action'>lang</attribute>" |
2516 | " <attribute name='target'>'latin'</attribute>" |
2517 | " </item>" |
2518 | " <item>" |
2519 | " <attribute name='label'>Greek</attribute>" |
2520 | " <attribute name='action'>lang</attribute>" |
2521 | " <attribute name='target'>'greek'</attribute>" |
2522 | " </item>" |
2523 | " <item>" |
2524 | " <attribute name='label'>Urdu</attribute>" |
2525 | " <attribute name='action'>lang</attribute>" |
2526 | " <attribute name='target'>'urdu'</attribute>" |
2527 | " </item>" |
2528 | " </submenu>" |
2529 | " </link></item>" |
2530 | " </menu>" |
2531 | "</interface>"; |
2532 | |
2533 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2534 | obj = ctk_builder_get_object (builder, "window"); |
2535 | g_assert (CTK_IS_WINDOW (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_window_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2535, ( (const char*) (__func__)), "CTK_IS_WINDOW (obj)"); } while (0 ); |
2536 | obj1 = ctk_builder_get_object (builder, "edit-menu"); |
2537 | g_assert (G_IS_MENU_MODEL (obj1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj1)); GType __t = ((g_menu_model_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2537, ( (const char*) (__func__)), "G_IS_MENU_MODEL (obj1)"); } while (0); |
2538 | obj1 = ctk_builder_get_object (builder, "blargh"); |
2539 | g_assert (G_IS_MENU_MODEL (obj1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj1)); GType __t = ((g_menu_model_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2539, ( (const char*) (__func__)), "G_IS_MENU_MODEL (obj1)"); } while (0); |
2540 | g_object_unref (builder); |
2541 | } |
2542 | |
2543 | static void |
2544 | test_level_bar (void) |
2545 | { |
2546 | CtkBuilder *builder; |
2547 | GError *error = NULL((void*)0); |
2548 | GObject *obj, *obj1; |
2549 | const gchar buffer1[] = |
2550 | "<interface>" |
2551 | " <object class=\"CtkWindow\" id=\"window\">" |
2552 | " <child>" |
2553 | " <object class=\"CtkLevelBar\" id=\"levelbar\">" |
2554 | " <property name=\"value\">4.70</property>" |
2555 | " <property name=\"min-value\">2</property>" |
2556 | " <property name=\"max-value\">5</property>" |
2557 | " <offsets>" |
2558 | " <offset name=\"low\" value=\"2.25\"/>" |
2559 | " <offset name=\"custom\" value=\"3\"/>" |
2560 | " <offset name=\"high\" value=\"3\"/>" |
2561 | " </offsets>" |
2562 | " </object>" |
2563 | " </child>" |
2564 | " </object>" |
2565 | "</interface>"; |
2566 | const gchar buffer2[] = |
2567 | "<interface>" |
2568 | " <object class=\"CtkLevelBar\" id=\"levelbar\">" |
2569 | " <offsets>" |
2570 | " <offset name=\"low\" bogus_attr=\"foo\"/>" |
2571 | " </offsets>" |
2572 | " </object>" |
2573 | "</interface>"; |
2574 | const gchar buffer3[] = |
2575 | "<interface>" |
2576 | " <object class=\"CtkLevelBar\" id=\"levelbar\">" |
2577 | " <offsets>" |
2578 | " <offset name=\"low\" value=\"1\"/>" |
2579 | " </offsets>" |
2580 | " <bogus_tag>" |
2581 | " </bogus_tag>" |
2582 | " </object>" |
2583 | "</interface>"; |
2584 | |
2585 | builder = ctk_builder_new (); |
2586 | ctk_builder_add_from_string (builder, buffer1, -1, &error); |
2587 | g_assert (error == NULL)do { if (error == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2587, ((const char*) (__func__)) , "error == NULL"); } while (0); |
2588 | |
2589 | obj = ctk_builder_get_object (builder, "window"); |
2590 | g_assert (CTK_IS_WINDOW (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_window_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2590, ( (const char*) (__func__)), "CTK_IS_WINDOW (obj)"); } while (0 ); |
2591 | obj1 = ctk_builder_get_object (builder, "levelbar"); |
2592 | g_assert (CTK_IS_LEVEL_BAR (obj1))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj1)); GType __t = ((ctk_level_bar_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2592, ( (const char*) (__func__)), "CTK_IS_LEVEL_BAR (obj1)"); } while (0); |
2593 | g_object_unref (builder); |
2594 | |
2595 | error = NULL((void*)0); |
2596 | builder = ctk_builder_new (); |
2597 | ctk_builder_add_from_string (builder, buffer2, -1, &error); |
2598 | g_assert_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_MISSING_ATTRIBUTE)do { if (!error || (error)->domain != g_markup_error_quark () || (error)->code != G_MARKUP_ERROR_MISSING_ATTRIBUTE) g_assertion_message_error (((gchar*) 0), "builder.c", 2598, ((const char*) (__func__)) , "error", error, g_markup_error_quark (), G_MARKUP_ERROR_MISSING_ATTRIBUTE ); } while (0); |
2599 | g_error_free (error); |
2600 | g_object_unref (builder); |
2601 | |
2602 | error = NULL((void*)0); |
2603 | builder = ctk_builder_new (); |
2604 | ctk_builder_add_from_string (builder, buffer3, -1, &error); |
2605 | g_assert_error (error, CTK_BUILDER_ERROR, CTK_BUILDER_ERROR_UNHANDLED_TAG)do { if (!error || (error)->domain != (ctk_builder_error_quark ()) || (error)->code != CTK_BUILDER_ERROR_UNHANDLED_TAG) g_assertion_message_error (((gchar*) 0), "builder.c", 2605, ((const char*) (__func__)) , "error", error, (ctk_builder_error_quark ()), CTK_BUILDER_ERROR_UNHANDLED_TAG ); } while (0); |
2606 | g_error_free (error); |
2607 | g_object_unref (builder); |
2608 | } |
2609 | |
2610 | static GObject *external_object = NULL((void*)0), *external_object_swapped = NULL((void*)0); |
2611 | |
2612 | G_MODULE_EXPORT__attribute__((visibility("default"))) void |
2613 | on_button_clicked (CtkButton *button, GObject *data) |
2614 | { |
2615 | external_object = data; |
2616 | } |
2617 | |
2618 | G_MODULE_EXPORT__attribute__((visibility("default"))) void |
2619 | on_button_clicked_swapped (GObject *data, CtkButton *button) |
2620 | { |
2621 | external_object_swapped = data; |
2622 | } |
2623 | |
2624 | static void |
2625 | test_expose_object (void) |
2626 | { |
2627 | CtkBuilder *builder; |
2628 | GError *error = NULL((void*)0); |
2629 | CtkWidget *image; |
2630 | GObject *obj; |
2631 | const gchar buffer[] = |
2632 | "<interface>" |
2633 | " <object class=\"CtkButton\" id=\"button\">" |
2634 | " <property name=\"image\">external_image</property>" |
2635 | " <signal name=\"clicked\" handler=\"on_button_clicked\" object=\"builder\" swapped=\"no\"/>" |
2636 | " <signal name=\"clicked\" handler=\"on_button_clicked_swapped\" object=\"builder\"/>" |
2637 | " </object>" |
2638 | "</interface>"; |
2639 | |
2640 | image = ctk_image_new (); |
2641 | builder = ctk_builder_new (); |
2642 | ctk_builder_expose_object (builder, "external_image", G_OBJECT (image)((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((image)), (((GType) ((20) << (2))))))))); |
2643 | ctk_builder_expose_object (builder, "builder", G_OBJECT (builder)((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((builder)), (((GType) ((20) << (2))))))))); |
2644 | ctk_builder_add_from_string (builder, buffer, -1, &error); |
2645 | g_assert (error == NULL)do { if (error == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2645, ((const char*) (__func__)) , "error == NULL"); } while (0); |
2646 | |
2647 | obj = ctk_builder_get_object (builder, "button"); |
2648 | g_assert (CTK_IS_BUTTON (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_button_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2648, ( (const char*) (__func__)), "CTK_IS_BUTTON (obj)"); } while (0 ); |
2649 | |
2650 | g_assert (ctk_button_get_image (CTK_BUTTON (obj)) == image)do { if (ctk_button_get_image (((((CtkButton*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((obj)), ((ctk_button_get_type ()))))))) == image) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2650, ((const char*) (__func__)), "ctk_button_get_image (CTK_BUTTON (obj)) == image" ); } while (0); |
2651 | |
2652 | /* Connect signals and fake clicked event */ |
2653 | ctk_builder_connect_signals (builder, NULL((void*)0)); |
2654 | ctk_button_clicked (CTK_BUTTON (obj)((((CtkButton*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_button_get_type ()))))))); |
2655 | |
2656 | g_assert (external_object == G_OBJECT (builder))do { if (external_object == ((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((builder)), (((GType) ((20) << (2)) ))))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2656, ((const char*) (__func__)), "external_object == G_OBJECT (builder)" ); } while (0); |
2657 | g_assert (external_object_swapped == G_OBJECT (builder))do { if (external_object_swapped == ((((GObject*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((builder)), (((GType) ((20) << (2)) ))))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2657, ((const char*) (__func__)), "external_object_swapped == G_OBJECT (builder)" ); } while (0); |
2658 | |
2659 | g_object_unref (builder); |
2660 | g_object_unref (image); |
2661 | } |
2662 | |
2663 | static void |
2664 | test_no_ids (void) |
2665 | { |
2666 | CtkBuilder *builder; |
2667 | GError *error = NULL((void*)0); |
2668 | GObject *obj; |
2669 | const gchar buffer[] = |
2670 | "<interface>" |
2671 | " <object class=\"CtkInfoBar\">" |
2672 | " <child internal-child=\"content_area\">" |
2673 | " <object class=\"CtkHBox\">" |
2674 | " <child>" |
2675 | " <object class=\"CtkLabel\">" |
2676 | " <property name=\"label\" translatable=\"yes\">Message</property>" |
2677 | " </object>" |
2678 | " <packing>" |
2679 | " <property name='expand'>False</property>" |
2680 | " </packing>" |
2681 | " </child>" |
2682 | " </object>" |
2683 | " </child>" |
2684 | " <child internal-child=\"action_area\">" |
2685 | " <object class=\"CtkVButtonBox\">" |
2686 | " <child>" |
2687 | " <object class=\"CtkButton\" id=\"button_ok\">" |
2688 | " <property name=\"label\">ctk-ok</property>" |
2689 | " <property name=\"use-stock\">yes</property>" |
2690 | " </object>" |
2691 | " </child>" |
2692 | " </object>" |
2693 | " </child>" |
2694 | " <action-widgets>" |
2695 | " <action-widget response=\"1\">button_ok</action-widget>" |
2696 | " </action-widgets>" |
2697 | " </object>" |
2698 | "</interface>"; |
2699 | |
2700 | builder = ctk_builder_new (); |
2701 | ctk_builder_add_from_string (builder, buffer, -1, &error); |
2702 | g_assert (error == NULL)do { if (error == ((void*)0)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2702, ((const char*) (__func__)) , "error == NULL"); } while (0); |
2703 | |
2704 | obj = ctk_builder_get_object (builder, "button_ok"); |
2705 | g_assert (CTK_IS_BUTTON (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_button_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2705, ( (const char*) (__func__)), "CTK_IS_BUTTON (obj)"); } while (0 ); |
2706 | |
2707 | g_object_unref (builder); |
2708 | } |
2709 | |
2710 | static void |
2711 | test_property_bindings (void) |
2712 | { |
2713 | const gchar *buffer = |
2714 | "<interface>" |
2715 | " <object class=\"CtkWindow\" id=\"window\">" |
2716 | " <child>" |
2717 | " <object class=\"CtkVBox\" id=\"vbox\">" |
2718 | " <property name=\"visible\">True</property>" |
2719 | " <property name=\"orientation\">vertical</property>" |
2720 | " <child>" |
2721 | " <object class=\"CtkCheckButton\" id=\"checkbutton\">" |
2722 | " <property name=\"active\">false</property>" |
2723 | " </object>" |
2724 | " </child>" |
2725 | " <child>" |
2726 | " <object class=\"CtkButton\" id=\"button\">" |
2727 | " <property name=\"sensitive\" bind-source=\"checkbutton\" bind-property=\"active\" bind-flags=\"sync-create\">false</property>" |
2728 | " </object>" |
2729 | " </child>" |
2730 | " <child>" |
2731 | " <object class=\"CtkButton\" id=\"button2\">" |
2732 | " <property name=\"sensitive\" bind-source=\"checkbutton\" bind-property=\"active\" />" |
2733 | " </object>" |
2734 | " </child>" |
2735 | " </object>" |
2736 | " </child>" |
2737 | " </object>" |
2738 | "</interface>"; |
2739 | |
2740 | CtkBuilder *builder; |
2741 | GObject *checkbutton, *button, *button2, *window; |
2742 | |
2743 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2744 | |
2745 | checkbutton = ctk_builder_get_object (builder, "checkbutton"); |
2746 | g_assert (CTK_IS_CHECK_BUTTON (checkbutton))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((checkbutton)); GType __t = ((ctk_check_button_get_type ( ))); gboolean __r; if (!__inst) __r = (0); else if (__inst-> g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2746, ((const char*) (__func__)), "CTK_IS_CHECK_BUTTON (checkbutton)" ); } while (0); |
2747 | g_assert (!ctk_toggle_button_get_active (CTK_TOGGLE_BUTTON (checkbutton)))do { if (!ctk_toggle_button_get_active (((((CtkToggleButton*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((checkbutton )), ((ctk_toggle_button_get_type ())))))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2747, ((const char*) (__func__)) , "!ctk_toggle_button_get_active (CTK_TOGGLE_BUTTON (checkbutton))" ); } while (0); |
2748 | |
2749 | button = ctk_builder_get_object (builder, "button"); |
2750 | g_assert (CTK_IS_BUTTON (button))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((button)); GType __t = ((ctk_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2750, ( (const char*) (__func__)), "CTK_IS_BUTTON (button)"); } while (0); |
2751 | g_assert (!ctk_widget_get_sensitive (CTK_WIDGET (button)))do { if (!ctk_widget_get_sensitive (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button)), ((ctk_widget_get_type ())))))) )) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2751, ((const char*) (__func__)), "!ctk_widget_get_sensitive (CTK_WIDGET (button))" ); } while (0); |
2752 | |
2753 | button2 = ctk_builder_get_object (builder, "button2"); |
2754 | g_assert (CTK_IS_BUTTON (button2))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((button2)); GType __t = ((ctk_button_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2754, ( (const char*) (__func__)), "CTK_IS_BUTTON (button2)"); } while (0); |
2755 | g_assert (ctk_widget_get_sensitive (CTK_WIDGET (button2)))do { if (ctk_widget_get_sensitive (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button2)), ((ctk_widget_get_type ()))))) ))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2755, ((const char*) (__func__)), "ctk_widget_get_sensitive (CTK_WIDGET (button2))" ); } while (0); |
2756 | |
2757 | ctk_toggle_button_set_active (CTK_TOGGLE_BUTTON (checkbutton)((((CtkToggleButton*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((checkbutton)), ((ctk_toggle_button_get_type ())))))), TRUE(!(0))); |
2758 | g_assert (ctk_widget_get_sensitive (CTK_WIDGET (button)))do { if (ctk_widget_get_sensitive (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button)), ((ctk_widget_get_type ())))))) )) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2758, ((const char*) (__func__)), "ctk_widget_get_sensitive (CTK_WIDGET (button))" ); } while (0); |
2759 | g_assert (ctk_widget_get_sensitive (CTK_WIDGET (button2)))do { if (ctk_widget_get_sensitive (((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance*) ((button2)), ((ctk_widget_get_type ()))))) ))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2759, ((const char*) (__func__)), "ctk_widget_get_sensitive (CTK_WIDGET (button2))" ); } while (0); |
2760 | |
2761 | window = ctk_builder_get_object (builder, "window"); |
2762 | ctk_widget_destroy (CTK_WIDGET (window)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((window)), ((ctk_widget_get_type ()))))))); |
2763 | g_object_unref (builder); |
2764 | } |
2765 | |
2766 | #define MY_CTK_GRID_TEMPLATE"<interface>\n <template class=\"MyCtkGrid\" parent=\"CtkGrid\">\n <property name=\"visible\">True</property>\n <child>\n <object class=\"CtkLabel\" id=\"label\">\n <property name=\"visible\">True</property>\n </object>\n </child>\n </template>\n</interface>\n" "\ |
2767 | <interface>\n\ |
2768 | <template class=\"MyCtkGrid\" parent=\"CtkGrid\">\n\ |
2769 | <property name=\"visible\">True</property>\n\ |
2770 | <child>\n\ |
2771 | <object class=\"CtkLabel\" id=\"label\">\n\ |
2772 | <property name=\"visible\">True</property>\n\ |
2773 | </object>\n\ |
2774 | </child>\n\ |
2775 | </template>\n\ |
2776 | </interface>\n" |
2777 | |
2778 | #define MY_TYPE_CTK_GRID(my_ctk_grid_get_type ()) (my_ctk_grid_get_type ()) |
2779 | #define MY_IS_CTK_GRID(obj)(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ( (obj)); GType __t = ((my_ctk_grid_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; })))) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MY_TYPE_CTK_GRID)((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ( (obj)); GType __t = ((my_ctk_grid_get_type ())); gboolean __r ; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; })))) |
2780 | |
2781 | typedef struct |
2782 | { |
2783 | CtkGridClass parent_class; |
2784 | } MyCtkGridClass; |
2785 | |
2786 | typedef struct |
2787 | { |
2788 | CtkLabel *label; |
2789 | } MyCtkGridPrivate; |
2790 | |
2791 | typedef struct |
2792 | { |
2793 | CtkGrid parent_instance; |
2794 | CtkLabel *label; |
2795 | MyCtkGridPrivate *priv; |
2796 | } MyCtkGrid; |
2797 | |
2798 | G_DEFINE_TYPE_WITH_PRIVATE (MyCtkGrid, my_ctk_grid, CTK_TYPE_GRID)static void my_ctk_grid_init (MyCtkGrid *self); static void my_ctk_grid_class_init (MyCtkGridClass *klass); static GType my_ctk_grid_get_type_once (void); static gpointer my_ctk_grid_parent_class = ((void*)0 ); static gint MyCtkGrid_private_offset; static void my_ctk_grid_class_intern_init (gpointer klass) { my_ctk_grid_parent_class = g_type_class_peek_parent (klass); if (MyCtkGrid_private_offset != 0) g_type_class_adjust_private_offset (klass, &MyCtkGrid_private_offset); my_ctk_grid_class_init ((MyCtkGridClass*) klass); } __attribute__ ((__unused__)) static inline gpointer my_ctk_grid_get_instance_private (MyCtkGrid * self) { return (((gpointer) ((guint8*) (self) + (glong) (MyCtkGrid_private_offset )))); } GType my_ctk_grid_get_type (void) { static GType static_g_define_type_id = 0; if ((__extension__ ({ _Static_assert (sizeof *(&static_g_define_type_id ) == sizeof (gpointer), "Expression evaluates to false"); (void ) (0 ? (gpointer) * (&static_g_define_type_id) : ((void*) 0)); (!(__extension__ ({ _Static_assert (sizeof *(&static_g_define_type_id ) == sizeof (gpointer), "Expression evaluates to false"); __typeof__ (*(&static_g_define_type_id)) gapg_temp_newval; __typeof__ ((&static_g_define_type_id)) gapg_temp_atomic = (&static_g_define_type_id ); __atomic_load (gapg_temp_atomic, &gapg_temp_newval, 5) ; gapg_temp_newval; })) && g_once_init_enter_pointer ( &static_g_define_type_id)); })) ) { GType g_define_type_id = my_ctk_grid_get_type_once (); (__extension__ ({ _Static_assert (sizeof *(&static_g_define_type_id) == sizeof (gpointer) , "Expression evaluates to false"); 0 ? (void) (*(&static_g_define_type_id ) = (g_define_type_id)) : (void) 0; g_once_init_leave_pointer ((&static_g_define_type_id), (gpointer) (guintptr) (g_define_type_id )); })) ; } return static_g_define_type_id; } __attribute__ ( (__noinline__)) static GType my_ctk_grid_get_type_once (void) { GType g_define_type_id = g_type_register_static_simple ((ctk_grid_get_type ()), g_intern_static_string ("MyCtkGrid"), sizeof (MyCtkGridClass ), (GClassInitFunc)(void (*)(void)) my_ctk_grid_class_intern_init , sizeof (MyCtkGrid), (GInstanceInitFunc)(void (*)(void)) my_ctk_grid_init , (GTypeFlags) 0); { {{ MyCtkGrid_private_offset = g_type_add_instance_private (g_define_type_id, sizeof (MyCtkGridPrivate)); };} } return g_define_type_id ; }; |
2799 | |
2800 | static void |
2801 | my_ctk_grid_init (MyCtkGrid *grid) |
2802 | { |
2803 | grid->priv = my_ctk_grid_get_instance_private (grid); |
2804 | ctk_widget_init_template (CTK_WIDGET (grid)((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((grid)), ((ctk_widget_get_type ()))))))); |
2805 | } |
2806 | |
2807 | static void |
2808 | my_ctk_grid_class_init (MyCtkGridClass *klass) |
2809 | { |
2810 | GBytes *template = g_bytes_new_static (MY_CTK_GRID_TEMPLATE"<interface>\n <template class=\"MyCtkGrid\" parent=\"CtkGrid\">\n <property name=\"visible\">True</property>\n <child>\n <object class=\"CtkLabel\" id=\"label\">\n <property name=\"visible\">True</property>\n </object>\n </child>\n </template>\n</interface>\n", strlen (MY_CTK_GRID_TEMPLATE"<interface>\n <template class=\"MyCtkGrid\" parent=\"CtkGrid\">\n <property name=\"visible\">True</property>\n <child>\n <object class=\"CtkLabel\" id=\"label\">\n <property name=\"visible\">True</property>\n </object>\n </child>\n </template>\n</interface>\n")); |
2811 | CtkWidgetClass *widget_class = CTK_WIDGET_CLASS (klass)((((CtkWidgetClass*) (void *) g_type_check_class_cast ((GTypeClass *) ((klass)), ((ctk_widget_get_type ())))))); |
2812 | |
2813 | ctk_widget_class_set_template (widget_class, template); |
2814 | ctk_widget_class_bind_template_child (widget_class, MyCtkGrid, label)ctk_widget_class_bind_template_child_full (widget_class, "label" , (0), ((glong) __builtin_offsetof(MyCtkGrid, label))); |
2815 | ctk_widget_class_bind_template_child_private (widget_class, MyCtkGrid, label)ctk_widget_class_bind_template_child_full (widget_class, "label" , (0), (MyCtkGrid_private_offset + (((glong) __builtin_offsetof (MyCtkGridPrivate, label))))); |
2816 | } |
2817 | |
2818 | static void |
2819 | test_template () |
2820 | { |
2821 | MyCtkGrid *my_ctk_grid; |
2822 | |
2823 | /* make sure the type we are trying to register does not exist */ |
2824 | g_assert (!g_type_from_name ("MyCtkGrid"))do { if (!g_type_from_name ("MyCtkGrid")) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2824, ((const char*) (__func__)) , "!g_type_from_name (\"MyCtkGrid\")"); } while (0); |
2825 | |
2826 | /* create the template object */ |
2827 | my_ctk_grid = g_object_new (MY_TYPE_CTK_GRID(my_ctk_grid_get_type ()), NULL((void*)0)); |
2828 | |
2829 | /* Check everything is fine */ |
2830 | g_assert (g_type_from_name ("MyCtkGrid"))do { if (g_type_from_name ("MyCtkGrid")) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2830, ((const char*) (__func__)) , "g_type_from_name (\"MyCtkGrid\")"); } while (0); |
2831 | g_assert (MY_IS_CTK_GRID (my_ctk_grid))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((my_ctk_grid)); GType __t = ((my_ctk_grid_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2831, ( (const char*) (__func__)), "MY_IS_CTK_GRID (my_ctk_grid)"); } while (0); |
2832 | g_assert (my_ctk_grid->label == my_ctk_grid->priv->label)do { if (my_ctk_grid->label == my_ctk_grid->priv->label ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2832, ((const char*) (__func__)), "my_ctk_grid->label == my_ctk_grid->priv->label" ); } while (0); |
2833 | g_assert (CTK_IS_LABEL (my_ctk_grid->label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((my_ctk_grid->label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst-> g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2833, ((const char*) (__func__)), "CTK_IS_LABEL (my_ctk_grid->label)" ); } while (0); |
2834 | g_assert (CTK_IS_LABEL (my_ctk_grid->priv->label))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((my_ctk_grid->priv->label)); GType __t = ((ctk_label_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst-> g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c" , 2834, ((const char*) (__func__)), "CTK_IS_LABEL (my_ctk_grid->priv->label)" ); } while (0); |
2835 | } |
2836 | |
2837 | G_MODULE_EXPORT__attribute__((visibility("default"))) void |
2838 | on_cellrenderertoggle1_toggled (CtkCellRendererToggle *cell) |
2839 | { |
2840 | } |
2841 | |
2842 | static void |
2843 | test_anaconda_signal (void) |
2844 | { |
2845 | CtkBuilder *builder; |
2846 | const gchar buffer[] = |
2847 | "<?xml version='1.0' encoding='UTF-8'?>" |
2848 | "<!-- Generated with glade 3.18.3 -->" |
2849 | "<interface>" |
2850 | " <requires lib='ctk+' version='3.12'/>" |
2851 | " <object class='CtkListStore' id='liststore1'>" |
2852 | " <columns>" |
2853 | " <!-- column-name use -->" |
2854 | " <column type='gboolean'/>" |
2855 | " </columns>" |
2856 | " </object>" |
2857 | " <object class='CtkWindow' id='window1'>" |
2858 | " <property name='can_focus'>False</property>" |
2859 | " <child>" |
2860 | " <object class='CtkTreeView' id='treeview1'>" |
2861 | " <property name='visible'>True</property>" |
2862 | " <property name='can_focus'>True</property>" |
2863 | " <property name='model'>liststore1</property>" |
2864 | " <child internal-child='selection'>" |
2865 | " <object class='CtkTreeSelection' id='treeview-selection1'/>" |
2866 | " </child>" |
2867 | " <child>" |
2868 | " <object class='CtkTreeViewColumn' id='treeviewcolumn1'>" |
2869 | " <property name='title' translatable='yes'>column</property>" |
2870 | " <child>" |
2871 | " <object class='CtkCellRendererToggle' id='cellrenderertoggle1'>" |
2872 | " <signal name='toggled' handler='on_cellrenderertoggle1_toggled' swapped='no'/>" |
2873 | " </object>" |
2874 | " <attributes>" |
2875 | " <attribute name='active'>0</attribute>" |
2876 | " </attributes>" |
2877 | " </child>" |
2878 | " </object>" |
2879 | " </child>" |
2880 | " </object>" |
2881 | " </child>" |
2882 | " </object>" |
2883 | "</interface>"; |
2884 | |
2885 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2886 | ctk_builder_connect_signals (builder, NULL((void*)0)); |
2887 | |
2888 | g_object_unref (builder); |
2889 | } |
2890 | |
2891 | static void |
2892 | test_file_filter (void) |
2893 | { |
2894 | CtkBuilder *builder; |
2895 | GObject *obj; |
2896 | CtkFileFilter *filter; |
2897 | CtkFileFilterInfo info; |
2898 | |
2899 | const gchar buffer[] = |
2900 | "<interface>" |
2901 | " <object class='CtkFileFilter' id='filter1'>" |
2902 | " <mime-types>" |
2903 | " <mime-type>text/plain</mime-type>" |
2904 | " <mime-type>image/*</mime-type>" |
2905 | " </mime-types>" |
2906 | " <patterns>" |
2907 | " <pattern>*.txt</pattern>" |
2908 | " <pattern>*.png</pattern>" |
2909 | " </patterns>" |
2910 | " </object>" |
2911 | "</interface>"; |
2912 | |
2913 | builder = builder_new_from_string (buffer, -1, NULL((void*)0)); |
2914 | obj = ctk_builder_get_object (builder, "filter1"); |
2915 | g_assert (CTK_IS_FILE_FILTER (obj))do { if ((((__extension__ ({ GTypeInstance *__inst = (GTypeInstance *) ((obj)); GType __t = ((ctk_file_filter_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2915, ( (const char*) (__func__)), "CTK_IS_FILE_FILTER (obj)"); } while (0); |
2916 | filter = CTK_FILE_FILTER (obj)((((CtkFileFilter*) (void *) g_type_check_instance_cast ((GTypeInstance *) ((obj)), ((ctk_file_filter_get_type ())))))); |
2917 | g_assert_cmpstr (ctk_file_filter_get_name (filter), ==, "filter1")do { const char *__s1 = (ctk_file_filter_get_name (filter)), * __s2 = ("filter1"); if (g_strcmp0 (__s1, __s2) == 0) ; else g_assertion_message_cmpstr (((gchar*) 0), "builder.c", 2917, ((const char*) (__func__)) , "ctk_file_filter_get_name (filter)" " " "==" " " "\"filter1\"" , __s1, "==", __s2); } while (0); |
2918 | g_assert (ctk_file_filter_get_needed (filter) & CTK_FILE_FILTER_MIME_TYPE)do { if (ctk_file_filter_get_needed (filter) & CTK_FILE_FILTER_MIME_TYPE ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2918, ((const char*) (__func__)), "ctk_file_filter_get_needed (filter) & CTK_FILE_FILTER_MIME_TYPE" ); } while (0); |
2919 | g_assert (ctk_file_filter_get_needed (filter) & CTK_FILE_FILTER_DISPLAY_NAME)do { if (ctk_file_filter_get_needed (filter) & CTK_FILE_FILTER_DISPLAY_NAME ) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2919, ((const char*) (__func__)), "ctk_file_filter_get_needed (filter) & CTK_FILE_FILTER_DISPLAY_NAME" ); } while (0); |
2920 | |
2921 | info.filename = "test1.txt"; |
2922 | info.display_name = "test1.txt"; |
2923 | info.contains = CTK_FILE_FILTER_FILENAME | CTK_FILE_FILTER_DISPLAY_NAME; |
2924 | g_assert (ctk_file_filter_filter (filter, &info))do { if (ctk_file_filter_filter (filter, &info)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2924, ((const char*) (__func__)) , "ctk_file_filter_filter (filter, &info)"); } while (0); |
2925 | |
2926 | info.mime_type = "application/x-pdf"; |
2927 | info.contains = CTK_FILE_FILTER_MIME_TYPE; |
2928 | g_assert (!ctk_file_filter_filter (filter, &info))do { if (!ctk_file_filter_filter (filter, &info)) ; else g_assertion_message_expr (((gchar*) 0), "builder.c", 2928, ((const char*) (__func__)) , "!ctk_file_filter_filter (filter, &info)"); } while (0); |
2929 | |
2930 | g_object_unref (builder); |
2931 | } |
2932 | |
2933 | int |
2934 | main (int argc, char **argv) |
2935 | { |
2936 | /* initialize test program */ |
2937 | ctk_test_init (&argc, &argv); |
2938 | |
2939 | if (argc > 1) |
2940 | { |
2941 | test_file (argv[1]); |
2942 | return 0; |
2943 | } |
2944 | |
2945 | g_test_add_func ("/Builder/Parser", test_parser); |
2946 | g_test_add_func ("/Builder/Types", test_types); |
2947 | g_test_add_func ("/Builder/Construct-Only Properties", test_construct_only_property); |
2948 | g_test_add_func ("/Builder/Children", test_children); |
2949 | g_test_add_func ("/Builder/Child Properties", test_child_properties); |
2950 | g_test_add_func ("/Builder/Object Properties", test_object_properties); |
2951 | g_test_add_func ("/Builder/Notebook", test_notebook); |
2952 | g_test_add_func ("/Builder/Domain", test_domain); |
2953 | g_test_add_func ("/Builder/Signal Autoconnect", test_connect_signals); |
2954 | g_test_add_func ("/Builder/UIManager Simple", test_uimanager_simple); |
2955 | g_test_add_func ("/Builder/Spin Button", test_spin_button); |
2956 | g_test_add_func ("/Builder/SizeGroup", test_sizegroup); |
2957 | g_test_add_func ("/Builder/ListStore", test_list_store); |
2958 | g_test_add_func ("/Builder/TreeStore", test_tree_store); |
2959 | g_test_add_func ("/Builder/TreeView Column", test_treeview_column); |
2960 | g_test_add_func ("/Builder/IconView", test_icon_view); |
2961 | g_test_add_func ("/Builder/ComboBox", test_combo_box); |
2962 | #if 0 |
2963 | g_test_add_func ("/Builder/ComboBox Entry", test_combo_box_entry); |
2964 | #endif |
2965 | g_test_add_func ("/Builder/CellView", test_cell_view); |
2966 | g_test_add_func ("/Builder/Dialog", test_dialog); |
2967 | g_test_add_func ("/Builder/Accelerators", test_accelerators); |
2968 | g_test_add_func ("/Builder/Widget", test_widget); |
2969 | g_test_add_func ("/Builder/Value From String", test_value_from_string); |
2970 | g_test_add_func ("/Builder/Reference Counting", test_reference_counting); |
2971 | g_test_add_func ("/Builder/Window", test_window); |
2972 | g_test_add_func ("/Builder/IconFactory", test_icon_factory); |
2973 | g_test_add_func ("/Builder/PangoAttributes", test_pango_attributes); |
2974 | g_test_add_func ("/Builder/Requires", test_requires); |
2975 | g_test_add_func ("/Builder/AddObjects", test_add_objects); |
2976 | g_test_add_func ("/Builder/Menus", test_menus); |
2977 | g_test_add_func ("/Builder/MessageArea", test_message_area); |
2978 | g_test_add_func ("/Builder/MessageDialog", test_message_dialog); |
2979 | g_test_add_func ("/Builder/GMenu", test_gmenu); |
2980 | g_test_add_func ("/Builder/LevelBar", test_level_bar); |
2981 | g_test_add_func ("/Builder/Expose Object", test_expose_object); |
2982 | g_test_add_func ("/Builder/Template", test_template); |
2983 | g_test_add_func ("/Builder/No IDs", test_no_ids); |
2984 | g_test_add_func ("/Builder/Property Bindings", test_property_bindings); |
2985 | g_test_add_func ("/Builder/anaconda-signal", test_anaconda_signal); |
2986 | g_test_add_func ("/Builder/FileFilter", test_file_filter); |
2987 | |
2988 | return g_test_run(); |
2989 | } |
2990 |