annotate Gui/mplayer/gtk/url.c @ 17030:30e3ed9615b5

Explain -vo gl:slice-height behaviour if YUV rendering is used.
author reimar
date Tue, 22 Nov 2005 16:49:36 +0000
parents ad75409ed15e
children 0e1471d9da74
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
1
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
2 #include <sys/types.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
3 #include <sys/stat.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
4 #include <unistd.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
5 #include <stdlib.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
6 #include <stdio.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
7 #include <string.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
8
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
9 #include <gdk/gdkkeysyms.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
10 #include <gtk/gtk.h>
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
11
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
12 #include "url.h"
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
13 #include "common.h"
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
14 #include "../../interface.h"
8043
e5dda05f9aab cleanup
pontscho
parents: 7287
diff changeset
15 #include "../../app.h"
6335
e9bd97d5c5cc warning & newline fixes by Dominik Mierzejewski <dominik@rangers.eu.org>
arpi
parents: 6298
diff changeset
16 #include "../widgets.h"
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
17 #include "../../help_mp.h"
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
18
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
19 GtkWidget * URL = NULL;
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
20
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
21 static GtkWidget * URLCombo;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
22 static GtkWidget * URLEntry;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
23 static GList * URLComboEntrys = NULL;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
24
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
25 void ShowURLDialogBox( void )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
26 {
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
27 if ( URL ) gtkActive( URL );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
28 else URL=create_URL();
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
29
7092
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
30 if ( URLList )
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
31 {
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
32 URLItem * item = URLList;
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
33 g_list_free( URLComboEntrys );
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
34 URLComboEntrys=NULL;
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
35 while( item )
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
36 {
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
37 URLComboEntrys=g_list_append( URLComboEntrys,(gchar *)item->url );
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
38 item=item->next;
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
39 }
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
40 }
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
41
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
42 if ( URLComboEntrys )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
43 {
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
44 gtk_entry_set_text( GTK_ENTRY( URLEntry ),URLComboEntrys->data );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
45 gtk_combo_set_popdown_strings( GTK_COMBO( URLCombo ),URLComboEntrys );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
46 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
47
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
48 gtk_widget_show( URL );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
49 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
50
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
51 void HideURLDialogBox( void )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
52 {
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
53 if ( !URL ) return;
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
54 gtk_widget_hide( URL );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
55 gtk_widget_destroy( URL );
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
56 URL=0;
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
57 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
58
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
59 static void on_Button_pressed( GtkButton * button,gpointer user_data )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
60 {
7092
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
61 URLItem * item;
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
62
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
63 if ( (int)user_data )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
64 {
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
65 gchar * str= strdup( gtk_entry_get_text( GTK_ENTRY( URLEntry ) ) );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
66
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
67 if ( str )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
68 {
10160
ad75409ed15e support for pnm and rtsp stream opening with gui, patch by Ambrose Li <a.c.li@ieee.org>
alex
parents: 8719
diff changeset
69 if ( strncmp( str,"http://",7 )
ad75409ed15e support for pnm and rtsp stream opening with gui, patch by Ambrose Li <a.c.li@ieee.org>
alex
parents: 8719
diff changeset
70 && strncmp( str,"ftp://",6 )
ad75409ed15e support for pnm and rtsp stream opening with gui, patch by Ambrose Li <a.c.li@ieee.org>
alex
parents: 8719
diff changeset
71 && strncmp( str,"mms://",6 )
ad75409ed15e support for pnm and rtsp stream opening with gui, patch by Ambrose Li <a.c.li@ieee.org>
alex
parents: 8719
diff changeset
72 && strncmp( str,"pnm://",6 )
ad75409ed15e support for pnm and rtsp stream opening with gui, patch by Ambrose Li <a.c.li@ieee.org>
alex
parents: 8719
diff changeset
73 && strncmp( str,"rtsp://",7 ) )
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
74 {
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
75 gchar * tmp;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
76 tmp=malloc( strlen( str ) + 8 );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
77 sprintf( tmp,"http://%s",str );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
78 free( str ); str=tmp;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
79 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
80 URLComboEntrys=g_list_prepend( URLComboEntrys,(gchar *)str );
7092
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
81
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
82 item=calloc( 1,sizeof( URLItem ) );
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
83 item->url=gstrdup( str );
8e9607c5897e - warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents: 6903
diff changeset
84 gtkSet( gtkAddURLItem,0,(void *)item );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
85
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
86 guiSetFilename( guiIntfStruct.Filename,str ); guiIntfStruct.FilenameChanged=1;
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
87 mplEventHandling( evPlayNetwork,0 );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
88 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
89 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
90 HideURLDialogBox();
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
91 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
92
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
93 GtkWidget * create_URL( void )
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
94 {
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
95 GtkWidget * vbox1;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
96 GtkWidget * hbox1;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
97 GtkWidget * hbuttonbox1;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
98 GtkWidget * Ok;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
99 GtkWidget * Cancel;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
100 GtkAccelGroup * accel_group;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
101
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
102 accel_group=gtk_accel_group_new();
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
103
8043
e5dda05f9aab cleanup
pontscho
parents: 7287
diff changeset
104 URL=gtk_window_new( GTK_WINDOW_TOPLEVEL );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
105 gtk_widget_set_name( URL,"URL" );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
106 gtk_object_set_data( GTK_OBJECT( URL ),"URL",URL );
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
107 gtk_widget_set_usize( URL,384,70 );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
108 GTK_WIDGET_SET_FLAGS( URL,GTK_CAN_DEFAULT );
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
109 gtk_window_set_title( GTK_WINDOW( URL ),MSGTR_Network );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
110 gtk_window_set_position( GTK_WINDOW( URL ),GTK_WIN_POS_CENTER );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
111 gtk_window_set_policy( GTK_WINDOW( URL ),TRUE,TRUE,FALSE );
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
112 gtk_window_set_wmclass( GTK_WINDOW( URL ),"Network","MPlayer" );
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
113
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
114 gtk_widget_realize( URL );
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
115 gtkAddIcon( URL );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
116
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
117 vbox1=AddVBox( AddDialogFrame( URL ),0 );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
118 hbox1=AddHBox( vbox1,1 );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
119 AddLabel( "URL: ",hbox1 );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
120
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
121 URLCombo=AddComboBox( hbox1 );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
122 /*
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
123 gtk_combo_new();
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
124 gtk_widget_set_name( URLCombo,"URLCombo" );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
125 gtk_widget_show( URLCombo );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
126 gtk_box_pack_start( GTK_BOX( hbox1 ),URLCombo,TRUE,TRUE,0 );
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
127 */
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
128 URLEntry=GTK_COMBO( URLCombo )->entry;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
129 gtk_widget_set_name( URLEntry,"URLEntry" );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
130 gtk_widget_show( URLEntry );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
131
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
132 AddHSeparator( vbox1 );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
133
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
134 hbuttonbox1=AddHButtonBox( vbox1 );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
135 gtk_button_box_set_layout( GTK_BUTTON_BOX( hbuttonbox1 ),GTK_BUTTONBOX_END );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
136 gtk_button_box_set_spacing( GTK_BUTTON_BOX( hbuttonbox1 ),10 );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
137
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
138 Ok=AddButton( MSGTR_Ok,hbuttonbox1 );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
139 Cancel=AddButton( MSGTR_Cancel,hbuttonbox1 );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
140
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
141 gtk_widget_add_accelerator( Ok,"clicked",accel_group,GDK_Return,0,GTK_ACCEL_VISIBLE );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
142 gtk_widget_add_accelerator( Cancel,"clicked",accel_group,GDK_Escape,0,GTK_ACCEL_VISIBLE );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
143
8719
dc27303ae528 correct widget destroy event handler (thank for D J Hawkey Jr <hawkeyd@visi.com>)
pontscho
parents: 8299
diff changeset
144 gtk_signal_connect( GTK_OBJECT( URL ),"destroy",GTK_SIGNAL_FUNC( WidgetDestroy ),&URL );
8299
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
145 gtk_signal_connect( GTK_OBJECT( Ok ),"clicked",GTK_SIGNAL_FUNC( on_Button_pressed ),(void *)1 );
5b67aed0fc28 - remove some unused/nonusable variables
pontscho
parents: 8043
diff changeset
146 gtk_signal_connect( GTK_OBJECT( Cancel ),"clicked",GTK_SIGNAL_FUNC( on_Button_pressed ),NULL );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
147
6651
8f49c75a2824 - add icon (nice, but very ugly hakk:)
pontscho
parents: 6335
diff changeset
148 gtk_widget_grab_focus( URLEntry );
6298
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
149 gtk_window_add_accel_group( GTK_WINDOW( URL ),accel_group );
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
150
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
151 return URL;
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
152 }
d42cb911d7f7 add network streaming support for gui
pontscho
parents:
diff changeset
153