Mercurial > mplayer.hg
annotate Gui/interface.h @ 22315:0a0191bc366d
10l, avoid crash on invalid subtitle id
author | reimar |
---|---|
date | Sat, 24 Feb 2007 10:19:41 +0000 |
parents | a7e5b99ac083 |
children |
rev | line source |
---|---|
4798 | 1 |
2 #ifndef _INTERFACE_H | |
3 #define _INTERFACE_H | |
4 | |
17314
1bdc7230ea29
Bandaid fix for compilation failure when creating main/.depend with GUI
diego
parents:
17144
diff
changeset
|
5 #include "../config.h" |
4798 | 6 #include "mplayer/play.h" |
17144 | 7 #include "libvo/font_load.h" |
7019 | 8 #include "cfg.h" |
4798 | 9 |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
10 #ifdef USE_DVDREAD |
19274
e579e74d6c3c
fix includes due to libmpdemux split (patch by Stefan Huehner)
ben
parents:
19081
diff
changeset
|
11 #include "stream/stream.h" |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
12 #endif |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
13 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
14 typedef struct |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
15 { |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
16 int x; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
17 int y; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
18 int width; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
19 int height; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
20 } guiResizeStruct; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
21 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
22 typedef struct |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
23 { |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
24 int signal; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
25 char module[512]; |
10611 | 26 } guiUnknownErrorStruct; |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
27 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
28 typedef struct |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
29 { |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
30 int seek; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
31 int format; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
32 int width; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
33 int height; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
34 char codecdll[128]; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
35 } guiVideoStruct; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
36 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
37 #ifdef USE_DVDREAD |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
38 typedef struct |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
39 { |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
40 int titles; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
41 int chapters; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
42 int angles; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
43 int current_chapter; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
44 int current_title; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
45 int current_angle; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
46 int nr_of_audio_channels; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
47 stream_language_t audio_streams[32]; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
48 int nr_of_subtitles; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
49 stream_language_t subtitles[32]; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
50 } guiDVDStruct; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
51 #endif |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
52 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
53 typedef struct |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
54 { |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
55 int message; |
10611 | 56 guiResizeStruct resize; |
57 guiVideoStruct videodata; | |
58 guiUnknownErrorStruct error; | |
7217 | 59 |
22286 | 60 struct MPContext * mpcontext; |
7217 | 61 void * sh_video; |
14254 | 62 void * afilter; |
8312
ef8c992672f4
- audio track handling in menu (idea from R¸«ädiger Kuhlmann)
pontscho
parents:
8302
diff
changeset
|
63 void * demuxer; |
8302 | 64 void * event_struct; |
6280 | 65 |
7217 | 66 int DiskChanged; |
8423 | 67 int NewPlay; |
6280 | 68 |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
69 #ifdef USE_DVDREAD |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
70 guiDVDStruct DVD; |
8423 | 71 int Title; |
72 int Angle; | |
73 int Chapter; | |
6280 | 74 #endif |
75 | |
76 #ifdef HAVE_VCD | |
77 int VCDTracks; | |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
78 #endif |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
79 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
80 int Playing; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
81 float Position; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
82 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
83 int MovieWidth; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
84 int MovieHeight; |
7009 | 85 int NoWindow; |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
86 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
87 float Volume; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
88 float Balance; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
89 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
90 int Track; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
91 int AudioType; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
92 int StreamType; |
5789 | 93 int AudioOnly; |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
94 int TimeSec; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
95 int LengthInSec; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
96 int FrameDrop; |
7009 | 97 int FileFormat; |
7150 | 98 float FPS; |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
99 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
100 char * Filename; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
101 int FilenameChanged; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
102 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
103 char * Subtitlename; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
104 int SubtitleChanged; |
6794 | 105 |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
106 char * Othername; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
107 int OtherChanged; |
6623 | 108 |
109 char * AudioFile; | |
110 int AudioFileChanged; | |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
111 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
112 int SkinChange; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
113 } guiInterface_t; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
114 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
115 extern guiInterface_t guiIntfStruct; |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
116 |
5789 | 117 #define guiXEvent 0 |
118 #define guiCEvent 1 | |
119 #define guiIEvent 2 | |
120 #define guiSetDVD 3 | |
121 #define guiSetFileName 4 | |
122 #define guiSetState 5 | |
123 #define guiSetAudioOnly 6 | |
124 #define guiReDrawSubWindow 7 | |
125 #define guiSetShVideo 8 | |
6280 | 126 #define guiSetStream 9 |
6794 | 127 #define guiReDraw 10 |
128 #define guiSetVolume 11 | |
129 #define guiSetDefaults 12 | |
6903 | 130 #define guiSetValues 13 |
7009 | 131 #define guiSetFileFormat 14 |
8312
ef8c992672f4
- audio track handling in menu (idea from R¸«ädiger Kuhlmann)
pontscho
parents:
8302
diff
changeset
|
132 #define guiSetDemuxer 15 |
8423 | 133 #define guiSetParameters 16 |
14254 | 134 #define guiSetAfilter 17 |
22286 | 135 #define guiSetContext 18 |
4798 | 136 |
4963 | 137 #define guiSetStop 0 |
138 #define guiSetPlay 1 | |
139 #define guiSetPause 2 | |
140 | |
6280 | 141 #define guiDVD 1 |
142 #define guiVCD 2 | |
6794 | 143 #define guiFilenames 4 |
6280 | 144 #define guiALL 0xffffffff |
145 | |
21370
b806ccbc6398
Remove some of the worst "headers include headers which include
reimar
parents:
19274
diff
changeset
|
146 extern int use_gui; |
b806ccbc6398
Remove some of the worst "headers include headers which include
reimar
parents:
19274
diff
changeset
|
147 |
18889
e60c8c7399d2
get_path as const, patch by Stefan Huehner, stefan AT huehner-org
reynaldo
parents:
17314
diff
changeset
|
148 extern char *get_path(const char *filename); |
4979 | 149 |
6218 | 150 extern void guiInit( void ); |
4974 | 151 extern void guiDone( void ); |
7009 | 152 extern int guiGetEvent( int type,char * arg ); |
4798 | 153 extern void guiEventHandling( void ); |
6794 | 154 extern void guiLoadFont( void ); |
7706 | 155 extern void guiLoadSubtitle( char * name ); |
16374
e2e231134056
Remove many annoying GTK includes in every compile line and remove GTK
ods15
parents:
14254
diff
changeset
|
156 extern void guiMessageBox(int level, char * str); |
4798 | 157 |
6713 | 158 typedef struct _plItem |
159 { | |
160 struct _plItem * prev,* next; | |
161 int played; | |
162 char * path; | |
163 char * name; | |
164 } plItem; | |
165 | |
7092
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
166 typedef struct _urlItem |
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
167 { |
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
168 struct _urlItem *next; |
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
169 char * url; |
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
170 } URLItem; |
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
171 |
6713 | 172 extern plItem * plList; |
173 extern plItem * plCurrent; | |
174 extern plItem * plLastPlayed; | |
175 | |
7092
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
176 extern URLItem * URLList; |
8e9607c5897e
- warning fixes from Dominik Mierzejewski <dominik@rangers.eu.org>
pontscho
parents:
7019
diff
changeset
|
177 |
9055 | 178 #define fsPersistant_MaxPath 512 |
179 #define fsPersistant_MaxPos 5 | |
180 extern char * fsHistory[fsPersistant_MaxPos]; | |
181 | |
8043 | 182 #define gtkSetContrast 0 |
183 #define gtkSetBrightness 1 | |
184 #define gtkSetHue 2 | |
185 #define gtkSetSaturation 3 | |
186 #define gtkSetEqualizer 4 | |
187 #define gtkAddPlItem 5 | |
188 #define gtkGetNextPlItem 6 | |
189 #define gtkGetPrevPlItem 7 | |
190 #define gtkGetCurrPlItem 8 | |
191 #define gtkDelPl 9 | |
192 #define gtkSetExtraStereo 10 | |
193 #define gtkSetPanscan 11 | |
194 #define gtkSetFontFactor 12 | |
195 #define gtkSetAutoq 13 | |
196 #define gtkClearStruct 14 | |
197 #define gtkAddURLItem 15 | |
198 #define gtkSetFontOutLine 16 | |
199 #define gtkSetFontBlur 17 | |
200 #define gtkSetFontTextScale 18 | |
201 #define gtkSetFontOSDScale 19 | |
202 #define gtkSetFontEncoding 20 | |
203 #define gtkSetFontAutoScale 21 | |
9056 | 204 #define gtkSetSubEncoding 22 |
9291
64b8c5a07c2c
- It adds an option enqueue/noenqueue, so users can choose if they want to
arpi
parents:
9056
diff
changeset
|
205 #define gtkDelCurrPlItem 23 |
64b8c5a07c2c
- It adds an option enqueue/noenqueue, so users can choose if they want to
arpi
parents:
9056
diff
changeset
|
206 #define gtkInsertPlItem 24 |
64b8c5a07c2c
- It adds an option enqueue/noenqueue, so users can choose if they want to
arpi
parents:
9056
diff
changeset
|
207 #define gtkSetCurrPlItem 25 |
6627 | 208 |
209 extern float gtkEquChannels[6][10]; | |
210 | |
6713 | 211 extern void * gtkSet( int cmd,float param, void * vparam ); |
6627 | 212 |
6996 | 213 extern char * gconvert_uri_to_filename( char * str ); |
19081
273bdef43012
Mark several string parameters that are not modified in the function as const.
diego
parents:
18889
diff
changeset
|
214 extern char * gstrdup( const char * str ); |
273bdef43012
Mark several string parameters that are not modified in the function as const.
diego
parents:
18889
diff
changeset
|
215 extern int gstrcmp( const char * a,const char * b ); |
6794 | 216 extern void gfree( void ** p ); |
19081
273bdef43012
Mark several string parameters that are not modified in the function as const.
diego
parents:
18889
diff
changeset
|
217 extern void gaddlist( char *** list,const char * entry ); |
8284 | 218 extern char * gstrchr( char * str,int c ); |
4848
ad868aae2a5c
fix playtree bug. but ... i dont' see this ... bazmeg
pontscho
parents:
4818
diff
changeset
|
219 |
6794 | 220 #define guiSetFilename( s,n ) { gfree( (void **)&s ); s=gstrdup( n ); } |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
221 |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
222 #define guiSetDF( s,d,n ) \ |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
223 { \ |
6794 | 224 gfree( (void **)&s ); \ |
4818
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
225 s=malloc( strlen( d ) + strlen( n ) + 5 ); \ |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
226 sprintf( s,"%s/%s",d,n ); \ |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
227 } |
3473ca9ef158
new gui interface, and gtk moved into mplayer process. fork ... bleh :)
pontscho
parents:
4798
diff
changeset
|
228 |
4848
ad868aae2a5c
fix playtree bug. but ... i dont' see this ... bazmeg
pontscho
parents:
4818
diff
changeset
|
229 #endif |