aboutsummaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2012-05-04 21:29:20 +0200
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2012-05-04 21:29:20 +0200
commit1574afef9e64bd598fc386d754ef8d46795cdbb0 (patch)
treef21cac84157eddacb9b59088f2d08b00d9b2e03b /src/main.c
parent1b0605ae2ef81e0b936cf18b4dad2d39e835f75d (diff)
downloadgtk-vlc-player-1574afef9e64bd598fc386d754ef8d46795cdbb0.tar.gz
use GtkBuilder for UI, more sophisticated UI
default UI file is installed (/usr/share/experiment-player/default.ui) but the actually used file may be changed via --with-default-ui=... (useful for windows where it should read --with-default-ui=default.ui)
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c33
1 files changed, 25 insertions, 8 deletions
diff --git a/src/main.c b/src/main.c
index df2f9ef..e57d175 100644
--- a/src/main.c
+++ b/src/main.c
@@ -9,9 +9,29 @@
#include <gtk/gtk.h>
#include <gtk-vlc-player.h>
+/*
+ * GtkBuilder signal callbacks
+ */
+
+void
+playpause_button_clicked_cb(GtkWidget *widget,
+ gpointer data __attribute__((unused)))
+{
+ gtk_vlc_player_toggle(GTK_VLC_PLAYER(widget));
+}
+
+void
+stop_button_clicked_cb(GtkWidget *widget,
+ gpointer data __attribute__((unused)))
+{
+ gtk_vlc_player_stop(GTK_VLC_PLAYER(widget));
+}
+
+
int
main(int argc, char *argv[])
{
+ GtkBuilder *builder;
GtkWidget *window, *player;
/* init threads */
@@ -23,20 +43,17 @@ main(int argc, char *argv[])
gtk_init(&argc, &argv);
-#if 0
- GtkBuilder *builder = gtk_builder_new();
+ builder = gtk_builder_new();
- gtk_builder_add_from_file(builder, file, NULL);
+ gtk_builder_add_from_file(builder, DEFAULT_UI, NULL);
gtk_builder_connect_signals(builder, NULL);
-#endif
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ window = GTK_WIDGET(gtk_builder_get_object(builder, "player_window"));
+ player = GTK_WIDGET(gtk_builder_get_object(builder, "player_widget"));
- player = gtk_vlc_player_new();
- gtk_container_add(GTK_CONTAINER(window), player);
+ g_object_unref(builder);
gtk_vlc_player_load(GTK_VLC_PLAYER(player), argv[1]);
- gtk_vlc_player_play(GTK_VLC_PLAYER(player));
gtk_widget_show_all(window);