annotate gui/ui/main.c @ 33771:6e774a02d00c

Remove gtkClearStruct code from mplayer() in interface.c. Move it as static function guiInfoMediumClear() where it is used and rename the symbolic constants used with this code.
author ib
date Sat, 09 Jul 2011 11:48:13 +0000
parents cee9987bc81d
children a3983d2c9106
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 * main window
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 * This file is part of MPlayer.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
5 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
6 * MPlayer is free software; you can redistribute it and/or modify
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
7 * 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
8 * the Free Software Foundation; either version 2 of the License, or
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
9 * (at your option) any later version.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
10 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
11 * MPlayer is distributed in the hope that it will be useful,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
14 * GNU General Public License for more details.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
15 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
16 * 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
17 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26382
diff changeset
19 */
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
20
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
21 #include <stdlib.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
22 #include <stdio.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
23 #include <sys/stat.h>
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
24 #include <unistd.h>
23305
22d3d12c6dfb Include string.h for memcpy, fastmemcpy.h alone is not enough.
reimar
parents: 23154
diff changeset
25 #include <string.h>
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
26
26382
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
27 #include "config.h"
23154
e564b9cd7290 Fix several implicit declarations of functions warnings.
diego
parents: 23077
diff changeset
28 #include "gmplayer.h"
26365
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26203
diff changeset
29 #include "gui/app.h"
33738
998f94e62a61 Remove unnecessary #include "gui/interface.h".
ib
parents: 33737
diff changeset
30 #include "gui/interface.h"
26365
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26203
diff changeset
31 #include "gui/skin/font.h"
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26203
diff changeset
32 #include "gui/skin/skin.h"
33742
e1539e14d60f Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents: 33739
diff changeset
33 #include "gui/util/list.h"
33739
9f6d46d325de Remove gfree() from interface.c.
ib
parents: 33738
diff changeset
34 #include "gui/util/mem.h"
33737
71c29e8ec68f Move string functions from interface.c to string.c.
ib
parents: 33657
diff changeset
35 #include "gui/util/string.h"
26365
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26203
diff changeset
36 #include "gui/wm/ws.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
37
26382
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
38 #include "help_mp.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
39 #include "libvo/x11_common.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
40 #include "libvo/fastmemcpy.h"
33531
84ce059fae34 Get non-multimedia X11 key definitions from libvo/wskeys.h.
ib
parents: 33525
diff changeset
41 #include "libvo/wskeys.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
42
26382
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
43 #include "stream/stream.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
44 #include "stream/url.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
45 #include "mixer.h"
32467
fbe5c829c69b Move libvo/sub.[ch] from libvo to sub.
cigaes
parents: 32043
diff changeset
46 #include "sub/sub.h"
26382
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
47 #include "access_mpcontext.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
48
30537
7bebe34b6ad2 Move movie_aspect extern declaration to libmpcodecs/vd.h.
diego
parents: 30516
diff changeset
49 #include "libmpcodecs/vd.h"
26382
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
50 #include "libmpdemux/demuxer.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
51 #include "libmpdemux/stheader.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
52 #include "codec-cfg.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
53 #include "m_option.h"
b2f4abcf20ed Make include paths consistent; do not use ../ in them.
diego
parents: 26365
diff changeset
54 #include "m_property.h"
30516
f4e017b6921a Fix exit_player() usage throughout the codebase.
diego
parents: 29263
diff changeset
55 #include "mp_core.h"
32043
f6249bc89c38 Move extern declarations used by both mplayer.c and mencoder.c to mpcommon.h.
diego
parents: 32041
diff changeset
56 #include "mpcommon.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
57
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
58 #define CLEAR_FILE 1
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
59 #define CLEAR_DVD 2
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
60 #define CLEAR_VCD 4
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
61 #define CLEAR_ALL (CLEAR_FILE + CLEAR_DVD + CLEAR_VCD)
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
62
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
63 #define GUI_REDRAW_WAIT 375
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
64
33556
520fb0f7544c Rename GUI directory 'mplayer' and some files in it.
ib
parents: 33555
diff changeset
65 #include "actions.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
66 #include "widgets.h"
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
67
28051
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 27370
diff changeset
68 unsigned int GetTimerMS( void );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
69
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
70 unsigned char * mainDrawBuffer = NULL;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
71 int uiMainRender = 1;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
72
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
73 int uiMainAutoPlay = 0;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
74 int uiMiddleMenu = 0;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
75
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
76 int mainVisible = 1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
77
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
78 int boxMoved = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
79 int sx = 0,sy = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
80 int i,pot = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
81
33556
520fb0f7544c Rename GUI directory 'mplayer' and some files in it.
ib
parents: 33555
diff changeset
82 #include "render.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
83
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
84 void uiMainDraw( void )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
85 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
86
33768
cee9987bc81d Remove guiExit().
ib
parents: 33763
diff changeset
87 if ( guiApp.mainWindow.State == wsWindowClosed ) mplayer( MPLAYER_EXIT_GUI, EXIT_QUIT, 0 );
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
88
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
89 if ( guiApp.mainWindow.Visible == wsWindowNotVisible ||
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
90 !mainVisible ) return;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
91 // !guiApp.mainWindow.Mapped ) return;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
92
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
93 if ( uiMainRender && guiApp.mainWindow.State == wsWindowExpose )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
94 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
95 btnModify( evSetMoviePosition,guiInfo.Position );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
96 btnModify( evSetVolume,guiInfo.Volume );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
97
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
98 fast_memcpy( mainDrawBuffer,guiApp.main.Bitmap.Image,guiApp.main.Bitmap.ImageSize );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
99 RenderAll( &guiApp.mainWindow,guiApp.mainItems,guiApp.IndexOfMainItems,mainDrawBuffer );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
100 uiMainRender=0;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
101 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
102 wsPutImage( &guiApp.mainWindow );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
103 // XFlush( wsDisplay );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
104 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
105
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
106 static void guiInfoMediumClear (int what)
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
107 {
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
108 if (what & CLEAR_FILE)
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
109 {
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
110 nfree(guiInfo.Filename);
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
111 nfree(guiInfo.Subtitlename);
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
112 nfree(guiInfo.AudioFile);
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
113 listSet(gtkDelPl, NULL);
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
114 }
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
115
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
116 #ifdef CONFIG_DVDREAD
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
117 if (what & CLEAR_DVD) memset(&guiInfo.DVD, 0, sizeof(guiDVDStruct));
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
118 #endif
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
119
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
120 #ifdef CONFIG_VCD
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
121 if (what & CLEAR_VCD) guiInfo.VCDTracks = 0;
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
122 #endif
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
123 }
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
124
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
125 static unsigned last_redraw_time = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
126
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
127 void uiEventHandling( int msg,float param )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
128 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
129 int iparam = (int)param;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
130 mixer_t *mixer = mpctx_get_mixer(guiInfo.mpcontext);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
131
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
132 switch( msg )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
133 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
134 // --- user events
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
135 case evExit:
33768
cee9987bc81d Remove guiExit().
ib
parents: 33763
diff changeset
136 mplayer( MPLAYER_EXIT_GUI, EXIT_QUIT, 0 );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
137 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
138
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
139 case evPlayNetwork:
33739
9f6d46d325de Remove gfree() from interface.c.
ib
parents: 33738
diff changeset
140 nfree( guiInfo.Subtitlename );
9f6d46d325de Remove gfree() from interface.c.
ib
parents: 33738
diff changeset
141 nfree( guiInfo.AudioFile );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
142 guiInfo.StreamType=STREAMTYPE_STREAM;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
143 goto play;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
144 case evSetURL:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
145 gtkShow( evPlayNetwork,NULL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
146 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
147
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
148 case evSetAudio:
33657
c92f23eac7a4 Remove guiGetEvent type guiSetDemuxer.
ib
parents: 33655
diff changeset
149 if ( !mpctx_get_demuxer(guiInfo.mpcontext) || audio_id == iparam ) break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
150 audio_id=iparam;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
151 goto play;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
152
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
153 case evSetVideo:
33657
c92f23eac7a4 Remove guiGetEvent type guiSetDemuxer.
ib
parents: 33655
diff changeset
154 if ( !mpctx_get_demuxer(guiInfo.mpcontext) || video_id == iparam ) break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
155 video_id=iparam;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
156 goto play;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
157
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
158 case evSetSubtitle:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
159 mp_property_do("sub",M_PROPERTY_SET,&iparam,guiInfo.mpcontext);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
160 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
161
27370
14c5017f40d2 Change a bunch of video/audio-output-specific preprocessor directives from
diego
parents: 27341
diff changeset
162 #ifdef CONFIG_VCD
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
163 case evSetVCDTrack:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
164 guiInfo.Track=iparam;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
165 case evPlayVCD:
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
166 guiInfoMediumClear ( CLEAR_ALL );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
167 guiInfo.StreamType=STREAMTYPE_VCD;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
168 goto play;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
169 #endif
27341
e7c989f7a7c9 Start unifying names of internal preprocessor directives.
diego
parents: 26458
diff changeset
170 #ifdef CONFIG_DVDREAD
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
171 case evPlayDVD:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
172 guiInfo.DVD.current_title=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
173 guiInfo.DVD.current_chapter=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
174 guiInfo.DVD.current_angle=1;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
175 play_dvd_2:
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
176 guiInfoMediumClear( CLEAR_ALL - CLEAR_DVD );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
177 guiInfo.StreamType=STREAMTYPE_DVD;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
178 goto play;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
179 #endif
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
180 case evPlay:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
181 case evPlaySwitchToPause:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
182 play:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
183
33615
1f9a31d4f114 Replace all playback integer constants by their symbolic constants.
ib
parents: 33614
diff changeset
184 if ( ( msg == evPlaySwitchToPause )&&( guiInfo.Playing == GUI_PAUSE ) ) goto NoPause;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
185
33742
e1539e14d60f Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents: 33739
diff changeset
186 if ( listSet( gtkGetCurrPlItem,NULL ) &&( guiInfo.StreamType == STREAMTYPE_FILE ) )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
187 {
33742
e1539e14d60f Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents: 33739
diff changeset
188 plItem * next = listSet( gtkGetCurrPlItem,NULL );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
189 plLastPlayed=next;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
190 uiSetFileName( next->path,next->name,STREAMTYPE_FILE );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
191 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
192
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
193 switch ( guiInfo.StreamType )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
194 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
195 case STREAMTYPE_STREAM:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
196 case STREAMTYPE_FILE:
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
197 guiInfoMediumClear( CLEAR_ALL - CLEAR_FILE );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
198 break;
27370
14c5017f40d2 Change a bunch of video/audio-output-specific preprocessor directives from
diego
parents: 27341
diff changeset
199 #ifdef CONFIG_VCD
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
200 case STREAMTYPE_VCD:
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
201 guiInfoMediumClear( CLEAR_ALL - CLEAR_VCD - CLEAR_FILE );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
202 if ( !cdrom_device ) cdrom_device=gstrdup( DEFAULT_CDROM_DEVICE );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
203 uiSetFileName( NULL,cdrom_device,STREAMTYPE_VCD );
33615
1f9a31d4f114 Replace all playback integer constants by their symbolic constants.
ib
parents: 33614
diff changeset
204 if ( guiInfo.Playing != GUI_PAUSE )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
205 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
206 if ( !guiInfo.Track )
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
207 guiInfo.Track=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
208 guiInfo.DiskChanged=1;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
209 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
210 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
211 #endif
27341
e7c989f7a7c9 Start unifying names of internal preprocessor directives.
diego
parents: 26458
diff changeset
212 #ifdef CONFIG_DVDREAD
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
213 case STREAMTYPE_DVD:
33771
6e774a02d00c Remove gtkClearStruct code from mplayer() in interface.c.
ib
parents: 33768
diff changeset
214 guiInfoMediumClear( CLEAR_ALL - CLEAR_DVD - CLEAR_FILE );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
215 if ( !dvd_device ) dvd_device=gstrdup( DEFAULT_DVD_DEVICE );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
216 uiSetFileName( NULL,dvd_device,STREAMTYPE_DVD );
33615
1f9a31d4f114 Replace all playback integer constants by their symbolic constants.
ib
parents: 33614
diff changeset
217 if ( guiInfo.Playing != GUI_PAUSE )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
218 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
219 guiInfo.Title=guiInfo.DVD.current_title;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
220 guiInfo.Chapter=guiInfo.DVD.current_chapter;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
221 guiInfo.Angle=guiInfo.DVD.current_angle;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
222 guiInfo.DiskChanged=1;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
223 }
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
224 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
225 #endif
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
226 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
227 guiInfo.NewPlay=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
228 uiPlay();
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
229 break;
27341
e7c989f7a7c9 Start unifying names of internal preprocessor directives.
diego
parents: 26458
diff changeset
230 #ifdef CONFIG_DVDREAD
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
231 case evSetDVDSubtitle:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
232 dvdsub_id=iparam;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
233 goto play_dvd_2;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
234 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
235 case evSetDVDAudio:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
236 audio_id=iparam;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
237 goto play_dvd_2;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
238 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
239 case evSetDVDChapter:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
240 guiInfo.DVD.current_chapter=iparam;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
241 goto play_dvd_2;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
242 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
243 case evSetDVDTitle:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
244 guiInfo.DVD.current_title=iparam;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
245 guiInfo.DVD.current_chapter=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
246 guiInfo.DVD.current_angle=1;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
247 goto play_dvd_2;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
248 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
249 #endif
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
250
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
251 case evPause:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
252 case evPauseSwitchToPlay:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
253 NoPause:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
254 uiPause();
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
255 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
256
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
257 case evStop:
33614
79743a5cf4f0 Rename the symbolic playback state constants.
ib
parents: 33556
diff changeset
258 guiInfo.Playing=GUI_STOP;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
259 uiState();
33655
cbb7cfeb8c71 Rename guiInterface_t member NoWindow MovieWindow.
ib
parents: 33654
diff changeset
260 guiInfo.MovieWindow=True;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
261 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
262
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
263 case evLoadPlay:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
264 uiMainAutoPlay=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
265 // guiInfo.StreamType=STREAMTYPE_FILE;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
266 case evLoad:
33742
e1539e14d60f Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents: 33739
diff changeset
267 listSet( gtkDelPl,NULL );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
268 gtkShow( evLoad,NULL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
269 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
270 case evLoadSubtitle: gtkShow( evLoadSubtitle,NULL ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
271 case evDropSubtitle:
33739
9f6d46d325de Remove gfree() from interface.c.
ib
parents: 33738
diff changeset
272 nfree( guiInfo.Subtitlename );
33763
03824cf8728d Cosmetic: Rename two functions that do MPlayer calls.
ib
parents: 33743
diff changeset
273 mplayerLoadSubtitle( NULL );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
274 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
275 case evLoadAudioFile: gtkShow( evLoadAudioFile,NULL ); break;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
276 case evPrev: uiPrev(); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
277 case evNext: uiNext(); break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
278
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
279 case evPlayList: gtkShow( evPlayList,NULL ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
280 case evSkinBrowser: gtkShow( evSkinBrowser,skinName ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
281 case evAbout: gtkShow( evAbout,NULL ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
282 case evPreferences: gtkShow( evPreferences,NULL ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
283 case evEqualizer: gtkShow( evEqualizer,NULL ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
284
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
285 case evForward10min: uiRelSeek( 600 ); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
286 case evBackward10min: uiRelSeek( -600 );break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
287 case evForward1min: uiRelSeek( 60 ); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
288 case evBackward1min: uiRelSeek( -60 ); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
289 case evForward10sec: uiRelSeek( 10 ); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
290 case evBackward10sec: uiRelSeek( -10 ); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
291 case evSetMoviePosition: uiAbsSeek( param ); break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
292
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
293 case evIncVolume: vo_x11_putkey( wsGrayMul ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
294 case evDecVolume: vo_x11_putkey( wsGrayDiv ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
295 case evMute: mixer_mute( mixer ); break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
296
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
297 case evSetVolume:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
298 guiInfo.Volume=param;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
299 goto set_volume;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
300 case evSetBalance:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
301 guiInfo.Balance=param;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
302 set_volume:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
303 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
304 float l = guiInfo.Volume * ( ( 100.0 - guiInfo.Balance ) / 50.0 );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
305 float r = guiInfo.Volume * ( ( guiInfo.Balance ) / 50.0 );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
306 if ( l > guiInfo.Volume ) l=guiInfo.Volume;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
307 if ( r > guiInfo.Volume ) r=guiInfo.Volume;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
308 // printf( "!!! v: %.2f b: %.2f -> %.2f x %.2f\n",guiInfo.Volume,guiInfo.Balance,l,r );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
309 mixer_setvolume( mixer,l,r );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
310 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
311 if ( osd_level )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
312 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
313 osd_visible=(GetTimerMS() + 1000) | 1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
314 vo_osd_progbar_type=OSD_VOLUME;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
315 vo_osd_progbar_value=( ( guiInfo.Volume ) * 256.0 ) / 100.0;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
316 vo_osd_changed( OSDTYPE_PROGBAR );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
317 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
318 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
319
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
320
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
321 case evIconify:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
322 switch ( iparam )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
323 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
324 case 0: wsIconify( guiApp.mainWindow ); break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
325 case 1: wsIconify( guiApp.subWindow ); break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
326 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
327 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
328 case evHalfSize:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
329 btnSet( evFullScreen,btnReleased );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
330 if ( guiInfo.Playing )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
331 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
332 if ( guiApp.subWindow.isFullScreen )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
333 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
334 uiFullScreen();
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
335 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
336 wsResizeWindow( &guiApp.subWindow, guiInfo.MovieWidth / 2, guiInfo.MovieHeight / 2 );
33654
90f7a7266410 Use X11 Bool symbolic constant.
ib
parents: 33615
diff changeset
337 wsMoveWindow( &guiApp.subWindow, False,
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
338 ( wsMaxX - guiInfo.MovieWidth/2 )/2 + wsOrgX,
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
339 ( wsMaxY - guiInfo.MovieHeight/2 )/2 + wsOrgY );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
340 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
341 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
342 case evDoubleSize:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
343 btnSet( evFullScreen,btnReleased );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
344 if ( guiInfo.Playing )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
345 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
346 if ( guiApp.subWindow.isFullScreen )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
347 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
348 uiFullScreen();
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
349 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
350 wsResizeWindow( &guiApp.subWindow, guiInfo.MovieWidth * 2, guiInfo.MovieHeight * 2 );
33654
90f7a7266410 Use X11 Bool symbolic constant.
ib
parents: 33615
diff changeset
351 wsMoveWindow( &guiApp.subWindow, False,
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
352 ( wsMaxX - guiInfo.MovieWidth*2 )/2 + wsOrgX,
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
353 ( wsMaxY - guiInfo.MovieHeight*2 )/2 + wsOrgY );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
354 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
355 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
356 case evNormalSize:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
357 btnSet( evFullScreen,btnReleased );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
358 if ( guiInfo.Playing )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
359 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
360 if ( guiApp.subWindow.isFullScreen )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
361 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
362 uiFullScreen();
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
363 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
364 wsResizeWindow( &guiApp.subWindow, guiInfo.MovieWidth, guiInfo.MovieHeight );
33654
90f7a7266410 Use X11 Bool symbolic constant.
ib
parents: 33615
diff changeset
365 wsMoveWindow( &guiApp.subWindow, False,
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
366 ( wsMaxX - guiInfo.MovieWidth )/2 + wsOrgX,
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
367 ( wsMaxY - guiInfo.MovieHeight )/2 + wsOrgY );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
368 break;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
369 } else if ( !guiApp.subWindow.isFullScreen ) break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
370 case evFullScreen:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
371 if ( !guiInfo.Playing && !gtkShowVideoWindow ) break;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
372 uiFullScreen();
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
373 if ( guiApp.subWindow.isFullScreen ) btnSet( evFullScreen,btnPressed );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
374 else btnSet( evFullScreen,btnReleased );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
375 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
376
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
377 case evSetAspect:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
378 switch ( iparam )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
379 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
380 case 2: movie_aspect=16.0f / 9.0f; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
381 case 3: movie_aspect=4.0f / 3.0f; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
382 case 4: movie_aspect=2.35; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
383 case 1:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
384 default: movie_aspect=-1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
385 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
386 wsClearWindow( guiApp.subWindow );
27341
e7c989f7a7c9 Start unifying names of internal preprocessor directives.
diego
parents: 26458
diff changeset
387 #ifdef CONFIG_DVDREAD
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
388 if ( guiInfo.StreamType == STREAMTYPE_DVD || guiInfo.StreamType == STREAMTYPE_VCD ) goto play_dvd_2;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
389 else
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
390 #endif
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
391 guiInfo.NewPlay=1;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
392 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
393
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
394 // --- timer events
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
395 case evRedraw:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
396 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
397 unsigned now = GetTimerMS();
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
398 if ((now > last_redraw_time) &&
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
399 (now < last_redraw_time + GUI_REDRAW_WAIT) &&
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
400 !uiPlaybarFade)
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
401 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
402 last_redraw_time = now;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
403 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
404 uiMainRender=1;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
405 wsPostRedisplay( &guiApp.mainWindow );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
406 wsPostRedisplay( &guiApp.playbarWindow );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
407 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
408 // --- system events
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
409 #ifdef MP_DEBUG
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
410 case evNone:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
411 mp_msg( MSGT_GPLAYER,MSGL_STATUS,"[mw] event none received.\n" );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
412 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
413 default:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
414 mp_msg( MSGT_GPLAYER,MSGL_STATUS,"[mw] unknown event received ( %d,%.2f ).\n",msg,param );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
415 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
416 #endif
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
417 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
418 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
419
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
420 void uiMainMouseHandle( int Button,int X,int Y,int RX,int RY )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
421 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
422 static int itemtype = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
423 int i;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
424 wItem * item = NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
425 float value = 0.0f;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
426
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
427 static int SelectedItem = -1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
428 int currentselected = -1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
429
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
430 for ( i=0;i <= guiApp.IndexOfMainItems;i++ )
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
431 if ( ( guiApp.mainItems[i].pressed != btnDisabled )&&
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
432 ( wgIsRect( X,Y,guiApp.mainItems[i].x,guiApp.mainItems[i].y,guiApp.mainItems[i].x+guiApp.mainItems[i].width,guiApp.mainItems[i].y+guiApp.mainItems[i].height ) ) )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
433 { currentselected=i; break; }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
434
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
435 switch ( Button )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
436 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
437 case wsPMMouseButton:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
438 gtkShow( evHidePopUpMenu,NULL );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
439 uiShowMenu( RX,RY );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
440 itemtype=itPRMButton;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
441 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
442 case wsRMMouseButton:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
443 uiHideMenu( RX,RY,0 );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
444 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
445
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
446 case wsPLMouseButton:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
447 gtkShow( evHidePopUpMenu,NULL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
448 sx=X; sy=Y; boxMoved=1; itemtype=itPLMButton;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
449 SelectedItem=currentselected;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
450 if ( SelectedItem == -1 ) break;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
451 boxMoved=0;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
452 item=&guiApp.mainItems[SelectedItem];
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
453 itemtype=item->type;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
454 item->pressed=btnPressed;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
455 switch( item->type )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
456 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
457 case itButton:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
458 if ( ( SelectedItem > -1 ) &&
32911
e06fbdd8eb46 Clean up the wItem structure.
ib
parents: 32896
diff changeset
459 ( ( ( item->message == evPlaySwitchToPause && item->message == evPauseSwitchToPlay ) ) ||
e06fbdd8eb46 Clean up the wItem structure.
ib
parents: 32896
diff changeset
460 ( ( item->message == evPauseSwitchToPlay && item->message == evPlaySwitchToPause ) ) ) )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
461 { item->pressed=btnDisabled; }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
462 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
463 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
464 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
465 case wsRLMouseButton:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
466 boxMoved=0;
33107
eda3df3e4a9d Prevent an out-of-bounds array access.
ib
parents: 33002
diff changeset
467 if ( SelectedItem != -1 ) // NOTE TO MYSELF: only if itButton, itHPotmeter or itVPotmeter
eda3df3e4a9d Prevent an out-of-bounds array access.
ib
parents: 33002
diff changeset
468 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
469 item=&guiApp.mainItems[SelectedItem];
33108
5450a92ac4bd Cosmetic: Adjust indent.
ib
parents: 33107
diff changeset
470 item->pressed=btnReleased;
33107
eda3df3e4a9d Prevent an out-of-bounds array access.
ib
parents: 33002
diff changeset
471 }
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
472 SelectedItem=-1;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
473 if ( currentselected == - 1 ) { itemtype=0; break; }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
474 value=0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
475 switch( itemtype )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
476 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
477 case itPotmeter:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
478 case itHPotmeter:
32911
e06fbdd8eb46 Clean up the wItem structure.
ib
parents: 32896
diff changeset
479 btnModify( item->message,(float)( X - item->x ) / item->width * 100.0f );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
480 uiEventHandling( item->message,item->value );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
481 value=item->value;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
482 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
483 case itVPotmeter:
32911
e06fbdd8eb46 Clean up the wItem structure.
ib
parents: 32896
diff changeset
484 btnModify( item->message, ( 1. - (float)( Y - item->y ) / item->height) * 100.0f );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
485 uiEventHandling( item->message,item->value );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
486 value=item->value;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
487 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
488 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
489 uiEventHandling( item->message,value );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
490 itemtype=0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
491 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
492
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
493 case wsRRMouseButton:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
494 gtkShow( evShowPopUpMenu,NULL );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
495 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
496
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
497 // --- rolled mouse ... de szar :)))
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
498 case wsP5MouseButton: value=-2.5f; goto rollerhandled;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
499 case wsP4MouseButton: value= 2.5f;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
500 rollerhandled:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
501 item=&guiApp.mainItems[currentselected];
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
502 if ( ( item->type == itHPotmeter )||( item->type == itVPotmeter )||( item->type == itPotmeter ) )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
503 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
504 item->value+=value;
32911
e06fbdd8eb46 Clean up the wItem structure.
ib
parents: 32896
diff changeset
505 btnModify( item->message,item->value );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
506 uiEventHandling( item->message,item->value );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
507 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
508 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
509
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
510 // --- moving
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
511 case wsMoveMouse:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
512 item=&guiApp.mainItems[SelectedItem];
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
513 switch ( itemtype )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
514 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
515 case itPLMButton:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
516 wsMoveWindow( &guiApp.mainWindow,False,RX - abs( sx ),RY - abs( sy ) );
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
517 uiMainRender=0;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
518 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
519 case itPRMButton:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
520 uiMenuMouseHandle( X,Y,RX,RY );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
521 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
522 case itPotmeter:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
523 item->value=(float)( X - item->x ) / item->width * 100.0f;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
524 goto potihandled;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
525 case itVPotmeter:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
526 item->value=(1. - (float)( Y - item->y ) / item->height) * 100.0f;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
527 goto potihandled;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
528 case itHPotmeter:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
529 item->value=(float)( X - item->x ) / item->width * 100.0f;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
530 potihandled:
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
531 if ( item->value > 100.0f ) item->value=100.0f;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
532 if ( item->value < 0.0f ) item->value=0.0f;
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
533 uiEventHandling( item->message,item->value );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
534 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
535 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
536 break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
537 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
538 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
539
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
540 int keyPressed = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
541
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
542 void uiMainKeyHandle( int KeyCode,int Type,int Key )
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
543 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
544 int msg = evNone;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
545
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
546 if ( Type != wsKeyPressed ) return;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
547
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
548 if ( !Key )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
549 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
550 switch ( KeyCode )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
551 {
33524
7d5fd12b86e7 Add note on wsXFMM key definitions.
ib
parents: 33263
diff changeset
552 // NOTE TO MYSELF: This is only for the Acer AirKey V keyboard.
33536
fc1402410163 Remove support for Acer AirKey V keyboard multimedia keys.
ib
parents: 33535
diff changeset
553 /*case wsXFMMPrev: msg=evPrev; break;
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
554 case wsXFMMStop: msg=evStop; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
555 case wsXFMMPlay: msg=evPlaySwitchToPause; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
556 case wsXFMMNext: msg=evNext; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
557 case wsXFMMVolUp: msg=evIncVolume; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
558 case wsXFMMVolDown: msg=evDecVolume; break;
33536
fc1402410163 Remove support for Acer AirKey V keyboard multimedia keys.
ib
parents: 33535
diff changeset
559 case wsXFMMMute: msg=evMute; break;*/
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
560 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
561 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
562 else
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
563 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
564 switch ( Key )
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
565 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
566 case wsEnter: msg=evPlay; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
567 case wsXF86LowerVolume: msg=evDecVolume; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
568 case wsXF86RaiseVolume: msg=evIncVolume; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
569 case wsXF86Mute: msg=evMute; break;
33525
b32fcc18c9b4 Add support for multimedia pause key.
ib
parents: 33524
diff changeset
570 case wsXF86Pause:
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
571 case wsXF86Play: msg=evPlaySwitchToPause; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
572 case wsXF86Stop: msg=evStop; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
573 case wsXF86Prev: msg=evPrev; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
574 case wsXF86Next: msg=evNext; break;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
575 case wsXF86Media: msg=evLoad; break;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
576 case wsEscape:
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
577 if ( guiApp.subWindow.isFullScreen )
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
578 {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
579 if ( guiInfo.event_struct ) ((XEvent *)guiInfo.event_struct)->type=None;
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
580 uiEventHandling( evNormalSize,0 );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
581 return;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
582 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
583 default: vo_x11_putkey( Key ); return;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
584 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
585 }
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
586 if ( msg != evNone ) uiEventHandling( msg,0 );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
587 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
588
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
589 /* this will be used to handle Drag&Drop files */
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
590 void uiDandDHandler(int num,char** files)
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
591 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
592 struct stat buf;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
593 int f = 0;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
594
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
595 char* subtitles = NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
596 char* filename = NULL;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
597
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
598 if (num <= 0)
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
599 return;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
600
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
601
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
602 /* now fill it with new items */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
603 for(f=0; f < num; f++){
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
604 char* str = strdup( files[f] );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
605 plItem* item;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
606
24086
f5b32d12b691 remove gconvert_uri_to_filename() and use url_unescape_string() instead.
iive
parents: 23457
diff changeset
607 url_unescape_string(str, files[f]);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
608
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
609 if(stat(str,&buf) == 0 && S_ISDIR(buf.st_mode) == 0) {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
610 /* this is not a directory so try to play it */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
611 mp_msg( MSGT_GPLAYER,MSGL_V,"Received D&D %s\n",str );
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
612
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
613 /* check if it is a subtitle file */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
614 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
615 char* ext = strrchr(str,'.');
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
616 if (ext) {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
617 static char supported[] = "utf/sub/srt/smi/rt//txt/ssa/aqt/";
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
618 char* type;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
619 int len;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
620 if((len=strlen(++ext)) && (type=strstr(supported,ext)) &&\
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
621 (type-supported)%4 == 0 && *(type+len) == '/'){
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
622 /* handle subtitle file */
33739
9f6d46d325de Remove gfree() from interface.c.
ib
parents: 33738
diff changeset
623 nfree(subtitles);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
624 subtitles = str;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
625 continue;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
626 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
627 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
628 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
629
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
630 /* clear playlist */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
631 if (filename == NULL) {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
632 filename = files[f];
33742
e1539e14d60f Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents: 33739
diff changeset
633 listSet(gtkDelPl,NULL);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
634 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
635
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
636 item = calloc(1,sizeof(plItem));
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28051
diff changeset
637
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
638 /* FIXME: decompose file name ? */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
639 /* yes -- Pontscho */
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
640 if ( strrchr( str,'/' ) ) {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
641 char * s = strrchr( str,'/' ); *s=0; s++;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
642 item->name = gstrdup( s );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
643 item->path = gstrdup( str );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
644 } else {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
645 item->name = strdup(str);
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
646 item->path = strdup("");
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
647 }
33742
e1539e14d60f Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents: 33739
diff changeset
648 listSet(gtkAddPlItem,item);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
649 } else {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
650 mp_msg( MSGT_GPLAYER,MSGL_WARN,MSGTR_NotAFile,str );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
651 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
652 free( str );
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
653 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
654
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
655 if (filename) {
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
656 uiSetFileName( NULL,filename,STREAMTYPE_FILE );
33615
1f9a31d4f114 Replace all playback integer constants by their symbolic constants.
ib
parents: 33614
diff changeset
657 if ( guiInfo.Playing == GUI_PLAY ) uiEventHandling( evStop,0 );
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
658 uiEventHandling( evPlay,0 );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
659 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
660 if (subtitles) {
33739
9f6d46d325de Remove gfree() from interface.c.
ib
parents: 33738
diff changeset
661 nfree(guiInfo.Subtitlename);
33555
c5a19bbeac2b Cosmetic: Rename some GUI variables and functions.
ib
parents: 33548
diff changeset
662 guiInfo.Subtitlename = subtitles;
33763
03824cf8728d Cosmetic: Rename two functions that do MPlayer calls.
ib
parents: 33743
diff changeset
663 mplayerLoadSubtitle(guiInfo.Subtitlename);
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
664 }
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
665 }