1693
|
1
|
|
2 // sub window
|
|
3
|
|
4 int mplSubRender = 1;
|
1812
|
5
|
1693
|
6 void mplSubDraw( wsParamDisplay )
|
|
7 {
|
1823
|
8
|
1812
|
9 // if ( ( appMPlayer.subWindow.Visible == wsWindowNotVisible )||
|
|
10 // ( appMPlayer.subWindow.State != wsWindowExpose ) ) return;
|
1798
|
11
|
1812
|
12 if ( ( mplShMem->Playing ) )//&&( appMPlayer.subWindow.State == wsWindowExpose ) )
|
1798
|
13 {
|
|
14 vo_expose=1;
|
1812
|
15 mplSubRender=0;
|
1798
|
16 }
|
1693
|
17
|
|
18 if ( mplSubRender )
|
|
19 {
|
1815
|
20 wsSetForegroundRGB( &appMPlayer.subWindow,appMPlayer.subR,appMPlayer.subG,appMPlayer.subB );
|
|
21 XFillRectangle( wsDisplay,appMPlayer.subWindow.WindowID,appMPlayer.subWindow.wGC,0,0,
|
|
22 appMPlayer.subWindow.Width,appMPlayer.subWindow.Height );
|
1798
|
23 if ( appMPlayer.sub.Bitmap.Image )
|
|
24 {
|
|
25 wsConvert( &appMPlayer.subWindow,appMPlayer.sub.Bitmap.Image,appMPlayer.sub.Bitmap.ImageSize );
|
|
26 wsPutImage( &appMPlayer.subWindow );
|
|
27 }
|
1729
|
28 XFlush( wsDisplay );
|
1693
|
29 }
|
1812
|
30 appMPlayer.subWindow.State=0;
|
1693
|
31 }
|
|
32
|
|
33 void mplSubMouseHandle( int Button,int X,int Y,int RX,int RY )
|
|
34 {
|
1812
|
35 static int mplSubMoved = 0;
|
|
36
|
1693
|
37 mplMouseTimer=mplMouseTimerConst;
|
|
38 wsVisibleMouse( &appMPlayer.subWindow,wsShowMouseCursor );
|
|
39
|
|
40 switch( Button )
|
|
41 {
|
|
42 case wsPRMouseButton:
|
|
43 mplShowMenu( RX,RY );
|
|
44 msButton=wsPRMouseButton;
|
|
45 break;
|
|
46 case wsRRMouseButton:
|
|
47 mplHideMenu( RX,RY );
|
|
48 msButton=0;
|
|
49 break;
|
1812
|
50 // ---
|
1693
|
51 case wsPLMouseButton:
|
|
52 sx=X; sy=Y;
|
|
53 msButton=wsPLMouseButton;
|
|
54 mplSubMoved=0;
|
|
55 break;
|
|
56 case wsMoveMouse:
|
|
57 switch ( msButton )
|
|
58 {
|
|
59 case wsPLMouseButton:
|
|
60 mplSubMoved=1;
|
1778
|
61 if ( !appMPlayer.subWindow.isFullScreen ) wsMoveWindow( &appMPlayer.subWindow,RX - sx,RY - sy );
|
1693
|
62 break;
|
|
63 case wsPRMouseButton:
|
|
64 mplMenuMouseHandle( X,Y,RX,RY );
|
|
65 mplMouseTimer=mplMouseTimerConst;
|
|
66 break;
|
|
67 }
|
|
68 break;
|
|
69 case wsRLMouseButton:
|
|
70 msButton=0;
|
|
71 mplSubMoved=0;
|
|
72 break;
|
|
73 }
|
|
74 }
|