From 878ccf4a56535765653f879af7dba1d0fb1c832c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Javier=20Jard=C3=B3n?= Date: Sat, 16 Jan 2010 06:57:26 +0100 Subject: [PATCH] tests: Port from libglade to GtkBuilder Fixes bug #601108. --- configure.ac | 8 - gst-plugins-bad.spec.in | 2 +- po/POTFILES.skip | 3 +- tests/examples/camerabin/Makefile.am | 19 +- tests/examples/camerabin/gst-camera-perf.glade | 120 ---------- tests/examples/camerabin/gst-camera-perf.ui | 80 +++++++ tests/examples/camerabin/gst-camera.c | 121 +++------- .../camerabin/{gst-camera.glade => gst-camera.ui} | 260 +++++++++++---------- tests/icles/Makefile.am | 9 +- tests/icles/metadata_editor.c | 88 ++----- .../{metadata_editor.glade => metadata_editor.ui} | 190 ++++++++------- 11 files changed, 389 insertions(+), 511 deletions(-) delete mode 100644 tests/examples/camerabin/gst-camera-perf.glade create mode 100644 tests/examples/camerabin/gst-camera-perf.ui rename tests/examples/camerabin/{gst-camera.glade => gst-camera.ui} (71%) rename tests/icles/{metadata_editor.glade => metadata_editor.ui} (79%) diff --git a/configure.ac b/configure.ac index d78d579..b469d42 100644 --- a/configure.ac +++ b/configure.ac @@ -207,14 +207,6 @@ HAVE_GTK=NO PKG_CHECK_MODULES(GTK, gtk+-x11-2.0 >= 2.8.0, HAVE_GTK=yes, HAVE_GTK=no) AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes") -dnl libglade is optional and only used in examples -HAVE_GLADE=NO -PKG_CHECK_MODULES(GLADE, libglade-2.0 >= 2.6.0, HAVE_GLADE=yes, HAVE_GLADE=no) -AC_SUBST(GLADE_LIBS) -AC_SUBST(GLADE_CFLAGS) -AC_SUBST(HAVE_GLADE) -AM_CONDITIONAL(HAVE_GLADE, test "x$HAVE_GLADE" = "xyes") - dnl x11 is optional for librfb HAVE_X11=NO PKG_CHECK_MODULES(X11, x11, HAVE_X11=yes, HAVE_X11=no) diff --git a/gst-plugins-bad.spec.in b/gst-plugins-bad.spec.in index 48f3b50..7ee26f6 100644 --- a/gst-plugins-bad.spec.in +++ b/gst-plugins-bad.spec.in @@ -135,7 +135,7 @@ rm -rf $RPM_BUILD_ROOT %{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideoencoder.h %{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideoparse.h %{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideoutils.h -%{_datadir}/gstreamer-%{majorminor}/camera-apps/gst-camera.glade +%{_datadir}/gstreamer-%{majorminor}/camera-apps/gst-camera.ui %{_includedir}/gstreamer-%{majorminor}/gst/signalprocessor/gstsignalprocessor.h %{_includedir}/gstreamer-%{majorminor}/gst/interfaces/photography-enumtypes.h diff --git a/po/POTFILES.skip b/po/POTFILES.skip index 8e9ebe0..fd9ae86 100644 --- a/po/POTFILES.skip +++ b/po/POTFILES.skip @@ -3,5 +3,4 @@ ext/audiofile/gstafsrc.c sys/dxr3/dxr3audiosink.c sys/dxr3/dxr3spusink.c sys/dxr3/dxr3videosink.c -tests/icles/metadata_editor.glade - +tests/icles/metadata_editor.ui diff --git a/tests/examples/camerabin/Makefile.am b/tests/examples/camerabin/Makefile.am index df88cf1..c13ad8f 100644 --- a/tests/examples/camerabin/Makefile.am +++ b/tests/examples/camerabin/Makefile.am @@ -1,6 +1,5 @@ -GST_CAMERABIN_GLADE_FILES = gst-camera.glade +GST_CAMERABIN_UI_FILES = gst-camera.ui -if HAVE_GLADE if HAVE_GTK GST_CAMERABIN_GTK_EXAMPLES = gst-camera @@ -8,26 +7,22 @@ GST_CAMERABIN_GTK_EXAMPLES = gst-camera gst_camera_SOURCES = gst-camera.c gst_camera_CFLAGS = \ -I$(top_builddir)/gst-libs \ - $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(GLADE_CFLAGS) \ + $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) \ -DGST_USE_UNSTABLE_API gst_camera_LDADD = \ $(top_builddir)/gst-libs/gst/interfaces/libgstphotography-@GST_MAJORMINOR@.la \ $(GST_PLUGINS_BASE_LIBS) \ -lgstinterfaces-@GST_MAJORMINOR@ \ - $(GST_LIBS) \ - $(GLADE_LIBS) + $(GST_LIBS) -gladedir = $(datadir)/gstreamer-@GST_MAJORMINOR@/camera-apps -glade_DATA = $(GST_CAMERABIN_GLADE_FILES) +uidir = $(datadir)/gstreamer-@GST_MAJORMINOR@/camera-apps +ui_DATA = $(GST_CAMERABIN_UI_FILES) -INCLUDES = -DCAMERA_APPS_GLADEDIR=\""$(gladedir)"\" +INCLUDES = -DCAMERA_APPS_UIDIR=\""$(uidir)"\" else GST_CAMERABIN_GTK_EXAMPLES = endif -else -GST_CAMERABIN_GTK_EXAMPLES = -endif gst_camera_perf_SOURCES = gst-camera-perf.c gst_camera_perf_CFLAGS = $(GST_CFLAGS) @@ -35,5 +30,5 @@ gst_camera_perf_LDADD = $(GST_LIBS) bin_PROGRAMS = gst-camera-perf $(GST_CAMERABIN_GTK_EXAMPLES) -EXTRA_DIST = $(GST_CAMERABIN_GLADE_FILES) +EXTRA_DIST = $(GST_CAMERABIN_UI_FILES) diff --git a/tests/examples/camerabin/gst-camera-perf.glade b/tests/examples/camerabin/gst-camera-perf.glade deleted file mode 100644 index fe6098e..0000000 --- a/tests/examples/camerabin/gst-camera-perf.glade +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - GTK_WINDOW_TOPLEVEL - GTK_WIN_POS_NONE - False - 400 - 600 - True - False - True - False - False - GDK_WINDOW_TYPE_HINT_NORMAL - GDK_GRAVITY_NORTH_WEST - True - False - - - - - True - True - 200 - - - - 100 - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - False - - - - - - True - False - 0 - - - - True - True - start - True - GTK_RELIEF_NORMAL - True - - - - 0 - False - True - - - - - - True - True - GTK_POLICY_NEVER - GTK_POLICY_AUTOMATIC - GTK_SHADOW_NONE - GTK_CORNER_TOP_LEFT - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - GTK_SHADOW_IN - - - - True - True - == Please wait few seconds after press start == - False - True - GTK_JUSTIFY_LEFT - True - True - 0.5 - 0 - 0 - 0 - PANGO_ELLIPSIZE_NONE - -1 - False - 0 - - - - - - - 0 - True - True - - - - - True - True - - - - - - - diff --git a/tests/examples/camerabin/gst-camera-perf.ui b/tests/examples/camerabin/gst-camera-perf.ui new file mode 100644 index 0000000..9a3885a --- /dev/null +++ b/tests/examples/camerabin/gst-camera-perf.ui @@ -0,0 +1,80 @@ + + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 400 + 600 + + + + True + True + 200 + + + 100 + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + False + True + + + + + True + + + start + True + True + False + True + + + + False + 0 + + + + + True + True + never + automatic + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + True + 0 + == Please wait few seconds after press start == + True + True + True + + + + + + + 1 + + + + + True + True + + + + + + diff --git a/tests/examples/camerabin/gst-camera.c b/tests/examples/camerabin/gst-camera.c index ae47356..adc04d0 100644 --- a/tests/examples/camerabin/gst-camera.c +++ b/tests/examples/camerabin/gst-camera.c @@ -33,7 +33,6 @@ #include #include #include -#include #include #include #include @@ -56,8 +55,8 @@ #define PREVIEW_TIME_MS (2 * 1000) #define N_BURST_IMAGES 10 -#define DEFAULT_GLADE_FILE "gst-camera.glade" -#define SHARED_GLADE_FILE CAMERA_APPS_GLADEDIR"/"DEFAULT_GLADE_FILE +#define DEFAULT_UI_FILE "gst-camera.ui" +#define SHARED_UI_FILE CAMERA_APPS_UIDIR"/"DEFAULT_UI_FILE /* Names of default elements */ #define CAMERA_APP_VIDEOSRC "v4l2src" @@ -95,7 +94,7 @@ typedef enum _tag_CaptureState * Global Vars */ -static GladeXML *ui_glade_xml = NULL; +static GtkBuilder *builder = NULL; static GtkWidget *ui_main_window = NULL; static GtkWidget *ui_drawing = NULL; static GtkWidget *ui_drawing_frame = NULL; @@ -1087,62 +1086,7 @@ on_key_pressed (GtkWidget * widget, GdkEventKey * event, gpointer user_data) static void ui_connect_signals (void) { - glade_xml_signal_connect (ui_glade_xml, "on_windowMain_delete_event", - (GCallback) on_windowMain_delete_event); - - glade_xml_signal_connect (ui_glade_xml, "on_buttonShot_clicked", - (GCallback) on_buttonShot_clicked); - - glade_xml_signal_connect (ui_glade_xml, "on_buttonPause_clicked", - (GCallback) on_buttonPause_clicked); - - glade_xml_signal_connect (ui_glade_xml, "on_drawingareaView_configure_event", - (GCallback) on_drawingareaView_configure_event); - - glade_xml_signal_connect (ui_glade_xml, "on_comboboxResolution_changed", - (GCallback) on_comboboxResolution_changed); - - glade_xml_signal_connect (ui_glade_xml, "on_radiobuttonImageCapture_toggled", - (GCallback) on_radiobuttonImageCapture_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_radiobuttonVideoCapture_toggled", - (GCallback) on_radiobuttonVideoCapture_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffNone_toggled", - (GCallback) on_rbBntVidEffNone_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffEdge_toggled", - (GCallback) on_rbBntVidEffEdge_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffAging_toggled", - (GCallback) on_rbBntVidEffAging_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffDice_toggled", - (GCallback) on_rbBntVidEffDice_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffWarp_toggled", - (GCallback) on_rbBntVidEffWarp_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffShagadelic_toggled", - (GCallback) on_rbBntVidEffShagadelic_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffVertigo_toggled", - (GCallback) on_rbBntVidEffVertigo_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffRev_toggled", - (GCallback) on_rbBntVidEffRev_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_rbBntVidEffQuark_toggled", - (GCallback) on_rbBntVidEffQuark_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_chkbntMute_toggled", - (GCallback) on_chkbntMute_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_chkbtnRawMsg_toggled", - (GCallback) on_chkbtnRawMsg_toggled); - - glade_xml_signal_connect (ui_glade_xml, "on_hscaleZoom_value_changed", - (GCallback) on_hscaleZoom_value_changed); + gtk_builder_connect_signals (builder, NULL); g_signal_connect (ui_main_window, "key-press-event", (GCallback) on_key_pressed, NULL); @@ -1674,40 +1618,43 @@ fill_capture_menu (GtkMenuItem * parent_item) static gboolean ui_create (void) { - gchar *gladefile = DEFAULT_GLADE_FILE; + GError *error = NULL; + gchar *uifile = DEFAULT_UI_FILE; - if (!g_file_test (gladefile, G_FILE_TEST_EXISTS)) { - gladefile = SHARED_GLADE_FILE; + if (!g_file_test (uifile, G_FILE_TEST_EXISTS)) { + uifile = SHARED_UI_FILE; } - ui_glade_xml = glade_xml_new (gladefile, NULL, NULL); - if (!ui_glade_xml) { - fprintf (stderr, "glade_xml_new failed for %s\n", gladefile); - fflush (stderr); + builder = gtk_builder_new (); + if (!gtk_builder_add_from_file (builder, uifile, &error)) { + g_warning ("Couldn't load builder file: %s", error->message); + g_error_free (error); goto done; } - ui_main_window = glade_xml_get_widget (ui_glade_xml, "windowMain"); - ui_drawing = glade_xml_get_widget (ui_glade_xml, "drawingareaView"); - ui_drawing_frame = glade_xml_get_widget (ui_glade_xml, "drawingareaFrame"); - ui_chk_continous = glade_xml_get_widget (ui_glade_xml, "chkbntContinous"); - ui_chk_rawmsg = glade_xml_get_widget (ui_glade_xml, "chkbtnRawMsg"); - ui_bnt_shot = GTK_BUTTON (glade_xml_get_widget (ui_glade_xml, "buttonShot")); - ui_bnt_pause = - GTK_BUTTON (glade_xml_get_widget (ui_glade_xml, "buttonPause")); + ui_main_window = GTK_WIDGET (gtk_builder_get_object (builder, "windowMain")); + ui_drawing = GTK_WIDGET (gtk_builder_get_object (builder, "drawingareaView")); + ui_drawing_frame = + GTK_WIDGET (gtk_builder_get_object (builder, "drawingareaFrame")); + ui_chk_continous = + GTK_WIDGET (gtk_builder_get_object (builder, "chkbntContinous")); + ui_chk_rawmsg = GTK_WIDGET (gtk_builder_get_object (builder, "chkbtnRawMsg")); + ui_bnt_shot = GTK_BUTTON (gtk_builder_get_object (builder, "buttonShot")); + ui_bnt_pause = GTK_BUTTON (gtk_builder_get_object (builder, "buttonPause")); ui_cbbox_resolution = - GTK_COMBO_BOX (glade_xml_get_widget (ui_glade_xml, "comboboxResolution")); - ui_chk_mute = glade_xml_get_widget (ui_glade_xml, "chkbntMute"); - ui_vbox_color_controls = glade_xml_get_widget (ui_glade_xml, - "vboxColorControls"); - ui_rdbntImageCapture = glade_xml_get_widget (ui_glade_xml, - "radiobuttonImageCapture"); - ui_rdbntVideoCapture = glade_xml_get_widget (ui_glade_xml, - "radiobuttonVideoCapture"); - - ui_menuitem_photography = glade_xml_get_widget (ui_glade_xml, - "menuitemPhotography"); - ui_menuitem_capture = glade_xml_get_widget (ui_glade_xml, "menuitemCapture"); + GTK_COMBO_BOX (gtk_builder_get_object (builder, "comboboxResolution")); + ui_chk_mute = GTK_WIDGET (gtk_builder_get_object (builder, "chkbntMute")); + ui_vbox_color_controls = + GTK_WIDGET (gtk_builder_get_object (builder, "vboxColorControls")); + ui_rdbntImageCapture = + GTK_WIDGET (gtk_builder_get_object (builder, "radiobuttonImageCapture")); + ui_rdbntVideoCapture = + GTK_WIDGET (gtk_builder_get_object (builder, "radiobuttonVideoCapture")); + ui_menuitem_photography = + GTK_WIDGET (gtk_builder_get_object (builder, "menuitemPhotography")); + ui_menuitem_capture = + GTK_WIDGET (gtk_builder_get_object (builder, "menuitemCapture")); + #ifdef HAVE_GST_PHOTO_IFACE_H if (ui_menuitem_photography) { fill_photography_menu (GTK_MENU_ITEM (ui_menuitem_photography)); diff --git a/tests/examples/camerabin/gst-camera.glade b/tests/examples/camerabin/gst-camera.ui similarity index 71% rename from tests/examples/camerabin/gst-camera.glade rename to tests/examples/camerabin/gst-camera.ui index 5230c83..c93616c 100644 --- a/tests/examples/camerabin/gst-camera.glade +++ b/tests/examples/camerabin/gst-camera.ui @@ -1,346 +1,359 @@ - - - - - + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gst-camera - + True - + True - + True - + True Photography True - - + + True - + - + - + True Capture True - + - + False + 0 - + True - + liststore1 - + + + + 0 + + + 1 - + False + 0 - + True - + + Image capture True True - Image capture + False True - 0 True True - + + + 0 + - + + Video rec True True - Video rec + False True - 0 True True radiobuttonImageCapture - + 1 - + + Shot True True - Shot + False True - 0 - + 2 - + + Pause True True - Pause + False True - 0 - + 3 - + + mute True True - mute + False True - 0 True - + 4 - + + continous True True - continous + False True - 0 True - + 5 - + + raw msg True True - Send raw image after still image capture as gstreamer message - raw msg + False + Send raw image after still image capture as gstreamer message True - 0 True - + 6 - + False 1 - + True - 1 3 - + True - + True video effects: - + + + 0 + - + + none True True - none + False True - 0 True True - + 1 - + + edged True True - edged + False True - 0 True True rbBntVidEffNone - + 2 - + + aging True True - aging + False True - 0 True True rbBntVidEffNone - + 3 - + + dice True True - dice + False True - 0 True True rbBntVidEffNone - + 4 - + + warp True True - warp + False True - 0 True True rbBntVidEffNone - + 5 - + + shagadelic True True - shagadelic + False True - 0 True True rbBntVidEffNone - + 6 - + + vertigo True True - vertigo + False True - 0 True True rbBntVidEffNone - + 7 - + + rev True True - rev + False True - 0 True True rbBntVidEffNone - + 8 - + + quark True True - quark + False True - 0 True True rbBntVidEffNone - + 9 - + - + 200 200 True True - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC + automatic + automatic - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True - + - + - + 2 3 @@ -348,50 +361,63 @@ - + True 0 - GTK_SHADOW_NONE - 1 + none False - + True - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + - + - + 1 2 - + 2 - + True True - 100 100 1100 10 100 100 + adjustment1 0 - GTK_POS_LEFT + left - + False 3 - + - - + + + 100 + 1100 + 100 + 10 + 100 + 100 + + + + + + + + diff --git a/tests/icles/Makefile.am b/tests/icles/Makefile.am index 28f540d..437a82f 100644 --- a/tests/icles/Makefile.am +++ b/tests/icles/Makefile.am @@ -19,20 +19,15 @@ endif if USE_METADATA -if HAVE_GLADE if HAVE_GTK GST_METADATA_TESTS = metadata_editor metadata_editor_SOURCES = metadata_editor.c metadata_editor_CFLAGS = \ - $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) $(GLADE_CFLAGS) + $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) metadata_editor_LDADD = \ - $(GST_PLUGINS_BASE_LIBS) -lgstinterfaces-0.10 $(GST_LIBS) \ - $(GLADE_LIBS) -else -GST_METADATA_TESTS = -endif + $(GST_PLUGINS_BASE_LIBS) -lgstinterfaces-0.10 $(GST_LIBS) else GST_METADATA_TESTS = endif diff --git a/tests/icles/metadata_editor.c b/tests/icles/metadata_editor.c index 155d586..81eda97 100644 --- a/tests/icles/metadata_editor.c +++ b/tests/icles/metadata_editor.c @@ -47,7 +47,6 @@ #include #include -#include #include /* @@ -119,7 +118,7 @@ AppOptions app_options = APP_OPT_ALL; GstTagList *tag_list = NULL; -GladeXML *ui_glade_xml = NULL; +GtkBuilder *builder = NULL; GtkWidget *ui_main_window = NULL; GtkWidget *ui_drawing = NULL; GtkWidget *ui_tree = NULL; @@ -311,7 +310,7 @@ ui_drawing_size_allocate_cb (GtkWidget * drawing_area, } /* - * UI handling functions (mapped by glade) + * UI handling functions (mapped by GtkBuilder) */ gboolean @@ -741,90 +740,39 @@ ui_refresh () } static int -ui_connect_signals() -{ - - glade_xml_signal_connect(ui_glade_xml, "on_checkbuttonCaptureV4l2_toggled", - (GCallback)on_checkbuttonCaptureV4l2_toggled); - - glade_xml_signal_connect(ui_glade_xml, "on_checkbuttonCaptureTest_toggled", - (GCallback)on_checkbuttonCaptureTest_toggled); - - glade_xml_signal_connect(ui_glade_xml, - "on_checkbuttonOptionsDemuxExif_toggled", - (GCallback) on_checkbuttonOptionsDemuxExif_toggled); - - glade_xml_signal_connect(ui_glade_xml, - "on_checkbuttonOptionsDemuxIptc_toggled", - (GCallback) on_checkbuttonOptionsDemuxIptc_toggled); - - glade_xml_signal_connect(ui_glade_xml, - "on_checkbuttonOptionsDemuxXmp_toggled", - (GCallback) on_checkbuttonOptionsDemuxXmp_toggled); - - glade_xml_signal_connect(ui_glade_xml, - "on_checkbuttonOptionsMuxExif_toggled", - (GCallback) on_checkbuttonOptionsMuxExif_toggled); - - glade_xml_signal_connect(ui_glade_xml, - "on_checkbuttonOptionsMuxIptc_toggled", - (GCallback) on_checkbuttonOptionsMuxIptc_toggled); - - glade_xml_signal_connect(ui_glade_xml, - "on_checkbuttonOptionsMuxXmp_toggled", - (GCallback) on_checkbuttonOptionsMuxXmp_toggled); - - glade_xml_signal_connect(ui_glade_xml, "on_buttonSaveFile_clicked", - (GCallback)on_buttonSaveFile_clicked); - - glade_xml_signal_connect(ui_glade_xml, "on_windowMain_delete_event", - (GCallback)on_windowMain_delete_event); - - glade_xml_signal_connect(ui_glade_xml, "on_drawingMain_expose_event", - (GCallback)on_drawingMain_expose_event); - - glade_xml_signal_connect(ui_glade_xml, "on_buttonInsert_clicked", - (GCallback)on_buttonInsert_clicked); - - glade_xml_signal_connect(ui_glade_xml, "on_buttonOpenFile_clicked", - (GCallback)on_buttonOpenFile_clicked); - - return 0; - -} - -static int ui_create () { + Gerror *error = NULL; int ret = 0; - ui_glade_xml = glade_xml_new ("metadata_editor.glade", NULL, NULL); - - if (!ui_glade_xml) { - fprintf (stderr, "glade_xml_new failed\n"); + builder = gtk_builder_new (); + if (!gtk_builder_add_from_file (builder, "metadata_editor.ui", &error)) + { + g_warning ("Couldn't load builder file: %s", error->message); + g_error_free (error); ret = -101; goto done; } - ui_main_window = glade_xml_get_widget (ui_glade_xml, "windowMain"); + ui_main_window = GTK_WIDGET (gtk_builder_get_object (builder, "windowMain")); - ui_drawing = glade_xml_get_widget (ui_glade_xml, "drawingMain"); + ui_drawing = GTK_WIDGET (gtk_builder_get_object (builder, "drawingMain")); - ui_tree = glade_xml_get_widget (ui_glade_xml, "treeMain"); + ui_tree = GTK_WIDGET (gtk_builder_get_object (builder, "treeMain")); ui_entry_insert_tag = - GTK_ENTRY (glade_xml_get_widget (ui_glade_xml, "entryTag")); + GTK_ENTRY (gtk_builder_get_object (builder, "entryTag")); ui_entry_insert_value = - GTK_ENTRY (glade_xml_get_widget (ui_glade_xml, "entryValue")); + GTK_ENTRY (gtk_builder_get_object (builder, "entryValue")); ui_chk_bnt_capture_v4l2 = - GTK_TOGGLE_BUTTON (glade_xml_get_widget (ui_glade_xml, - "checkbuttonCaptureV4l2")); + GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, + "checkbuttonCaptureV4l2")); ui_chk_bnt_capture_test = - GTK_TOGGLE_BUTTON (glade_xml_get_widget (ui_glade_xml, - "checkbuttonCaptureTest")); + GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, + "checkbuttonCaptureTest")); if (!(ui_main_window && ui_drawing && ui_tree && ui_entry_insert_tag && ui_entry_insert_value @@ -837,7 +785,7 @@ ui_create () g_signal_connect_after (ui_drawing, "size-allocate", G_CALLBACK (ui_drawing_size_allocate_cb), NULL); - ui_connect_signals(); + gtk_builder_connect_signals (builder, NULL); ui_setup_tree_view (GTK_TREE_VIEW (ui_tree)); diff --git a/tests/icles/metadata_editor.glade b/tests/icles/metadata_editor.ui similarity index 79% rename from tests/icles/metadata_editor.glade rename to tests/icles/metadata_editor.ui index 91aac53..3cbe076 100644 --- a/tests/icles/metadata_editor.glade +++ b/tests/icles/metadata_editor.ui @@ -1,123 +1,130 @@ - - - - - + + + + + 800 600 GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Metadata Editor - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + 200 100 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + False False - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC + automatic + automatic - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True True False True - + - + + + 0 + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + 300 True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + False False + 0 - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + 1 - + + + 0 + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True - GTK_BUTTONBOX_SPREAD + spread - + + Insert True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Insert - 0 - + False False + 0 - + + Save File True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Save File - 0 - + + False + False 1 - + False False @@ -125,207 +132,216 @@ - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + + Capture image from camera True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Capture image from camera - 0 True - + False + 0 - + + Capture image from videotestsrc True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Capture image from videotestsrc - 0 True - + False 1 - + + Open File... True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Open File... - 0 - + 2 - + + + 0 + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 Demux options: - + + + 0 + - + + exif True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - exif - 0 True True - + False 1 - + + iptc True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - iptc - 0 True True - + False 2 - + + xmp True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - xmp - 0 True True - + False 3 - + 1 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 Mux options: - + + + 0 + - + + exif True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - exif - 0 True True - + False 1 - + + iptc True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - iptc - 0 True True - + False 2 - + + xmp True True + False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - xmp - 0 True True - + False 3 - + 2 - + 2 - + False False 1 - + True False - + - - + + -- 2.7.4