X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=player%2Fapp.c;fp=player%2Fapp.c;h=3d5ff08977a6ef4f4c12c87e07c2b02c77a1edd3;hb=84814759ceb7dc7a97a3a73b6e365a5ca67d4ef8;hp=a9cf6746e8e9944300de51eed44ee144143d14b6;hpb=32ba95a539a77d1dd2b94d19e83024c40d9c10c7;p=projects%2Fchimara%2Fchimara.git diff --git a/player/app.c b/player/app.c index a9cf674..3d5ff08 100644 --- a/player/app.c +++ b/player/app.c @@ -15,6 +15,7 @@ #include "error.h" #include "preferences.h" #include "player.h" +#include "util.h" typedef struct _ChimaraAppPrivate { GtkActionGroup *action_group; @@ -52,17 +53,6 @@ chimara_app_class_init(ChimaraAppClass *klass) g_type_class_add_private(klass, sizeof(ChimaraAppPrivate)); } -static GObject * -load_object(GtkBuilder *builder, const gchar *name) -{ - GObject *retval; - if( (retval = gtk_builder_get_object(builder, name)) == NULL) { - error_dialog(NULL, NULL, "Error while getting object '%s'", name); - g_error("Error while getting object '%s'", name); - } - return retval; -} - static void chimara_app_init(ChimaraApp *self) { @@ -89,25 +79,12 @@ chimara_app_init(ChimaraApp *self) g_free(keyfile); /* Build user interface */ - GtkBuilder *builder = gtk_builder_new(); char *object_ids[] = { "app_group", "aboutwindow", NULL }; - - if( !gtk_builder_add_objects_from_file(builder, PACKAGE_DATA_DIR "/chimara.ui", object_ids, &error) ) { -#ifdef DEBUG - g_error_free(error); - error = NULL; - if( !gtk_builder_add_objects_from_file(builder, PACKAGE_SRC_DIR "/chimara.ui", object_ids, &error) ) { -#endif /* DEBUG */ - error_dialog(NULL, error, "Error while building interface: "); - return; -#ifdef DEBUG - } -#endif /* DEBUG */ - } + GtkBuilder *builder = new_builder_with_objects(object_ids); self->aboutwindow = GTK_WIDGET(load_object(builder, "aboutwindow")); priv->action_group = GTK_ACTION_GROUP(load_object(builder, "app_group"));