annotate gui/ui/gtk/menu.c @ 33655:cbb7cfeb8c71

Rename guiInterface_t member NoWindow MovieWindow. This variable holds the current state of visibility of the movie window and is easier to understand if it is phrased in the positive.
author ib
date Mon, 27 Jun 2011 14:27:33 +0000
parents f3300b0c38a9
children c92f23eac7a4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
33572
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
1 /*
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
2 * This file is part of MPlayer.
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
3 *
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
5 * it under the terms of the GNU General Public License as published by
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
7 * (at your option) any later version.
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
8 *
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
12 * GNU General Public License for more details.
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
13 *
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
14 * You should have received a copy of the GNU General Public License along
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
17 */
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
18
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
19 #include <stdio.h>
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
20 #include <stdlib.h>
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
21 #include <string.h>
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
22
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
23 #include "config.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
24 #include "help_mp.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
25 #include "access_mpcontext.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
26 #include "mixer.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
27 #include "mpcommon.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
28
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
29 #include "menu.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
30 #include "gui/ui/widgets.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
31 #include "gui/ui/gmplayer.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
32 #include "gui/app.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
33
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
34 #include "stream/stream.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
35 #include "libmpdemux/demuxer.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
36 #include "libmpdemux/stheader.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
37 #include "libavutil/avstring.h"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
38
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
39 #include "gui/ui/pixmaps/about.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
40 #include "gui/ui/pixmaps/half.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
41 #include "gui/ui/pixmaps/normal.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
42 #include "gui/ui/pixmaps/double.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
43 #include "gui/ui/pixmaps/full.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
44 #include "gui/ui/pixmaps/exit.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
45 #include "gui/ui/pixmaps/prefs.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
46 #include "gui/ui/pixmaps/equalizer.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
47 #include "gui/ui/pixmaps/playlist.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
48 #include "gui/ui/pixmaps/skin.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
49 #include "gui/ui/pixmaps/sound.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
50 #include "gui/ui/pixmaps/open.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
51 #include "gui/ui/pixmaps/play.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
52 #include "gui/ui/pixmaps/stop.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
53 #include "gui/ui/pixmaps/pause.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
54 #include "gui/ui/pixmaps/prev.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
55 #include "gui/ui/pixmaps/next.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
56 #include "gui/ui/pixmaps/aspect.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
57 #include "gui/ui/pixmaps/aspect11.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
58 #include "gui/ui/pixmaps/aspect169.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
59 #include "gui/ui/pixmaps/aspect235.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
60 #include "gui/ui/pixmaps/aspect43.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
61 #include "gui/ui/pixmaps/file2.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
62 #include "gui/ui/pixmaps/url.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
63 #include "gui/ui/pixmaps/sub.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
64 #include "gui/ui/pixmaps/nosub.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
65 #include "gui/ui/pixmaps/empty.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
66 #include "gui/ui/pixmaps/loadeaf.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
67 #include "gui/ui/pixmaps/title.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
68 #ifdef CONFIG_DVDREAD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
69 #include "gui/ui/pixmaps/dvd.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
70 #include "gui/ui/pixmaps/playdvd.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
71 #include "gui/ui/pixmaps/chapter.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
72 #include "gui/ui/pixmaps/dolby.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
73 #include "gui/ui/pixmaps/audiolang.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
74 #include "gui/ui/pixmaps/sublang.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
75 #include "gui/ui/pixmaps/empty1px.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
76 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
77 #ifdef CONFIG_VCD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
78 #include "gui/ui/pixmaps/vcd.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
79 #include "gui/ui/pixmaps/playvcd.xpm"
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
80 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
81
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
82 static void ActivateMenuItem( int Item )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
83 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
84 // fprintf( stderr,"[menu] item: %d.%d\n",Item&0xffff,Item>>16 );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
85 gtkPopupMenu=Item & 0x0000ffff;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
86 gtkPopupMenuParam=Item >> 16;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
87 uiEventHandling( Item & 0x0000ffff,Item >> 16 );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
88 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
89
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
90 static GtkWidget * AddMenuCheckItem(GtkWidget *window1, const char * immagine_xpm, GtkWidget* Menu,const char* label, gboolean state, int Number)
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
91 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
92 GtkWidget * Label = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
93 GtkWidget * Pixmap = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
94 GtkWidget * hbox = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
95 GtkWidget * Item = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
96
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
97 GdkPixmap *PixmapIcon = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
98 GdkColor transparent;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
99 GdkBitmap *MaskIcon = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
100
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
101 PixmapIcon = gdk_pixmap_create_from_xpm_d (window1->window, &MaskIcon, &transparent,(gchar **)immagine_xpm );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
102 Pixmap = gtk_pixmap_new (PixmapIcon, MaskIcon);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
103 gdk_pixmap_unref (PixmapIcon);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
104
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
105 Item=gtk_check_menu_item_new();
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
106 Label = gtk_label_new (label);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
107
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
108 hbox = gtk_hbox_new (FALSE, 8);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
109 gtk_box_pack_start (GTK_BOX (hbox), Pixmap, FALSE, FALSE, 0);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
110 gtk_box_pack_start (GTK_BOX (hbox), Label, FALSE, FALSE, 0);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
111 gtk_container_add (GTK_CONTAINER (Item), hbox);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
112
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
113 gtk_menu_append( GTK_MENU( Menu ),Item );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
114
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
115 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(Item),state);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
116 gtk_signal_connect_object( GTK_OBJECT(Item),"activate",
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
117 GTK_SIGNAL_FUNC(ActivateMenuItem),(gpointer)Number );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
118 gtk_menu_item_right_justify (GTK_MENU_ITEM (Item));
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
119 gtk_widget_show_all(Item);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
120
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
121 return Item;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
122 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
123 GtkWidget * AddMenuItem( GtkWidget *window1, const char * immagine_xpm, GtkWidget * SubMenu,const char * label,int Number )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
124 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
125 GtkWidget * Label = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
126 GtkWidget * Pixmap = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
127 GtkWidget * hbox = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
128 GtkWidget * Item = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
129 GdkPixmap * PixmapIcon = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
130 GdkColor transparent;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
131 GdkBitmap * MaskIcon = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
132
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
133 PixmapIcon = gdk_pixmap_create_from_xpm_d (window1->window, &MaskIcon, &transparent,(gchar **)immagine_xpm );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
134 Pixmap = gtk_pixmap_new (PixmapIcon, MaskIcon);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
135 gdk_pixmap_unref (PixmapIcon);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
136
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
137 Item=gtk_menu_item_new();
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
138 Label = gtk_label_new (label);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
139
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
140 hbox = gtk_hbox_new (FALSE, 8);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
141 gtk_box_pack_start (GTK_BOX (hbox), Pixmap, FALSE, FALSE, 0);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
142 gtk_box_pack_start (GTK_BOX (hbox), Label, FALSE, FALSE, 0);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
143 gtk_container_add (GTK_CONTAINER (Item), hbox);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
144
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
145
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
146 gtk_menu_append( GTK_MENU( SubMenu ),Item );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
147 gtk_signal_connect_object( GTK_OBJECT(Item),"activate",
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
148 GTK_SIGNAL_FUNC(ActivateMenuItem),(gpointer)Number );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
149
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
150 gtk_menu_item_right_justify (GTK_MENU_ITEM (Item));
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
151 gtk_widget_show_all(Item);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
152 return Item;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
153 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
154
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
155
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
156 GtkWidget * AddSubMenu( GtkWidget *window1, const char * immagine_xpm, GtkWidget * Menu,const char * label )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
157 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
158 GtkWidget * Label = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
159 GtkWidget * Pixmap = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
160 GtkWidget * hbox = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
161 GtkWidget * Item = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
162 GtkWidget * SubItem = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
163 GdkPixmap * PixmapIcon = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
164 GdkColor transparent;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
165 GdkBitmap * MaskIcon = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
166
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
167 PixmapIcon = gdk_pixmap_create_from_xpm_d (window1->window, &MaskIcon, &transparent,(gchar **)immagine_xpm);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
168 Pixmap = gtk_pixmap_new (PixmapIcon, MaskIcon);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
169 gdk_pixmap_unref (PixmapIcon);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
170
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
171 SubItem=gtk_menu_item_new();
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
172 Item=gtk_menu_new();
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
173 Label = gtk_label_new (label);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
174
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
175 hbox = gtk_hbox_new (FALSE, 8);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
176 gtk_box_pack_start (GTK_BOX (hbox), Pixmap, FALSE, FALSE, 0);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
177 gtk_box_pack_start (GTK_BOX (hbox), Label, FALSE, FALSE, 0);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
178 gtk_container_add (GTK_CONTAINER (SubItem), hbox);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
179
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
180 gtk_menu_append( GTK_MENU( Menu ),SubItem );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
181 gtk_menu_item_set_submenu( GTK_MENU_ITEM( SubItem ),Item );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
182
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
183 gtk_widget_show_all( SubItem );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
184 return Item;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
185 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
186
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
187 GtkWidget * AddSeparator( GtkWidget * Menu )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
188 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
189 GtkWidget * Item = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
190
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
191 Item=gtk_menu_item_new ();
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
192 gtk_widget_show( Item );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
193 gtk_container_add( GTK_CONTAINER( Menu ),Item );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
194 gtk_widget_set_sensitive( Item,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
195
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
196 return Item;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
197 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
198
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
199 typedef struct
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
200 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
201 int id;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
202 const char * name;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
203 } Languages_t;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
204
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
205 #define lng( a,b ) ( (int)(a) * 256 + b )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
206 static Languages_t Languages[] =
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
207 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
208 { lng( 'a','b' ), "Abkhazian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
209 { lng( 'a','a' ), "Afar" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
210 { lng( 'a','f' ), "Afrikaans" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
211 { lng( 's','q' ), "Albanian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
212 { lng( 'a','m' ), "Amharic" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
213 { lng( 'a','r' ), "Arabic" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
214 { lng( 'h','y' ), "Armenian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
215 { lng( 'a','s' ), "Assamese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
216 { lng( 'a','e' ), "Avestan" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
217 { lng( 'a','y' ), "Aymara" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
218 { lng( 'a','z' ), "Azerbaijani" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
219 { lng( 'b','a' ), "Bashkir" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
220 { lng( 'e','u' ), "Basque" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
221 { lng( 'b','e' ), "Belarusian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
222 { lng( 'b','n' ), "Bengali" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
223 { lng( 'b','h' ), "Bihari" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
224 { lng( 'b','i' ), "Bislama" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
225 { lng( 'b','s' ), "Bosnian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
226 { lng( 'b','r' ), "Breton" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
227 { lng( 'b','g' ), "Bulgarian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
228 { lng( 'm','y' ), "Burmese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
229 { lng( 'c','a' ), "Catalan" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
230 { lng( 'c','h' ), "Chamorro" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
231 { lng( 'c','e' ), "Chechen" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
232 { lng( 'n','y' ), "Chichewa;Nyanja" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
233 { lng( 'z','h' ), "Chinese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
234 { lng( 'c','u' ), "ChurchSlavic" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
235 { lng( 'c','v' ), "Chuvash" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
236 { lng( 'k','w' ), "Cornish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
237 { lng( 'c','o' ), "Corsican" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
238 { lng( 'h','r' ), "Croatian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
239 { lng( 'c','s' ), "Czech" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
240 { lng( 'd','a' ), "Danish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
241 { lng( 'n','l' ), "Dutch" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
242 { lng( 'd','z' ), "Dzongkha" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
243 { lng( 'e','n' ), "English" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
244 { lng( 'e','o' ), "Esperanto" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
245 { lng( 'e','t' ), "Estonian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
246 { lng( 'f','o' ), "Faroese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
247 { lng( 'f','j' ), "Fijian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
248 { lng( 'f','i' ), "Finnish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
249 { lng( 'f','r' ), "French" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
250 { lng( 'f','y' ), "Frisian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
251 { lng( 'g','d' ), "Gaelic(Scots" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
252 { lng( 'g','l' ), "Gallegan" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
253 { lng( 'k','a' ), "Georgian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
254 { lng( 'd','e' ), "German" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
255 { lng( 'e','l' ), "Greek" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
256 { lng( 'g','n' ), "Guarani" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
257 { lng( 'g','u' ), "Gujarati" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
258 { lng( 'h','a' ), "Hausa" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
259 { lng( 'h','e' ), "Hebrew" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
260 { lng( 'i','w' ), "Hebrew" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
261 { lng( 'h','z' ), "Herero" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
262 { lng( 'h','i' ), "Hindi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
263 { lng( 'h','o' ), "HiriMotu" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
264 { lng( 'h','u' ), "Hungarian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
265 { lng( 'i','s' ), "Icelandic" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
266 { lng( 'i','d' ), "Indonesian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
267 { lng( 'i','n' ), "Indonesian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
268 { lng( 'i','a' ), "Interlingua" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
269 { lng( 'i','e' ), "Interlingue" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
270 { lng( 'i','u' ), "Inuktitut" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
271 { lng( 'i','k' ), "Inupiaq" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
272 { lng( 'g','a' ), "Irish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
273 { lng( 'i','t' ), "Italian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
274 { lng( 'j','a' ), "Japanese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
275 { lng( 'j','v' ), "Javanese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
276 { lng( 'j','w' ), "Javanese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
277 { lng( 'k','l' ), "Kalaallisut" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
278 { lng( 'k','n' ), "Kannada" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
279 { lng( 'k','s' ), "Kashmiri" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
280 { lng( 'k','k' ), "Kazakh" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
281 { lng( 'k','m' ), "Khmer" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
282 { lng( 'k','i' ), "Kikuyu" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
283 { lng( 'r','w' ), "Kinyarwanda" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
284 { lng( 'k','y' ), "Kirghiz" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
285 { lng( 'k','v' ), "Komi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
286 { lng( 'k','o' ), "Korean" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
287 { lng( 'k','j' ), "Kuanyama" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
288 { lng( 'k','u' ), "Kurdish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
289 { lng( 'l','o' ), "Lao" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
290 { lng( 'l','a' ), "Latin" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
291 { lng( 'l','v' ), "Latvian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
292 { lng( 'l','b' ), "Letzeburgesch" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
293 { lng( 'l','n' ), "Lingala" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
294 { lng( 'l','t' ), "Lithuanian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
295 { lng( 'm','k' ), "Macedonian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
296 { lng( 'm','g' ), "Malagasy" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
297 { lng( 'm','s' ), "Malay" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
298 { lng( 'm','l' ), "Malayalam" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
299 { lng( 'm','t' ), "Maltese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
300 { lng( 'g','v' ), "Manx" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
301 { lng( 'm','i' ), "Maori" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
302 { lng( 'm','r' ), "Marathi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
303 { lng( 'm','h' ), "Marshall" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
304 { lng( 'm','o' ), "Moldavian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
305 { lng( 'm','n' ), "Mongolian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
306 { lng( 'n','a' ), "Nauru" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
307 { lng( 'n','v' ), "Navajo" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
308 { lng( 'n','d' ), "North Ndebele" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
309 { lng( 'n','r' ), "South Ndebele" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
310 { lng( 'n','g' ), "Ndonga" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
311 { lng( 'n','e' ), "Nepali" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
312 { lng( 's','e' ), "NorthernSami" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
313 { lng( 'n','o' ), "Norwegian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
314 { lng( 'n','b' ), "NorwegianBokmål" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
315 { lng( 'n','n' ), "NorwegianNynorsk" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
316 { lng( 'n','y' ), "Nyanja;Chichewa" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
317 { lng( 'o','c' ), "Occitan(post1500;Provençal" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
318 { lng( 'o','r' ), "Oriya" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
319 { lng( 'o','m' ), "Oromo" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
320 { lng( 'o','s' ), "Ossetian;Ossetic" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
321 { lng( 'p','i' ), "Pali" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
322 { lng( 'p','a' ), "Panjabi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
323 { lng( 'f','a' ), "Persian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
324 { lng( 'p','l' ), "Polish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
325 { lng( 'p','t' ), "Portuguese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
326 { lng( 'o','c' ), "Provençal;Occitan(post1500" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
327 { lng( 'p','s' ), "Pushto" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
328 { lng( 'q','u' ), "Quechua" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
329 { lng( 'r','m' ), "Raeto-Romance" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
330 { lng( 'r','o' ), "Romanian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
331 { lng( 'r','n' ), "Rundi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
332 { lng( 'r','u' ), "Russian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
333 { lng( 's','m' ), "Samoan" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
334 { lng( 's','g' ), "Sango" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
335 { lng( 's','a' ), "Sanskrit" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
336 { lng( 's','c' ), "Sardinian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
337 { lng( 's','r' ), "Serbian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
338 { lng( 's','n' ), "Shona" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
339 { lng( 's','d' ), "Sindhi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
340 { lng( 's','i' ), "Sinhalese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
341 { lng( 's','k' ), "Slovak" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
342 { lng( 's','l' ), "Slovenian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
343 { lng( 's','o' ), "Somali" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
344 { lng( 's','t' ), "Sotho" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
345 { lng( 'e','s' ), "Spanish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
346 { lng( 's','u' ), "Sundanese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
347 { lng( 's','w' ), "Swahili" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
348 { lng( 's','s' ), "Swati" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
349 { lng( 's','v' ), "Swedish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
350 { lng( 't','l' ), "Tagalog" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
351 { lng( 't','y' ), "Tahitian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
352 { lng( 't','g' ), "Tajik" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
353 { lng( 't','a' ), "Tamil" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
354 { lng( 't','t' ), "Tatar" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
355 { lng( 't','e' ), "Telugu" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
356 { lng( 't','h' ), "Thai" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
357 { lng( 'b','o' ), "Tibetan" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
358 { lng( 't','i' ), "Tigrinya" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
359 { lng( 't','o' ), "Tonga" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
360 { lng( 't','s' ), "Tsonga" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
361 { lng( 't','n' ), "Tswana" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
362 { lng( 't','r' ), "Turkish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
363 { lng( 't','k' ), "Turkmen" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
364 { lng( 't','w' ), "Twi" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
365 { lng( 'u','g' ), "Uighur" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
366 { lng( 'u','k' ), "Ukrainian" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
367 { lng( 'u','r' ), "Urdu" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
368 { lng( 'u','z' ), "Uzbek" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
369 { lng( 'v','i' ), "Vietnamese" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
370 { lng( 'v','o' ), "Volapük" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
371 { lng( 'c','y' ), "Welsh" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
372 { lng( 'w','o' ), "Wolof" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
373 { lng( 'x','h' ), "Xhosa" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
374 { lng( 'y','i' ), "Yiddish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
375 { lng( 'j','i' ), "Yiddish" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
376 { lng( 'y','o' ), "Yoruba" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
377 { lng( 'z','a' ), "Zhuang" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
378 { lng( 'z','u' ), "Zulu" },
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
379 };
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
380 #undef lng
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
381
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
382 #ifdef CONFIG_DVDREAD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
383 static char * ChannelTypes[] =
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
384 { "Dolby Digital","","Mpeg1","Mpeg2","PCM","","Digital Theatre System" };
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
385 static char * ChannelNumbers[] =
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
386 { "","Stereo","","","","5.1" };
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
387 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
388
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
389 static const char * GetLanguage( int language )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
390 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
391 unsigned int i;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
392 for ( i=0;i<sizeof( Languages ) / sizeof( Languages_t );i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
393 if ( Languages[i].id == language ) return Languages[i].name;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
394 return NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
395 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
396
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
397
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
398 GtkWidget * DVDSubMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
399 GtkWidget * DVDTitleMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
400 GtkWidget * DVDChapterMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
401 GtkWidget * DVDAudioLanguageMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
402 GtkWidget * DVDSubtitleLanguageMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
403 GtkWidget * AspectMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
404 GtkWidget * VCDSubMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
405 GtkWidget * VCDTitleMenu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
406
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
407 GtkWidget * create_PopUpMenu( void )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
408 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
409 GtkWidget * window1;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
410 GtkWidget * Menu = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
411 GtkWidget * SubMenu = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
412 GtkWidget * MenuItem = NULL;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
413 GtkWidget * H, * N, * D, * F;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
414 mixer_t *mixer = mpctx_get_mixer(guiInfo.mpcontext);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
415 int global_sub_size = mpctx_get_global_sub_size(guiInfo.mpcontext);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
416
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
417 Menu=gtk_menu_new();
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
418 gtk_widget_realize (Menu);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
419 window1 = gtk_widget_get_toplevel(Menu);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
420
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
421
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
422 AddMenuItem( window1, (const char*)about_xpm, Menu,MSGTR_MENU_AboutMPlayer" ", evAbout );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
423 AddSeparator( Menu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
424 SubMenu=AddSubMenu( window1, (const char*)open_xpm, Menu,MSGTR_MENU_Open );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
425 AddMenuItem( window1, (const char*)file2_xpm, SubMenu,MSGTR_MENU_PlayFile" ", evLoadPlay );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
426 #ifdef CONFIG_VCD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
427 AddMenuItem( window1, (const char*)playvcd_xpm, SubMenu,MSGTR_MENU_PlayVCD, evPlayVCD );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
428 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
429 #ifdef CONFIG_DVDREAD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
430 AddMenuItem( window1, (const char*)playdvd_xpm, SubMenu,MSGTR_MENU_PlayDVD, evPlayDVD );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
431 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
432 AddMenuItem( window1, (const char*)url_xpm, SubMenu,MSGTR_MENU_PlayURL, evSetURL );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
433 AddMenuItem( window1, (const char*)sub_xpm, SubMenu,MSGTR_MENU_LoadSubtitle" ", evLoadSubtitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
434 AddMenuItem( window1, (const char*)nosub_xpm, SubMenu,MSGTR_MENU_DropSubtitle,evDropSubtitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
435 AddMenuItem( window1, (const char*)loadeaf_xpm, SubMenu,MSGTR_MENU_LoadExternAudioFile, evLoadAudioFile );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
436 SubMenu=AddSubMenu(window1, (const char*)play_xpm, Menu,MSGTR_MENU_Playing );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
437 AddMenuItem( window1, (const char*)play_xpm, SubMenu,MSGTR_MENU_Play" ", evPlay );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
438 AddMenuItem( window1, (const char*)pause_xpm, SubMenu,MSGTR_MENU_Pause, evPause );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
439 AddMenuItem( window1, (const char*)stop_xpm, SubMenu,MSGTR_MENU_Stop, evStop );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
440 AddMenuItem( window1, (const char*)next_xpm, SubMenu,MSGTR_MENU_NextStream, evNext );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
441 AddMenuItem( window1, (const char*)prev_xpm, SubMenu,MSGTR_MENU_PrevStream, evPrev );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
442 // AddSeparator( SubMenu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
443 // AddMenuItem( SubMenu,"Back 10 sec", evBackward10sec );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
444 // AddMenuItem( SubMenu,"Fwd 10 sec", evForward10sec );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
445 // AddMenuItem( SubMenu,"Back 1 min", evBackward1min );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
446 // AddMenuItem( SubMenu,"Fwd 1 min", evForward1min );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
447 // SubMenu=AddSubMenu( Menu,MSGTR_MENU_Size );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
448 // AddMenuItem( SubMenu,MSGTR_MENU_NormalSize" ", evNormalSize );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
449 // AddMenuItem( SubMenu,MSGTR_MENU_DoubleSize, evDoubleSize );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
450 // AddMenuItem( SubMenu,MSGTR_MENU_FullScreen, evFullScreen );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
451 #ifdef CONFIG_VCD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
452 VCDSubMenu=AddSubMenu( window1, (const char*)vcd_xpm, Menu,MSGTR_MENU_VCD );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
453 AddMenuItem( window1, (const char*)playvcd_xpm, VCDSubMenu,MSGTR_MENU_PlayDisc,evPlayVCD );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
454 AddSeparator( VCDSubMenu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
455 VCDTitleMenu=AddSubMenu( window1, (const char*)title_xpm, VCDSubMenu,MSGTR_MENU_Titles );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
456 if ( guiInfo.VCDTracks )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
457 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
458 char tmp[32]; int i;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
459 for ( i=1;i < guiInfo.VCDTracks;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
460 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
461 snprintf( tmp,32,MSGTR_MENU_Title,i );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
462 //AddMenuItem( VCDTitleMenu,tmp,( i << 16 ) + evSetVCDTrack );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
463 AddMenuItem(window1, (const char*)empty_xpm, VCDTitleMenu,tmp,( i << 16 ) + evSetVCDTrack );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
464 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
465 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
466 else
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
467 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
468 MenuItem=AddMenuItem( window1, (const char*)empty_xpm, VCDTitleMenu,MSGTR_MENU_None,evNone );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
469 gtk_widget_set_sensitive( MenuItem,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
470 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
471 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
472 #ifdef CONFIG_DVDREAD
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
473 DVDSubMenu=AddSubMenu( window1, (const char*)dvd_xpm, Menu,MSGTR_MENU_DVD );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
474 AddMenuItem( window1, (const char*)playdvd_xpm, DVDSubMenu,MSGTR_MENU_PlayDisc" ", evPlayDVD );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
475 // AddMenuItem( DVDSubMenu,MSGTR_MENU_ShowDVDMenu, evNone );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
476 AddSeparator( DVDSubMenu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
477 DVDTitleMenu=AddSubMenu( window1, (const char*)title_xpm, DVDSubMenu,MSGTR_MENU_Titles );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
478 if ( guiInfo.DVD.titles )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
479 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
480 char tmp[32]; int i;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
481 for ( i=1 ; i<= guiInfo.DVD.titles;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
482 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
483 snprintf( tmp,32,MSGTR_MENU_Title,i);
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
484 AddMenuCheckItem( window1, (const char*)empty1px_xpm, DVDTitleMenu,tmp,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
485 guiInfo.DVD.current_title == i,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
486 (i << 16) + evSetDVDTitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
487 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
488 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
489 else
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
490 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
491 MenuItem=AddMenuItem( window1, (const char*)empty_xpm, DVDTitleMenu,MSGTR_MENU_None,evNone );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
492 gtk_widget_set_sensitive( MenuItem,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
493 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
494 DVDChapterMenu=AddSubMenu( window1, (const char*)chapter_xpm, DVDSubMenu,MSGTR_MENU_Chapters );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
495 if ( guiInfo.DVD.chapters )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
496 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
497 char tmp[32]; int i;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
498 for ( i=1;i <= guiInfo.DVD.chapters;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
499 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
500 snprintf( tmp,32,MSGTR_MENU_Chapter,i );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
501 AddMenuCheckItem( window1, (const char*)empty1px_xpm, DVDChapterMenu,tmp,guiInfo.DVD.current_chapter == i,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
502 ( i << 16 ) + evSetDVDChapter );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
503 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
504 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
505 else
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
506 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
507 MenuItem=AddMenuItem( window1, (const char*)empty_xpm, DVDChapterMenu,MSGTR_MENU_None,evNone );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
508 gtk_widget_set_sensitive( MenuItem,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
509 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
510 DVDAudioLanguageMenu=AddSubMenu( window1, (const char*)audiolang_xpm, DVDSubMenu,MSGTR_MENU_AudioLanguages );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
511 if ( guiInfo.DVD.nr_of_audio_channels )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
512 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
513 char tmp[64]; int i, id = guiInfo.demuxer ? ((demuxer_t *)guiInfo.demuxer)->audio->id : audio_id;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
514 for ( i=0;i < guiInfo.DVD.nr_of_audio_channels;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
515 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
516 snprintf( tmp,64,"%s - %s %s",GetLanguage( guiInfo.DVD.audio_streams[i].language ),
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
517 ChannelTypes[ guiInfo.DVD.audio_streams[i].type ],
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
518 ChannelNumbers[ guiInfo.DVD.audio_streams[i].channels ] );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
519 // if ( id == -1 ) id=audio_id; //guiInfo.DVD.audio_streams[i].id;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
520 AddMenuCheckItem( window1, (const char*)dolby_xpm, DVDAudioLanguageMenu,tmp,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
521 id == guiInfo.DVD.audio_streams[i].id,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
522 ( guiInfo.DVD.audio_streams[i].id << 16 ) + evSetDVDAudio );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
523 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
524 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
525 else
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
526 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
527 MenuItem=AddMenuItem( window1, (const char*)empty_xpm, DVDAudioLanguageMenu,MSGTR_MENU_None,evNone );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
528 gtk_widget_set_sensitive( MenuItem,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
529 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
530 DVDSubtitleLanguageMenu=AddSubMenu( window1, (const char*)sublang_xpm, DVDSubMenu,MSGTR_MENU_SubtitleLanguages );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
531 if ( guiInfo.DVD.nr_of_subtitles )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
532 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
533 char tmp[64]; int i;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
534 AddMenuItem( window1, (const char*)empty1px_xpm, DVDSubtitleLanguageMenu,MSGTR_MENU_None,( (unsigned short)-1 << 16 ) + evSetDVDSubtitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
535 for ( i=0;i < guiInfo.DVD.nr_of_subtitles;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
536 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
537 av_strlcpy( tmp,GetLanguage( guiInfo.DVD.subtitles[i].language ),sizeof(tmp) );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
538 AddMenuCheckItem( window1, (const char*)empty1px_xpm, DVDSubtitleLanguageMenu,tmp,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
539 dvdsub_id == guiInfo.DVD.subtitles[i].id,
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
540 ( guiInfo.DVD.subtitles[i].id << 16 ) + evSetDVDSubtitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
541 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
542 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
543 else
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
544 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
545 MenuItem=AddMenuItem( window1, (const char*)empty_xpm, DVDSubtitleLanguageMenu,MSGTR_MENU_None,evNone );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
546 gtk_widget_set_sensitive( MenuItem,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
547 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
548 #endif
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
549
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
550 // if ( guiInfo.Playing )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
551 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
552 AspectMenu=AddSubMenu( window1, (const char*)aspect_xpm, Menu,MSGTR_MENU_AspectRatio );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
553 AddMenuItem( window1, (const char*)aspect11_xpm, AspectMenu,MSGTR_MENU_Original,( 1 << 16 ) + evSetAspect );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
554 AddMenuItem( window1, (const char*)aspect169_xpm, AspectMenu,"16:9",( 2 << 16 ) + evSetAspect );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
555 AddMenuItem( window1, (const char*)aspect43_xpm, AspectMenu,"4:3",( 3 << 16 ) + evSetAspect );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
556 AddMenuItem( window1, (const char*)aspect235_xpm, AspectMenu,"2.35",( 4 << 16 ) + evSetAspect );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
557 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
558
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
559 if ( guiInfo.Playing && guiInfo.demuxer && guiInfo.StreamType != STREAMTYPE_DVD )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
560 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
561 int i,c = 0;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
562
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
563 for ( i=0;i < MAX_A_STREAMS;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
564 if ( ((demuxer_t *)guiInfo.demuxer)->a_streams[i] ) c++;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
565
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
566 if ( c > 1 )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
567 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
568 SubMenu=AddSubMenu( window1, (const char*)empty_xpm, Menu,MSGTR_MENU_AudioTrack );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
569 for ( i=0;i < MAX_A_STREAMS;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
570 if ( ((demuxer_t *)guiInfo.demuxer)->a_streams[i] )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
571 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
572 int aid = ((sh_audio_t *)((demuxer_t *)guiInfo.demuxer)->a_streams[i])->aid;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
573 char tmp[32];
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
574 snprintf( tmp,32,MSGTR_MENU_Track,aid );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
575 AddMenuItem( window1, (const char*)empty_xpm, SubMenu,tmp,( aid << 16 ) + evSetAudio );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
576 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
577 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
578
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
579 for ( c=0,i=0;i < MAX_V_STREAMS;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
580 if ( ((demuxer_t *)guiInfo.demuxer)->v_streams[i] ) c++;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
581
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
582 if ( c > 1 )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
583 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
584 SubMenu=AddSubMenu( window1, (const char*)empty_xpm, Menu,MSGTR_MENU_VideoTrack );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
585 for ( i=0;i < MAX_V_STREAMS;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
586 if ( ((demuxer_t *)guiInfo.demuxer)->v_streams[i] )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
587 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
588 int vid = ((sh_video_t *)((demuxer_t *)guiInfo.demuxer)->v_streams[i])->vid;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
589 char tmp[32];
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
590 snprintf( tmp,32,MSGTR_MENU_Track,vid );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
591 AddMenuItem( window1, (const char*)empty_xpm, SubMenu,tmp,( vid << 16 ) + evSetVideo );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
592 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
593 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
594 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
595
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
596 /* cheap subtitle switching for non-DVD streams */
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
597 if ( global_sub_size && guiInfo.StreamType != STREAMTYPE_DVD )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
598 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
599 int i;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
600 SubMenu=AddSubMenu( window1, (const char*)empty_xpm, Menu, MSGTR_MENU_Subtitles );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
601 AddMenuItem( window1, (const char*)empty_xpm, SubMenu, MSGTR_MENU_None, (-1 << 16) + evSetSubtitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
602 for ( i=0;i < global_sub_size;i++ )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
603 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
604 char tmp[32];
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
605 snprintf( tmp, 32, MSGTR_MENU_Track, i );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
606 AddMenuItem( window1,(const char*)empty_xpm,SubMenu,tmp,( i << 16 ) + evSetSubtitle );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
607 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
608 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
609
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
610 AddSeparator( Menu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
611 MenuItem=AddMenuCheckItem( window1, (const char*)sound_xpm, Menu,MSGTR_MENU_Mute,mixer->muted,evMute );
33646
f3300b0c38a9 Rename guiInterface_t member AudioType AudioChannels.
ib
parents: 33572
diff changeset
612 if ( !guiInfo.AudioChannels ) gtk_widget_set_sensitive( MenuItem,FALSE );
33572
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
613 AddMenuItem( window1, (const char*)playlist_xpm, Menu,MSGTR_MENU_PlayList, evPlayList );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
614 AddMenuItem( window1, (const char*)skin_xpm, Menu,MSGTR_MENU_SkinBrowser, evSkinBrowser );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
615 AddMenuItem( window1, (const char*)prefs_xpm, Menu,MSGTR_MENU_Preferences, evPreferences );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
616 AddMenuItem( window1, (const char*)equalizer_xpm, Menu,MSGTR_Equalizer, evEqualizer );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
617
33655
cbb7cfeb8c71 Rename guiInterface_t member NoWindow MovieWindow.
ib
parents: 33646
diff changeset
618 if ( guiInfo.MovieWindow )
33572
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
619 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
620 int b1 = 0, b2 = 0, b_half = 0;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
621 AddSeparator( Menu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
622 if ( !guiApp.subWindow.isFullScreen && guiInfo.Playing )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
623 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
624 if ( ( guiApp.subWindow.Width == guiInfo.MovieWidth * 2 )&&
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
625 ( guiApp.subWindow.Height == guiInfo.MovieHeight * 2 ) ) b2=1;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
626 else if ( ( guiApp.subWindow.Width == guiInfo.MovieWidth / 2 ) &&
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
627 ( guiApp.subWindow.Height == guiInfo.MovieHeight / 2 ) ) b_half=1;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
628 else b1=1;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
629 } else b1=!guiApp.subWindow.isFullScreen;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
630 H=AddMenuCheckItem( window1, (const char*)half_xpm, Menu,MSGTR_MENU_HalfSize,b_half,evHalfSize );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
631 N=AddMenuCheckItem( window1, (const char*)normal_xpm, Menu,MSGTR_MENU_NormalSize" ",b1,evNormalSize );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
632 D=AddMenuCheckItem( window1, (const char*)double_xpm, Menu,MSGTR_MENU_DoubleSize,b2,evDoubleSize );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
633 F=AddMenuCheckItem( window1, (const char*)full_xpm, Menu,MSGTR_MENU_FullScreen,guiApp.subWindow.isFullScreen,evFullScreen );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
634 if ( !gtkShowVideoWindow && !guiInfo.Playing )
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
635 {
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
636 gtk_widget_set_sensitive( H,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
637 gtk_widget_set_sensitive( N,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
638 gtk_widget_set_sensitive( D,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
639 gtk_widget_set_sensitive( F,FALSE );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
640 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
641 }
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
642
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
643 AddSeparator( Menu );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
644 AddMenuItem( window1, (const char*)exit_xpm, Menu,MSGTR_MENU_Exit, evExit );
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
645
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
646 return Menu;
d9b805602aa1 Rename some gtk files.
ib
parents:
diff changeset
647 }