Mercurial > mplayer.hg
comparison Gui/mplayer/mw.h @ 2851:b64fa5d25142
add roleld mouse support and some small bugfix. neked jol a testedbe.
author | pontscho |
---|---|
date | Mon, 12 Nov 2001 12:26:09 +0000 |
parents | 3248aabc6d1d |
children | fd44ecf77f8d |
comparison
equal
deleted
inserted
replaced
2850:2f1e40539fe2 | 2851:b64fa5d25142 |
---|---|
8 int mplMainAutoPlay = 0; | 8 int mplMainAutoPlay = 0; |
9 | 9 |
10 int mainVisible = 1; | 10 int mainVisible = 1; |
11 | 11 |
12 int boxMoved = 0; | 12 int boxMoved = 0; |
13 int msButton = 0; | |
14 int sx = 0,sy = 0; | 13 int sx = 0,sy = 0; |
15 int i,pot = 0; | 14 int i,pot = 0; |
16 | 15 |
17 char * Translate( char * str ) | 16 char * Translate( char * str ) |
18 { | 17 { |
92 case 'B': sprintf( tmp,"%3.1f",mplShMem->Balance ); strcat( trbuf,tmp ); break; | 91 case 'B': sprintf( tmp,"%3.1f",mplShMem->Balance ); strcat( trbuf,tmp ); break; |
93 case 'd': sprintf( tmp,"%d",mplShMem->FrameDrop ); strcat( trbuf,tmp ); break; | 92 case 'd': sprintf( tmp,"%d",mplShMem->FrameDrop ); strcat( trbuf,tmp ); break; |
94 case 's': if ( mplShMem->Playing == 0 ) strcat( trbuf,"s" ); break; | 93 case 's': if ( mplShMem->Playing == 0 ) strcat( trbuf,"s" ); break; |
95 case 'l': if ( mplShMem->Playing == 1 ) strcat( trbuf,"p" ); break; | 94 case 'l': if ( mplShMem->Playing == 1 ) strcat( trbuf,"p" ); break; |
96 case 'e': if ( mplShMem->Playing == 2 ) strcat( trbuf,"e" ); break; | 95 case 'e': if ( mplShMem->Playing == 2 ) strcat( trbuf,"e" ); break; |
97 case 'a': | 96 case 'a': |
98 switch ( mplShMem->AudioType ) | 97 switch ( mplShMem->AudioType ) |
99 { | 98 { |
100 case 0: strcat( trbuf,"n" ); break; | 99 case 0: strcat( trbuf,"n" ); break; |
101 case 1: strcat( trbuf,"m" ); break; | 100 case 1: strcat( trbuf,"m" ); break; |
102 case 2: strcat( trbuf,"t" ); break; | 101 case 2: strcat( trbuf,"t" ); break; |
103 } | 102 } |
104 break; | 103 break; |
105 case 'T': | 104 case 'T': |
106 switch ( mplShMem->StreamType ) | 105 switch ( mplShMem->StreamType ) |
107 { | 106 { |
108 case STREAMTYPE_FILE: strcat( trbuf,"f" ); break; | 107 case STREAMTYPE_FILE: strcat( trbuf,"f" ); break; |
109 case STREAMTYPE_VCD: strcat( trbuf,"v" ); break; | 108 case STREAMTYPE_VCD: strcat( trbuf,"v" ); break; |
110 case STREAMTYPE_STREAM: strcat( trbuf,"u" ); break; | 109 case STREAMTYPE_STREAM: strcat( trbuf,"u" ); break; |
111 case STREAMTYPE_DVD: strcat( trbuf,"d" ); break; | 110 case STREAMTYPE_DVD: strcat( trbuf,"d" ); break; |
112 default: strcat( trbuf," " ); break; | 111 default: strcat( trbuf," " ); break; |
113 } | 112 } |
114 break; | 113 break; |
115 case '$': strcat( trbuf,"$" ); break; | 114 case '$': strcat( trbuf,"$" ); break; |
116 default: continue; | 115 default: continue; |
117 } | 116 } |
118 c=strlen( trbuf ); | 117 c=strlen( trbuf ); |
119 } | 118 } |
160 { | 159 { |
161 case 2: | 160 case 2: |
162 case 0: | 161 case 0: |
163 btnModify( evPlaySwitchToPause,btnReleased ); | 162 btnModify( evPlaySwitchToPause,btnReleased ); |
164 btnModify( evPauseSwitchToPlay,btnDisabled ); | 163 btnModify( evPauseSwitchToPlay,btnDisabled ); |
165 break; | 164 break; |
166 case 1: | 165 case 1: |
167 if ( mplShMem->Filename[0] != 0 ) | 166 if ( mplShMem->Filename[0] != 0 ) |
168 { | 167 { |
169 btnModify( evPlaySwitchToPause,btnDisabled ); | 168 btnModify( evPlaySwitchToPause,btnDisabled ); |
170 btnModify( evPauseSwitchToPlay,btnReleased ); | 169 btnModify( evPauseSwitchToPlay,btnReleased ); |
171 } | 170 } |
172 } | 171 } |
173 | 172 |
174 // --- erosen ideiglenes. | 173 // --- erosen ideiglenes. |
175 strcpy( gtkShMem->fs.filename,mplShMem->Filename ); | 174 strcpy( gtkShMem->fs.filename,mplShMem->Filename ); |
176 // --- | 175 // --- |
177 | 176 |
186 case itButton: | 185 case itButton: |
187 PutImage( &item->Bitmap,item->x,item->y,3,item->pressed ); | 186 PutImage( &item->Bitmap,item->x,item->y,3,item->pressed ); |
188 break; | 187 break; |
189 case itPotmeter: | 188 case itPotmeter: |
190 PutImage( &item->Bitmap,item->x,item->y,item->phases,item->phases * ( item->value / 100.0f ) ); | 189 PutImage( &item->Bitmap,item->x,item->y,item->phases,item->phases * ( item->value / 100.0f ) ); |
191 break; | 190 break; |
192 case itHPotmeter: | 191 case itHPotmeter: |
193 PutImage( &item->Bitmap,item->x,item->y,item->phases,item->phases * ( item->value / 100.0f ) ); | 192 PutImage( &item->Bitmap,item->x,item->y,item->phases,item->phases * ( item->value / 100.0f ) ); |
194 PutImage( &item->Mask,item->x + (int)( ( item->width - item->psx ) * item->value / 100.0f ),item->y,3,item->pressed ); | 193 PutImage( &item->Mask,item->x + (int)( ( item->width - item->psx ) * item->value / 100.0f ),item->y,3,item->pressed ); |
195 break; | 194 break; |
196 case itSLabel: | 195 case itSLabel: |
197 image=fntRender( item->fontid,0,item->width,"%s",item->label ); | 196 image=fntRender( item->fontid,0,item->width,"%s",item->label ); |
198 goto drawrenderedtext; | 197 goto drawrenderedtext; |
199 case itDLabel: | 198 case itDLabel: |
200 image=fntRender( item->fontid,mplTimer%item->width,item->width,"%s",Translate( item->label ) ); | 199 image=fntRender( item->fontid,mplTimer%item->width,item->width,"%s",Translate( item->label ) ); |
228 { | 227 { |
229 // --- user events | 228 // --- user events |
230 case evExit: | 229 case evExit: |
231 // IZE("evExit"); | 230 // IZE("evExit"); |
232 wsDoExit(); // sets wsTrue=False; | 231 wsDoExit(); // sets wsTrue=False; |
233 exit_player( "Exit" ); | 232 exit_player( "Exit" ); |
234 break; | 233 break; |
235 case evIconify: | 234 case evIconify: |
236 switch ( (int)param ) | 235 switch ( (int)param ) |
237 { | 236 { |
238 case 0: wsIconify( appMPlayer.mainWindow ); break; | 237 case 0: wsIconify( appMPlayer.mainWindow ); break; |
239 case 1: wsIconify( appMPlayer.subWindow ); break; | 238 case 1: wsIconify( appMPlayer.subWindow ); break; |
240 } | 239 } |
241 break; | 240 break; |
242 case evFullScreen: | 241 case evFullScreen: |
243 IZE("evFullS"); | 242 IZE("evFullS"); |
244 for ( j=0;j<appMPlayer.NumberOfItems + 1;j++ ) | 243 for ( j=0;j<appMPlayer.NumberOfItems + 1;j++ ) |
245 { | 244 { |
338 case evSetMoviePosition: mplAbsSeek( param ); break; | 337 case evSetMoviePosition: mplAbsSeek( param ); break; |
339 | 338 |
340 case evIncVolume: vo_x11_putkey( wsGrayMul ); break; | 339 case evIncVolume: vo_x11_putkey( wsGrayMul ); break; |
341 case evDecVolume: vo_x11_putkey( wsGrayDiv ); break; | 340 case evDecVolume: vo_x11_putkey( wsGrayDiv ); break; |
342 case evMute: mplShMem->Mute=1; break; | 341 case evMute: mplShMem->Mute=1; break; |
343 case evSetVolume: | 342 case evSetVolume: |
344 case evSetBalance: mplShMem->VolumeChanged=1; break; | 343 case evSetBalance: mplShMem->VolumeChanged=1; break; |
345 | 344 |
346 | 345 |
347 case evNormalSize: | 346 case evNormalSize: |
348 if ( mplShMem->Playing ) | 347 if ( mplShMem->Playing ) |
349 { | 348 { |
350 appMPlayer.subWindow.isFullScreen=True; | 349 appMPlayer.subWindow.isFullScreen=True; |
351 appMPlayer.subWindow.OldX=( wsMaxX - moviewidth ) / 2; | 350 appMPlayer.subWindow.OldX=( wsMaxX - moviewidth ) / 2; |
352 appMPlayer.subWindow.OldY=( wsMaxY - movieheight ) / 2; | 351 appMPlayer.subWindow.OldY=( wsMaxY - movieheight ) / 2; |
353 appMPlayer.subWindow.OldWidth=moviewidth; appMPlayer.subWindow.OldHeight=movieheight; | 352 appMPlayer.subWindow.OldWidth=moviewidth; appMPlayer.subWindow.OldHeight=movieheight; |
354 wsFullScreen( &appMPlayer.subWindow ); | 353 wsFullScreen( &appMPlayer.subWindow ); |
355 mplResize( appMPlayer.subWindow.X,appMPlayer.subWindow.Y,moviewidth,movieheight ); | 354 mplResize( appMPlayer.subWindow.X,appMPlayer.subWindow.Y,moviewidth,movieheight ); |
356 } | 355 } |
357 break; | 356 break; |
358 case evDoubleSize: | 357 case evDoubleSize: |
359 if ( mplShMem->Playing ) | 358 if ( mplShMem->Playing ) |
360 { | 359 { |
361 appMPlayer.subWindow.isFullScreen=True; | 360 appMPlayer.subWindow.isFullScreen=True; |
362 appMPlayer.subWindow.OldX=( wsMaxX - moviewidth * 2 ) / 2; | 361 appMPlayer.subWindow.OldX=( wsMaxX - moviewidth * 2 ) / 2; |
363 appMPlayer.subWindow.OldY=( wsMaxY - movieheight * 2 ) / 2; | 362 appMPlayer.subWindow.OldY=( wsMaxY - movieheight * 2 ) / 2; |
364 appMPlayer.subWindow.OldWidth=moviewidth * 2; appMPlayer.subWindow.OldHeight=movieheight * 2; | 363 appMPlayer.subWindow.OldWidth=moviewidth * 2; appMPlayer.subWindow.OldHeight=movieheight * 2; |
365 wsFullScreen( &appMPlayer.subWindow ); | 364 wsFullScreen( &appMPlayer.subWindow ); |
366 mplResize( appMPlayer.subWindow.X,appMPlayer.subWindow.Y,moviewidth,movieheight ); | 365 mplResize( appMPlayer.subWindow.X,appMPlayer.subWindow.Y,moviewidth,movieheight ); |
367 } | 366 } |
368 break; | 367 break; |
369 | 368 |
370 // --- timer events | 369 // --- timer events |
371 case evHideMouseCursor: | 370 case evHideMouseCursor: |
372 wsVisibleMouse( &appMPlayer.subWindow,wsHideMouseCursor ); | 371 wsVisibleMouse( &appMPlayer.subWindow,wsHideMouseCursor ); |
373 break; | 372 break; |
374 case evRedraw: | 373 case evRedraw: |
375 mplMainRender=1; | 374 mplMainRender=1; |
376 wsPostRedisplay( &appMPlayer.mainWindow ); | 375 wsPostRedisplay( &appMPlayer.mainWindow ); |
377 // if ( !mplShMem->Playing ) | 376 // if ( !mplShMem->Playing ) |
378 // wsPostRedisplay( &appMPlayer.subWindow ); | 377 // wsPostRedisplay( &appMPlayer.subWindow ); |
379 XFlush( wsDisplay ); | 378 XFlush( wsDisplay ); |
380 mplRedrawTimer=mplRedrawTimerConst; | 379 mplRedrawTimer=mplRedrawTimerConst; |
381 break; | 380 break; |
382 case evGeneralTimer: | 381 case evGeneralTimer: |
383 if ( mplMainAutoPlay ) | 382 if ( mplMainAutoPlay ) |
384 { | 383 { |
385 mplMainRender=1; | 384 mplMainRender=1; |
395 dbprintf( 1,"[mw] unknown event received ( %d,%.2f ).\n",msg,param ); | 394 dbprintf( 1,"[mw] unknown event received ( %d,%.2f ).\n",msg,param ); |
396 break; | 395 break; |
397 } | 396 } |
398 } | 397 } |
399 | 398 |
399 #define itPLMButton (itNULL - 1) | |
400 #define itPRMButton (itNULL - 2) | |
401 | |
400 void mplMainMouseHandle( int Button,int X,int Y,int RX,int RY ) | 402 void mplMainMouseHandle( int Button,int X,int Y,int RX,int RY ) |
401 { | 403 { |
402 static int itemtype = 0; | 404 static int itemtype = 0; |
403 static int SelectedButton = -1; | 405 int i; |
404 wItem * item = NULL; | 406 wItem * item = NULL; |
405 float value = 0.0f; | 407 float value = 0.0f; |
408 | |
409 static int SelectedItem = -1; | |
410 int currentselected = -1; | |
411 | |
406 wsVisibleMouse( &appMPlayer.subWindow,wsShowMouseCursor ); | 412 wsVisibleMouse( &appMPlayer.subWindow,wsShowMouseCursor ); |
413 | |
414 for ( i=0;i < appMPlayer.NumberOfItems + 1;i++ ) | |
415 if ( ( appMPlayer.Items[i].pressed != btnDisabled )&& | |
416 ( wgIsRect( X,Y,appMPlayer.Items[i].x,appMPlayer.Items[i].y,appMPlayer.Items[i].x+appMPlayer.Items[i].width,appMPlayer.Items[i].y+appMPlayer.Items[i].height ) ) ) | |
417 { currentselected=i; break; } | |
418 | |
407 switch ( Button ) | 419 switch ( Button ) |
408 { | 420 { |
409 case wsPRMouseButton: | 421 case wsPRMouseButton: |
410 mplShowMenu( RX,RY ); | 422 mplShowMenu( RX,RY ); |
411 msButton=wsPRMouseButton; | 423 itemtype=itPRMButton; |
412 break; | 424 break; |
413 case wsRRMouseButton: | 425 case wsRRMouseButton: |
414 mplHideMenu( RX,RY ); | 426 mplHideMenu( RX,RY ); |
415 msButton=0; | |
416 break; | 427 break; |
428 | |
417 case wsPLMouseButton: | 429 case wsPLMouseButton: |
418 sx=X; sy=Y; | 430 sx=X; sy=Y; boxMoved=1; itemtype=itPLMButton; // if move the main window |
419 boxMoved=1; | 431 SelectedItem=currentselected; |
420 msButton=wsPLMouseButton; | 432 if ( SelectedItem == -1 ) break; // yeees, i'm move the fucking window |
421 for ( i=0;i < appMPlayer.NumberOfItems + 1;i++ ) | 433 boxMoved=0; mplMainRender=1; // No, not move the window, i'm pressed one button |
434 item=&appMPlayer.Items[SelectedItem]; | |
435 itemtype=item->type; | |
436 item->pressed=btnPressed; | |
437 item->used=1; | |
438 switch( item->type ) | |
422 { | 439 { |
423 item=&appMPlayer.Items[i]; | 440 case itButton: |
424 if ( item->pressed != btnDisabled ) | 441 if ( ( SelectedItem > -1 ) && |
425 { | 442 ( ( ( appMPlayer.Items[SelectedItem].msg == evPlaySwitchToPause && item->msg == evPauseSwitchToPlay ) ) || |
426 switch( item->type ) | 443 ( ( appMPlayer.Items[SelectedItem].msg == evPauseSwitchToPlay && item->msg == evPlaySwitchToPause ) ) ) ) |
427 { | 444 { appMPlayer.Items[SelectedItem].pressed=btnDisabled; } |
428 case itButton: | 445 break; |
429 if ( wgIsRect( X,Y, | |
430 item->x,item->y, | |
431 item->x+item->width,item->y+item->height ) ) | |
432 { | |
433 item->pressed=btnPressed; | |
434 mplMainRender=1; | |
435 SelectedButton=i; | |
436 msButton=0; | |
437 boxMoved=0; | |
438 } | |
439 if ( ( SelectedButton > -1 ) && | |
440 ( ( ( appMPlayer.Items[SelectedButton].msg == evPlaySwitchToPause && item->msg == evPauseSwitchToPlay ) ) || | |
441 ( ( appMPlayer.Items[SelectedButton].msg == evPauseSwitchToPlay && item->msg == evPlaySwitchToPause ) ) ) ) | |
442 { | |
443 appMPlayer.Items[SelectedButton].pressed=btnDisabled; | |
444 SelectedButton=i; | |
445 appMPlayer.Items[SelectedButton].pressed=btnPressed; | |
446 } | |
447 itemtype=itButton; | |
448 break; | |
449 case itPotmeter: | |
450 if ( wgIsRect( X,Y, | |
451 item->x,item->y, | |
452 item->x+item->width,item->y+item->height ) ) | |
453 { | |
454 item->pressed=btnPressed; | |
455 item->used=1; | |
456 mplMainRender=1; | |
457 SelectedButton=i; | |
458 boxMoved=0; | |
459 msButton=itPotmeter; | |
460 itemtype=itPotmeter; | |
461 } | |
462 break; | |
463 case itHPotmeter: | |
464 if ( wgIsRect( X,Y, | |
465 item->x,item->y, | |
466 item->x+item->width,item->y+item->height ) ) | |
467 { | |
468 item->pressed=btnPressed; | |
469 item->used=1; | |
470 mplMainRender=1; | |
471 SelectedButton=i; | |
472 boxMoved=0; | |
473 msButton=itHPotmeter; | |
474 itemtype=itHPotmeter; | |
475 } | |
476 break; | |
477 } | |
478 } | |
479 } | 446 } |
480 break; | 447 break; |
448 case wsRLMouseButton: | |
449 boxMoved=0; | |
450 item=&appMPlayer.Items[SelectedItem]; | |
451 item->pressed=btnReleased; | |
452 SelectedItem=-1; | |
453 if ( currentselected == - 1 ) { itemtype=0; break; } | |
454 value=0; | |
455 switch( itemtype ) | |
456 { | |
457 case itPotmeter: | |
458 case itHPotmeter: | |
459 item->used=0; | |
460 btnModify( item->msg,(float)( X - item->x ) / item->width * 100.0f ); | |
461 switch ( item->msg ) | |
462 { | |
463 case evSetVolume: | |
464 mplShMem->VolumeChanged=1; | |
465 mplShMem->Volume=item->value; | |
466 break; | |
467 } | |
468 value=item->value; | |
469 break; | |
470 } | |
471 mplMsgHandle( item->msg,value ); | |
472 mplMainRender=1; | |
473 itemtype=0; | |
474 break; | |
475 | |
476 // --- rolled mouse ... de szar :))) | |
477 case wsP5MouseButton: value=-2.5f; goto rollerhandled; | |
478 case wsP4MouseButton: value= 2.5f; | |
479 rollerhandled: | |
480 item=&appMPlayer.Items[currentselected]; | |
481 if ( ( item->type == itHPotmeter )||( item->type == itVPotmeter )||( item->type == itPotmeter ) ) | |
482 { | |
483 item->used=0; | |
484 item->value+=value; | |
485 btnModify( item->msg,item->value ); | |
486 switch ( item->msg ) | |
487 { | |
488 case evSetVolume: | |
489 mplShMem->VolumeChanged=1; | |
490 mplShMem->Volume=item->value; | |
491 break; | |
492 } | |
493 mplMsgHandle( item->msg,item->value ); | |
494 mplMainRender=1; | |
495 } | |
496 break; | |
497 | |
498 // --- moving | |
481 case wsMoveMouse: | 499 case wsMoveMouse: |
482 item=&appMPlayer.Items[SelectedButton]; | 500 item=&appMPlayer.Items[SelectedItem]; |
483 switch ( msButton ) | 501 switch ( itemtype ) |
484 { | 502 { |
485 case wsPLMouseButton: | 503 case itPLMButton: |
486 wsMoveWindow( &appMPlayer.mainWindow,RX - abs( sx ),RY - abs( sy ) ); | 504 wsMoveWindow( &appMPlayer.mainWindow,RX - abs( sx ),RY - abs( sy ) ); |
487 mplMainRender=0; | 505 mplMainRender=0; |
488 break; | 506 break; |
489 case wsPRMouseButton: | 507 case itPRMButton: |
490 mplMenuMouseHandle( X,Y,RX,RY ); | 508 mplMenuMouseHandle( X,Y,RX,RY ); |
491 break; | 509 break; |
492 case itPotmeter: | 510 case itPotmeter: |
493 item->value=(float)( X - item->x ) / item->width * 100.0f; | 511 item->value=(float)( X - item->x ) / item->width * 100.0f; |
494 goto potihandled; | 512 goto potihandled; |
495 case itHPotmeter: | 513 case itHPotmeter: |
496 item->value=(float)( X - item->x ) / item->width * 100.0f; | 514 item->value=(float)( X - item->x ) / item->width * 100.0f; |
497 potihandled: | 515 potihandled: |
498 if ( item->value > 100.0f ) item->value=100.0f; | 516 if ( item->value > 100.0f ) item->value=100.0f; |
499 if ( item->value < 0.0f ) item->value=0.0f; | 517 if ( item->value < 0.0f ) item->value=0.0f; |
500 if ( ( item->msg == evSetVolume )||( item->msg == evSetBalance ) ) | 518 switch ( item->msg ) |
501 { | 519 { |
502 mplShMem->VolumeChanged=1; | 520 case evSetVolume: |
503 mplShMem->Volume=item->value; | 521 mplShMem->VolumeChanged=1; |
504 } | 522 mplShMem->Volume=item->value; |
505 mplMsgHandle( item->msg,item->value ); | 523 break; |
524 } | |
525 mplMsgHandle( item->msg,item->value ); | |
506 mplMainRender=1; wsPostRedisplay( &appMPlayer.mainWindow ); | 526 mplMainRender=1; wsPostRedisplay( &appMPlayer.mainWindow ); |
507 break; | 527 break; |
508 } | 528 } |
509 break; | 529 break; |
510 case wsRLMouseButton: | |
511 msButton=0; | |
512 boxMoved=0; | |
513 item=&appMPlayer.Items[SelectedButton]; | |
514 item->pressed=btnReleased; | |
515 switch( itemtype ) | |
516 { | |
517 case itButton: | |
518 if ( wgIsRect( X,Y, | |
519 item->x,item->y, | |
520 item->x+item->width,item->y+item->height ) ) value=0; | |
521 break; | |
522 case itPotmeter: | |
523 case itHPotmeter: | |
524 item->used=0; | |
525 btnModify( item->msg,(float)( X - item->x ) / item->width * 100.0f ); | |
526 if ( ( item->msg == evSetVolume )||( item->msg == evSetBalance ) ) | |
527 { | |
528 mplShMem->VolumeChanged=1; | |
529 mplShMem->Volume=item->value; | |
530 } | |
531 value=item->value; | |
532 break; | |
533 } | |
534 if ( SelectedButton != -1 ) mplMsgHandle( item->msg,value ); | |
535 SelectedButton=-1; | |
536 mplMainRender=1; | |
537 itemtype=0; | |
538 break; | |
539 case wsPMMouseButton: break; | |
540 case wsRMMouseButton: break; | |
541 } | 530 } |
542 if ( Button != wsMoveMouse ) wsPostRedisplay( &appMPlayer.mainWindow ); | 531 if ( Button != wsMoveMouse ) wsPostRedisplay( &appMPlayer.mainWindow ); |
543 } | 532 } |
544 | 533 |
545 int keyPressed = 0; | 534 int keyPressed = 0; |
553 case '>': msg=evNext; break; | 542 case '>': msg=evNext; break; |
554 case ',': | 543 case ',': |
555 case '<': msg=evPrev; break; | 544 case '<': msg=evPrev; break; |
556 | 545 |
557 case wsEscape: msg=evExit; break; | 546 case wsEscape: msg=evExit; break; |
558 | |
559 // case wsUp: msg=evForward1min; break; | |
560 // case wsDown: msg=evBackward1min; break; | |
561 // case wsRight: msg=evForward10sec; break; | |
562 // case wsLeft: msg=evBackward10sec; break; | |
563 | |
564 // case wsGrayMul: msg=evIncVolume; break; | |
565 // case wsGrayDiv: msg=evDecVolume; break; | |
566 | 547 |
567 case wsEnter: msg=evPlay; break; | 548 case wsEnter: msg=evPlay; break; |
568 case wsSpace: msg=evPause; break; | 549 case wsSpace: msg=evPause; break; |
569 case wsa: | 550 case wsa: |
570 case wsA: msg=evAbout; break; | 551 case wsA: msg=evAbout; break; |
580 case wsM: msg=evMute; break; | 561 case wsM: msg=evMute; break; |
581 case wss: | 562 case wss: |
582 case wsS: msg=evStop; break; | 563 case wsS: msg=evStop; break; |
583 case wsp: | 564 case wsp: |
584 case wsP: msg=evPlayList; break; | 565 case wsP: msg=evPlayList; break; |
585 default: vo_x11_putkey( Key ); return; | 566 default: vo_x11_putkey( Key ); return; |
586 } | 567 } |
587 if ( ( msg != evNone )&&( Type == wsKeyPressed ) ) | 568 if ( ( msg != evNone )&&( Type == wsKeyPressed ) ) |
588 { | 569 { |
589 mplMsgHandle( msg,0 ); | 570 mplMsgHandle( msg,0 ); |
590 // mplMainRender=1; | 571 // mplMainRender=1; |