annotate gui/mplayer/widgets.c @ 27434:8f9c58ac2af2

Document -lavcopts o, aka libavcodec AVOption.
author michael
date Fri, 15 Aug 2008 11:40:01 +0000
parents 5fe6a8adf569
children 0f1b5b68af32
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26458
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
1 /*
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
2 * This file is part of MPlayer.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
3 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
5 * it under the terms of the GNU General Public License as published by
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
7 * (at your option) any later version.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
8 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
12 * GNU General Public License for more details.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
13 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
14 * You should have received a copy of the GNU General Public License along
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
17 */
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
18
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
19 #include <stdlib.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
20 #include <stdio.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
21
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
22 #include <sys/types.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
23 #include <sys/stat.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
24 #include <sys/wait.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
25 #include <unistd.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
26 #include <string.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
27 #include <signal.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
28
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
29 #include <gdk/gdkprivate.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
30 #include <gdk/gdkkeysyms.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
31 #include <gdk/gdkx.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
32 #include <gdk/gdk.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
33 #include <gtk/gtk.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
34
26382
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
35 #include "config.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
36 #include "help_mp.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
37 #include "mp_msg.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
38
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
39 #include "widgets.h"
26365
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26203
diff changeset
40 #include "gui/app.h"
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26203
diff changeset
41 #include "gui/wm/ws.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
42
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
43
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
44 #include "gtk/menu.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
45 #include "play.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
46 #include "gtk/fs.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
47
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
48 GtkWidget * PopUpMenu = NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
49
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
50 GtkWidget * WarningPixmap;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
51 GtkWidget * ErrorPixmap;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
52
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
53 int gtkPopupMenu = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
54 int gtkPopupMenuParam = 0;
25962
afa125da85cf typo fix: inited --> initialized
diego
parents: 23077
diff changeset
55 int gtkInitialized = 0;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
56
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
57 #include "gtk/sb.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
58 #include "gtk/pl.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
59 #include "gtk/fs.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
60 #include "gtk/mb.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
61 #include "gtk/about.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
62 #include "gtk/opts.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
63 #include "gtk/menu.h"
26137
02a08fffb1dc Rename url.c/url.h to the less generic gtk_url.c/gtk_url.h.
diego
parents: 25962
diff changeset
64 #include "gtk/gtk_url.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
65 #include "gtk/eq.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
66
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
67 #include "pixmaps/MPlayer_mini.xpm"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
68
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
69 // --- init & close gtk
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
70
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
71 GdkPixmap * gtkIcon = NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
72 GdkBitmap * gtkIconMask = NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
73 Pixmap guiIcon;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
74 Pixmap guiIconMask;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
75
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
76 void gtkInit( void )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
77 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
78 mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[widget] init GTK ...\n" );
27343
5fe6a8adf569 Rename two GUI-related preprocessor directives:
diego
parents: 26458
diff changeset
79 #ifdef CONFIG_GTK2
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
80 gtk_disable_setlocale();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
81 #endif
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
82 gtk_init( 0,NULL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
83 // gdk_set_use_xshm( TRUE );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
84
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
85 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
86 GtkWidget * win;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
87 win=gtk_window_new( GTK_WINDOW_TOPLEVEL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
88
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
89 if ( !gtkIcon )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
90 gtkIcon=gdk_pixmap_colormap_create_from_xpm_d( win->window,gdk_colormap_get_system(),&gtkIconMask,&win->style->bg[GTK_STATE_NORMAL],MPlayer_mini_xpm );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
91
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
92 guiIcon=GDK_WINDOW_XWINDOW( gtkIcon );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
93 guiIconMask=GDK_WINDOW_XWINDOW( gtkIconMask );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
94
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
95 gtk_widget_destroy( win );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
96 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
97
25962
afa125da85cf typo fix: inited --> initialized
diego
parents: 23077
diff changeset
98 gtkInitialized=1;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
99 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
100
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
101 void gtkAddIcon( GtkWidget * window )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
102 { wsSetIcon( gdk_display,GDK_WINDOW_XWINDOW( window->window ),guiIcon,guiIconMask ); }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
103
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
104 void gtkClearList( GtkWidget * list )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
105 { gtk_clist_clear( GTK_CLIST( list ) ); }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
106
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
107 int gtkFindCList( GtkWidget * list,char * item )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
108 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
109 gint j,t;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
110 gchar * tmpstr;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
111 for( t=0,j=0;j<GTK_CLIST( list )->rows;j++ )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
112 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
113 gtk_clist_get_text( GTK_CLIST( list ),j,0,&tmpstr );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
114 if ( !strcmp( tmpstr,item ) ) return j;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
115 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
116 return -1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
117 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
118
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
119 void gtkSetDefaultToCList( GtkWidget * list,char * item )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
120 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
121 gint i;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
122 if ( ( i=gtkFindCList( list,item ) ) > -1 ) gtk_clist_select_row( GTK_CLIST( list ),i,0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
123 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
124
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
125 void gtkEventHandling( void )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
126 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
127 int i;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
128 for( i=0;i < 25;i++ ) gtk_main_iteration_do( 0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
129 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
130
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
131 // --- funcs
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
132
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
133 void gtkMessageBox( int type,const gchar * str )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
134 {
25962
afa125da85cf typo fix: inited --> initialized
diego
parents: 23077
diff changeset
135 if ( !gtkInitialized ) return;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
136 ShowMessageBox( str );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
137 gtk_label_set_text( GTK_LABEL( gtkMessageBoxText ),str );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
138 /* enable linewrapping by alex */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
139 // GTK_LABEL(gtkMessageBoxText)->max_width = 80;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
140 if (strlen(str) > 80)
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
141 gtk_label_set_line_wrap(GTK_LABEL(gtkMessageBoxText), TRUE);
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
142 else
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
143 gtk_label_set_line_wrap(GTK_LABEL(gtkMessageBoxText), FALSE);
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
144 switch( type)
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
145 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
146 case GTK_MB_FATAL:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
147 gtk_window_set_title( GTK_WINDOW( MessageBox ),MSGTR_MSGBOX_LABEL_FatalError );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
148 gtk_widget_hide( WarningPixmap );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
149 gtk_widget_show( ErrorPixmap );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
150 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
151 case GTK_MB_ERROR:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
152 gtk_window_set_title( GTK_WINDOW( MessageBox ),MSGTR_MSGBOX_LABEL_Error );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
153 gtk_widget_hide( WarningPixmap );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
154 gtk_widget_show( ErrorPixmap );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
155 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
156 case GTK_MB_WARNING:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
157 gtk_window_set_title( GTK_WINDOW( MessageBox ),MSGTR_MSGBOX_LABEL_Warning );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
158 gtk_widget_show( WarningPixmap );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
159 gtk_widget_hide( ErrorPixmap );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
160 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
161 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
162 gtk_widget_show( MessageBox );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
163 gtkSetLayer( MessageBox );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
164 if ( type == GTK_MB_FATAL )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
165 while ( MessageBox ) gtk_main_iteration_do( 0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
166 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
167
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
168 void gtkSetLayer( GtkWidget * wdg )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
169 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
170 wsSetLayer( gdk_display,GDK_WINDOW_XWINDOW( wdg->window ),appMPlayer.subWindow.isFullScreen );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
171 gtkActive( wdg );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
172 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
173
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
174 void gtkActive( GtkWidget * wdg )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
175 { wsMoveTopWindow( gdk_display,GDK_WINDOW_XWINDOW( wdg->window )); }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
176
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
177 void gtkShow( int type,char * param )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
178 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
179 switch( type )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
180 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
181 case evEqualizer:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
182 ShowEqualizer();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
183 gtkSetLayer( Equalizer );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
184 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
185 case evSkinBrowser:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
186 ShowSkinBrowser();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
187 // gtkClearList( SkinList );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
188 if ( gtkFillSkinList( sbMPlayerPrefixDir ) &&
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
189 gtkFillSkinList( sbMPlayerPrefixDir_obsolete ) &&
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
190 gtkFillSkinList( sbMPlayerDirInHome ) &&
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
191 gtkFillSkinList( sbMPlayerDirInHome_obsolete ) )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
192 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
193 gtkSetDefaultToCList( SkinList,param );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
194 gtk_clist_sort( GTK_CLIST( SkinList ) );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
195 gtk_widget_show( SkinBrowser );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
196 gtkSetLayer( SkinBrowser );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
197 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
198 else
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
199 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
200 gtk_widget_destroy( SkinBrowser );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
201 gtkMessageBox( GTK_MB_ERROR,"Skin dirs not found ... Please install skins." );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
202 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
203 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
204 case evPreferences:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
205 ShowPreferences();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
206 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
207 case evPlayList:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
208 ShowPlayList();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
209 gtkSetLayer( PlayList );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
210 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
211 case evLoad:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
212 ShowFileSelect( fsVideoSelector,0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
213 gtkSetLayer( fsFileSelect );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
214 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
215 case evFirstLoad:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
216 ShowFileSelect( fsVideoSelector,0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
217 gtkSetLayer( fsFileSelect );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
218 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
219 case evLoadSubtitle:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
220 ShowFileSelect( fsSubtitleSelector,0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
221 gtkSetLayer( fsFileSelect );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
222 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
223 case evLoadAudioFile:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
224 ShowFileSelect( fsAudioSelector,0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
225 gtkSetLayer( fsFileSelect );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
226 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
227 case evAbout:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
228 ShowAboutBox();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
229 gtkSetLayer( About );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
230 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
231 case evShowPopUpMenu:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
232 gtkPopupMenu=evNone;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
233 gtkPopupMenuParam=0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
234 if ( PopUpMenu )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
235 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
236 gtk_widget_hide( PopUpMenu );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
237 gtk_widget_destroy( PopUpMenu );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
238 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
239 PopUpMenu=create_PopUpMenu();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
240 gtk_menu_popup( GTK_MENU( PopUpMenu ),NULL,NULL,NULL,NULL,0,0 );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
241 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
242 case evHidePopUpMenu:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
243 if ( PopUpMenu )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
244 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
245 gtk_widget_hide( PopUpMenu );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
246 gtk_widget_destroy( PopUpMenu );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
247 PopUpMenu=NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
248 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
249 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
250 case evPlayNetwork:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
251 ShowURLDialogBox();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
252 gtkSetLayer( URL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
253 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
254 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
255 }