Bug Summary

File:cafe-panel/panel-test-applets.c
Warning:line 369, column 3
This statement is never executed

Annotated Source Code

Press '?' to see keyboard shortcuts

clang -cc1 -cc1 -triple x86_64-pc-linux-gnu -analyze -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name panel-test-applets.c -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -setup-static-analyzer -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fcoverage-compilation-dir=/rootdir/cafe-panel -resource-dir /usr/lib/llvm-16/lib/clang/16 -D HAVE_CONFIG_H -I . -I .. -I /usr/include/glib-2.0 -I /usr/lib/x86_64-linux-gnu/glib-2.0/include -I /usr/include/gdk-pixbuf-2.0 -I /usr/include/libpng16 -I /usr/include/x86_64-linux-gnu -I /usr/include/webp -I /usr/include/libmount -I /usr/include/blkid -I /usr/include/pango-1.0 -I /usr/include/harfbuzz -I /usr/include/freetype2 -I /usr/include/fribidi -I /usr/include/cairo -I /usr/include/pixman-1 -I /usr/include/ctk-3.0 -I /usr/include/gio-unix-2.0 -I /usr/include/atk-1.0 -I /usr/include/at-spi2-atk/2.0 -I /usr/include/at-spi-2.0 -I /usr/include/dbus-1.0 -I /usr/lib/x86_64-linux-gnu/dbus-1.0/include -I /usr/include/cafe-desktop-2.0 -I /usr/include/startup-notification-1.0 -I /usr/include/dconf -I /usr/include/cafe-menus -I /usr/include/dconf -I /usr/include/glib-2.0 -I /usr/lib/x86_64-linux-gnu/glib-2.0/include -I /usr/include/libmount -I /usr/include/blkid -I . -I . -I ../cafe-panel -I ../cafe-panel/libpanel-util -D CAFELOCALEDIR="/usr/share/locale" -D PANELDATADIR="/usr/share/cafe-panel" -D PANEL_MODULES_DIR="/usr/lib/cafe-panel/modules" -D CAFE_PANEL_APPLETS_DIR="/usr/share/cafe-panel/applets" -internal-isystem /usr/lib/llvm-16/lib/clang/16/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdebug-compilation-dir=/rootdir/cafe-panel -ferror-limit 19 -fgnuc-version=4.2.1 -analyzer-checker deadcode.DeadStores -analyzer-checker alpha.deadcode.UnreachableCode -analyzer-checker alpha.core.CastSize -analyzer-checker alpha.core.CastToStruct -analyzer-checker alpha.core.IdenticalExpr -analyzer-checker alpha.core.SizeofPtr -analyzer-checker alpha.security.ArrayBoundV2 -analyzer-checker alpha.security.MallocOverflow -analyzer-checker alpha.security.ReturnPtrRange -analyzer-checker alpha.unix.SimpleStream -analyzer-checker alpha.unix.cstring.BufferOverlap -analyzer-checker alpha.unix.cstring.NotNullTerminated -analyzer-checker alpha.unix.cstring.OutOfBounds -analyzer-checker alpha.core.FixedAddr -analyzer-output=html -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /rootdir/html-report/2024-02-11-192722-55971-1 -x c panel-test-applets.c
1/*
2 * panel-test-applets.c:
3 *
4 * Authors:
5 * Mark McLoughlin <mark@skynet.ie>
6 * Stefano Karapetsas <stefano@karapetsas.com>
7 *
8 * Copyright 2002 Sun Microsystems, Inc.
9 * 2012 Stefano Karapetsas
10 */
11
12#include <config.h>
13#include <glib/gi18n.h>
14#include <ctk/ctk.h>
15#include <gio/gio.h>
16
17#include <libpanel-util/panel-cleanup.h>
18#include <libcafe-desktop/cafe-dconf.h>
19
20#include <libcafe-panel-applet-private/panel-applet-container.h>
21#include <libcafe-panel-applet-private/panel-applets-manager-dbus.h>
22
23#include "panel-modules.h"
24
25G_GNUC_UNUSED__attribute__ ((__unused__)) void on_execute_button_clicked (CtkButton *button, gpointer dummy);
26
27static CtkWidget *win = NULL((void*)0);
28static CtkWidget *applet_combo = NULL((void*)0);
29static CtkWidget *prefs_path_entry = NULL((void*)0);
30static CtkWidget *orient_combo = NULL((void*)0);
31static CtkWidget *size_combo = NULL((void*)0);
32
33static char *cli_iid = NULL((void*)0);
34static char *cli_prefs_path = NULL((void*)0);
35static char *cli_size = NULL((void*)0);
36static char *cli_orient = NULL((void*)0);
37
38static const GOptionEntry options [] = {
39 { "iid", 0, 0, G_OPTION_ARG_STRING, &cli_iid, N_("Specify an applet IID to load")("Specify an applet IID to load"), NULL((void*)0)},
40 { "prefs-path", 0, 0, G_OPTION_ARG_STRING, &cli_prefs_path, N_("Specify a gsettings path in which the applet preferences should be stored")("Specify a gsettings path in which the applet preferences should be stored"
)
, NULL((void*)0)},
41 { "size", 0, 0, G_OPTION_ARG_STRING, &cli_size, N_("Specify the initial size of the applet (xx-small, medium, large etc.)")("Specify the initial size of the applet (xx-small, medium, large etc.)"
)
, NULL((void*)0)},
42 { "orient", 0, 0, G_OPTION_ARG_STRING, &cli_orient, N_("Specify the initial orientation of the applet (top, bottom, left or right)")("Specify the initial orientation of the applet (top, bottom, left or right)"
)
, NULL((void*)0)},
43 { NULL((void*)0)}
44};
45
46enum {
47 COLUMN_TEXT,
48 COLUMN_ITEM,
49 NUMBER_COLUMNS
50};
51
52typedef struct {
53 const char *name;
54 guint value;
55} ComboItem;
56
57static ComboItem orient_items [] = {
58 { NC_("Orientation", "Top")("Top"), PANEL_ORIENTATION_TOP },
59 { NC_("Orientation", "Bottom")("Bottom"), PANEL_ORIENTATION_BOTTOM },
60 { NC_("Orientation", "Left")("Left"), PANEL_ORIENTATION_LEFT },
61 { NC_("Orientation", "Right")("Right"), PANEL_ORIENTATION_RIGHT }
62};
63
64
65static ComboItem size_items [] = {
66 { NC_("Size", "XX Small")("XX Small"), 12 },
67 { NC_("Size", "X Small")("X Small"), 24 },
68 { NC_("Size", "Small")("Small"), 36 },
69 { NC_("Size", "Medium")("Medium"), 48 },
70 { NC_("Size", "Large")("Large"), 64 },
71 { NC_("Size", "X Large")("X Large"), 80 },
72 { NC_("Size", "XX Large")("XX Large"), 128 }
73};
74
75static guint
76get_combo_value (CtkWidget *combo_box)
77{
78 CtkTreeIter iter;
79 CtkTreeModel *model;
80 guint value;
81
82 if (!ctk_combo_box_get_active_iter (CTK_COMBO_BOX (combo_box)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_combo_box_get_type ()))))))
, &iter))
83 return 0;
84
85 model = ctk_combo_box_get_model (CTK_COMBO_BOX (combo_box)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_combo_box_get_type ()))))))
);
86 ctk_tree_model_get (model, &iter, COLUMN_ITEM, &value, -1);
87
88 return value;
89}
90
91static gchar *
92get_combo_applet_id (CtkWidget *combo_box)
93{
94 CtkTreeIter iter;
95 CtkTreeModel *model;
96 char *value;
97
98 if (!ctk_combo_box_get_active_iter (CTK_COMBO_BOX (combo_box)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_combo_box_get_type ()))))))
, &iter))
99 return NULL((void*)0);
100
101 model = ctk_combo_box_get_model (CTK_COMBO_BOX (combo_box)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_combo_box_get_type ()))))))
);
102 ctk_tree_model_get (model, &iter, COLUMN_ITEM, &value, -1);
103
104 return value;
105}
106
107static void
108applet_broken_cb (CtkWidget *container,
109 CtkWidget *window)
110{
111 ctk_widget_destroy (window);
112}
113
114static void
115applet_activated_cb (GObject *source_object,
116 GAsyncResult *res,
117 CtkWidget *applet_window)
118{
119 GError *error = NULL((void*)0);
120
121 if (!cafe_panel_applet_container_add_finish (CAFE_PANEL_APPLET_CONTAINER (source_object)((((CafePanelAppletContainer*) (void *) g_type_check_instance_cast
((GTypeInstance*) ((source_object)), ((cafe_panel_applet_container_get_type
()))))))
,
122 res, &error)) {
123 CtkWidget *dialog;
124
125 dialog = ctk_message_dialog_new (CTK_WINDOW (applet_window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_window)), ((ctk_window_get_type ()))))))
,
126 CTK_DIALOG_MODAL|
127 CTK_DIALOG_DESTROY_WITH_PARENT,
128 CTK_MESSAGE_ERROR,
129 CTK_BUTTONS_CLOSE,
130 _("Failed to load applet %s")gettext ("Failed to load applet %s"),
131 error->message); // FIXME
132 ctk_dialog_run (CTK_DIALOG (dialog)((((CtkDialog*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((dialog)), ((ctk_dialog_get_type ()))))))
);
133 ctk_widget_destroy (dialog);
134 return;
135 }
136
137 ctk_widget_show (applet_window);
138}
139
140static void
141load_applet_into_window (const char *title,
142 const char *prefs_path,
143 guint size,
144 guint orientation)
145{
146 CtkWidget *container;
147 CtkWidget *applet_window;
148 GVariantBuilder builder;
149
150 container = cafe_panel_applet_container_new ();
151
152 applet_window = ctk_window_new (CTK_WINDOW_TOPLEVEL);
153 //FIXME: we could set the window icon with the applet icon
154 ctk_window_set_title (CTK_WINDOW (applet_window)((((CtkWindow*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_window)), ((ctk_window_get_type ()))))))
, title);
155 ctk_container_add (CTK_CONTAINER (applet_window)((((CtkContainer*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_window)), ((ctk_container_get_type ()))))))
, container);
156 ctk_widget_show (container);
157
158 g_signal_connect (container, "applet-broken",g_signal_connect_data ((container), ("applet-broken"), (((GCallback
) (applet_broken_cb))), (applet_window), ((void*)0), (GConnectFlags
) 0)
159 G_CALLBACK (applet_broken_cb),g_signal_connect_data ((container), ("applet-broken"), (((GCallback
) (applet_broken_cb))), (applet_window), ((void*)0), (GConnectFlags
) 0)
160 applet_window)g_signal_connect_data ((container), ("applet-broken"), (((GCallback
) (applet_broken_cb))), (applet_window), ((void*)0), (GConnectFlags
) 0)
;
161
162 g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")(g_variant_type_checked_ (("a{sv}"))));
163 g_variant_builder_add (&builder, "{sv}",
164 "prefs-path", g_variant_new_string (prefs_path));
165 g_variant_builder_add (&builder, "{sv}",
166 "size", g_variant_new_uint32 (size));
167 g_variant_builder_add (&builder, "{sv}",
168 "orient", g_variant_new_uint32 (orientation));
169 cafe_panel_applet_container_add (CAFE_PANEL_APPLET_CONTAINER (container)((((CafePanelAppletContainer*) (void *) g_type_check_instance_cast
((GTypeInstance*) ((container)), ((cafe_panel_applet_container_get_type
()))))))
,
170 ctk_widget_get_screen (applet_window),
171 title, NULL((void*)0),
172 (GAsyncReadyCallback)applet_activated_cb,
173 applet_window,
174 g_variant_builder_end (&builder));
175}
176
177static void
178load_applet_from_command_line (void)
179{
180 guint size = 24, orient = PANEL_ORIENTATION_TOP;
181 gint i;
182
183 g_assert (cli_iid != NULL)do { if (cli_iid != ((void*)0)) ; else g_assertion_message_expr
(((gchar*) 0), "panel-test-applets.c", 183, ((const char*) (
__func__)), "cli_iid != NULL"); } while (0)
;
184
185 if (cli_size || cli_orient) {
186 if (cli_size) {
187 for (i = 0; i < G_N_ELEMENTS (size_items)(sizeof (size_items) / sizeof ((size_items)[0])); i++) {
188 if (strcmp (g_dpgettext2 (NULL((void*)0), "Size", size_items[i].name), cli_size) == 0) {
189 size = size_items[i].value;
190 break;
191 }
192 }
193 }
194
195 if (cli_orient) {
196 for (i = 0; i < G_N_ELEMENTS (orient_items)(sizeof (orient_items) / sizeof ((orient_items)[0])); i++) {
197 if (strcmp (g_dpgettext2 (NULL((void*)0), "Orientation", orient_items[i].name), cli_orient) == 0) {
198 orient = orient_items[i].value;
199 break;
200 }
201 }
202 }
203 }
204
205 g_print ("Loading %s\n", cli_iid);
206
207 load_applet_into_window (cli_iid, cli_prefs_path, size, orient);
208}
209
210G_GNUC_UNUSED__attribute__ ((__unused__)) void
211on_execute_button_clicked (CtkButton *button,
212 gpointer dummy)
213{
214 char *title;
215
216 title = get_combo_applet_id (applet_combo);
217
218 load_applet_into_window (title,
219 ctk_entry_get_text (CTK_ENTRY (prefs_path_entry)((((CtkEntry*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((prefs_path_entry)), ((ctk_entry_get_type ()))))))
),
220 get_combo_value (size_combo),
221 get_combo_value (orient_combo));
222 g_free (title);
223}
224
225static void
226setup_combo (CtkWidget *combo_box,
227 ComboItem *items,
228 const char *context,
229 int nb_items)
230{
231 CtkListStore *model;
232 CtkTreeIter iter;
233 CtkCellRenderer *renderer;
234 int i;
235
236 model = ctk_list_store_new (NUMBER_COLUMNS,
237 G_TYPE_STRING((GType) ((16) << (2))),
238 G_TYPE_INT((GType) ((6) << (2))));
239
240 ctk_combo_box_set_model (CTK_COMBO_BOX (combo_box)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_combo_box_get_type ()))))))
,
241 CTK_TREE_MODEL (model)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((model)), ((ctk_tree_model_get_type ()))))))
);
242
243
244 for (i = 0; i < nb_items; i++) {
245 ctk_list_store_append (model, &iter);
246 ctk_list_store_set (model, &iter,
247 COLUMN_TEXT, g_dpgettext2 (NULL((void*)0), context, items [i].name),
248 COLUMN_ITEM, items [i].value,
249 -1);
250 }
251
252 renderer = ctk_cell_renderer_text_new ();
253 ctk_cell_layout_pack_start (CTK_CELL_LAYOUT (combo_box)((((CtkCellLayout*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_cell_layout_get_type ()))))))
,
254 renderer, TRUE(!(0)));
255 ctk_cell_layout_set_attributes (CTK_CELL_LAYOUT (combo_box)((((CtkCellLayout*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_cell_layout_get_type ()))))))
,
256 renderer, "text", COLUMN_TEXT, NULL((void*)0));
257
258 ctk_combo_box_set_active (CTK_COMBO_BOX (combo_box)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((combo_box)), ((ctk_combo_box_get_type ()))))))
, 0);
259}
260
261static void
262setup_options (void)
263{
264 CafePanelAppletsManager *manager;
265 GList *applet_list, *l;
266 int i;
267 int j;
268 char *prefs_path = NULL((void*)0);
269 char *unique_key = NULL((void*)0);
270 gboolean unique_key_found = FALSE(0);
271 gchar **dconf_paths;
272 CtkListStore *model;
273 CtkTreeIter iter;
274 CtkCellRenderer *renderer;
275
276 model = ctk_list_store_new (NUMBER_COLUMNS,
277 G_TYPE_STRING((GType) ((16) << (2))),
278 G_TYPE_STRING((GType) ((16) << (2))));
279
280 ctk_combo_box_set_model (CTK_COMBO_BOX (applet_combo)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_combo)), ((ctk_combo_box_get_type ()))))))
,
281 CTK_TREE_MODEL (model)((((CtkTreeModel*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((model)), ((ctk_tree_model_get_type ()))))))
);
282
283 manager = g_object_new (PANEL_TYPE_APPLETS_MANAGER_DBUS(cafe_panel_applets_manager_dbus_get_type ()), NULL((void*)0));
284 applet_list = CAFE_PANEL_APPLETS_MANAGER_GET_CLASS (manager)((((CafePanelAppletsManagerClass*) (((GTypeInstance*) ((manager
)))->g_class))))
->get_applets (manager);
285 for (l = applet_list, i = 1; l; l = g_list_next (l)((l) ? (((GList *)(l))->next) : ((void*)0)), i++) {
286 CafePanelAppletInfo *info = (CafePanelAppletInfo *)l->data;
287
288 ctk_list_store_append (model, &iter);
289 ctk_list_store_set (model, &iter,
290 COLUMN_TEXT, g_strdup (cafe_panel_applet_info_get_name (info))g_strdup_inline (cafe_panel_applet_info_get_name (info)),
291 COLUMN_ITEM, g_strdup (cafe_panel_applet_info_get_iid (info))g_strdup_inline (cafe_panel_applet_info_get_iid (info)),
292 -1);
293 }
294 g_list_free (applet_list);
295 g_object_unref (manager);
296
297 renderer = ctk_cell_renderer_text_new ();
298 ctk_cell_layout_pack_start (CTK_CELL_LAYOUT (applet_combo)((((CtkCellLayout*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_combo)), ((ctk_cell_layout_get_type ()))))))
,
299 renderer, TRUE(!(0)));
300 ctk_cell_layout_set_attributes (CTK_CELL_LAYOUT (applet_combo)((((CtkCellLayout*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_combo)), ((ctk_cell_layout_get_type ()))))))
,
301 renderer, "text", COLUMN_TEXT, NULL((void*)0));
302
303 ctk_combo_box_set_active (CTK_COMBO_BOX (applet_combo)((((CtkComboBox*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((applet_combo)), ((ctk_combo_box_get_type ()))))))
, 0);
304
305 setup_combo (size_combo, size_items, "Size",
306 G_N_ELEMENTS (size_items)(sizeof (size_items) / sizeof ((size_items)[0])));
307 setup_combo (orient_combo, orient_items, "Orientation",
308 G_N_ELEMENTS (orient_items)(sizeof (orient_items) / sizeof ((orient_items)[0])));
309
310 for (i = 0; !unique_key_found; i++)
311 {
312 g_free (unique_key);
313 unique_key = g_strdup_printf ("cafe-panel-test-applet-%d", i);
314 unique_key_found = TRUE(!(0));
315 dconf_paths = cafe_dconf_list_subdirs ("/tmp/", TRUE(!(0)));
316 for (j = 0; dconf_paths[j] != NULL((void*)0); j++)
317 {
318 if (g_strcmp0(unique_key, dconf_paths[j]) == 0) {
319 unique_key_found = FALSE(0);
320 break;
321 }
322 }
323 if (dconf_paths)
324 g_strfreev (dconf_paths);
325 }
326
327 prefs_path = g_strdup_printf ("/tmp/%s/", unique_key);
328 if (unique_key)
329 g_free (unique_key);
330 ctk_entry_set_text (CTK_ENTRY (prefs_path_entry)((((CtkEntry*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((prefs_path_entry)), ((ctk_entry_get_type ()))))))
, prefs_path);
331 g_free (prefs_path);
332}
333
334int
335main (int argc, char **argv)
336{
337 CtkBuilder *builder;
338 char *applets_dir;
339 GError *error;
340
341 bindtextdomain (GETTEXT_PACKAGE"cafe-panel", CAFELOCALEDIR"/usr/share/locale");
342 bind_textdomain_codeset (GETTEXT_PACKAGE"cafe-panel", "UTF-8");
343 textdomain (GETTEXT_PACKAGE"cafe-panel");
344
345 error = NULL((void*)0);
346 if (!ctk_init_with_args (&argc, &argv,
347 "", (GOptionEntry *) options, GETTEXT_PACKAGE"cafe-panel",
348 &error)) {
349 if (error) {
350 g_printerr ("%s\n", error->message);
351 g_error_free (error);
352 } else
353 g_printerr ("Cannot initialize CTK+.\n");
354
355 return 1;
356 }
357
358 panel_modules_ensure_loaded ();
359
360 if (g_file_test ("../libcafe-panel-applet", G_FILE_TEST_IS_DIR)) {
361 applets_dir = g_strdup_printf ("%s:../libcafe-panel-applet", CAFE_PANEL_APPLETS_DIR"/usr/share/cafe-panel/applets");
362 g_setenv ("CAFE_PANEL_APPLETS_DIR", applets_dir, FALSE(0));
363 g_free (applets_dir);
364 }
365
366 g_object_set (ctk_settings_get_default (), "ctk-button-images", TRUE(!(0)), NULL((void*)0));
367
368 if (cli_iid) {
369 load_applet_from_command_line ();
This statement is never executed
370 ctk_main ();
371 panel_cleanup_do ();
372
373 return 0;
374 }
375
376 builder = ctk_builder_new ();
377 ctk_builder_set_translation_domain (builder, GETTEXT_PACKAGE"cafe-panel");
378 ctk_builder_add_from_resource (builder, "/org/cafe/panel/test/panel-test-applets.ui", NULL((void*)0));
379
380 ctk_builder_connect_signals (builder, NULL((void*)0));
381
382 win = CTK_WIDGET (ctk_builder_get_object (builder,((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "toplevel"))), ((ctk_widget_get_type
()))))))
383 "toplevel"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "toplevel"))), ((ctk_widget_get_type
()))))))
;
384 applet_combo = CTK_WIDGET (ctk_builder_get_object (builder,((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "applet-combo"))), ((ctk_widget_get_type
()))))))
385 "applet-combo"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "applet-combo"))), ((ctk_widget_get_type
()))))))
;
386 prefs_path_entry = CTK_WIDGET (ctk_builder_get_object (builder,((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "prefs-path-entry"))), (
(ctk_widget_get_type ()))))))
387 "prefs-path-entry"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "prefs-path-entry"))), (
(ctk_widget_get_type ()))))))
;
388 orient_combo = CTK_WIDGET (ctk_builder_get_object (builder,((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "orient-combo"))), ((ctk_widget_get_type
()))))))
389 "orient-combo"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "orient-combo"))), ((ctk_widget_get_type
()))))))
;
390 size_combo = CTK_WIDGET (ctk_builder_get_object (builder,((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "size-combo"))), ((ctk_widget_get_type
()))))))
391 "size-combo"))((((CtkWidget*) (void *) g_type_check_instance_cast ((GTypeInstance
*) ((ctk_builder_get_object (builder, "size-combo"))), ((ctk_widget_get_type
()))))))
;
392 g_object_unref (builder);
393
394 setup_options ();
395
396 ctk_widget_show (win);
397
398 ctk_main ();
399
400 panel_cleanup_do ();
401
402 return 0;
403}