Changeset 1121:476f1bd5f496 in roaraudio for plugins/xmms


Ignore:
Timestamp:
01/16/09 17:55:53 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added a small usleep() of 100ms in error case, this improves the stability

Location:
plugins/xmms
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • plugins/xmms/all.h

    r1106 r1121  
    3030//#include "xmms/i18n.h" 
    3131#include <gtk/gtk.h> 
     32#include <gdk/gdkkeysyms.h> 
    3233#include <stdio.h> 
    3334#include <string.h> 
  • plugins/xmms/configure

    r1056 r1121  
    4343fi 
    4444 
     45echo -n "checking for pkg-config... " 
     46PKG_CONFIG=$(which pkg-config false 2> /dev/null | grep ^/ | head -n 1) 
     47if $PKG_CONFIG --help > /dev/null 2> /dev/null 
     48then 
     49 echo $PKG_CONFIG 
     50else 
     51 PKG_CONFIG='' 
     52 echo no 
     53fi 
     54 
    4555echo -n 'testing for gtk... ' 
    46 GTK_LIBS=`gtk-config --libs 2> /dev/null` 
    47 GTK_CFLAFS=`gtk-config --cflags 2> /dev/null` 
     56#pkg-config 
     57 
     58#if [ "$PKG_CONFIG" != '' ] 
     59#then 
     60# GTK_LIBS=`pkg-config --libs gtk+-2.0 2> /dev/null` 
     61# GTK_CFLAFS=`pkg-config --cflags gtk+-2.0 2> /dev/null` 
     62#else 
     63 GTK_LIBS=`gtk-config --libs 2> /dev/null` 
     64 GTK_CFLAFS=`gtk-config --cflags 2> /dev/null` 
     65#fi 
    4866 
    4967if [ "$GTK_LIBS" = '' -a "$GTK_CFLAFS" = '' ] 
  • plugins/xmms/gui.c

    r1108 r1121  
    4444// CONFIG: 
    4545 
     46void on_button_ok_enter(GtkButton * button, gpointer user_data) { 
     47} 
     48 
    4649void roar_configure(void) { 
     50  GtkWidget *config_win; 
     51  GtkWidget *vbox_main; 
     52  GtkWidget *tabs_main; 
     53  GtkWidget *frame_server; 
     54  GtkWidget *alignment_server; 
     55  GtkWidget *table1; 
     56  GtkWidget *label_server_type; 
     57  GtkWidget *label_server_host; 
     58  GtkWidget *label_server_port; 
     59  GtkObject *input_server_port_adj; 
     60  GtkWidget *input_server_port; 
     61  GtkWidget *input_server_host; 
     62  GtkWidget *input_server_type; 
     63  GtkWidget *label_host; 
     64  GtkWidget *label_server; 
     65  GtkWidget *frame_proxy; 
     66  GtkWidget *alignment_proxy; 
     67  GtkWidget *table2; 
     68  GtkWidget *label_proxy_type; 
     69  GtkWidget *label_proxy_addr; 
     70  GtkWidget *input_proxy_host; 
     71  GtkWidget *input_proxy_type; 
     72  GtkWidget *label_frame_proxy; 
     73  GtkWidget *label_proxy; 
     74  GtkWidget *vbox_meta; 
     75  GtkWidget *frame_meta_player; 
     76  GtkWidget *alignment1; 
     77  GtkWidget *hbox_meta_player; 
     78  GtkWidget *label_player_name; 
     79  GtkWidget *input_meta_player_name; 
     80  GtkWidget *label_player; 
     81  GtkWidget *frame_meta_title; 
     82  GtkWidget *alignment2; 
     83  GtkWidget *hbox_meta_title; 
     84  GtkWidget *input_meta_send_title; 
     85  GtkWidget *input_meta_send_filename; 
     86  GtkWidget *label_meta_title; 
     87  GtkWidget *label_meta; 
     88  GtkWidget *hbox_buttons; 
     89  GtkWidget *button_ok; 
     90  GtkWidget *button_cancel; 
     91 
     92  config_win = gtk_window_new(GTK_WINDOW_DIALOG); 
     93  gtk_window_set_title(GTK_WINDOW(config_win), _("RoarAudio Plugin - Configuration")); 
     94//  gtk_window_set_destroy_with_parent(GTK_WINDOW(config_win), TRUE); 
     95//  gtk_window_set_icon_name(GTK_WINDOW(config_win), "gtk-preferences"); 
     96 
     97  gtk_widget_show (config_win); 
     98 
     99  vbox_main = gtk_vbox_new (FALSE, 0); 
     100  gtk_widget_show (vbox_main); 
     101  gtk_container_add (GTK_CONTAINER (config_win), vbox_main); 
     102 
     103  tabs_main = gtk_notebook_new (); 
     104  gtk_widget_show (tabs_main); 
     105  gtk_box_pack_start (GTK_BOX (vbox_main), tabs_main, TRUE, TRUE, 0); 
     106 
     107  frame_server = gtk_frame_new (NULL); 
     108  gtk_widget_show (frame_server); 
     109  gtk_container_add (GTK_CONTAINER (tabs_main), frame_server); 
     110  gtk_frame_set_shadow_type (GTK_FRAME (frame_server), GTK_SHADOW_NONE); 
     111 
     112  alignment_server = gtk_alignment_new (0.5, 0.5, 1, 1); 
     113  gtk_widget_show (alignment_server); 
     114  gtk_container_add (GTK_CONTAINER (frame_server), alignment_server); 
     115//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment_server), 0, 0, 12, 0); 
     116 
     117  table1 = gtk_table_new (3, 2, FALSE); 
     118  gtk_widget_show (table1); 
     119  gtk_container_add (GTK_CONTAINER (alignment_server), table1); 
     120 
     121  label_server_type = gtk_label_new (_("Server Type:")); 
     122  gtk_widget_show (label_server_type); 
     123  gtk_table_attach (GTK_TABLE (table1), label_server_type, 0, 1, 0, 1, 
     124                    (GtkAttachOptions) (GTK_FILL), 
     125                    (GtkAttachOptions) (0), 0, 0); 
     126  gtk_misc_set_alignment (GTK_MISC (label_server_type), 0, 0.5); 
     127 
     128  label_server_host = gtk_label_new (_("Host or Path:")); 
     129  gtk_widget_show (label_server_host); 
     130  gtk_table_attach (GTK_TABLE (table1), label_server_host, 0, 1, 1, 2, 
     131                    (GtkAttachOptions) (GTK_FILL), 
     132                    (GtkAttachOptions) (0), 0, 0); 
     133  gtk_misc_set_alignment (GTK_MISC (label_server_host), 0, 0.5); 
     134 
     135  label_server_port = gtk_label_new (_("Port:")); 
     136  gtk_widget_show (label_server_port); 
     137  gtk_table_attach (GTK_TABLE (table1), label_server_port, 0, 1, 2, 3, 
     138                    (GtkAttachOptions) (GTK_FILL), 
     139                    (GtkAttachOptions) (0), 0, 0); 
     140  gtk_misc_set_alignment (GTK_MISC (label_server_port), 0, 0.5); 
     141 
     142  input_server_port_adj = gtk_adjustment_new (16002, 0, 65535, 1, 10, 10); 
     143  input_server_port = gtk_spin_button_new (GTK_ADJUSTMENT (input_server_port_adj), 1, 0); 
     144  gtk_widget_show (input_server_port); 
     145  gtk_table_attach (GTK_TABLE (table1), input_server_port, 1, 2, 2, 3, 
     146                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 
     147                    (GtkAttachOptions) (0), 0, 0); 
     148 
     149  input_server_host = gtk_entry_new (); 
     150  gtk_widget_show (input_server_host); 
     151  gtk_table_attach (GTK_TABLE (table1), input_server_host, 1, 2, 1, 2, 
     152                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 
     153                    (GtkAttachOptions) (0), 0, 0); 
     154 
     155/* 
     156  input_server_type = gtk_combo_box_entry_new_text (); 
     157  gtk_widget_show (input_server_type); 
     158  gtk_table_attach (GTK_TABLE (table1), input_server_type, 1, 2, 0, 1, 
     159                    (GtkAttachOptions) (GTK_FILL), 
     160                    (GtkAttachOptions) (GTK_FILL), 0, 0); 
     161  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("Local")); 
     162  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("TCP/IP")); 
     163  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("DECnet")); 
     164  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("Fork")); 
     165*/ 
     166  label_host = gtk_label_new (_("<b>Host:</b>")); 
     167  gtk_widget_show (label_host); 
     168//  gtk_frame_set_label_widget (GTK_FRAME (frame_server), label_host); 
     169//  gtk_label_set_use_markup (GTK_LABEL (label_host), TRUE); 
     170 
     171  label_server = gtk_label_new (_("Server & Network")); 
     172  gtk_widget_show (label_server); 
     173  gtk_notebook_set_tab_label (GTK_NOTEBOOK (tabs_main), gtk_notebook_get_nth_page (GTK_NOTEBOOK (tabs_main), 0), label_server); 
     174 
     175  frame_proxy = gtk_frame_new (NULL); 
     176  gtk_widget_show (frame_proxy); 
     177  gtk_container_add (GTK_CONTAINER (tabs_main), frame_proxy); 
     178  gtk_frame_set_shadow_type (GTK_FRAME (frame_proxy), GTK_SHADOW_NONE); 
     179 
     180  alignment_proxy = gtk_alignment_new (0.5, 0.5, 1, 1); 
     181  gtk_widget_show (alignment_proxy); 
     182  gtk_container_add (GTK_CONTAINER (frame_proxy), alignment_proxy); 
     183//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment_proxy), 0, 0, 12, 0); 
     184 
     185  table2 = gtk_table_new (2, 2, FALSE); 
     186  gtk_widget_show (table2); 
     187  gtk_container_add (GTK_CONTAINER (alignment_proxy), table2); 
     188 
     189  label_proxy_type = gtk_label_new (_("Type:")); 
     190  gtk_widget_show (label_proxy_type); 
     191  gtk_table_attach (GTK_TABLE (table2), label_proxy_type, 0, 1, 0, 1, 
     192                    (GtkAttachOptions) (GTK_FILL), 
     193                    (GtkAttachOptions) (0), 0, 0); 
     194  gtk_misc_set_alignment (GTK_MISC (label_proxy_type), 0, 0.5); 
     195 
     196  label_proxy_addr = gtk_label_new (_("Proxy Address")); 
     197  gtk_widget_show (label_proxy_addr); 
     198  gtk_table_attach (GTK_TABLE (table2), label_proxy_addr, 0, 1, 1, 2, 
     199                    (GtkAttachOptions) (GTK_FILL), 
     200                    (GtkAttachOptions) (0), 0, 0); 
     201  gtk_misc_set_alignment (GTK_MISC (label_proxy_addr), 0, 0.5); 
     202 
     203  input_proxy_host = gtk_entry_new (); 
     204  gtk_widget_show (input_proxy_host); 
     205  gtk_table_attach (GTK_TABLE (table2), input_proxy_host, 1, 2, 1, 2, 
     206                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 
     207                    (GtkAttachOptions) (0), 0, 0); 
     208 
     209/* 
     210  input_proxy_type = gtk_combo_box_entry_new_text (); 
     211  gtk_widget_show (input_proxy_type); 
     212  gtk_table_attach (GTK_TABLE (table2), input_proxy_type, 1, 2, 0, 1, 
     213                    (GtkAttachOptions) (GTK_FILL), 
     214                    (GtkAttachOptions) (GTK_FILL), 0, 0); 
     215  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("None")); 
     216  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SOCKS4")); 
     217  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SOCKS4a")); 
     218  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SOCKS4d")); 
     219  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("HTTP Connect")); 
     220  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SSH")); 
     221*/ 
     222 
     223  label_frame_proxy = gtk_label_new (_("<b>Proxy</b>")); 
     224  gtk_widget_show (label_frame_proxy); 
     225/* 
     226  gtk_frame_set_label_widget (GTK_FRAME (frame_proxy), label_frame_proxy); 
     227  gtk_label_set_use_markup (GTK_LABEL (label_frame_proxy), TRUE); 
     228*/ 
     229 
     230  label_proxy = gtk_label_new (_("Proxy")); 
     231  gtk_widget_show (label_proxy); 
     232  gtk_notebook_set_tab_label (GTK_NOTEBOOK (tabs_main), gtk_notebook_get_nth_page (GTK_NOTEBOOK (tabs_main), 1), label_proxy); 
     233 
     234  vbox_meta = gtk_vbox_new (FALSE, 0); 
     235  gtk_widget_show (vbox_meta); 
     236  gtk_container_add (GTK_CONTAINER (tabs_main), vbox_meta); 
     237 
     238  frame_meta_player = gtk_frame_new (NULL); 
     239  gtk_widget_show (frame_meta_player); 
     240  gtk_box_pack_start (GTK_BOX (vbox_meta), frame_meta_player, TRUE, TRUE, 0); 
     241  gtk_frame_set_shadow_type (GTK_FRAME (frame_meta_player), GTK_SHADOW_NONE); 
     242 
     243  alignment1 = gtk_alignment_new (0.5, 0.5, 1, 1); 
     244  gtk_widget_show (alignment1); 
     245  gtk_container_add (GTK_CONTAINER (frame_meta_player), alignment1); 
     246//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment1), 0, 0, 12, 0); 
     247 
     248  hbox_meta_player = gtk_hbox_new (FALSE, 0); 
     249  gtk_widget_show (hbox_meta_player); 
     250  gtk_container_add (GTK_CONTAINER (alignment1), hbox_meta_player); 
     251 
     252  label_player_name = gtk_label_new (_("Player Name:")); 
     253  gtk_widget_show (label_player_name); 
     254  gtk_box_pack_start (GTK_BOX (hbox_meta_player), label_player_name, FALSE, FALSE, 0); 
     255 
     256  input_meta_player_name = gtk_entry_new (); 
     257  gtk_widget_show (input_meta_player_name); 
     258  gtk_box_pack_start (GTK_BOX (hbox_meta_player), input_meta_player_name, TRUE, TRUE, 0); 
     259  gtk_entry_set_text (GTK_ENTRY (input_meta_player_name), _("XMMS")); 
     260 
     261  label_player = gtk_label_new (_("<b>Player</b>")); 
     262  gtk_widget_show (label_player); 
     263/* 
     264  gtk_frame_set_label_widget (GTK_FRAME (frame_meta_player), label_player); 
     265  gtk_label_set_use_markup (GTK_LABEL (label_player), TRUE); 
     266*/ 
     267 
     268  frame_meta_title = gtk_frame_new (NULL); 
     269  gtk_widget_show (frame_meta_title); 
     270  gtk_box_pack_start (GTK_BOX (vbox_meta), frame_meta_title, TRUE, TRUE, 0); 
     271  gtk_frame_set_shadow_type (GTK_FRAME (frame_meta_title), GTK_SHADOW_NONE); 
     272 
     273  alignment2 = gtk_alignment_new (0.5, 0.5, 1, 1); 
     274  gtk_widget_show (alignment2); 
     275  gtk_container_add (GTK_CONTAINER (frame_meta_title), alignment2); 
     276//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment2), 0, 0, 12, 0); 
     277 
     278  hbox_meta_title = gtk_hbox_new (FALSE, 0); 
     279  gtk_widget_show (hbox_meta_title); 
     280  gtk_container_add (GTK_CONTAINER (alignment2), hbox_meta_title); 
     281 
     282/* 
     283  input_meta_send_title = gtk_check_button_new_with_mnemonic (_("Send song title to server")); 
     284  gtk_widget_show (input_meta_send_title); 
     285  gtk_box_pack_start (GTK_BOX (hbox_meta_title), input_meta_send_title, FALSE, FALSE, 0); 
     286  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (input_meta_send_title), TRUE); 
     287 
     288  input_meta_send_filename = gtk_check_button_new_with_mnemonic (_("Send song filename to server")); 
     289  gtk_widget_show (input_meta_send_filename); 
     290  gtk_box_pack_start (GTK_BOX (hbox_meta_title), input_meta_send_filename, FALSE, FALSE, 0); 
     291  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (input_meta_send_filename), TRUE); 
     292*/ 
     293 
     294  label_meta_title = gtk_label_new (_("<b>Current Song</b>")); 
     295  gtk_widget_show (label_meta_title); 
     296/* 
     297  gtk_frame_set_label_widget (GTK_FRAME (frame_meta_title), label_meta_title); 
     298  gtk_label_set_use_markup (GTK_LABEL (label_meta_title), TRUE); 
     299*/ 
     300 
     301  label_meta = gtk_label_new (_("Meta Data")); 
     302  gtk_widget_show (label_meta); 
     303  gtk_notebook_set_tab_label (GTK_NOTEBOOK (tabs_main), gtk_notebook_get_nth_page (GTK_NOTEBOOK (tabs_main), 2), label_meta); 
     304 
     305  hbox_buttons = gtk_hbox_new (FALSE, 0); 
     306  gtk_widget_show (hbox_buttons); 
     307  gtk_box_pack_start (GTK_BOX (vbox_main), hbox_buttons, TRUE, TRUE, 0); 
     308 
     309 
     310  button_ok = gtk_button_new_with_label(_("OK")); 
     311  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_ok, FALSE, FALSE, 0); 
     312 
     313  button_cancel = gtk_button_new_with_label(_("Cancel")); 
     314  gtk_signal_connect_object(GTK_OBJECT(button_cancel), "clicked", 
     315                            GTK_SIGNAL_FUNC(gtk_widget_destroy), 
     316                            GTK_OBJECT(config_win)); 
     317  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_cancel, FALSE, FALSE, 0); 
     318 
     319/* 
     320  button_ok = gtk_button_new_from_stock ("gtk-ok"); 
     321  gtk_widget_show (button_ok); 
     322  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_ok, FALSE, FALSE, 0); 
     323 
     324  button_cancel = gtk_button_new_from_stock ("gtk-cancel"); 
     325  gtk_widget_show (button_cancel); 
     326  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_cancel, FALSE, FALSE, 0); 
     327 
     328  g_signal_connect_swapped ((gpointer) button_ok, "clicked", 
     329                            G_CALLBACK (on_button_ok_enter), 
     330                            GTK_OBJECT (config_win)); 
     331  g_signal_connect_swapped ((gpointer) button_cancel, "clicked", 
     332                            G_CALLBACK (gtk_widget_destroy), 
     333                            GTK_OBJECT (config_win)); 
     334*/ 
    47335} 
    48336 
  • plugins/xmms/roar.c

    r1108 r1121  
    151151  if ( !(g_inst.state & STATE_NORECONNECT) ) { 
    152152   g_inst.state |= STATE_NORECONNECT; 
     153   usleep(100000); 
    153154   return roar_open(fmt, rate, nch); 
    154155  } else { 
Note: See TracChangeset for help on using the changeset viewer.