annotate Gui/mplayer/mw.h @ 1707:216aae08226c

misc fixes/cleanup, Skin path stuff fixed
author arpi
date Sun, 26 Aug 2001 21:04:40 +0000
parents d237c5d4b216
children 5e4214a7540e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1693
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
1
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
2 // main window
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
3
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
4 #include "mixer.h"
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
5
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
6 unsigned char * mplDrawBuffer = NULL;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
7 int mplMainRender = 1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
8 int mplMainAutoPlay = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
9
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
10 int mainVisible = 1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
11
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
12 int boxMoved = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
13 int msButton = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
14 int sx = 0,sy = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
15 int i,pot = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
16
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
17 char * Translate( char * str )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
18 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
19 static char trbuf[512];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
20 char tmp[128];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
21 int i,c;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
22 int t,h,m,s;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
23 memset( trbuf,0,512 );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
24 memset( tmp,0,128 );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
25 for ( c=0,i=0;i < strlen( str );i++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
26 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
27 if ( str[i] != '$' ) { trbuf[c++]=str[i]; trbuf[c]=0; }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
28 else
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
29 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
30 switch ( str[++i] )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
31 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
32 case 't':
1707
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
33 sprintf( tmp,"%02d",mplShMem->Track ); strcat( trbuf,tmp );
1693
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
34 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
35 case 'f':
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
36 if ( strlen( gtkShMem->fs.filename ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
37 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
38 int i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
39 strcpy( tmp,gtkShMem->fs.filename );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
40 for ( i=0;i < strlen( tmp );i++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
41 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
42 t=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
43 if ( ( tmp[i] >= 'A' )&&( tmp[i] <= 'Z' ) ) t=32;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
44 tmp[i]=(char)( tmp[i] + t );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
45 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
46 if ( tmp[strlen( tmp ) - 4] == '.' ) tmp[strlen( tmp ) - 4]=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
47 if ( tmp[strlen( tmp ) - 5] == '.' ) tmp[strlen( tmp ) - 5]=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
48 } else strcpy( tmp,"no file loaded" );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
49 strcat( trbuf,tmp );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
50 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
51 case 'F':
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
52 if ( strlen( gtkShMem->fs.filename ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
53 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
54 int i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
55 strcpy( tmp,gtkShMem->fs.filename );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
56 for ( i=0;i < strlen( tmp );i++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
57 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
58 char t = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
59 if ( ( tmp[i] >= 'a' )&&( tmp[i] <= 'z' ) ) t=32;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
60 tmp[i]=tmp[i] - t;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
61 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
62 if ( tmp[strlen( tmp ) - 4] == '.' ) tmp[strlen( tmp ) - 4]=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
63 if ( tmp[strlen( tmp ) - 5] == '.' ) tmp[strlen( tmp ) - 5]=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
64 } else strcpy( tmp,"NO FILE LOADED" );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
65 strcat( trbuf,tmp );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
66 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
67 case 'o':
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
68 if ( strlen( gtkShMem->fs.filename ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
69 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
70 strcat( trbuf,gtkShMem->fs.filename );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
71 if ( trbuf[strlen( trbuf ) - 4] == '.' ) trbuf[strlen( trbuf ) - 4]=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
72 if ( trbuf[strlen( trbuf ) - 5] == '.' ) trbuf[strlen( trbuf ) - 5]=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
73 } else strcat( trbuf,"no file loaded" );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
74 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
75 case '6': t=mplShMem->LengthInSec; goto calclengthhhmmss;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
76 case '1': t=mplShMem->TimeSec;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
77 calclengthhhmmss:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
78 s=t%60; t=( t - s ) / 60; m=t%60; h=t/60;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
79 sprintf( tmp,"%02d:%02d:%02d",h,m,s ); strcat( trbuf,tmp );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
80 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
81 case '7': t=mplShMem->LengthInSec; goto calclengthmmmmss;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
82 case '2': t=mplShMem->TimeSec;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
83 calclengthmmmmss:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
84 s=t%60; m=( ( t - s ) / 60 ) % 60;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
85 sprintf( tmp,"%04d:%02d",m,s ); strcat( trbuf,tmp );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
86 break;
1707
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
87 case '3': sprintf( tmp,"%02d",( mplShMem->TimeSec - ( mplShMem->TimeSec % 60 ) ) / 3600 ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
88 case '4': sprintf( tmp,"%02d",( ( mplShMem->TimeSec - ( mplShMem->TimeSec % 60 ) ) / 60 ) % 60 ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
89 case '5': sprintf( tmp,"%02d",mplShMem->TimeSec % 60 ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
90 case 'v': sprintf( tmp,"%3.2f%%",mplShMem->Volume ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
91 case 'V': sprintf( tmp,"%3.1f",mplShMem->Volume ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
92 case 'b': sprintf( tmp,"%3.2f%%",mplShMem->Balance ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
93 case 'B': sprintf( tmp,"%3.1f",mplShMem->Balance ); strcat( trbuf,tmp ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
94 case 's': if ( mplShMem->Playing == 0 ) strcat( trbuf,"s" ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
95 case 'l': if ( mplShMem->Playing == 1 ) strcat( trbuf,"p" ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
96 case 'e': if ( mplShMem->Playing == 2 ) strcat( trbuf,"e" ); break;
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
97 case '$': strcat( trbuf,"$" ); break;
1693
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
98 default: continue;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
99 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
100 c=strlen( trbuf );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
101 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
102 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
103 return trbuf;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
104 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
105
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
106 void PutImage( txSample * bf,int x,int y,int max,int ofs )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
107 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
108 int i=0,ix,iy;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
109 unsigned long * buf = NULL;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
110 unsigned long * drw = NULL;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
111 unsigned long tmp;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
112
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
113 if ( ( !bf )||( bf->Image == NULL ) ) return;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
114
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
115 i=( bf->Width * ( bf->Height / max ) ) * ofs;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
116 buf=(unsigned long *)mplDrawBuffer;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
117 drw=(unsigned long *)bf->Image;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
118
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
119 for ( iy=y;iy < y+bf->Height / max;iy++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
120 for ( ix=x;ix < x+bf->Width;ix++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
121 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
122 tmp=drw[i++];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
123 if ( tmp != 0x00ff00ff )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
124 buf[ iy*appMPlayer.main.Bitmap.Width+ix ]=tmp;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
125 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
126 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
127
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
128 void mplMainDraw( wsParamDisplay )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
129 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
130 wItem * item;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
131 txSample * image = NULL;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
132 int i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
133 char * tmp;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
134
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
135 if ( appMPlayer.mainWindow.Visible == wsWindowNotVisible ||
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
136 !mainVisible ||
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
137 !appMPlayer.mainWindow.Mapped ) return;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
138
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
139 if ( mplMainRender )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
140 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
141 memcpy( mplDrawBuffer,appMPlayer.main.Bitmap.Image,appMPlayer.main.Bitmap.ImageSize );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
142 for( i=0;i < appMPlayer.NumberOfItems + 1;i++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
143 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
144 item=&appMPlayer.Items[i];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
145 switch( item->type )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
146 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
147 case itButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
148 PutImage( &item->Bitmap,item->x,item->y,3,item->pressed );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
149 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
150 case itHPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
151 PutImage( &item->Bitmap,item->x,item->y,item->phases,item->phases * ( item->value / 100.0f ) );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
152 PutImage( &item->Mask,item->x + (int)( ( item->width - item->psx ) * item->value / 100.0f ),item->y,3,item->pressed );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
153 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
154 case itPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
155 PutImage( &item->Bitmap,item->x,item->y,item->phases,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
156 item->phases * ( item->value / 100.0f ) );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
157 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
158 case itSLabel:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
159 image=fntRender( item->fontid,0,item->width,"%s",item->label );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
160 goto drawrenderedtext;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
161 case itDLabel:
1707
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
162 // image=fntRender( item->fontid,( mplTimer / 10 )%item->width,item->width,"%s",Translate( item->label ) );
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
163 image=fntRender( item->fontid,( mplRedrawTimer / 10 )%item->width,item->width,"%s",Translate( item->label ) );
1693
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
164 drawrenderedtext:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
165 PutImage( image,item->x,item->y,1,0 );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
166 if ( image )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
167 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
168 if ( image->Image ) free( image->Image );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
169 free( image );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
170 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
171 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
172 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
173 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
174 wsConvert( &appMPlayer.mainWindow,mplDrawBuffer,appMPlayer.main.Bitmap.ImageSize );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
175 mplMainRender=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
176 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
177 wsPutImage( &appMPlayer.mainWindow );
1707
216aae08226c misc fixes/cleanup, Skin path stuff fixed
arpi
parents: 1693
diff changeset
178 XFlush( wsDisplay );
1693
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
179 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
180
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
181 void mplMsgHandle( int msg,float param )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
182 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
183 int j;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
184
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
185 switch( msg )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
186 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
187 // --- user events
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
188 case evExit:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
189 wsDoExit();
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
190 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
191 case evIconify:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
192 wsIconify( appMPlayer.mainWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
193 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
194 case evFullScreen:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
195 for ( j=0;j<appMPlayer.NumberOfItems + 1;j++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
196 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
197 if ( appMPlayer.Items[j].msg == evFullScreen )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
198 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
199 appMPlayer.Items[j].tmp=!appMPlayer.Items[j].tmp;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
200 appMPlayer.Items[j].pressed=appMPlayer.Items[j].tmp;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
201 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
202 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
203 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
204 mplFullScreen();
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
205 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
206
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
207 case evPlaySwitchToPause:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
208 if ( Filename )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
209 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
210 btnModify( evPlaySwitchToPause,btnDisabled );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
211 btnModify( evPauseSwitchToPlay,btnReleased );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
212 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
213 if ( mplShMem->Playing == 1 ) goto NoPause;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
214 case evPlay:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
215 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
216 mplPlay();
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
217 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
218
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
219 case evPauseSwitchToPlay:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
220 btnModify( evPlaySwitchToPause,btnReleased );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
221 btnModify( evPauseSwitchToPlay,btnDisabled );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
222 case evPause:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
223 NoPause:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
224 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
225 mplPause();
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
226 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
227
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
228 case evStop:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
229 btnModify( evPlaySwitchToPause,btnReleased );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
230 btnModify( evPauseSwitchToPlay,btnDisabled );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
231 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
232 mplStop();
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
233 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
234
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
235 case evLoadPlay:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
236 mplMainAutoPlay=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
237 case evLoad:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
238 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
239 gtkSendMessage( evLoad );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
240 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
241 case evPrev:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
242 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
243 #ifdef DEBUG
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
244 dbprintf( 1,"[mw.h] previous stream ...\n" );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
245 #endif
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
246 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
247 case evNext:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
248 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
249 #ifdef DEBUG
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
250 dbprintf( 1,"[mw.h] next stream ...\n" );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
251 #endif
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
252 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
253
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
254 case evPlayList:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
255 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
256 if ( gtkVisiblePlayList )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
257 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
258 btnModify( evPlayList,btnReleased );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
259 gtkShMem->vs.window=evPlayList;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
260 gtkSendMessage( evHideWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
261 gtkVisiblePlayList=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
262 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
263 else
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
264 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
265 gtkSendMessage( evPlayList );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
266 btnModify( evPlayList,btnPressed );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
267 gtkVisiblePlayList=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
268 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
269 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
270
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
271 case evSkinBrowser: gtkSendMessage( evSkinBrowser ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
272 case evAbout: gtkSendMessage( evAbout ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
273 case evPreferences: gtkSendMessage( evPreferences ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
274
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
275 case evForward1min: mplRelSeek( 60 ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
276 case evBackward1min: mplRelSeek( -60 ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
277 case evForward10sec: mplRelSeek( 10 ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
278 case evBackward10sec: mplRelSeek( -10 ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
279 case evSetMoviePosition: mplAbsSeek( param ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
280
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
281 case evIncVolume: mixerIncVolume(); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
282 case evDecVolume: mixerDecVolume(); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
283 case evSetVolume: mixerSetVolume( param ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
284 case evSetBalance: mixerSetBalance( param ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
285 case evMute: mixerMute(); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
286
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
287 case evIncAudioBufDelay: mplIncAudioBufDelay(); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
288 case evDecAudioBufDelay: mplDecAudioBufDelay(); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
289
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
290 case evNormalSize: if ( mplShMem->Playing ) wsResizeWindow( &appMPlayer.subWindow,mplwidth,mplheight ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
291 case evDoubleSize: if ( mplShMem->Playing ) wsResizeWindow( &appMPlayer.subWindow,mplwidth * 2,mplheight * 2 ); break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
292
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
293 // --- timer events
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
294 case evHideMouseCursor:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
295 wsVisibleMouse( &appMPlayer.subWindow,wsHideMouseCursor );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
296 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
297 case evRedraw:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
298 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
299 wsPostRedisplay( &appMPlayer.mainWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
300 if ( !mplShMem->Playing ) wsPostRedisplay( &appMPlayer.subWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
301 XFlush( wsDisplay );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
302 mplRedrawTimer=mplRedrawTimerConst;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
303 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
304 case evGeneralTimer:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
305 if ( mplMainAutoPlay )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
306 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
307 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
308 mplMainAutoPlay=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
309 mplPlay();
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
310 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
311 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
312 // --- system events
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
313 case evNone:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
314 dbprintf( 1,"[mw] event none received.\n" );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
315 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
316 default:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
317 dbprintf( 1,"[mw] unknown event received ( %d,%.2f ).\n",msg,param );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
318 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
319 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
320 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
321
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
322 void mplMainMouseHandle( int Button,int X,int Y,int RX,int RY )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
323 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
324 static int itemtype = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
325 static int SelectedButton = -1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
326 wItem * item = NULL;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
327 float value = 0.0f;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
328 wsVisibleMouse( &appMPlayer.subWindow,wsShowMouseCursor );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
329 switch ( Button )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
330 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
331 case wsPRMouseButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
332 mplShowMenu( RX,RY );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
333 msButton=wsPRMouseButton;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
334 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
335 case wsRRMouseButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
336 mplHideMenu( RX,RY );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
337 msButton=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
338 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
339 case wsPLMouseButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
340 sx=X; sy=Y;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
341 boxMoved=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
342 msButton=wsPLMouseButton;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
343 for ( i=0;i < appMPlayer.NumberOfItems + 1;i++ )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
344 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
345 item=&appMPlayer.Items[i];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
346 if ( item->pressed != btnDisabled )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
347 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
348 switch( item->type )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
349 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
350 case itButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
351 if ( wgIsRect( X,Y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
352 item->x,item->y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
353 item->x+item->width,item->y+item->height ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
354 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
355 item->pressed=btnPressed;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
356 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
357 SelectedButton=i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
358 msButton=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
359 boxMoved=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
360 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
361 if ( ( SelectedButton > -1 ) &&
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
362 ( ( ( appMPlayer.Items[SelectedButton].msg == evPlaySwitchToPause && item->msg == evPauseSwitchToPlay ) ) ||
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
363 ( ( appMPlayer.Items[SelectedButton].msg == evPauseSwitchToPlay && item->msg == evPlaySwitchToPause ) ) ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
364 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
365 appMPlayer.Items[SelectedButton].pressed=btnDisabled;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
366 SelectedButton=i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
367 appMPlayer.Items[SelectedButton].pressed=btnPressed;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
368 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
369 itemtype=itButton;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
370 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
371 case itPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
372 if ( wgIsRect( X,Y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
373 item->x,item->y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
374 item->x+item->width,item->y+item->height ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
375 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
376 item->pressed=btnPressed;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
377 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
378 SelectedButton=i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
379 boxMoved=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
380 msButton=itPotmeter;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
381 itemtype=itPotmeter;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
382 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
383 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
384 case itHPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
385 if ( wgIsRect( X,Y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
386 item->x,item->y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
387 item->x+item->width,item->y+item->height ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
388 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
389 item->pressed=btnPressed;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
390 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
391 SelectedButton=i;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
392 boxMoved=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
393 msButton=itHPotmeter;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
394 itemtype=itHPotmeter;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
395 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
396 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
397 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
398 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
399 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
400 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
401 case wsMoveMouse:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
402 item=&appMPlayer.Items[SelectedButton];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
403 switch ( msButton )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
404 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
405 case wsPLMouseButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
406 wsMoveWindow( &appMPlayer.mainWindow,RX - abs( sx ),RY - abs( sy ) );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
407 mplMainRender=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
408 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
409 case wsPRMouseButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
410 mplMenuMouseHandle( X,Y,RX,RY );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
411 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
412 case itPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
413 value=(float)( X - item->x ) / item->width * 100.0f;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
414 goto potihandled;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
415 case itHPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
416 value=(float)( X - item->x ) / item->width * 100.0f;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
417 potihandled:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
418 btnModify( item->msg,value );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
419 if ( ( item->msg == evSetVolume )||( item->msg == evSetBalance ) ) mplMsgHandle( item->msg,item->value );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
420 mplMainRender=1; wsPostRedisplay( &appMPlayer.mainWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
421 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
422 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
423 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
424 case wsRLMouseButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
425 msButton=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
426 boxMoved=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
427 item=&appMPlayer.Items[SelectedButton];
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
428 item->pressed=btnReleased;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
429 switch( itemtype )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
430 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
431 case itButton:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
432 if ( wgIsRect( X,Y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
433 item->x,item->y,
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
434 item->x+item->width,item->y+item->height ) ) value=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
435 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
436 case itPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
437 case itHPotmeter:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
438 btnModify( item->msg,(float)( X - item->x ) / item->width * 100.0f );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
439 value=item->value;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
440 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
441 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
442 if ( SelectedButton != -1 ) mplMsgHandle( item->msg,value );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
443 SelectedButton=-1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
444 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
445 itemtype=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
446 break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
447 case wsPMMouseButton: break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
448 case wsRMMouseButton: break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
449 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
450 if ( Button != wsMoveMouse ) wsPostRedisplay( &appMPlayer.mainWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
451 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
452
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
453 int keyPressed = 0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
454
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
455 void mplMainKeyHandle( int State,int Type,int Key )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
456 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
457 int msg = evNone;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
458 switch ( Key )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
459 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
460 case '.':
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
461 case '>': msg=evNext; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
462 case ',':
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
463 case '<': msg=evPrev; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
464
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
465 case wsx:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
466 case wsX:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
467 case wsEscape: msg=evExit; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
468
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
469 case wsUp: msg=evForward1min; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
470 case wsDown: msg=evBackward1min; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
471 case wsRight: msg=evForward10sec; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
472 case wsLeft: msg=evBackward10sec; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
473
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
474 case wsGrayMul: msg=evIncVolume; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
475 case wsGrayDiv: msg=evDecVolume; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
476
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
477 case wsGrayPlus: msg=evIncAudioBufDelay; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
478 case wsGrayMinus: msg=evDecAudioBufDelay; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
479
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
480 case wsEnter: msg=evPlay; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
481 case wsSpace: msg=evPause; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
482 case wsa:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
483 case wsA: msg=evAbout; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
484 case wsb:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
485 case wsB: msg=evSkinBrowser; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
486 case wse:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
487 case wsE: msg=evEqualeaser; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
488 case wsf:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
489 case wsF: msg=evFullScreen; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
490 case wsl:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
491 case wsL: msg=evLoad; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
492 case wsm:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
493 case wsM: msg=evMute; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
494 case wss:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
495 case wsS: msg=evStop; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
496 case wsp:
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
497 case wsP: msg=evPlayList; break;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
498 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
499 if ( ( msg != evNone )&&( Type == wsKeyPressed ) )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
500 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
501 mplMsgHandle( msg,0 );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
502 mplMainRender=1;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
503 wsPostRedisplay( &appMPlayer.mainWindow );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
504 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
505 }