X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Finterface.c;h=02086d558caf76a1823ab6a2146e846e411a6b72;hb=00135851c96fd5e095b658e99bb72ad5c89b658c;hp=2e48427dbcd6896ba28e7079ba1a5337ddad84a3;hpb=d296a0d48389011b13e1f9ae42bf33636b1d3b1a;p=rugen diff --git a/src/interface.c b/src/interface.c index 2e48427..02086d5 100644 --- a/src/interface.c +++ b/src/interface.c @@ -28,70 +28,85 @@ static GtkWidget * -create_buttons_transport(GtkWidget *top) +create_buttons_transport(GtkWidget *top, int type) { int i; GtkWidget *hbox; gchar name[32]; const static struct { + int type; gchar* tooltip; gchar* filename; } buttons[] = { { + 2, "Beginning of playlist", - "stock_media-begin-16.png" + "begin-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Start of clip", - "stock_media-prev-16.png" + "prev-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Rewind", - "stock_media-rew-16.png" + "rew-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Previous frame", - "stock_media-prev-frame-16.png" + "prev-frame-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { - "Pause", - "stock_media-pause-16.png" + 1, + "Play", + "player_play_64x32_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { - "Play", - "stock_media-play-16.png" + 1, + "Pause", + "player_pause_32x32_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 1, "Stop", - "stock_media-stop-16.png" + "player_stop_32x32_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Next frame", - "stock_media-next-frame-16.png" + "next-frame-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Fast forward", - "stock_media-fwd-16.png" + "fwd-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Next clip", - "stock_media-next-16.png" + "next-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "End of playlist", - "stock_media-end-16.png" + "end-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Loop On", - "eof-loop-16.png" + "loop_on_16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 2, "Loop Off", - "eof-pause-16.png" + "loop_off_16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */ }, { + 0, NULL, NULL } @@ -105,10 +120,12 @@ create_buttons_transport(GtkWidget *top) { GtkWidget *transport, *image; + if ( type != buttons[i].type ) + continue; + transport = gtk_button_new (); gtk_widget_show (transport); gtk_box_pack_start (GTK_BOX (hbox), transport, TRUE, FALSE, 0); - gtk_widget_set_size_request (transport, 34, 25); GTK_WIDGET_UNSET_FLAGS (transport, GTK_CAN_FOCUS); gtk_button_set_relief (GTK_BUTTON (transport), GTK_RELIEF_NONE); gtk_widget_set_tooltip_text (transport, buttons[i].tooltip); @@ -124,33 +141,40 @@ create_buttons_transport(GtkWidget *top) GLADE_HOOKUP_OBJECT (top, image, name); }; - GLADE_HOOKUP_OBJECT (top, hbox, "buttons_transport_hbox"); + snprintf(name, sizeof(name), "buttons_transport_hbox_%d", type); + GLADE_HOOKUP_OBJECT (top, hbox, name); return hbox; }; static GtkWidget * -create_block_buttons_transport(GtkWidget *top) +create_block_buttons_transport(GtkWidget *top, int type) { + gchar name[32]; GtkWidget *hbox, *label[2]; hbox = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox); - label[0] = gtk_label_new ("label46"); + snprintf(name, sizeof(name), "bbt_label_%da", type); + label[0] = gtk_label_new (""); gtk_widget_show (label[0]); gtk_box_pack_start (GTK_BOX (hbox), label[0], TRUE, TRUE, 0); gtk_label_set_justify (GTK_LABEL (label[0]), GTK_JUSTIFY_LEFT); + GLADE_HOOKUP_OBJECT (top, label[0], name); + gtk_box_pack_start (GTK_BOX (hbox), - create_buttons_transport(top), + create_buttons_transport(top, type), FALSE, TRUE, 0); - label[1] = gtk_label_new ("label47"); + snprintf(name, sizeof(name), "bbt_label_%db", type); + label[1] = gtk_label_new (""); gtk_widget_show (label[1]); gtk_box_pack_start (GTK_BOX (hbox), label[1], TRUE, TRUE, 0); gtk_label_set_justify (GTK_LABEL (label[1]), GTK_JUSTIFY_LEFT); + GLADE_HOOKUP_OBJECT (top, label[0], name); return hbox; }; @@ -184,6 +208,7 @@ create_gdv1394d (void) GtkWidget *label40; GtkWidget *vbox_trim; GtkWidget *statusbar; + GtkWidget *button_open_playlist, *button_save_playlist; gdv1394d = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (gdv1394d), _("Melted Client")); @@ -261,6 +286,32 @@ create_gdv1394d (void) gtk_toolbar_append_space (GTK_TOOLBAR (toolbar1)); + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-open", + gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1))); + button_open_playlist = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1), + GTK_TOOLBAR_CHILD_BUTTON, + NULL, + "Open Playlist", + _("Open playlist"), NULL, + tmp_toolbar_icon, NULL, NULL); + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE); + gtk_widget_show (button_open_playlist); + GLADE_HOOKUP_OBJECT (gdv1394d, button_open_playlist, "button_open_playlist"); + + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-save-as", + gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1))); + button_save_playlist = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1), + GTK_TOOLBAR_CHILD_BUTTON, + NULL, + "Save Playlist", + _("Save playlist"), NULL, + tmp_toolbar_icon, NULL, NULL); + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE); + gtk_widget_show (button_save_playlist); + GLADE_HOOKUP_OBJECT (gdv1394d, button_save_playlist, "button_save_playlist"); + + gtk_toolbar_append_space (GTK_TOOLBAR (toolbar1)); + // vseparator1 = gtk_vseparator_new (); // gtk_widget_show (vseparator1); // gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar1), vseparator1, NULL, NULL); @@ -308,7 +359,11 @@ create_gdv1394d (void) gtk_label_set_justify (GTK_LABEL (label40), GTK_JUSTIFY_LEFT); gtk_box_pack_start (GTK_BOX (vbox6), - create_block_buttons_transport(gdv1394d), + create_block_buttons_transport(gdv1394d, 1), + FALSE, TRUE, 0); + + gtk_box_pack_start (GTK_BOX (vbox6), + create_block_buttons_transport(gdv1394d, 2), FALSE, TRUE, 0); vbox_trim = gtk_vbox_new (FALSE, 0); @@ -706,11 +761,11 @@ create_pane_filedir( GtkWidget* top ) GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); /* pane them */ - gtk_widget_set_size_request (vpaned, 400 , -1); gtk_paned_pack1 (GTK_PANED (vpaned), scrolledwindow[0], FALSE, FALSE); - gtk_widget_set_size_request (scrolledwindow[0], 150, -1); + gtk_widget_set_size_request (scrolledwindow[0], 250, -1); gtk_paned_pack2 (GTK_PANED (vpaned), scrolledwindow[1], TRUE, FALSE); - gtk_widget_set_size_request (scrolledwindow[1], 250, -1); + gtk_widget_set_size_request (scrolledwindow[1], 450, -1); + gtk_paned_set_position(GTK_PANED (vpaned), 250); /* list_dirs */ list[0] = gtk_tree_view_new ();