[Player-cvs] app/gtk Umakefil, 1.91, 1.92 clipdetails.cpp, 1.6, 1.7 clipdetails.h, 1.3, 1.4 contextmenu.cpp, 1.7, 1.8 hxstatus.cpp, 1.13, 1.14 hxstatusfield.cpp, 1.18, 1.19 hxstatuspositionfield.cpp, 1.17, 1.18 hxstatuspositionslider.cpp, 1.17, 1.18 hxstatustacctrl.cpp, 1.20, 1.21 hxstatustop.cpp, 1.15, 1.16 main_interface.c, 1.52, 1.53 mainapp.cpp, 1.95, 1.96 mainapp.h, 1.13, 1.14 preferences_callbacks.h, 1.13, 1.14 preferences_interface.c, 1.32, 1.33 prefsdialog.cpp, 1.30, 1.31 signincontroller.cpp, 1.2, 1.3 statistics.cpp, 1.11, 1.12 statistics.h, 1.4, 1.5 statistics_interface.c, 1.9, 1.10 sunos5.pcf, 1.7, 1.8

[Player-cvs] app/gtk Umakefil, 1.91, 1.92 clipdetails.cpp, 1.6, 1.7 clipdetails.h, 1.3, 1.4 contextmenu.cpp, 1.7, 1.8 hxstatus.cpp, 1.13, 1.14 hxstatusfield.cpp, 1.18, 1.19 hxstatuspositionfield.cpp, 1.17, 1.18 hxstatuspositionslider.cpp, 1.17, 1.18 hxstatustacctrl.cpp, 1.20, 1.21 hxstatustop.cpp, 1.15, 1.16 main_interface.c, 1.52, 1.53 mainapp.cpp, 1.95, 1.96 mainapp.h, 1.13, 1.14 preferences_callbacks.h, 1.13, 1.14 preferences_interface.c, 1.32, 1.33 prefsdialog.cpp, 1.30, 1.31 signincontroller.cpp, 1.2, 1.3 statistics.cpp, 1.11, 1.12 statistics.h, 1.4, 1.5 statistics_interface.c, 1.9, 1.10 sunos5.pcf, 1.7, 1.8

rggammon at helixcommunity.org rggammon at helixcommunity.org
Tue Jul 5 21:36:33 PDT 2005


Update of /cvsroot/player/app/gtk
In directory cvs:/tmp/cvs-serv26114

Modified Files:
	Umakefil clipdetails.cpp clipdetails.h contextmenu.cpp 
	hxstatus.cpp hxstatusfield.cpp hxstatuspositionfield.cpp 
	hxstatuspositionslider.cpp hxstatustacctrl.cpp hxstatustop.cpp 
	main_interface.c mainapp.cpp mainapp.h preferences_callbacks.h 
	preferences_interface.c prefsdialog.cpp signincontroller.cpp 
	statistics.cpp statistics.h statistics_interface.c sunos5.pcf 
Log Message:
ume updates
alsa configuriation in prefs dialog


Index: hxstatusfield.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/hxstatusfield.cpp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- hxstatusfield.cpp	21 May 2005 02:00:03 -0000	1.18
+++ hxstatusfield.cpp	6 Jul 2005 04:36:30 -0000	1.19
@@ -303,17 +303,21 @@
     {
         const gchar* name;
         GCallback callback;
-    } signal_map[] = 
+    }
+    signal_map[] = 
     {
-        { "current_clip_basic_metadata_changed", G_CALLBACK(spw_metadata_changed) },
-        { "buffering",                           G_CALLBACK(spw_buffering)     },
-        { "contacting",                          G_CALLBACK(spw_contacting)    },
         { "play",                                G_CALLBACK(spw_play)          },
         { "pause",                               G_CALLBACK(spw_pause)         },
         { "stop",                                G_CALLBACK(spw_stop)          },
-        { "clip_bandwidth_changed",              G_CALLBACK(spw_clip_bandwidth_changed) },
         { "seek_start",                          G_CALLBACK(spw_start_seeking) },
         { "seek_stop",                           G_CALLBACK(spw_stop_seeking)  }
+    },
+    hx_signal_map[] =
+    {
+        { "current_clip_basic_metadata_changed", G_CALLBACK(spw_metadata_changed) },
+        { "buffering",                           G_CALLBACK(spw_buffering)     },
+        { "contacting",                          G_CALLBACK(spw_contacting)    },
+        { "clip_bandwidth_changed",              G_CALLBACK(spw_clip_bandwidth_changed) },        
     };
 
     /* Disconnect from the old player, if any */    
@@ -345,6 +349,23 @@
                                signal);
             status_field->player_signal_handlers_array_len++;
         }
+
+        if(HX_IS_PLAYER(player))
+        {
+            for(i = 0; i < sizeof(hx_signal_map) / sizeof(*hx_signal_map); i++)
+            {    
+                /* Hook up to the new player */
+                signal = g_signal_connect(G_OBJECT(player),
+                                          hx_signal_map[i].name,
+                                          hx_signal_map[i].callback,
+                                          status);
+
+                g_array_insert_val(status_field->player_signal_handlers_array,
+                                   status_field->player_signal_handlers_array_len,
+                                   signal);
+                status_field->player_signal_handlers_array_len++;
+            }
+        }        
     }
 
     HX_STATUS_DISPLAY_CLASS(g_parent_class)->set_player(status, player);

Index: signincontroller.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/signincontroller.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- signincontroller.cpp	7 Jun 2005 20:03:04 -0000	1.2
+++ signincontroller.cpp	6 Jul 2005 04:36:31 -0000	1.3
@@ -166,12 +166,11 @@
     IHXCommonClassFactory* pClientCCF = NULL;
     IHXCookies*            pCookies = NULL;
 
-    HXBasicPlayback* player;
+    HXPlayer* player;
     gboolean result;
     IUnknown* pEngine = NULL;
 
-    player = hxwindow_get_player(window);
-    g_return_val_if_fail(HX_IS_PLAYER(player), NULL);
+    player = hxwindow_get_hxclient_player(window);
     
     HXSignInController* signin = (HXSignInController*)g_object_new(HX_TYPE_SIGN_IN_CONTROLLER, NULL);
     if(!signin)

Index: preferences_interface.c
===================================================================
RCS file: /cvsroot/player/app/gtk/preferences_interface.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- preferences_interface.c	10 Jun 2005 23:40:42 -0000	1.32
+++ preferences_interface.c	6 Jul 2005 04:36:31 -0000	1.33
@@ -8,7 +8,7 @@
 
 #include <sys/types.h>
 #include <sys/stat.h>
-//#include <unistd.h>
+#include <unistd.h>
 #include <string.h>
 #include <stdio.h>
 
@@ -198,26 +198,6 @@
   GtkWidget *vbox33;
   GtkWidget *image9;
   GtkWidget *label121;
-  GtkWidget *vbox26;
-  GtkWidget *frame40;
-  GtkWidget *hpd_mime_types_notebook;
-  GtkWidget *scrolledwindow2;
-  GtkWidget *hpd_mime_types_tree_view;
-  GtkWidget *label139;
-  GtkWidget *label141;
-  GtkWidget *label140;
-  GtkWidget *label114;
-  GtkWidget *frame44;
-  GtkWidget *alignment8;
-  GtkWidget *hbox10;
-  GtkWidget *button9;
-  GtkWidget *button10;
-  GtkWidget *button13;
-  GtkWidget *button11;
-  GtkWidget *label138;
-  GtkWidget *vbox34;
-  GtkWidget *image10;
-  GtkWidget *label122;
   GtkWidget *frame24;
   GtkWidget *hbox2;
   GtkWidget *vbox3;
@@ -229,7 +209,25 @@
   GtkWidget *label69;
   GtkWidget *hpd_sound_driver;
   GtkWidget *menu10;
-  GtkWidget *menuitem40;
+  GtkWidget *hpd_oss_sound_driver_menu_item;
+  GtkWidget *hpd_alsa_sound_driver_menu_item;
+  GtkWidget *hpd_sound_driver_options_notebook;
+  GtkWidget *alignment10;
+  GtkWidget *table10;
+  GtkWidget *label153;
+  GtkWidget *hpd_oss_pcm_device;
+  GtkWidget *label154;
+  GtkWidget *hpd_oss_mixer_device;
+  GtkWidget *label151;
+  GtkWidget *alignment11;
+  GtkWidget *table9;
+  GtkWidget *label155;
+  GtkWidget *label156;
+  GtkWidget *label157;
+  GtkWidget *hpd_alsa_pcm_device;
+  GtkWidget *hpd_alsa_mixer_device;
+  GtkWidget *hpd_alsa_mixer_element;
+  GtkWidget *label152;
   GtkWidget *label66;
   GtkWidget *vbox35;
   GtkWidget *image11;
@@ -1265,122 +1263,6 @@
   gtk_box_pack_start (GTK_BOX (vbox33), label121, FALSE, FALSE, 0);
   gtk_label_set_use_markup (GTK_LABEL (label121), TRUE);
 
-  vbox26 = gtk_vbox_new (FALSE, 0);
-  gtk_widget_set_name (vbox26, "vbox26");
-  gtk_widget_show (vbox26);
-  gtk_container_add (GTK_CONTAINER (hpd_prefs_notebook), vbox26);
-
-  frame40 = gtk_frame_new (NULL);
-  gtk_widget_set_name (frame40, "frame40");
-  gtk_widget_show (frame40);
-  gtk_box_pack_start (GTK_BOX (vbox26), frame40, TRUE, TRUE, 0);
-  gtk_container_set_border_width (GTK_CONTAINER (frame40), 12);
-  gtk_frame_set_shadow_type (GTK_FRAME (frame40), GTK_SHADOW_NONE);
-
-  hpd_mime_types_notebook = gtk_notebook_new ();
-  gtk_widget_set_name (hpd_mime_types_notebook, "hpd_mime_types_notebook");
-  gtk_widget_show (hpd_mime_types_notebook);
-  gtk_container_add (GTK_CONTAINER (frame40), hpd_mime_types_notebook);
-  GTK_WIDGET_UNSET_FLAGS (hpd_mime_types_notebook, GTK_CAN_FOCUS);
-  gtk_notebook_set_show_tabs (GTK_NOTEBOOK (hpd_mime_types_notebook), FALSE);
-  gtk_notebook_set_show_border (GTK_NOTEBOOK (hpd_mime_types_notebook), FALSE);
-
-  scrolledwindow2 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_set_name (scrolledwindow2, "scrolledwindow2");
-  gtk_widget_show (scrolledwindow2);
-  gtk_container_add (GTK_CONTAINER (hpd_mime_types_notebook), scrolledwindow2);
-  gtk_container_set_border_width (GTK_CONTAINER (scrolledwindow2), 12);
-
-  hpd_mime_types_tree_view = gtk_tree_view_new ();
-  gtk_widget_set_name (hpd_mime_types_tree_view, "hpd_mime_types_tree_view");
-  gtk_widget_show (hpd_mime_types_tree_view);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow2), hpd_mime_types_tree_view);
-
-  label139 = gtk_label_new (_("label139"));
-  gtk_widget_set_name (label139, "label139");
-  gtk_widget_show (label139);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_mime_types_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_mime_types_notebook), 0), label139);
-
-  label141 = gtk_label_new (_("No media type plugins available"));
-  gtk_widget_set_name (label141, "label141");
-  gtk_widget_show (label141);
-  gtk_container_add (GTK_CONTAINER (hpd_mime_types_notebook), label141);
-
-  label140 = gtk_label_new (_("label140"));
-  gtk_widget_set_name (label140, "label140");
-  gtk_widget_show (label140);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_mime_types_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_mime_types_notebook), 1), label140);
-
-  label114 = gtk_label_new (_("<b>Mime types</b>"));
-  gtk_widget_set_name (label114, "label114");
-  gtk_widget_show (label114);
-  gtk_frame_set_label_widget (GTK_FRAME (frame40), label114);
-  gtk_label_set_use_markup (GTK_LABEL (label114), TRUE);
-
-  frame44 = gtk_frame_new (NULL);
-  gtk_widget_set_name (frame44, "frame44");
-  gtk_widget_show (frame44);
-  gtk_box_pack_start (GTK_BOX (vbox26), frame44, FALSE, FALSE, 0);
-  gtk_container_set_border_width (GTK_CONTAINER (frame44), 12);
-  gtk_frame_set_shadow_type (GTK_FRAME (frame44), GTK_SHADOW_NONE);
-
-  alignment8 = gtk_alignment_new (0, 0.5, 0, 1);
-  gtk_widget_set_name (alignment8, "alignment8");
-  gtk_widget_show (alignment8);
-  gtk_container_add (GTK_CONTAINER (frame44), alignment8);
-
-  hbox10 = gtk_hbox_new (TRUE, 6);
-  gtk_widget_set_name (hbox10, "hbox10");
-  gtk_widget_show (hbox10);
-  gtk_container_add (GTK_CONTAINER (alignment8), hbox10);
-  gtk_container_set_border_width (GTK_CONTAINER (hbox10), 12);
-
-  button9 = gtk_button_new_with_mnemonic (_("All audio"));
-  gtk_widget_set_name (button9, "button9");
-  gtk_widget_show (button9);
-  gtk_box_pack_start (GTK_BOX (hbox10), button9, TRUE, TRUE, 0);
-  gtk_widget_set_sensitive (button9, FALSE);
-
-  button10 = gtk_button_new_with_mnemonic (_("All video"));
-  gtk_widget_set_name (button10, "button10");
-  gtk_widget_show (button10);
-  gtk_box_pack_start (GTK_BOX (hbox10), button10, TRUE, TRUE, 0);
-  gtk_widget_set_sensitive (button10, FALSE);
-
-  button13 = gtk_button_new_with_mnemonic (_("All unassigned"));
-  gtk_widget_set_name (button13, "button13");
-  gtk_widget_show (button13);
-  gtk_box_pack_start (GTK_BOX (hbox10), button13, TRUE, TRUE, 0);
-  gtk_widget_set_sensitive (button13, FALSE);
-
-  button11 = gtk_button_new_with_mnemonic (_("All"));
-  gtk_widget_set_name (button11, "button11");
-  gtk_widget_show (button11);
-  gtk_box_pack_start (GTK_BOX (hbox10), button11, TRUE, TRUE, 0);
-  gtk_widget_set_sensitive (button11, FALSE);
-
-  label138 = gtk_label_new (_("<b>Assign</b>"));
-  gtk_widget_set_name (label138, "label138");
-  gtk_widget_show (label138);
-  gtk_frame_set_label_widget (GTK_FRAME (frame44), label138);
-  gtk_label_set_use_markup (GTK_LABEL (label138), TRUE);
-
-  vbox34 = gtk_vbox_new (FALSE, 3);
-  gtk_widget_set_name (vbox34, "vbox34");
-  gtk_widget_show (vbox34);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_prefs_notebook), 7), vbox34);
-
-  image10 = create_pixmap (hxplayer_preferences_dialog, "prefs_mediatypes.png");
-  gtk_widget_set_name (image10, "image10");
-  gtk_widget_show (image10);
-  gtk_box_pack_start (GTK_BOX (vbox34), image10, TRUE, TRUE, 0);
-
-  label122 = gtk_label_new (_("<span size=\"x-small\">Media Types</span>"));
-  gtk_widget_set_name (label122, "label122");
-  gtk_widget_show (label122);
-  gtk_box_pack_start (GTK_BOX (vbox34), label122, FALSE, FALSE, 0);
-  gtk_label_set_use_markup (GTK_LABEL (label122), TRUE);
-
   frame24 = gtk_frame_new (NULL);
   gtk_widget_set_name (frame24, "frame24");
   gtk_widget_show (frame24);
@@ -1438,13 +1320,139 @@
   menu10 = gtk_menu_new ();
   gtk_widget_set_name (menu10, "menu10");
 
-  menuitem40 = gtk_menu_item_new_with_mnemonic (_("OSS"));
-  gtk_widget_set_name (menuitem40, "menuitem40");
-  gtk_widget_show (menuitem40);
-  gtk_container_add (GTK_CONTAINER (menu10), menuitem40);
+  hpd_oss_sound_driver_menu_item = gtk_menu_item_new_with_mnemonic (_("OSS"));
+  gtk_widget_set_name (hpd_oss_sound_driver_menu_item, "hpd_oss_sound_driver_menu_item");
+  gtk_widget_show (hpd_oss_sound_driver_menu_item);
+  gtk_container_add (GTK_CONTAINER (menu10), hpd_oss_sound_driver_menu_item);
+
+  hpd_alsa_sound_driver_menu_item = gtk_menu_item_new_with_mnemonic (_("ALSA"));
+  gtk_widget_set_name (hpd_alsa_sound_driver_menu_item, "hpd_alsa_sound_driver_menu_item");
+  gtk_widget_show (hpd_alsa_sound_driver_menu_item);
+  gtk_container_add (GTK_CONTAINER (menu10), hpd_alsa_sound_driver_menu_item);
 
   gtk_option_menu_set_menu (GTK_OPTION_MENU (hpd_sound_driver), menu10);
 
+  hpd_sound_driver_options_notebook = gtk_notebook_new ();
+  gtk_widget_set_name (hpd_sound_driver_options_notebook, "hpd_sound_driver_options_notebook");
+  gtk_widget_show (hpd_sound_driver_options_notebook);
+  gtk_box_pack_start (GTK_BOX (vbox13), hpd_sound_driver_options_notebook, TRUE, TRUE, 0);
+  GTK_WIDGET_UNSET_FLAGS (hpd_sound_driver_options_notebook, GTK_CAN_FOCUS);
+  gtk_notebook_set_show_tabs (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), FALSE);
+  gtk_notebook_set_show_border (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), FALSE);
+
+  alignment10 = gtk_alignment_new (0.5, 0, 1, 0);
+  gtk_widget_set_name (alignment10, "alignment10");
+  gtk_widget_show (alignment10);
+  gtk_container_add (GTK_CONTAINER (hpd_sound_driver_options_notebook), alignment10);
+  gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), alignment10,
+                                      FALSE, FALSE, GTK_PACK_END);
+
+  table10 = gtk_table_new (2, 2, FALSE);
+  gtk_widget_set_name (table10, "table10");
+  gtk_widget_show (table10);
+  gtk_container_add (GTK_CONTAINER (alignment10), table10);
+  gtk_table_set_row_spacings (GTK_TABLE (table10), 6);
+  gtk_table_set_col_spacings (GTK_TABLE (table10), 6);
+
+  label153 = gtk_label_new (_("Sound device:"));
+  gtk_widget_set_name (label153, "label153");
+  gtk_widget_show (label153);
+  gtk_table_attach (GTK_TABLE (table10), label153, 0, 1, 0, 1,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_misc_set_alignment (GTK_MISC (label153), 0, 0.5);
+
+  hpd_oss_pcm_device = gtk_entry_new ();
+  gtk_widget_set_name (hpd_oss_pcm_device, "hpd_oss_pcm_device");
+  gtk_widget_show (hpd_oss_pcm_device);
+  gtk_table_attach (GTK_TABLE (table10), hpd_oss_pcm_device, 1, 2, 0, 1,
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+
+  label154 = gtk_label_new (_("Mixer device:"));
+  gtk_widget_set_name (label154, "label154");
+  gtk_widget_show (label154);
+  gtk_table_attach (GTK_TABLE (table10), label154, 0, 1, 1, 2,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_misc_set_alignment (GTK_MISC (label154), 0, 0.5);
+
+  hpd_oss_mixer_device = gtk_entry_new ();
+  gtk_widget_set_name (hpd_oss_mixer_device, "hpd_oss_mixer_device");
+  gtk_widget_show (hpd_oss_mixer_device);
+  gtk_table_attach (GTK_TABLE (table10), hpd_oss_mixer_device, 1, 2, 1, 2,
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+
+  label151 = gtk_label_new (_("OSS"));
+  gtk_widget_set_name (label151, "label151");
+  gtk_widget_show (label151);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), 0), label151);
+
+  alignment11 = gtk_alignment_new (0.5, 0.5, 1, 1);
+  gtk_widget_set_name (alignment11, "alignment11");
+  gtk_widget_show (alignment11);
+  gtk_container_add (GTK_CONTAINER (hpd_sound_driver_options_notebook), alignment11);
+  gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), alignment11,
+                                      FALSE, FALSE, GTK_PACK_END);
+
+  table9 = gtk_table_new (3, 2, FALSE);
+  gtk_widget_set_name (table9, "table9");
+  gtk_widget_show (table9);
+  gtk_container_add (GTK_CONTAINER (alignment11), table9);
+  gtk_table_set_row_spacings (GTK_TABLE (table9), 6);
+  gtk_table_set_col_spacings (GTK_TABLE (table9), 6);
+
+  label155 = gtk_label_new (_("PCM Device:"));
+  gtk_widget_set_name (label155, "label155");
+  gtk_widget_show (label155);
+  gtk_table_attach (GTK_TABLE (table9), label155, 0, 1, 0, 1,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_misc_set_alignment (GTK_MISC (label155), 0, 0.5);
+
+  label156 = gtk_label_new (_("Mixer Device:"));
+  gtk_widget_set_name (label156, "label156");
+  gtk_widget_show (label156);
+  gtk_table_attach (GTK_TABLE (table9), label156, 0, 1, 1, 2,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_misc_set_alignment (GTK_MISC (label156), 0, 0.5);
+
+  label157 = gtk_label_new (_("Mixer Element:"));
+  gtk_widget_set_name (label157, "label157");
+  gtk_widget_show (label157);
+  gtk_table_attach (GTK_TABLE (table9), label157, 0, 1, 2, 3,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_misc_set_alignment (GTK_MISC (label157), 0, 0.5);
+
+  hpd_alsa_pcm_device = gtk_entry_new ();
+  gtk_widget_set_name (hpd_alsa_pcm_device, "hpd_alsa_pcm_device");
+  gtk_widget_show (hpd_alsa_pcm_device);
+  gtk_table_attach (GTK_TABLE (table9), hpd_alsa_pcm_device, 1, 2, 0, 1,
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+
+  hpd_alsa_mixer_device = gtk_entry_new ();
+  gtk_widget_set_name (hpd_alsa_mixer_device, "hpd_alsa_mixer_device");
+  gtk_widget_show (hpd_alsa_mixer_device);
+  gtk_table_attach (GTK_TABLE (table9), hpd_alsa_mixer_device, 1, 2, 1, 2,
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+
+  hpd_alsa_mixer_element = gtk_entry_new ();
+  gtk_widget_set_name (hpd_alsa_mixer_element, "hpd_alsa_mixer_element");
+  gtk_widget_show (hpd_alsa_mixer_element);
+  gtk_table_attach (GTK_TABLE (table9), hpd_alsa_mixer_element, 1, 2, 2, 3,
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+
+  label152 = gtk_label_new (_("ALSA"));
+  gtk_widget_set_name (label152, "label152");
+  gtk_widget_show (label152);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_sound_driver_options_notebook), 1), label152);
+
   label66 = gtk_label_new (_("<b>Driver Options</b>"));
   gtk_widget_set_name (label66, "label66");
   gtk_widget_show (label66);
@@ -1454,7 +1462,7 @@
   vbox35 = gtk_vbox_new (FALSE, 3);
   gtk_widget_set_name (vbox35, "vbox35");
   gtk_widget_show (vbox35);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_prefs_notebook), 8), vbox35);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_prefs_notebook), 7), vbox35);
 
   image11 = create_pixmap (hxplayer_preferences_dialog, "prefs_hardware.png");
   gtk_widget_set_name (image11, "image11");
@@ -1572,7 +1580,7 @@
   vbox39 = gtk_vbox_new (FALSE, 3);
   gtk_widget_set_name (vbox39, "vbox39");
   gtk_widget_show (vbox39);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_prefs_notebook), 9), vbox39);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hpd_prefs_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hpd_prefs_notebook), 8), vbox39);
 
   image12 = create_pixmap (hxplayer_preferences_dialog, "prefs_advanced.png");
   gtk_widget_set_name (image12, "image12");
@@ -1641,6 +1649,9 @@
   g_signal_connect ((gpointer) hpd_configure_pna_button, "clicked",
                     G_CALLBACK (hpd_configure_pna),
                     NULL);
+  g_signal_connect ((gpointer) hpd_sound_driver, "changed",
+                    G_CALLBACK (hpd_sound_driver_changed),
+                    NULL);
   g_signal_connect ((gpointer) PrefsDialog, "clicked",
                     G_CALLBACK (hxcommon_launch_context_help_with_widget_name),
                     NULL);
@@ -1812,26 +1823,6 @@
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, vbox33, "vbox33");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, image9, "image9");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label121, "label121");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, vbox26, "vbox26");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, frame40, "frame40");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_mime_types_notebook, "hpd_mime_types_notebook");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, scrolledwindow2, "scrolledwindow2");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_mime_types_tree_view, "hpd_mime_types_tree_view");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label139, "label139");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label141, "label141");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label140, "label140");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label114, "label114");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, frame44, "frame44");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, alignment8, "alignment8");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hbox10, "hbox10");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, button9, "button9");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, button10, "button10");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, button13, "button13");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, button11, "button11");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label138, "label138");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, vbox34, "vbox34");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, image10, "image10");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label122, "label122");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, frame24, "frame24");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hbox2, "hbox2");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, vbox3, "vbox3");
@@ -1843,7 +1834,25 @@
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label69, "label69");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_sound_driver, "hpd_sound_driver");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, menu10, "menu10");
-  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, menuitem40, "menuitem40");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_oss_sound_driver_menu_item, "hpd_oss_sound_driver_menu_item");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_alsa_sound_driver_menu_item, "hpd_alsa_sound_driver_menu_item");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_sound_driver_options_notebook, "hpd_sound_driver_options_notebook");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, alignment10, "alignment10");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, table10, "table10");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label153, "label153");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_oss_pcm_device, "hpd_oss_pcm_device");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label154, "label154");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_oss_mixer_device, "hpd_oss_mixer_device");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label151, "label151");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, alignment11, "alignment11");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, table9, "table9");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label155, "label155");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label156, "label156");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label157, "label157");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_alsa_pcm_device, "hpd_alsa_pcm_device");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_alsa_mixer_device, "hpd_alsa_mixer_device");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, hpd_alsa_mixer_element, "hpd_alsa_mixer_element");
+  GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label152, "label152");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, label66, "label66");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, vbox35, "vbox35");
   GLADE_HOOKUP_OBJECT (hxplayer_preferences_dialog, image11, "image11");

Index: statistics_interface.c
===================================================================
RCS file: /cvsroot/player/app/gtk/statistics_interface.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- statistics_interface.c	13 Dec 2004 03:34:41 -0000	1.9
+++ statistics_interface.c	6 Jul 2005 04:36:31 -0000	1.10
@@ -8,7 +8,7 @@
 
 #include <sys/types.h>
 #include <sys/stat.h>
-//#include <unistd.h>
+#include <unistd.h>
 #include <string.h>
 #include <stdio.h>
 
@@ -32,6 +32,7 @@
   GtkWidget *hxplayer_statistics_dialog;
   GdkPixbuf *hxplayer_statistics_dialog_icon_pixbuf;
   GtkWidget *dialog_vbox1;
+  GtkWidget *hsd_top_notebook;
   GtkWidget *notebook1;
   GtkWidget *alignment2;
   GtkWidget *vbox1;
@@ -140,7 +141,10 @@
   GtkWidget *hsd_source_renderer_post_filter;
   GtkWidget *hsd_source_renderer_frames_dropped;
   GtkWidget *label68;
+  GtkWidget *label426;
   GtkWidget *label420;
+  GtkWidget *label422;
+  GtkWidget *label421;
   GtkWidget *dialog_action_area1;
   GtkWidget *okbutton1;
 
@@ -160,10 +164,18 @@
   gtk_widget_set_name (dialog_vbox1, "dialog_vbox1");
   gtk_widget_show (dialog_vbox1);
 
+  hsd_top_notebook = gtk_notebook_new ();
+  gtk_widget_set_name (hsd_top_notebook, "hsd_top_notebook");
+  gtk_widget_show (hsd_top_notebook);
+  gtk_box_pack_start (GTK_BOX (dialog_vbox1), hsd_top_notebook, FALSE, FALSE, 0);
+  GTK_WIDGET_UNSET_FLAGS (hsd_top_notebook, GTK_CAN_FOCUS);
+  gtk_notebook_set_show_tabs (GTK_NOTEBOOK (hsd_top_notebook), FALSE);
+  gtk_notebook_set_show_border (GTK_NOTEBOOK (hsd_top_notebook), FALSE);
+
   notebook1 = gtk_notebook_new ();
   gtk_widget_set_name (notebook1, "notebook1");
   gtk_widget_show (notebook1);
-  gtk_box_pack_start (GTK_BOX (dialog_vbox1), notebook1, FALSE, FALSE, 0);
+  gtk_container_add (GTK_CONTAINER (hsd_top_notebook), notebook1);
 
   alignment2 = gtk_alignment_new (0, 0, 1, 0);
   gtk_widget_set_name (alignment2, "alignment2");
@@ -946,10 +958,25 @@
   gtk_frame_set_label_widget (GTK_FRAME (frame6), label68);
   gtk_label_set_use_markup (GTK_LABEL (label68), TRUE);
 
-  label420 = gtk_label_new (_("Streams"));
+  label426 = gtk_label_new (_("Streams"));
+  gtk_widget_set_name (label426, "label426");
+  gtk_widget_show (label426);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 2), label426);
+
+  label420 = gtk_label_new (_("label420"));
   gtk_widget_set_name (label420, "label420");
   gtk_widget_show (label420);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 2), label420);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hsd_top_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hsd_top_notebook), 0), label420);
+
+  label422 = gtk_label_new (_("Statistics unavailable for the current presentation"));
+  gtk_widget_set_name (label422, "label422");
+  gtk_widget_show (label422);
+  gtk_container_add (GTK_CONTAINER (hsd_top_notebook), label422);
+
+  label421 = gtk_label_new (_("label424"));
+  gtk_widget_set_name (label421, "label421");
+  gtk_widget_show (label421);
+  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hsd_top_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hsd_top_notebook), 1), label421);
 
   dialog_action_area1 = GTK_DIALOG (hxplayer_statistics_dialog)->action_area;
   gtk_widget_set_name (dialog_action_area1, "dialog_action_area1");
@@ -969,6 +996,7 @@
   /* Store pointers to all widgets, for use by lookup_widget(). */
   GLADE_HOOKUP_OBJECT_NO_REF (hxplayer_statistics_dialog, hxplayer_statistics_dialog, "hxplayer_statistics_dialog");
   GLADE_HOOKUP_OBJECT_NO_REF (hxplayer_statistics_dialog, dialog_vbox1, "dialog_vbox1");
+  GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, hsd_top_notebook, "hsd_top_notebook");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, notebook1, "notebook1");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, alignment2, "alignment2");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, vbox1, "vbox1");
@@ -1077,7 +1105,10 @@
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, hsd_source_renderer_post_filter, "hsd_source_renderer_post_filter");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, hsd_source_renderer_frames_dropped, "hsd_source_renderer_frames_dropped");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, label68, "label68");
+  GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, label426, "label426");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, label420, "label420");
+  GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, label422, "label422");
+  GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, label421, "label421");
   GLADE_HOOKUP_OBJECT_NO_REF (hxplayer_statistics_dialog, dialog_action_area1, "dialog_action_area1");
   GLADE_HOOKUP_OBJECT (hxplayer_statistics_dialog, okbutton1, "okbutton1");
 

Index: prefsdialog.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/prefsdialog.cpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- prefsdialog.cpp	10 Jun 2005 23:40:42 -0000	1.30
+++ prefsdialog.cpp	6 Jul 2005 04:36:31 -0000	1.31
@@ -76,6 +76,8 @@
 #include "hxplugn.h"
 #include "hxcore.h"
 #include "hxflche.h"
+#include "hxausvc.h"
+#include "hxaudev.h"
 
 // As seen in the mac player...
 #define BANDWIDTH_10_MBPS    10485800 
@@ -100,6 +102,7 @@
     void hpd_auto_transport_toggled(GtkToggleButton *togglebutton);
     void hpd_empty_clip_cache(GtkWidget *widget);
     void hpd_bandwidth_changed(GtkWidget* max_bandwidth, gpointer);
+    void hpd_sound_driver_changed(GtkWidget *widget);
 }
 
 typedef enum
@@ -563,6 +566,8 @@
     HXValue* value;
     guint driver;
     GtkWidget* option_menu;
+    GtkWidget* sound_driver_options_notebook;
+    gint sound_driver_options_tab = 0;
 
     option_menu = glade_xml_get_widget(prefs_dialog, info->widget_name);
     g_return_if_fail(option_menu != NULL);
@@ -577,7 +582,34 @@
     {
         driver = atoi(info->default_value);
     }
-    gtk_option_menu_set_history(GTK_OPTION_MENU(option_menu), driver - 1);
+
+    if(driver == kALSA)
+    {
+        sound_driver_options_tab = 1;
+    }
+            
+    gtk_option_menu_set_history(GTK_OPTION_MENU(option_menu), sound_driver_options_tab);
+
+    // Set the sound drivers option page to match
+    sound_driver_options_notebook = glade_xml_get_widget(prefs_dialog, "hpd_sound_driver_options_notebook");
+        
+    if(sound_driver_options_notebook)
+    {
+        if(driver == kOSS)
+        {
+            gtk_notebook_set_current_page(GTK_NOTEBOOK(sound_driver_options_notebook), 0);
+        }
+        else if(driver == kALSA)
+        {
+            gtk_notebook_set_current_page(GTK_NOTEBOOK(sound_driver_options_notebook), 1);
+        }
+        else
+        {
+            gtk_notebook_set_current_page(GTK_NOTEBOOK(sound_driver_options_notebook), 2);
+        }
+
+    }
+
 }
 
 static void
@@ -1230,6 +1262,11 @@
     { "ConnectionTimeOut",  "20",          "hpd_connection_time_out",    prefs_entry_read,                    prefs_entry_write                    },
     { "SynchMM",            "1",           "hpd_synch_mm",               prefs_checkbutton_read,              prefs_checkbutton_write              },    
     { "TurboPlay",          "0",           "hpd_turbo_play",             prefs_checkbutton_read,              prefs_checkbutton_write              },
+    { "AlsaPCMDeviceName",  "default",     "hpd_alsa_pcm_device",        prefs_entry_read,                    prefs_entry_write                    },
+    { "AlsaMixerDeviceName","default",     "hpd_alsa_mixer_device",      prefs_entry_read,                    prefs_entry_write                    },
+    { "AlsaMixerElementName","PCM",        "hpd_alsa_mixer_element",     prefs_entry_read,                    prefs_entry_write                    },
+    { "OSSPCMElementName",  "/dev/dsp",    "hpd_oss_pcm_device",         prefs_entry_read,                    prefs_entry_write                    },
+    { "OSSMixerElementName","/dev/mixer",  "hpd_oss_mixer_device",       prefs_entry_read,                    prefs_entry_write                    },
 
 //  No support for automatic proxy configuration    
 //     { "RTSPPNMProxyAutoConfig", "0" },
@@ -1545,7 +1582,7 @@
 {
     HXMainWindow* window;
     GtkWidget* toplevel;
-    HXBasicPlayback* player;
+    HXPlayer* player;
     
     toplevel = gtk_widget_get_toplevel(widget);    
     window = (HXMainWindow*) g_object_get_data(G_OBJECT (toplevel),
@@ -1555,8 +1592,8 @@
         return;
     }
 
-    player = hxwindow_get_player(window);
-    if(!player || !HX_IS_PLAYER(player))
+    player = hxwindow_get_hxclient_player(window);
+    if(!player)
     {
         return;
     }
@@ -1639,6 +1676,39 @@
     g_return_if_fail(SUCCEEDED(retVal));
 }
 
+void
+hpd_sound_driver_changed(GtkWidget *widget)
+{
+    GladeXML* xml;
+    GtkWidget* toplevel;
+    GtkWidget* sound_driver_options_notebook;
+    gint option;
+    
+    toplevel = gtk_widget_get_toplevel(widget);
+    g_return_if_fail(toplevel != NULL);
+    
+    xml = (GladeXML*)g_object_get_data(G_OBJECT (toplevel), "hxprefs_xml");
+    g_return_if_fail(xml != NULL);
+    
+    sound_driver_options_notebook = glade_xml_get_widget(xml, "hpd_sound_driver_options_notebook");
+    g_return_if_fail(sound_driver_options_notebook != NULL);
+    
+    option = gtk_option_menu_get_history(GTK_OPTION_MENU(widget));
+
+    if(option == 0) // OSS -- tbd, switch to a better control to avoid hard-coding here. GtkOptionMenu is deprecated.
+    {
+        gtk_notebook_set_current_page(GTK_NOTEBOOK(sound_driver_options_notebook), 0);
+    }
+    else if(option == 1) // ALSA
+    {
+        gtk_notebook_set_current_page(GTK_NOTEBOOK(sound_driver_options_notebook), 1);
+    }
+    else
+    {
+        g_assert_not_reached();
+    }    
+}
+
 static void
 hpd_destroy(GtkWidget* /* widget */,
             HXPrefsDialog* prefs_dlg)

Index: clipdetails.h
===================================================================
RCS file: /cvsroot/player/app/gtk/clipdetails.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- clipdetails.h	9 Jul 2004 18:24:27 -0000	1.3
+++ clipdetails.h	6 Jul 2005 04:36:30 -0000	1.4
@@ -47,15 +47,15 @@
  * 
  * ***** END LICENSE BLOCK ***** */
 
-#ifndef _AUTH_H_
-#define _AUTH_H_
+#ifndef _CLIP_DETAILS_H_
+#define _CLIP_DETAILS_H_
 
 #include <gtk/gtk.h>
-#include "hxplayer.h"
+#include "hxbasicplayback.h"
 
 G_BEGIN_DECLS
 
-GtkDialog* hxplay_clip_details_dialog_new (HXPlayer*    player);
+GtkDialog* hxplay_clip_details_dialog_new (HXBasicPlayback* player);
 
 G_END_DECLS
 

Index: main_interface.c
===================================================================
RCS file: /cvsroot/player/app/gtk/main_interface.c,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -d -r1.52 -r1.53
--- main_interface.c	7 Jun 2005 20:03:04 -0000	1.52
+++ main_interface.c	6 Jul 2005 04:36:30 -0000	1.53
@@ -36,9 +36,9 @@
   GtkWidget *hmw_file_menu;
   GtkWidget *hmw_file_menu_menu;
   GtkWidget *hmw_open_file_menu_item;
-  GtkWidget *image1709;
+  GtkWidget *image1823;
   GtkWidget *hmw_open_location_menu_item;
-  GtkWidget *image1710;
+  GtkWidget *image1824;
   GtkWidget *separator14;
   GtkWidget *hmw_clip_properties_menu_item;
   GtkWidget *hmw_clip_properties_menu_item_menu;
@@ -47,33 +47,31 @@
   GtkWidget *hmw_mru_separator;
   GtkWidget *hmw_close_menu_item;
   GtkWidget *hmw_quit_menu_item;
-  GtkWidget *image1711;
+  GtkWidget *image1825;
   GtkWidget *hmw_play_menu;
   GtkWidget *hmw_play_menu_menu;
   GtkWidget *hmw_play_menu_item;
-  GtkWidget *image1712;
+  GtkWidget *image1826;
   GtkWidget *hmw_pause_menu_item;
-  GtkWidget *image1713;
+  GtkWidget *image1827;
   GtkWidget *hmw_stop_menu_item;
-  GtkWidget *image1714;
-  GtkWidget *separator4;
-  GtkWidget *hmw_clip_list_menu_item;
+  GtkWidget *image1828;
   GtkWidget *separator12;
   GtkWidget *hmw_previous_menu_item;
-  GtkWidget *image1715;
+  GtkWidget *image1829;
   GtkWidget *hmw_next_menu_item;
-  GtkWidget *image1716;
+  GtkWidget *image1830;
   GtkWidget *separator5;
   GtkWidget *hmw_volume_up_menu_item;
-  GtkWidget *image1717;
+  GtkWidget *image1831;
   GtkWidget *hmw_volume_down_menu_item;
-  GtkWidget *image1718;
+  GtkWidget *image1832;
   GtkWidget *hmw_mute_menu_item;
   GtkWidget *hmw_view_menu;
   GtkWidget *hmw_view_menu_menu;
   GtkWidget *hmw_fullscreen_menu_item;
   GtkWidget *hmw_zoom_menu_item;
-  GtkWidget *image1719;
+  GtkWidget *image1833;
   GtkWidget *hmw_zoom_menu_item_menu;
   GtkWidget *hmw_normal_size_menu_item;
   GtkWidget *hmw_double_size_menu_item;
@@ -88,56 +86,39 @@
   GtkWidget *hmw_tools_menu_menu;
   GtkWidget *hmw_plugins_menu_item;
   GtkWidget *hmw_preferences_menu_item;
-  GtkWidget *image1720;
+  GtkWidget *image1834;
   GtkWidget *hmw_statistics_menu_item;
   GtkWidget *hmw_favorites_menu;
   GtkWidget *hmw_favorites_menu_menu;
   GtkWidget *hmw_add_favorite_menu_item;
-  GtkWidget *image1721;
+  GtkWidget *image1835;
   GtkWidget *hmw_manage_favorites_menu_item;
-  GtkWidget *image1722;
+  GtkWidget *image1836;
   GtkWidget *hmw_export_favorites_menu_item;
   GtkWidget *hmw_import_favorites_menu_item;
   GtkWidget *hmw_favorites_separator;
   GtkWidget *hmw_help_menu;
   GtkWidget *hmw_help_menu_menu;
   GtkWidget *hmw_intro_menu_item;
-  GtkWidget *image1723;
+  GtkWidget *image1837;
   GtkWidget *hmw_release_notes_menu_item;
-  GtkWidget *image1724;
+  GtkWidget *image1838;
   GtkWidget *hmw_faq_menu_item;
-  GtkWidget *image1725;
+  GtkWidget *image1839;
   GtkWidget *hmw_report_issue_item;
-  GtkWidget *image1726;
+  GtkWidget *image1840;
   GtkWidget *hmw_nightly_build_menu_item;
-  GtkWidget *image1727;
+  GtkWidget *image1841;
   GtkWidget *hmw_sign_in_out_separator;
   GtkWidget *hmw_check_for_updates_menu_item;
   GtkWidget *separator15;
   GtkWidget *hmw_player_reset_menu_item;
-  GtkWidget *image1728;
+  GtkWidget *image1842;
   GtkWidget *separator13;
   GtkWidget *hmw_about_menu_item;
   GtkWidget *hmw_video_notebook;
   GtkWidget *hmw_hxbin;
   GtkWidget *label1;
-  GtkWidget *hmw_dbus_player;
-  GtkWidget *label2;
-  GtkWidget *alignment10;
-  GtkWidget *table1;
-  GtkWidget *label4;
-  GtkWidget *label5;
-  GtkWidget *label6;
-  GtkWidget *label7;
-  GtkWidget *label8;
-  GtkWidget *label9;
-  GtkWidget *hmw_metainfo_display_title_label;
-  GtkWidget *hmw_metainfo_display_artist_label;
-  GtkWidget *hmw_metainfo_display_album_label;
-  GtkWidget *hmw_metainfo_display_duration_label;
-  GtkWidget *hmw_metainfo_display_rhapsody_id_label;
-  GtkWidget *hmw_metainfo_display_next_artist_label;
-  GtkWidget *label3;
   GtkWidget *hmw_seek_scale;
   GtkWidget *hmw_controls_hbox;
   GtkWidget *hbox3;
@@ -205,10 +186,10 @@
                               GDK_o, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1709 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1709, "image1709");
-  gtk_widget_show (image1709);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_open_file_menu_item), image1709);
+  image1823 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1823, "image1823");
+  gtk_widget_show (image1823);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_open_file_menu_item), image1823);
 
   hmw_open_location_menu_item = gtk_image_menu_item_new_with_mnemonic (_("Open _Location..."));
   gtk_widget_set_name (hmw_open_location_menu_item, "hmw_open_location_menu_item");
@@ -218,10 +199,10 @@
                               GDK_l, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1710 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1710, "image1710");
-  gtk_widget_show (image1710);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_open_location_menu_item), image1710);
+  image1824 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1824, "image1824");
+  gtk_widget_show (image1824);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_open_location_menu_item), image1824);
 
   separator14 = gtk_separator_menu_item_new ();
   gtk_widget_set_name (separator14, "separator14");
@@ -270,10 +251,10 @@
                               GDK_q, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1711 = gtk_image_new_from_stock ("gtk-quit", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1711, "image1711");
-  gtk_widget_show (image1711);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_quit_menu_item), image1711);
+  image1825 = gtk_image_new_from_stock ("gtk-quit", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1825, "image1825");
+  gtk_widget_show (image1825);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_quit_menu_item), image1825);
 
   hmw_play_menu = gtk_menu_item_new_with_mnemonic (_("_Play"));
   gtk_widget_set_name (hmw_play_menu, "hmw_play_menu");
@@ -292,10 +273,10 @@
                               GDK_p, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1712 = create_pixmap (hxplayer_main_window, "play.png");
-  gtk_widget_set_name (image1712, "image1712");
-  gtk_widget_show (image1712);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_play_menu_item), image1712);
+  image1826 = create_pixmap (hxplayer_main_window, "play.png");
+  gtk_widget_set_name (image1826, "image1826");
+  gtk_widget_show (image1826);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_play_menu_item), image1826);
 
   hmw_pause_menu_item = gtk_image_menu_item_new_with_mnemonic (_("P_ause"));
   gtk_widget_set_name (hmw_pause_menu_item, "hmw_pause_menu_item");
@@ -305,10 +286,10 @@
                               GDK_a, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1713 = create_pixmap (hxplayer_main_window, "pause.png");
-  gtk_widget_set_name (image1713, "image1713");
-  gtk_widget_show (image1713);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_pause_menu_item), image1713);
+  image1827 = create_pixmap (hxplayer_main_window, "pause.png");
+  gtk_widget_set_name (image1827, "image1827");
+  gtk_widget_show (image1827);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_pause_menu_item), image1827);
 
   hmw_stop_menu_item = gtk_image_menu_item_new_with_mnemonic (_("_Stop"));
   gtk_widget_set_name (hmw_stop_menu_item, "hmw_stop_menu_item");
@@ -318,21 +299,10 @@
                               GDK_s, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1714 = create_pixmap (hxplayer_main_window, "stop.png");
-  gtk_widget_set_name (image1714, "image1714");
-  gtk_widget_show (image1714);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_stop_menu_item), image1714);
-
-  separator4 = gtk_separator_menu_item_new ();
-  gtk_widget_set_name (separator4, "separator4");
-  gtk_widget_show (separator4);
-  gtk_container_add (GTK_CONTAINER (hmw_play_menu_menu), separator4);
-  gtk_widget_set_sensitive (separator4, FALSE);
-
-  hmw_clip_list_menu_item = gtk_menu_item_new_with_mnemonic (_("No_w Playing"));
-  gtk_widget_set_name (hmw_clip_list_menu_item, "hmw_clip_list_menu_item");
-  gtk_widget_show (hmw_clip_list_menu_item);
-  gtk_container_add (GTK_CONTAINER (hmw_play_menu_menu), hmw_clip_list_menu_item);
+  image1828 = create_pixmap (hxplayer_main_window, "stop.png");
+  gtk_widget_set_name (image1828, "image1828");
+  gtk_widget_show (image1828);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_stop_menu_item), image1828);
 
   separator12 = gtk_separator_menu_item_new ();
   gtk_widget_set_name (separator12, "separator12");
@@ -348,10 +318,10 @@
                               GDK_r, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1715 = gtk_image_new_from_stock ("gtk-go-back", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1715, "image1715");
-  gtk_widget_show (image1715);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_previous_menu_item), image1715);
+  image1829 = gtk_image_new_from_stock ("gtk-go-back", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1829, "image1829");
+  gtk_widget_show (image1829);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_previous_menu_item), image1829);
 
   hmw_next_menu_item = gtk_image_menu_item_new_with_mnemonic (_("_Next Clip"));
   gtk_widget_set_name (hmw_next_menu_item, "hmw_next_menu_item");
@@ -361,10 +331,10 @@
                               GDK_n, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1716 = gtk_image_new_from_stock ("gtk-go-forward", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1716, "image1716");
-  gtk_widget_show (image1716);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_next_menu_item), image1716);
+  image1830 = gtk_image_new_from_stock ("gtk-go-forward", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1830, "image1830");
+  gtk_widget_show (image1830);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_next_menu_item), image1830);
 
   separator5 = gtk_separator_menu_item_new ();
   gtk_widget_set_name (separator5, "separator5");
@@ -380,10 +350,10 @@
                               GDK_Up, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1717 = gtk_image_new_from_stock ("gtk-go-up", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1717, "image1717");
-  gtk_widget_show (image1717);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_volume_up_menu_item), image1717);
+  image1831 = gtk_image_new_from_stock ("gtk-go-up", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1831, "image1831");
+  gtk_widget_show (image1831);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_volume_up_menu_item), image1831);
 
   hmw_volume_down_menu_item = gtk_image_menu_item_new_with_mnemonic (_("Volume _Down"));
   gtk_widget_set_name (hmw_volume_down_menu_item, "hmw_volume_down_menu_item");
@@ -393,10 +363,10 @@
                               GDK_Down, GDK_CONTROL_MASK,
                               GTK_ACCEL_VISIBLE);
 
-  image1718 = gtk_image_new_from_stock ("gtk-go-down", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1718, "image1718");
-  gtk_widget_show (image1718);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_volume_down_menu_item), image1718);
+  image1832 = gtk_image_new_from_stock ("gtk-go-down", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1832, "image1832");
+  gtk_widget_show (image1832);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_volume_down_menu_item), image1832);
 
   hmw_mute_menu_item = gtk_check_menu_item_new_with_mnemonic (_("_Mute"));
   gtk_widget_set_name (hmw_mute_menu_item, "hmw_mute_menu_item");
@@ -428,10 +398,10 @@
   gtk_widget_show (hmw_zoom_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_view_menu_menu), hmw_zoom_menu_item);
 
-  image1719 = gtk_image_new_from_stock ("gtk-zoom-in", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1719, "image1719");
-  gtk_widget_show (image1719);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_zoom_menu_item), image1719);
+  image1833 = gtk_image_new_from_stock ("gtk-zoom-in", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1833, "image1833");
+  gtk_widget_show (image1833);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_zoom_menu_item), image1833);
 
   hmw_zoom_menu_item_menu = gtk_menu_new ();
   gtk_widget_set_name (hmw_zoom_menu_item_menu, "hmw_zoom_menu_item_menu");
@@ -516,10 +486,10 @@
   gtk_widget_show (hmw_preferences_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_tools_menu_menu), hmw_preferences_menu_item);
 
-  image1720 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1720, "image1720");
-  gtk_widget_show (image1720);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_preferences_menu_item), image1720);
+  image1834 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1834, "image1834");
+  gtk_widget_show (image1834);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_preferences_menu_item), image1834);
 
   hmw_statistics_menu_item = gtk_menu_item_new_with_mnemonic (_("Playback _Statistics..."));
   gtk_widget_set_name (hmw_statistics_menu_item, "hmw_statistics_menu_item");
@@ -540,20 +510,20 @@
   gtk_widget_show (hmw_add_favorite_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_favorites_menu_menu), hmw_add_favorite_menu_item);
 
-  image1721 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1721, "image1721");
-  gtk_widget_show (image1721);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_add_favorite_menu_item), image1721);
+  image1835 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1835, "image1835");
+  gtk_widget_show (image1835);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_add_favorite_menu_item), image1835);
 
   hmw_manage_favorites_menu_item = gtk_image_menu_item_new_with_mnemonic (_("_Manage Favorites..."));
   gtk_widget_set_name (hmw_manage_favorites_menu_item, "hmw_manage_favorites_menu_item");
   gtk_widget_show (hmw_manage_favorites_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_favorites_menu_menu), hmw_manage_favorites_menu_item);
 
-  image1722 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1722, "image1722");
-  gtk_widget_show (image1722);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_manage_favorites_menu_item), image1722);
+  image1836 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1836, "image1836");
+  gtk_widget_show (image1836);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_manage_favorites_menu_item), image1836);
 
   hmw_export_favorites_menu_item = gtk_menu_item_new_with_mnemonic (_("_Export Favorites..."));
   gtk_widget_set_name (hmw_export_favorites_menu_item, "hmw_export_favorites_menu_item");
@@ -585,50 +555,50 @@
   gtk_widget_show (hmw_intro_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_help_menu_menu), hmw_intro_menu_item);
 
-  image1723 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1723, "image1723");
-  gtk_widget_show (image1723);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_intro_menu_item), image1723);
+  image1837 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1837, "image1837");
+  gtk_widget_show (image1837);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_intro_menu_item), image1837);
 
   hmw_release_notes_menu_item = gtk_image_menu_item_new_with_mnemonic (_("_Release Notes..."));
   gtk_widget_set_name (hmw_release_notes_menu_item, "hmw_release_notes_menu_item");
   gtk_widget_show (hmw_release_notes_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_help_menu_menu), hmw_release_notes_menu_item);
 
-  image1724 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1724, "image1724");
-  gtk_widget_show (image1724);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_release_notes_menu_item), image1724);
+  image1838 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1838, "image1838");
+  gtk_widget_show (image1838);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_release_notes_menu_item), image1838);
 
   hmw_faq_menu_item = gtk_image_menu_item_new_with_mnemonic (_("_FAQ..."));
   gtk_widget_set_name (hmw_faq_menu_item, "hmw_faq_menu_item");
   gtk_widget_show (hmw_faq_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_help_menu_menu), hmw_faq_menu_item);
 
-  image1725 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1725, "image1725");
-  gtk_widget_show (image1725);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_faq_menu_item), image1725);
+  image1839 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1839, "image1839");
+  gtk_widget_show (image1839);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_faq_menu_item), image1839);
 
   hmw_report_issue_item = gtk_image_menu_item_new_with_mnemonic (_("R_eport an Issue..."));
   gtk_widget_set_name (hmw_report_issue_item, "hmw_report_issue_item");
   gtk_widget_show (hmw_report_issue_item);
   gtk_container_add (GTK_CONTAINER (hmw_help_menu_menu), hmw_report_issue_item);
 
-  image1726 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1726, "image1726");
-  gtk_widget_show (image1726);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_report_issue_item), image1726);
+  image1840 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1840, "image1840");
+  gtk_widget_show (image1840);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_report_issue_item), image1840);
 
   hmw_nightly_build_menu_item = gtk_image_menu_item_new_with_mnemonic (_("Get _Nightly Build..."));
   gtk_widget_set_name (hmw_nightly_build_menu_item, "hmw_nightly_build_menu_item");
   gtk_widget_show (hmw_nightly_build_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_help_menu_menu), hmw_nightly_build_menu_item);
 
-  image1727 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1727, "image1727");
-  gtk_widget_show (image1727);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_nightly_build_menu_item), image1727);
+  image1841 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1841, "image1841");
+  gtk_widget_show (image1841);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_nightly_build_menu_item), image1841);
 
   hmw_sign_in_out_separator = gtk_separator_menu_item_new ();
   gtk_widget_set_name (hmw_sign_in_out_separator, "hmw_sign_in_out_separator");
@@ -652,10 +622,10 @@
   gtk_widget_show (hmw_player_reset_menu_item);
   gtk_container_add (GTK_CONTAINER (hmw_help_menu_menu), hmw_player_reset_menu_item);
 
-  image1728 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_MENU);
-  gtk_widget_set_name (image1728, "image1728");
-  gtk_widget_show (image1728);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_player_reset_menu_item), image1728);
+  image1842 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_MENU);
+  gtk_widget_set_name (image1842, "image1842");
+  gtk_widget_show (image1842);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (hmw_player_reset_menu_item), image1842);
 
   separator13 = gtk_separator_menu_item_new ();
   gtk_widget_set_name (separator13, "separator13");
@@ -690,132 +660,6 @@
   gtk_widget_show (label1);
   gtk_notebook_set_tab_label (GTK_NOTEBOOK (hmw_video_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hmw_video_notebook), 0), label1);
 
-  hmw_dbus_player = hmw_create_dbus_player ("hmw_dbus_player", "", "", 0, 0);
-  gtk_widget_set_name (hmw_dbus_player, "hmw_dbus_player");
-  gtk_widget_show (hmw_dbus_player);
-  gtk_container_add (GTK_CONTAINER (hmw_video_notebook), hmw_dbus_player);
-  GTK_WIDGET_UNSET_FLAGS (hmw_dbus_player, GTK_CAN_FOCUS);
-  GTK_WIDGET_UNSET_FLAGS (hmw_dbus_player, GTK_CAN_DEFAULT);
-
-  label2 = gtk_label_new (_("dbus"));
-  gtk_widget_set_name (label2, "label2");
-  gtk_widget_show (label2);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hmw_video_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hmw_video_notebook), 1), label2);
-
-  alignment10 = gtk_alignment_new (0, 0.5, 0, 0);
-  gtk_widget_set_name (alignment10, "alignment10");
-  gtk_widget_show (alignment10);
-  gtk_container_add (GTK_CONTAINER (hmw_video_notebook), alignment10);
-
-  table1 = gtk_table_new (6, 2, FALSE);
-  gtk_widget_set_name (table1, "table1");
-  gtk_widget_show (table1);
-  gtk_container_add (GTK_CONTAINER (alignment10), table1);
-  gtk_container_set_border_width (GTK_CONTAINER (table1), 12);
-  gtk_table_set_row_spacings (GTK_TABLE (table1), 3);
-  gtk_table_set_col_spacings (GTK_TABLE (table1), 6);
-
-  label4 = gtk_label_new (_("Title:"));
-  gtk_widget_set_name (label4, "label4");
-  gtk_widget_show (label4);
-  gtk_table_attach (GTK_TABLE (table1), label4, 0, 1, 0, 1,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label4), 0, 0.5);
-
-  label5 = gtk_label_new (_("Artist:"));
-  gtk_widget_set_name (label5, "label5");
-  gtk_widget_show (label5);
-  gtk_table_attach (GTK_TABLE (table1), label5, 0, 1, 1, 2,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label5), 0, 0.5);
-
-  label6 = gtk_label_new (_("Album:"));
-  gtk_widget_set_name (label6, "label6");
-  gtk_widget_show (label6);
-  gtk_table_attach (GTK_TABLE (table1), label6, 0, 1, 2, 3,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label6), 0, 0.5);
-
-  label7 = gtk_label_new (_("Duration:"));
-  gtk_widget_set_name (label7, "label7");
-  gtk_widget_show (label7);
-  gtk_table_attach (GTK_TABLE (table1), label7, 0, 1, 3, 4,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label7), 0, 0.5);
-
-  label8 = gtk_label_new (_("Rhapsody ID:"));
-  gtk_widget_set_name (label8, "label8");
-  gtk_widget_show (label8);
-  gtk_table_attach (GTK_TABLE (table1), label8, 0, 1, 4, 5,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label8), 0, 0.5);
-
-  label9 = gtk_label_new (_("Next Artist:"));
-  gtk_widget_set_name (label9, "label9");
-  gtk_widget_show (label9);
-  gtk_table_attach (GTK_TABLE (table1), label9, 0, 1, 5, 6,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label9), 0, 0.5);
-
-  hmw_metainfo_display_title_label = gtk_label_new ("");
-  gtk_widget_set_name (hmw_metainfo_display_title_label, "hmw_metainfo_display_title_label");
-  gtk_widget_show (hmw_metainfo_display_title_label);
-  gtk_table_attach (GTK_TABLE (table1), hmw_metainfo_display_title_label, 1, 2, 0, 1,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (hmw_metainfo_display_title_label), 0, 0.5);
-
-  hmw_metainfo_display_artist_label = gtk_label_new ("");
-  gtk_widget_set_name (hmw_metainfo_display_artist_label, "hmw_metainfo_display_artist_label");
-  gtk_widget_show (hmw_metainfo_display_artist_label);
-  gtk_table_attach (GTK_TABLE (table1), hmw_metainfo_display_artist_label, 1, 2, 1, 2,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (hmw_metainfo_display_artist_label), 0, 0.5);
-
-  hmw_metainfo_display_album_label = gtk_label_new ("");
-  gtk_widget_set_name (hmw_metainfo_display_album_label, "hmw_metainfo_display_album_label");
-  gtk_widget_show (hmw_metainfo_display_album_label);
-  gtk_table_attach (GTK_TABLE (table1), hmw_metainfo_display_album_label, 1, 2, 2, 3,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (hmw_metainfo_display_album_label), 0, 0.5);
-
-  hmw_metainfo_display_duration_label = gtk_label_new ("");
-  gtk_widget_set_name (hmw_metainfo_display_duration_label, "hmw_metainfo_display_duration_label");
-  gtk_widget_show (hmw_metainfo_display_duration_label);
-  gtk_table_attach (GTK_TABLE (table1), hmw_metainfo_display_duration_label, 1, 2, 3, 4,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (hmw_metainfo_display_duration_label), 0, 0.5);
-
-  hmw_metainfo_display_rhapsody_id_label = gtk_label_new ("");
-  gtk_widget_set_name (hmw_metainfo_display_rhapsody_id_label, "hmw_metainfo_display_rhapsody_id_label");
-  gtk_widget_show (hmw_metainfo_display_rhapsody_id_label);
-  gtk_table_attach (GTK_TABLE (table1), hmw_metainfo_display_rhapsody_id_label, 1, 2, 4, 5,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (hmw_metainfo_display_rhapsody_id_label), 0, 0.5);
-
-  hmw_metainfo_display_next_artist_label = gtk_label_new ("");
-  gtk_widget_set_name (hmw_metainfo_display_next_artist_label, "hmw_metainfo_display_next_artist_label");
-  gtk_widget_show (hmw_metainfo_display_next_artist_label);
-  gtk_table_attach (GTK_TABLE (table1), hmw_metainfo_display_next_artist_label, 1, 2, 5, 6,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (hmw_metainfo_display_next_artist_label), 0, 0.5);
-
-  label3 = gtk_label_new (_("metainfo"));
-  gtk_widget_set_name (label3, "label3");
-  gtk_widget_show (label3);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (hmw_video_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (hmw_video_notebook), 2), label3);
-
   hmw_seek_scale = hmw_create_position_slider ("hmw_seek_scale", "", "", 0, 0);
   gtk_widget_set_name (hmw_seek_scale, "hmw_seek_scale");
   gtk_widget_show (hmw_seek_scale);
@@ -1086,9 +930,9 @@
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_file_menu, "hmw_file_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_file_menu_menu, "hmw_file_menu_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_open_file_menu_item, "hmw_open_file_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1709, "image1709");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1823, "image1823");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_open_location_menu_item, "hmw_open_location_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1710, "image1710");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1824, "image1824");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, separator14, "separator14");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_clip_properties_menu_item, "hmw_clip_properties_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_clip_properties_menu_item_menu, "hmw_clip_properties_menu_item_menu");
@@ -1097,33 +941,31 @@
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_mru_separator, "hmw_mru_separator");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_close_menu_item, "hmw_close_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_quit_menu_item, "hmw_quit_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1711, "image1711");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1825, "image1825");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_play_menu, "hmw_play_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_play_menu_menu, "hmw_play_menu_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_play_menu_item, "hmw_play_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1712, "image1712");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1826, "image1826");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_pause_menu_item, "hmw_pause_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1713, "image1713");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1827, "image1827");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_stop_menu_item, "hmw_stop_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1714, "image1714");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, separator4, "separator4");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_clip_list_menu_item, "hmw_clip_list_menu_item");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1828, "image1828");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, separator12, "separator12");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_previous_menu_item, "hmw_previous_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1715, "image1715");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1829, "image1829");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_next_menu_item, "hmw_next_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1716, "image1716");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1830, "image1830");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, separator5, "separator5");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_volume_up_menu_item, "hmw_volume_up_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1717, "image1717");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1831, "image1831");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_volume_down_menu_item, "hmw_volume_down_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1718, "image1718");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1832, "image1832");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_mute_menu_item, "hmw_mute_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_view_menu, "hmw_view_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_view_menu_menu, "hmw_view_menu_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_fullscreen_menu_item, "hmw_fullscreen_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_zoom_menu_item, "hmw_zoom_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1719, "image1719");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1833, "image1833");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_zoom_menu_item_menu, "hmw_zoom_menu_item_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_normal_size_menu_item, "hmw_normal_size_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_double_size_menu_item, "hmw_double_size_menu_item");
@@ -1137,56 +979,39 @@
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_tools_menu_menu, "hmw_tools_menu_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_plugins_menu_item, "hmw_plugins_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_preferences_menu_item, "hmw_preferences_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1720, "image1720");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1834, "image1834");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_statistics_menu_item, "hmw_statistics_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_favorites_menu, "hmw_favorites_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_favorites_menu_menu, "hmw_favorites_menu_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_add_favorite_menu_item, "hmw_add_favorite_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1721, "image1721");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1835, "image1835");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_manage_favorites_menu_item, "hmw_manage_favorites_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1722, "image1722");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1836, "image1836");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_export_favorites_menu_item, "hmw_export_favorites_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_import_favorites_menu_item, "hmw_import_favorites_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_favorites_separator, "hmw_favorites_separator");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_help_menu, "hmw_help_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_help_menu_menu, "hmw_help_menu_menu");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_intro_menu_item, "hmw_intro_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1723, "image1723");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1837, "image1837");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_release_notes_menu_item, "hmw_release_notes_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1724, "image1724");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1838, "image1838");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_faq_menu_item, "hmw_faq_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1725, "image1725");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1839, "image1839");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_report_issue_item, "hmw_report_issue_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1726, "image1726");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1840, "image1840");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_nightly_build_menu_item, "hmw_nightly_build_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1727, "image1727");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1841, "image1841");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_sign_in_out_separator, "hmw_sign_in_out_separator");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_check_for_updates_menu_item, "hmw_check_for_updates_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, separator15, "separator15");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_player_reset_menu_item, "hmw_player_reset_menu_item");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1728, "image1728");
+  GLADE_HOOKUP_OBJECT (hxplayer_main_window, image1842, "image1842");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, separator13, "separator13");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_about_menu_item, "hmw_about_menu_item");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_video_notebook, "hmw_video_notebook");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_hxbin, "hmw_hxbin");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, label1, "label1");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_dbus_player, "hmw_dbus_player");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label2, "label2");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, alignment10, "alignment10");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, table1, "table1");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label4, "label4");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label5, "label5");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label6, "label6");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label7, "label7");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label8, "label8");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label9, "label9");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_metainfo_display_title_label, "hmw_metainfo_display_title_label");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_metainfo_display_artist_label, "hmw_metainfo_display_artist_label");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_metainfo_display_album_label, "hmw_metainfo_display_album_label");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_metainfo_display_duration_label, "hmw_metainfo_display_duration_label");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_metainfo_display_rhapsody_id_label, "hmw_metainfo_display_rhapsody_id_label");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_metainfo_display_next_artist_label, "hmw_metainfo_display_next_artist_label");
-  GLADE_HOOKUP_OBJECT (hxplayer_main_window, label3, "label3");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_seek_scale, "hmw_seek_scale");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hmw_controls_hbox, "hmw_controls_hbox");
   GLADE_HOOKUP_OBJECT (hxplayer_main_window, hbox3, "hbox3");

Index: hxstatustacctrl.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/hxstatustacctrl.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- hxstatustacctrl.cpp	21 May 2005 02:00:03 -0000	1.20
+++ hxstatustacctrl.cpp	6 Jul 2005 04:36:30 -0000	1.21
@@ -127,7 +127,7 @@
     {
         if(!status_tac->clip_details_dialog)
         {
-            status_tac->clip_details_dialog = hxplay_clip_details_dialog_new (HX_PLAYER(status->player));
+            status_tac->clip_details_dialog = hxplay_clip_details_dialog_new (status->player);
             if(status_tac->clip_details_dialog)
             {
                 g_signal_connect (G_OBJECT (status_tac->clip_details_dialog),

Index: Umakefil
===================================================================
RCS file: /cvsroot/player/app/gtk/Umakefil,v
retrieving revision 1.91
retrieving revision 1.92
diff -u -d -r1.91 -r1.92
--- Umakefil	10 Jun 2005 23:40:42 -0000	1.91
+++ Umakefil	6 Jul 2005 04:36:30 -0000	1.92
@@ -204,6 +204,7 @@
                           "common/runtime/pub",
                           "filesystem/memory/pub",
                           "filesystem/http",
+                          "audio/device/pub",
                           "player/hxclientkit/pub")
 
 

Index: preferences_callbacks.h
===================================================================
RCS file: /cvsroot/player/app/gtk/preferences_callbacks.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- preferences_callbacks.h	18 Jun 2004 17:41:49 -0000	1.13
+++ preferences_callbacks.h	6 Jul 2005 04:36:31 -0000	1.14
@@ -10,56 +10,35 @@
                                         gpointer         user_data);
 
 void
-hpd_configure_rtsp                     (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-hpd_configure_pna                      (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-hxcommon_launch_context_help_with_widget_name
-                                        (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-hpw_clear_recent_clips                 (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
 hpd_clear_recent_clips                 (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_mime_types_assign_all_audio        (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-hpd_mime_types_assign_all_video        (GtkButton       *button,
+hpd_empty_clip_cache                   (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_mime_types_assign_all              (GtkButton       *button,
+hpd_bandwidth_changed                  (GtkOptionMenu   *optionmenu,
                                         gpointer         user_data);
 
 void
-hpd_mime_types_tree_view_init          (GtkWidget       *widget,
+hpd_auto_transport_toggled             (GtkToggleButton *togglebutton,
                                         gpointer         user_data);
 
 void
-on_item7l_activate                     (GtkMenuItem     *menuitem,
+hpd_configure_rtsp                     (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_auto_transport_toggled             (GtkToggleButton *togglebutton,
+hpd_configure_pna                      (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_auto_transport_toggled             (GtkToggleButton *togglebutton,
+hpd_mime_types_assign_all_audio        (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_empty_clip_cache                   (GtkButton       *button,
+hpd_mime_types_assign_all_video        (GtkButton       *button,
                                         gpointer         user_data);
 
 void
@@ -67,18 +46,14 @@
                                         gpointer         user_data);
 
 void
-hpd_prefs_notebook_change_current_page (GtkNotebook     *notebook,
-                                        gint             offset,
-                                        gpointer         user_data);
-
-void
-hpd_max_bandwidth_changed              (GtkOptionMenu   *optionmenu,
+hpd_mime_types_assign_all              (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_normal_bandwidth_changed           (GtkOptionMenu   *optionmenu,
+hxcommon_launch_context_help_with_widget_name
+                                        (GtkButton       *button,
                                         gpointer         user_data);
 
 void
-hpd_bandwidth_changed                  (GtkOptionMenu   *optionmenu,
+hpd_sound_driver_changed               (GtkOptionMenu   *optionmenu,
                                         gpointer         user_data);

Index: statistics.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/statistics.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- statistics.cpp	13 Dec 2004 23:31:58 -0000	1.11
+++ statistics.cpp	6 Jul 2005 04:36:31 -0000	1.12
@@ -162,6 +162,8 @@
     gint play_handler;
     guint timer_id;
 
+    GtkWidget* top_notebook;
+    
 } HXStatisticsDialog;
 
 static void
@@ -1145,6 +1147,39 @@
     }
 }
 
+static void
+player_changed(HXStatisticsDialog* dialog,
+               HXBasicPlayback*    playback)
+{
+    if(HX_IS_PLAYER(playback))
+    {
+        gtk_notebook_set_current_page(GTK_NOTEBOOK(dialog->top_notebook), 0);
+    }
+    else
+    {
+        gtk_notebook_set_current_page(GTK_NOTEBOOK(dialog->top_notebook), 1);
+    }
+}
+
+GtkDialog*
+hxplay_statistics_dialog_new_with_main_window(HXMainWindow* window)
+{
+    HXPlayer* player = hxwindow_get_hxclient_player(window);
+    HXBasicPlayback* active_playback = hxwindow_get_active_player(window);
+    HXStatisticsDialog* info;
+    GtkDialog* dialog;
+
+    dialog = hxplay_statistics_dialog_new(player);
+
+    info = (HXStatisticsDialog*) g_object_get_data(G_OBJECT(dialog), "info");
+
+    g_signal_connect_swapped(G_OBJECT(window), "player_changed",
+                             G_CALLBACK(player_changed), info);
+
+    player_changed(info, active_playback);
+    
+    return dialog;
+}
 
 GtkDialog*
 hxplay_statistics_dialog_new (HXPlayer* player)
@@ -1172,6 +1207,8 @@
     g_object_set_data(G_OBJECT(dialog), "info", info);
 
     bandwidth_graph = glade_xml_get_widget (xml, "hsd_bandwidth_graph");
+
+    info->top_notebook = glade_xml_get_widget (xml, "hsd_top_notebook");
     
     result = hx_player_get_statistic(player, "ClipBandwidth", &value);
     if(result)

Index: mainapp.h
===================================================================
RCS file: /cvsroot/player/app/gtk/mainapp.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- mainapp.h	21 May 2005 02:00:03 -0000	1.13
+++ mainapp.h	6 Jul 2005 04:36:31 -0000	1.14
@@ -55,8 +55,13 @@
 
 G_BEGIN_DECLS
 
-struct _HXMainWindow;
-typedef struct _HXMainWindow HXMainWindow;
+// XXXRGG: rename to hxwindow -> hx_main_window_foo
+#define HX_TYPE_MAIN_WINDOW            (hxwindow_get_type ())
+#define HX_MAIN_WINDOW(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), HX_TYPE_MAIN_WINDOW, HXMainWindow))
+#define HX_MAIN_WINDOW_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), HX_TYPE_MAIN_WINDOW, HXMainWindowClass))
+#define HX_IS_MAIN_WINDOW(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), HX_TYPE_MAIN_WINDOW))
+#define HX_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), HX_TYPE_MAIN_WINDOW))
+#define HX_MAIN_WINDOW_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), HX_TYPE_MAIN_WINDOW, HXMainWindowClass))
 
 typedef enum
 {
@@ -64,11 +69,17 @@
     DOUBLE_SIZE,
     CUSTOM_SIZE
 } HXMainWindowZoomSize;
-    
-HXMainWindow* hxwindow_new          (void);
 
-HXBasicPlayback* hxwindow_get_player(HXMainWindow* window);
-GtkWidget*       hxwindow_get_window(HXMainWindow* window);
+
+typedef struct _HXMainWindow       HXMainWindow;
+typedef struct _HXMainWindowClass  HXMainWindowClass;
+
+HXMainWindow* hxwindow_new        (void);
+
+HXPlayer*  hxwindow_get_hxclient_player(HXMainWindow* window);
+HXBasicPlayback* hxwindow_get_active_player(HXMainWindow* window);
+
+GtkWidget* hxwindow_get_window(HXMainWindow* window);
 
 gboolean   hxwindow_is_fullscreened (HXMainWindow* window);
 GladeXML*  hxwindow_get_glade_xml   (HXMainWindow* window);
@@ -98,8 +109,6 @@
 void       hxwindow_show_status_bar        (HXMainWindow* window,
                                             gboolean      show);
 
-HXContentStateType hxwindow_get_content_state(HXMainWindow* window);
-
 void hxwindow_recent_urls_prepend(HXMainWindow* window,
                                   const gchar*  url);
 void hxwindow_recent_urls_append(HXMainWindow* window,

Index: sunos5.pcf
===================================================================
RCS file: /cvsroot/player/app/gtk/sunos5.pcf,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- sunos5.pcf	15 Apr 2005 19:47:28 -0000	1.7
+++ sunos5.pcf	6 Jul 2005 04:36:31 -0000	1.8
@@ -52,6 +52,6 @@
 project.AddSystemLibraries('X11')
 project.AddDefines("DISABLE_GTK_VARARG_MACROS")
 project.AddSystemLibraries("rt")
-project.AddSystemLibraries("thread")
+project.AddSystemLibraries("pthread")
 project.AddSystemLibraries("sunmath")
 project.AddSystemLibraries("m")

Index: hxstatus.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/hxstatus.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- hxstatus.cpp	21 May 2005 02:00:03 -0000	1.13
+++ hxstatus.cpp	6 Jul 2005 04:36:30 -0000	1.14
@@ -218,14 +218,18 @@
     {
         const gchar* name;
         GCallback callback;
-    } signal_map[] = 
+    }
+    signal_map[] = 
     {
         { "play",       G_CALLBACK(hsd_play_buffer_contact) },
         { "pause",      G_CALLBACK(hsd_pause)               },
         { "stop",       G_CALLBACK(hsd_stop)                },
+        { "destroy",    G_CALLBACK(hsd_destroy)             },
+    },
+    hx_signal_map[] =
+    {
         { "buffering",  G_CALLBACK(hsd_play_buffer_contact) },
         { "contacting", G_CALLBACK(hsd_play_buffer_contact) },
-        { "destroy",    G_CALLBACK(hsd_destroy)             },
     };
 
     /* Disconnect old player */
@@ -272,6 +276,25 @@
                                signal);
             status->player_status_signal_handlers_array_len++;
         }
+
+        if(HX_IS_PLAYER(status->player))
+        {
+            // Helix-only signals
+            for(i = 0; i < sizeof(hx_signal_map) / sizeof(*hx_signal_map); i++)
+            {    
+                /* Hook up to the new player */
+                signal = g_signal_connect_swapped(G_OBJECT(player),
+                                                  hx_signal_map[i].name,
+                                                  hx_signal_map[i].callback,
+                                                  status);
+
+                g_array_insert_val(status->player_status_signal_handlers_array,
+                                   status->player_status_signal_handlers_array_len,
+                                   signal);
+                status->player_status_signal_handlers_array_len++;
+            }
+        }
+
     }
 }
 

Index: hxstatustop.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/hxstatustop.cpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- hxstatustop.cpp	21 May 2005 02:00:03 -0000	1.15
+++ hxstatustop.cpp	6 Jul 2005 04:36:30 -0000	1.16
@@ -283,14 +283,18 @@
     {
         const gchar* name;
         GCallback callback;
-    } signal_map[] = 
+    }
+    signal_map[] = 
     {
-        { "buffering",  G_CALLBACK(st_buffering)       },
-        { "contacting", G_CALLBACK(st_contacting)      },
         { "play",       G_CALLBACK(st_play_stop_pause) },
         { "pause",      G_CALLBACK(st_play_stop_pause) },
         { "stop",       G_CALLBACK(st_play_stop_pause) }
-    };
+    },
+    hx_signal_map[] =
+    {
+        { "buffering",  G_CALLBACK(st_buffering)       },
+        { "contacting", G_CALLBACK(st_contacting)      },
+    };   
 
     /* Disconnect from the old player, if any */    
     if(status->player)
@@ -321,6 +325,25 @@
                                signal);
             status_top->player_signal_handlers_array_len++;
         }
+
+
+        if(HX_IS_PLAYER(player))
+        {
+            // Helix signals
+            for(i = 0; i < sizeof(hx_signal_map) / sizeof(*hx_signal_map); i++)
+            {    
+                /* Hook up to the new player */
+                signal = g_signal_connect(G_OBJECT(player),
+                                          hx_signal_map[i].name,
+                                          hx_signal_map[i].callback,
+                                          status);
+
+                g_array_insert_val(status_top->player_signal_handlers_array,
+                                   status_top->player_signal_handlers_array_len,
+                                   signal);
+                status_top->player_signal_handlers_array_len++;
+            }
+        }
     }
     
     /* Propagate to the status display */

Index: hxstatuspositionfield.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/hxstatuspositionfield.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- hxstatuspositionfield.cpp	21 May 2005 02:00:03 -0000	1.17
+++ hxstatuspositionfield.cpp	6 Jul 2005 04:36:30 -0000	1.18
@@ -200,7 +200,7 @@
         {
             len_string = g_strdup(_("Live"));
         }
-        else if(hx_basic_playback_is_indefinite_duration(status->player))
+        else if(hx_basic_playback_is_infinite_duration(status->player))
         {
             len_string = NULL;
         }

Index: clipdetails.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/clipdetails.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- clipdetails.cpp	21 May 2005 02:00:03 -0000	1.6
+++ clipdetails.cpp	6 Jul 2005 04:36:30 -0000	1.7
@@ -56,7 +56,7 @@
 typedef struct
 {
     GladeXML* xml;
-    HXPlayer* player;
+    HXBasicPlayback* player;
     guint handler;
 
     GtkWidget* url_label;
@@ -89,7 +89,9 @@
     url = hx_basic_playback_get_opened_location(HX_BASIC_PLAYBACK(dialog->player));    
     gtk_label_set_text(GTK_LABEL(dialog->url_label), url? url: "");    
     
-    result = hx_player_get_statistic(dialog->player, "title", &value);
+    result = hx_basic_playback_get_current_clip_basic_metadata(dialog->player,
+                                                               HX_BASIC_PLAYBACK_METADATA_TITLE,
+                                                               &value);
     if(result)
     {
         prop = g_value_get_string(&value);
@@ -97,7 +99,9 @@
         g_value_unset(&value);            
     }
 
-    result = hx_player_get_statistic(dialog->player, "author", &value);
+    result = hx_basic_playback_get_current_clip_basic_metadata(dialog->player,
+                                                               HX_BASIC_PLAYBACK_METADATA_AUTHOR,
+                                                               &value);
     if(result)
     {
         prop = g_value_get_string(&value);
@@ -105,37 +109,15 @@
         g_value_unset(&value);            
     }
 
-    result = hx_player_get_statistic(dialog->player, "copyright", &value);
+    result = hx_basic_playback_get_current_clip_basic_metadata(dialog->player,
+                                                               HX_BASIC_PLAYBACK_METADATA_COPYRIGHT,
+                                                               &value);
     if(result)
     {
         prop = g_value_get_string(&value);
         gtk_label_set_text(GTK_LABEL(dialog->copyright_label), prop);
         g_value_unset(&value);            
     }
-
-    result = hx_player_get_statistic(dialog->player, "abstract", &value);
-    if(result)
-    {
-        prop = g_value_get_string(&value);
-        gtk_label_set_text(GTK_LABEL(dialog->abstract_label), prop);
-        g_value_unset(&value);            
-    }
-
-    result = hx_player_get_statistic(dialog->player, "description", &value);
-    if(result)
-    {
-        prop = g_value_get_string(&value);
-        gtk_label_set_text(GTK_LABEL(dialog->description_label), prop);
-        g_value_unset(&value);            
-    }
-
-    result = hx_player_get_statistic(dialog->player, "keywords", &value);
-    if(result)
-    {
-        prop = g_value_get_string(&value);
-        gtk_label_set_text(GTK_LABEL(dialog->keywords_label), prop);
-        g_value_unset(&value);            
-    }
 }
 
 static void
@@ -149,7 +131,7 @@
 }
 
 GtkDialog*
-hxplay_clip_details_dialog_new(HXPlayer* player)
+hxplay_clip_details_dialog_new(HXBasicPlayback* player)
 {
     GladeXML* xml;
     GtkWidget* dialog;

Index: statistics.h
===================================================================
RCS file: /cvsroot/player/app/gtk/statistics.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- statistics.h	9 Jul 2004 18:24:27 -0000	1.4
+++ statistics.h	6 Jul 2005 04:36:31 -0000	1.5
@@ -52,10 +52,12 @@
 
 #include <gtk/gtk.h>
 #include "hxplayer.h"
+#include "mainapp.h"
 
 G_BEGIN_DECLS
 
-GtkDialog*  hxplay_statistics_dialog_new (HXPlayer* player);
+GtkDialog* hxplay_statistics_dialog_new                 (HXPlayer*     player);
+GtkDialog* hxplay_statistics_dialog_new_with_main_window(HXMainWindow* window);
 
 G_END_DECLS
 

Index: hxstatuspositionslider.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/hxstatuspositionslider.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- hxstatuspositionslider.cpp	21 May 2005 02:00:03 -0000	1.17
+++ hxstatuspositionslider.cpp	6 Jul 2005 04:36:30 -0000	1.18
@@ -464,7 +464,7 @@
     status = HX_STATUS_DISPLAY(position_status);
 
     is_live_or_infinite = hx_basic_playback_is_live(status->player) ||
-                          hx_basic_playback_is_indefinite_duration(status->player);
+                          hx_basic_playback_is_infinite_duration(status->player);
         
     gtk_widget_set_sensitive(position_status->position_scale, !is_live_or_infinite);
 }
@@ -478,7 +478,7 @@
     status = HX_STATUS_DISPLAY(position_status);
 
     is_live_or_infinite = hx_basic_playback_is_live(status->player) ||
-                          hx_basic_playback_is_indefinite_duration(status->player);
+                          hx_basic_playback_is_infinite_duration(status->player);
     
     gtk_widget_set_sensitive(position_status->position_scale, !is_live_or_infinite);
 }

Index: contextmenu.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/contextmenu.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- contextmenu.cpp	17 Jun 2005 18:07:20 -0000	1.7
+++ contextmenu.cpp	6 Jul 2005 04:36:30 -0000	1.8
@@ -276,7 +276,7 @@
 
     g_return_val_if_fail(window != NULL, NULL);
 
-    player = hxwindow_get_player(window);
+    player = hxwindow_get_active_player(window);
     
     menu = hx_context_menu_new_common(player);
     g_return_val_if_fail(menu != NULL, NULL);

Index: mainapp.cpp
===================================================================
RCS file: /cvsroot/player/app/gtk/mainapp.cpp,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -d -r1.95 -r1.96
--- mainapp.cpp	21 May 2005 02:00:03 -0000	1.95
+++ mainapp.cpp	6 Jul 2005 04:36:31 -0000	1.96
@@ -94,13 +94,12 @@
 #include "hxplayer-i18n.h"
 #include "hxbranding.h"
 
-/* Gtk widgt includes */
+/* Gtk widget includes */
 #include "hxplayer.h"
 #include "hxdbusplayer.h"
 #include "hxbasicplayback.h"
 #include "hxbin.h"
 #include "hxbasicplayback.h"
-#include "hxstatisticsobserver.h"
[...1551 lines suppressed...]
     if(video_area)
     {
         pixmap = hxcommon_get_logo_pixmap(video_area, window->window->window);
-        hx_player_set_logo_pixmap(HX_PLAYER(window->player), pixmap);
+        hx_player_set_logo_pixmap(HX_PLAYER(window->hxclient_player), pixmap);
         g_object_unref(G_OBJECT(pixmap));
     }
 
@@ -5069,6 +5186,11 @@
 hxwindow_destroy(HXMainWindow* window)
 {
     GList* item;
+
+    if(window->active_player)
+    {
+        hx_basic_playback_stop(window->active_player);
+    }
     
 #ifdef HELIX_FEATURE_RP_SIGN_IN
     if(g_hx_main_app->sign_in_controller)




More information about the Player-cvs mailing list
 

Site Map   |   Terms of Use   |   Privacy Policy   |   Contact Us

Copyright © 1995-2007 RealNetworks, Inc. All rights reserved. RealNetworks and Helix are trademarks of RealNetworks.
All other trademarks or registered trademarks are the property of their respective holders.