comparison Gui/mplayer/widgets.c @ 6651:8f49c75a2824

- add icon (nice, but very ugly hakk:) - move all window to one group - better multilanguage support - some small bug fixed - some warning fixed - swap the two menu - fix small network playing bug ( evPlay instead of evPlayNetwork :) - add channel name selection for equalizer support
author pontscho
date Fri, 05 Jul 2002 23:47:00 +0000
parents fd3ac41ee1a1
children cc917a581b6e
comparison
equal deleted inserted replaced
6650:345958ed44e5 6651:8f49c75a2824
9 #include <string.h> 9 #include <string.h>
10 #include <signal.h> 10 #include <signal.h>
11 11
12 #include <gdk/gdkprivate.h> 12 #include <gdk/gdkprivate.h>
13 #include <gdk/gdkkeysyms.h> 13 #include <gdk/gdkkeysyms.h>
14 #include <gdk/gdkx.h>
14 #include <gdk/gdk.h> 15 #include <gdk/gdk.h>
15 #include <gtk/gtk.h> 16 #include <gtk/gtk.h>
16 17
17 #include "widgets.h" 18 #include "widgets.h"
18 19
19 #include "./mplayer.h" 20 #include "./mplayer.h"
20 #include "../events.h" 21 #include "../events.h"
21 #include "../app.h" 22 #include "../app.h"
23 #include "../wm/ws.h"
24
22 25
23 #include "gtk/menu.h" 26 #include "gtk/menu.h"
24 #include "play.h" 27 #include "play.h"
25 #include "gtk/fs.h" 28 #include "gtk/fs.h"
26 29
46 #include "gtk/opts.h" 49 #include "gtk/opts.h"
47 #include "gtk/menu.h" 50 #include "gtk/menu.h"
48 #include "gtk/url.h" 51 #include "gtk/url.h"
49 #include "gtk/eq.h" 52 #include "gtk/eq.h"
50 53
54 #include "pixmaps/MPlayer_mini.xpm"
55
51 // --- init & close gtk 56 // --- init & close gtk
57
58 GdkPixmap * gtkIcon = NULL;
59 GdkBitmap * gtkIconMask = NULL;
60 Pixmap guiIcon;
61 Pixmap guiIconMask;
52 62
53 void gtkInit( void ) 63 void gtkInit( void )
54 { 64 {
55 mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[widget] init gtk ...\n" ); 65 mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[widget] init gtk ...\n" );
56 gtk_set_locale(); 66 gtk_set_locale();
57 // gtk_init( &argc,&argv ); 67 // gtk_init( &argc,&argv );
58 gtk_init( 0,NULL ); 68 gtk_init( 0,NULL );
59 // gdk_set_use_xshm( TRUE ); 69 // gdk_set_use_xshm( TRUE );
70
71 {
72 GtkWidget * win;
73 win=gtk_window_new( GTK_WINDOW_TOPLEVEL );
74
75 if ( !gtkIcon )
76 gtkIcon=gdk_pixmap_colormap_create_from_xpm_d( win->window,gdk_colormap_get_system(),&gtkIconMask,&win->style->bg[GTK_STATE_NORMAL],MPlayer_mini_xpm );
77
78 guiIcon=GDK_WINDOW_XWINDOW( gtkIcon );
79 guiIconMask=GDK_WINDOW_XWINDOW( gtkIconMask );
80
81 gtk_widget_destroy( win );
82 }
83
60 gtkInited=1; 84 gtkInited=1;
61 } 85 }
62 86
63 void gtkDone( void ) 87 void gtkDone( void )
64 { 88 {
89 }
90
91 void gtkAddIcon( GtkWidget * window )
92 {
93 GdkWindowPrivate * win = (GdkWindowPrivate *)window->window;
94 wsSetIcon( gdk_display,win->xwindow,guiIcon,guiIconMask );
65 } 95 }
66 96
67 void gtkClearList( GtkWidget * list ) 97 void gtkClearList( GtkWidget * list )
68 { gtk_clist_clear( GTK_CLIST( list ) ); } 98 { gtk_clist_clear( GTK_CLIST( list ) ); }
69 99
119 gtk_widget_show( MessageBox ); 149 gtk_widget_show( MessageBox );
120 } 150 }
121 151
122 void gtkSetLayer( GtkWidget * wdg ) 152 void gtkSetLayer( GtkWidget * wdg )
123 { 153 {
124 GdkWindowPrivate * win = wdg->window; 154 GdkWindowPrivate * win = (GdkWindowPrivate *)wdg->window;
125 wsSetLayer( gdk_display,win->xwindow,appMPlayer.subWindow.isFullScreen ); 155 wsSetLayer( gdk_display,win->xwindow,appMPlayer.subWindow.isFullScreen );
126 } 156 }
127 157
128 void gtkActive( GtkWidget * wdg ) 158 void gtkActive( GtkWidget * wdg )
129 { 159 {
130 GdkWindowPrivate * win = wdg->window; 160 GdkWindowPrivate * win = (GdkWindowPrivate *)wdg->window;
131 wsMoveTopWindow( gdk_display,win->xwindow ); 161 wsMoveTopWindow( gdk_display,win->xwindow );
132 } 162 }
133 163
134 void gtkShow( int type,char * param ) 164 void gtkShow( int type,char * param )
135 { 165 {
143 ShowSkinBrowser(); 173 ShowSkinBrowser();
144 // gtkClearList( SkinList ); 174 // gtkClearList( SkinList );
145 if ( gtkFillSkinList( sbMPlayerPrefixDir ) && gtkFillSkinList( sbMPlayerDirInHome ) ) 175 if ( gtkFillSkinList( sbMPlayerPrefixDir ) && gtkFillSkinList( sbMPlayerDirInHome ) )
146 { 176 {
147 gtkSetDefaultToCList( SkinList,param ); 177 gtkSetDefaultToCList( SkinList,param );
148 gtk_clist_sort( SkinList ); 178 gtk_clist_sort( GTK_CLIST( SkinList ) );
149 gtk_widget_show( SkinBrowser ); 179 gtk_widget_show( SkinBrowser );
150 gtkSetLayer( SkinBrowser ); 180 gtkSetLayer( SkinBrowser );
151 } 181 }
152 else 182 else
153 { 183 {