]> git.sesse.net Git - vlc/blobdiff - plugins/gnome/gnome_interface.c
-better handling of angles: you should be able to change on the fly now
[vlc] / plugins / gnome / gnome_interface.c
index 7568653b196dffcd7ed50a8c07656f3ee044a58d..dfa6464f60284991b407728afdaf284ac193da45 100644 (file)
@@ -49,14 +49,21 @@ static GnomeUIInfo menubar_view_menu_uiinfo[] =
 {
   {
     GNOME_APP_UI_ITEM, N_("_Title"),
-    NULL,
+    N_("Choose title"),
     (gpointer) NULL, NULL, NULL,
     GNOME_APP_PIXMAP_NONE, NULL,
     0, (GdkModifierType) 0, NULL
   },
   {
     GNOME_APP_UI_ITEM, N_("_Chapter"),
-    NULL,
+    N_("Choose chapter"),
+    (gpointer) NULL, NULL, NULL,
+    GNOME_APP_PIXMAP_NONE, NULL,
+    0, (GdkModifierType) 0, NULL
+  },
+  {
+    GNOME_APP_UI_ITEM, N_("An_gle"),
+    N_("Choose angle"),
     (gpointer) NULL, NULL, NULL,
     GNOME_APP_PIXMAP_NONE, NULL,
     0, (GdkModifierType) 0, NULL
@@ -89,7 +96,7 @@ static GnomeUIInfo menubar_settings_menu_uiinfo[] =
     0, (GdkModifierType) 0, NULL
   },
   {
-    GNOME_APP_UI_ITEM, N_("_Subtitle"),
+    GNOME_APP_UI_ITEM, N_("_Subtitles"),
     N_("Select subtitle unit"),
     (gpointer) NULL, NULL, NULL,
     GNOME_APP_PIXMAP_NONE, NULL,
@@ -140,12 +147,24 @@ create_intf_window (void)
   GtkWidget *label_status;
   GtkWidget *label_bar;
   GtkWidget *slider;
+  GtkWidget *file_box;
+  GtkWidget *label_file;
   GtkWidget *dvd_box;
+  GtkWidget *title_chapter_box;
+  GtkWidget *label19;
   GtkWidget *label_title;
-  GtkWidget *hbox6;
-  GtkWidget *button_chapter_prev;
+  GtkWidget *button_title_prev;
+  GtkWidget *button_title_next;
+  GtkWidget *dvd_chapter_box;
+  GtkWidget *label20;
   GtkWidget *label_chapter;
+  GtkWidget *button_chapter_prev;
   GtkWidget *button_chapter_next;
+  GtkWidget *network_box;
+  GtkWidget *network_channel_box;
+  GtkWidget *label_network;
+  GtkObject *network_spinbutton_adj;
+  GtkWidget *network_spinbutton;
   GtkWidget *appbar;
   GtkTooltips *tooltips;
 
@@ -210,22 +229,28 @@ create_intf_window (void)
   gtk_widget_set_sensitive (menubar_view_menu_uiinfo[1].widget, FALSE);
 
   gtk_widget_ref (menubar_view_menu_uiinfo[2].widget);
-  gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator7",
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_angle",
                             menubar_view_menu_uiinfo[2].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_sensitive (menubar_view_menu_uiinfo[2].widget, FALSE);
 
   gtk_widget_ref (menubar_view_menu_uiinfo[3].widget);
-  gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_playlist",
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator7",
                             menubar_view_menu_uiinfo[3].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_set_sensitive (menubar_view_menu_uiinfo[3].widget, FALSE);
 
   gtk_widget_ref (menubar_view_menu_uiinfo[4].widget);
-  gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_modules",
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_playlist",
                             menubar_view_menu_uiinfo[4].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_set_sensitive (menubar_view_menu_uiinfo[4].widget, FALSE);
 
+  gtk_widget_ref (menubar_view_menu_uiinfo[5].widget);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_modules",
+                            menubar_view_menu_uiinfo[5].widget,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_sensitive (menubar_view_menu_uiinfo[5].widget, FALSE);
+
   gtk_widget_ref (menubar_uiinfo[2].widget);
   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_settings",
                             menubar_uiinfo[2].widget,
@@ -440,6 +465,7 @@ create_intf_window (void)
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_show (hbox4);
   gtk_box_pack_start (GTK_BOX (vbox2), hbox4, TRUE, TRUE, 0);
+  gtk_widget_set_usize (hbox4, 650, -2);
 
   label_date = gtk_label_new (_("-:--:--"));
   gtk_widget_ref (label_date);
@@ -454,6 +480,7 @@ create_intf_window (void)
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_show (label_status);
   gtk_box_pack_start (GTK_BOX (hbox4), label_status, FALSE, FALSE, 0);
+  gtk_widget_set_usize (label_status, 350, -2);
 
   label_bar = gtk_label_new (_("Bar: baz"));
   gtk_widget_ref (label_bar);
@@ -471,51 +498,134 @@ create_intf_window (void)
   gtk_scale_set_draw_value (GTK_SCALE (slider), FALSE);
   gtk_scale_set_digits (GTK_SCALE (slider), 3);
 
+  file_box = gtk_hbox_new (FALSE, 0);
+  gtk_widget_ref (file_box);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "file_box", file_box,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (file_box);
+  gtk_box_pack_start (GTK_BOX (vbox2), file_box, TRUE, TRUE, 0);
+
+  label_file = gtk_label_new (_("Vlc File Mode"));
+  gtk_widget_ref (label_file);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "label_file", label_file,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (label_file);
+  gtk_box_pack_start (GTK_BOX (file_box), label_file, TRUE, TRUE, 0);
+  gtk_widget_set_usize (label_file, -2, 24);
+
   dvd_box = gtk_hbox_new (FALSE, 0);
   gtk_widget_ref (dvd_box);
   gtk_object_set_data_full (GTK_OBJECT (intf_window), "dvd_box", dvd_box,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_box_pack_start (GTK_BOX (vbox2), dvd_box, TRUE, TRUE, 0);
+  gtk_widget_set_usize (dvd_box, -2, 24);
 
-  label_title = gtk_label_new (_("Title:"));
+  title_chapter_box = gtk_hbox_new (FALSE, 10);
+  gtk_widget_ref (title_chapter_box);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "title_chapter_box", title_chapter_box,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (title_chapter_box);
+  gtk_box_pack_start (GTK_BOX (dvd_box), title_chapter_box, TRUE, FALSE, 0);
+
+  label19 = gtk_label_new (_("Title:"));
+  gtk_widget_ref (label19);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "label19", label19,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (label19);
+  gtk_box_pack_start (GTK_BOX (title_chapter_box), label19, FALSE, FALSE, 0);
+
+  label_title = gtk_label_new (_("--"));
   gtk_widget_ref (label_title);
   gtk_object_set_data_full (GTK_OBJECT (intf_window), "label_title", label_title,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_show (label_title);
-  gtk_box_pack_start (GTK_BOX (dvd_box), label_title, TRUE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (title_chapter_box), label_title, FALSE, FALSE, 0);
+
+  button_title_prev = gnome_stock_button (GNOME_STOCK_BUTTON_PREV);
+  gtk_widget_ref (button_title_prev);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "button_title_prev", button_title_prev,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (button_title_prev);
+  gtk_box_pack_start (GTK_BOX (title_chapter_box), button_title_prev, FALSE, FALSE, 0);
+  gtk_tooltips_set_tip (tooltips, button_title_prev, _("Select previous title"), NULL);
+  gtk_button_set_relief (GTK_BUTTON (button_title_prev), GTK_RELIEF_NONE);
+
+  button_title_next = gnome_stock_button (GNOME_STOCK_BUTTON_NEXT);
+  gtk_widget_ref (button_title_next);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "button_title_next", button_title_next,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (button_title_next);
+  gtk_box_pack_start (GTK_BOX (title_chapter_box), button_title_next, FALSE, FALSE, 0);
+  gtk_button_set_relief (GTK_BUTTON (button_title_next), GTK_RELIEF_NONE);
+
+  dvd_chapter_box = gtk_hbox_new (FALSE, 10);
+  gtk_widget_ref (dvd_chapter_box);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "dvd_chapter_box", dvd_chapter_box,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (dvd_chapter_box);
+  gtk_box_pack_start (GTK_BOX (dvd_box), dvd_chapter_box, TRUE, FALSE, 0);
 
-  hbox6 = gtk_hbox_new (FALSE, 10);
-  gtk_widget_ref (hbox6);
-  gtk_object_set_data_full (GTK_OBJECT (intf_window), "hbox6", hbox6,
+  label20 = gtk_label_new (_("Chapter:"));
+  gtk_widget_ref (label20);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "label20", label20,
                             (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox6);
-  gtk_box_pack_start (GTK_BOX (dvd_box), hbox6, TRUE, FALSE, 0);
+  gtk_widget_show (label20);
+  gtk_box_pack_start (GTK_BOX (dvd_chapter_box), label20, FALSE, FALSE, 0);
+
+  label_chapter = gtk_label_new (_("--"));
+  gtk_widget_ref (label_chapter);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "label_chapter", label_chapter,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (label_chapter);
+  gtk_box_pack_start (GTK_BOX (dvd_chapter_box), label_chapter, FALSE, FALSE, 0);
 
   button_chapter_prev = gnome_stock_button (GNOME_STOCK_BUTTON_PREV);
   gtk_widget_ref (button_chapter_prev);
   gtk_object_set_data_full (GTK_OBJECT (intf_window), "button_chapter_prev", button_chapter_prev,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_show (button_chapter_prev);
-  gtk_box_pack_start (GTK_BOX (hbox6), button_chapter_prev, FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (dvd_chapter_box), button_chapter_prev, FALSE, FALSE, 0);
   gtk_tooltips_set_tip (tooltips, button_chapter_prev, _("Select previous chapter"), NULL);
   gtk_button_set_relief (GTK_BUTTON (button_chapter_prev), GTK_RELIEF_NONE);
 
-  label_chapter = gtk_label_new (_("Chapter:   "));
-  gtk_widget_ref (label_chapter);
-  gtk_object_set_data_full (GTK_OBJECT (intf_window), "label_chapter", label_chapter,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label_chapter);
-  gtk_box_pack_start (GTK_BOX (hbox6), label_chapter, FALSE, FALSE, 0);
-
   button_chapter_next = gnome_stock_button (GNOME_STOCK_BUTTON_NEXT);
   gtk_widget_ref (button_chapter_next);
   gtk_object_set_data_full (GTK_OBJECT (intf_window), "button_chapter_next", button_chapter_next,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_show (button_chapter_next);
-  gtk_box_pack_start (GTK_BOX (hbox6), button_chapter_next, FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (dvd_chapter_box), button_chapter_next, FALSE, FALSE, 0);
   gtk_tooltips_set_tip (tooltips, button_chapter_next, _("Select next chapter"), NULL);
   gtk_button_set_relief (GTK_BUTTON (button_chapter_next), GTK_RELIEF_NONE);
 
+  network_box = gtk_hbox_new (TRUE, 0);
+  gtk_widget_ref (network_box);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_box", network_box,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_box_pack_start (GTK_BOX (vbox2), network_box, TRUE, TRUE, 0);
+
+  network_channel_box = gtk_hbox_new (FALSE, 0);
+  gtk_widget_ref (network_channel_box);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_channel_box", network_channel_box,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (network_channel_box);
+  gtk_box_pack_start (GTK_BOX (network_box), network_channel_box, TRUE, TRUE, 0);
+
+  label_network = gtk_label_new (_("Network Channel:"));
+  gtk_widget_ref (label_network);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "label_network", label_network,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (label_network);
+  gtk_box_pack_start (GTK_BOX (network_channel_box), label_network, TRUE, FALSE, 0);
+
+  network_spinbutton_adj = gtk_adjustment_new (1, 0, 100, 1, 10, 10);
+  network_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (network_spinbutton_adj), 1, 0);
+  gtk_widget_ref (network_spinbutton);
+  gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_spinbutton", network_spinbutton,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (network_spinbutton);
+  gtk_box_pack_start (GTK_BOX (network_channel_box), network_spinbutton, FALSE, TRUE, 0);
+  gtk_widget_set_sensitive (network_spinbutton, FALSE);
+
   appbar = gnome_appbar_new (TRUE, TRUE, GNOME_PREFERENCES_NEVER);
   gtk_widget_ref (appbar);
   gtk_object_set_data_full (GTK_OBJECT (intf_window), "appbar", appbar,
@@ -572,6 +682,12 @@ create_intf_window (void)
   gtk_signal_connect (GTK_OBJECT (slider), "button_release_event",
                       GTK_SIGNAL_FUNC (on_slider_button_release_event),
                       NULL);
+  gtk_signal_connect (GTK_OBJECT (button_title_prev), "clicked",
+                      GTK_SIGNAL_FUNC (on_button_title_prev_clicked),
+                      NULL);
+  gtk_signal_connect (GTK_OBJECT (button_title_next), "clicked",
+                      GTK_SIGNAL_FUNC (on_button_title_next_clicked),
+                      NULL);
   gtk_signal_connect (GTK_OBJECT (button_chapter_prev), "clicked",
                       GTK_SIGNAL_FUNC (on_button_chapter_prev_clicked),
                       NULL);
@@ -650,6 +766,13 @@ static GnomeUIInfo intf_popup_uiinfo[] =
     GNOME_APP_PIXMAP_NONE, NULL,
     0, (GdkModifierType) 0, NULL
   },
+  {
+    GNOME_APP_UI_ITEM, N_("An_gle"),
+    NULL,
+    (gpointer) NULL, NULL, NULL,
+    GNOME_APP_PIXMAP_NONE, NULL,
+    0, (GdkModifierType) 0, NULL
+  },
   {
     GNOME_APP_UI_ITEM, N_("_Audio"),
     N_("Select audio channel"),
@@ -658,7 +781,7 @@ static GnomeUIInfo intf_popup_uiinfo[] =
     0, (GdkModifierType) 0, NULL
   },
   {
-    GNOME_APP_UI_ITEM, N_("_Subtitle"),
+    GNOME_APP_UI_ITEM, N_("_Subtitles"),
     N_("Select subtitle channel"),
     (gpointer) NULL, NULL, NULL,
     GNOME_APP_PIXMAP_NONE, NULL,
@@ -712,21 +835,27 @@ create_intf_popup (void)
   gtk_widget_set_sensitive (intf_popup_uiinfo[5].widget, FALSE);
 
   gtk_widget_ref (intf_popup_uiinfo[6].widget);
-  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_audio",
+  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_angle",
                             intf_popup_uiinfo[6].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_set_sensitive (intf_popup_uiinfo[6].widget, FALSE);
 
   gtk_widget_ref (intf_popup_uiinfo[7].widget);
-  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_subtitle",
+  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_audio",
                             intf_popup_uiinfo[7].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
   gtk_widget_set_sensitive (intf_popup_uiinfo[7].widget, FALSE);
 
   gtk_widget_ref (intf_popup_uiinfo[8].widget);
-  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_file",
+  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_subtitle",
                             intf_popup_uiinfo[8].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_set_sensitive (intf_popup_uiinfo[8].widget, FALSE);
+
+  gtk_widget_ref (intf_popup_uiinfo[9].widget);
+  gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_file",
+                            intf_popup_uiinfo[9].widget,
+                            (GtkDestroyNotify) gtk_widget_unref);
 
   gtk_widget_ref (popup_file_menu_uiinfo[0].widget);
   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_open",
@@ -753,14 +882,14 @@ create_intf_popup (void)
                             popup_file_menu_uiinfo[4].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
 
-  gtk_widget_ref (intf_popup_uiinfo[9].widget);
+  gtk_widget_ref (intf_popup_uiinfo[10].widget);
   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator2",
-                            intf_popup_uiinfo[9].widget,
+                            intf_popup_uiinfo[10].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
 
-  gtk_widget_ref (intf_popup_uiinfo[10].widget);
+  gtk_widget_ref (intf_popup_uiinfo[11].widget);
   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_exit",
-                            intf_popup_uiinfo[10].widget,
+                            intf_popup_uiinfo[11].widget,
                             (GtkDestroyNotify) gtk_widget_unref);
 
   return intf_popup;