Mercurial > mplayer.hg
view Gui/mplayer/sw.c @ 14424:b3ab8fa3c3f5
synced to 1.22
author | gabrov |
---|---|
date | Sat, 08 Jan 2005 00:40:30 +0000 |
parents | bc24dd70c6e2 |
children | 4a56f15dee5f |
line wrap: on
line source
// sub window #include <inttypes.h> #include "../../config.h" #include "../../libvo/x11_common.h" #include "../../libvo/fastmemcpy.h" #include "../app.h" #include "../interface.h" #include "../../help_mp.h" #include "widgets.h" int mplSubRender = 0; int SubVisible = 0; extern int boxMoved; extern int sx,sy; extern int i,pot; void mplSubDraw( void ) { if ( appMPlayer.subWindow.State == wsWindowClosed ) exit_player( MSGTR_Exit_quit ); if ( appMPlayer.subWindow.State == wsWindowFocusIn ) SubVisible++; if ( appMPlayer.subWindow.State == wsWindowFocusOut && metacity_hack != 3 ) SubVisible--; if ( !appMPlayer.subWindow.Mapped || appMPlayer.subWindow.Visible == wsWindowNotVisible ) return; if ( guiIntfStruct.Playing ) mplSubRender=0; if ( mplSubRender && appMPlayer.subWindow.State == wsWindowExpose ) { if ( appMPlayer.sub.Bitmap.Image ) wsPutImage( &appMPlayer.subWindow ); } appMPlayer.subWindow.State=0; } void mplSubMouseHandle( int Button,int X,int Y,int RX,int RY ) { static int mplSubMoved = 0; static int msButton = 0; mplPBShow( X,Y ); switch( Button ) { case wsPRMouseButton: gtkShow( evShowPopUpMenu,NULL ); break; case wsPMMouseButton: gtkShow( evHidePopUpMenu,NULL ); mplShowMenu( RX,RY ); msButton=wsPMMouseButton; break; case wsRMMouseButton: mplHideMenu( RX,RY,1 ); msButton=0; break; // --- case wsPLMouseButton: gtkShow( evHidePopUpMenu,NULL ); sx=X; sy=Y; msButton=wsPLMouseButton; mplSubMoved=0; break; case wsMoveMouse: switch ( msButton ) { case wsPLMouseButton: mplSubMoved=1; if ( !appMPlayer.subWindow.isFullScreen ) wsMoveWindow( &appMPlayer.subWindow,False,RX - sx,RY - sy ); break; case wsPMMouseButton: mplMenuMouseHandle( X,Y,RX,RY ); break; default: mplPBShow( X,Y ); break; } break; case wsRLMouseButton: if ( ( !mplSubMoved )&&( appMPlayer.subWindow.isFullScreen ) ) { if( SubVisible++%2 ) wsMoveTopWindow( wsDisplay,appMPlayer.mainWindow.WindowID ); else wsMoveTopWindow( wsDisplay,appMPlayer.subWindow.WindowID ); } msButton=0; mplSubMoved=0; break; } }