* modules/video_output/directx: added support for the mouse gestures interface.
authorGildas Bazin <gbazin@videolan.org>
Tue, 4 Mar 2003 22:48:55 +0000 (22:48 +0000)
committerGildas Bazin <gbazin@videolan.org>
Tue, 4 Mar 2003 22:48:55 +0000 (22:48 +0000)
modules/video_output/directx/directx.c
modules/video_output/directx/events.c

index ec75497..d38baad 100644 (file)
@@ -2,7 +2,7 @@
  * vout.c: Windows DirectX video output display method
  *****************************************************************************
  * Copyright (C) 2001 VideoLAN
- * $Id: directx.c,v 1.13 2003/02/20 01:52:46 sigmunau Exp $
+ * $Id: directx.c,v 1.14 2003/03/04 22:48:55 gbazin Exp $
  *
  * Authors: Gildas Bazin <gbazin@netcourrier.com>
  *
@@ -61,8 +61,6 @@ DEFINE_GUID( IID_IDirectDrawSurface2, 0x57805885,0x6eec,0x11cf,0x94,0x41,0xa8,0x
 /*****************************************************************************
  * Local prototypes.
  *****************************************************************************/
-static void ToggleOnTop ();
-
 static int  OpenVideo  ( vlc_object_t * );
 static void CloseVideo ( vlc_object_t * );
 
index 3a3367a..a7dc35d 100644 (file)
@@ -2,7 +2,7 @@
  * events.c: Windows DirectX video output events handler
  *****************************************************************************
  * Copyright (C) 2001 VideoLAN
- * $Id: events.c,v 1.11 2003/02/01 18:54:10 sam Exp $
+ * $Id: events.c,v 1.12 2003/03/04 22:48:55 gbazin Exp $
  *
  * Authors: Gildas Bazin <gbazin@netcourrier.com>
  *
@@ -130,7 +130,47 @@ void DirectXEventThread( event_thread_t *p_event )
             ShowCursor( FALSE );
             break;
 
+        case WM_LBUTTONDOWN:
+            var_Get( p_event->p_vout, "mouse-button-down", &val );
+            val.i_int |= 1;
+            var_Set( p_event->p_vout, "mouse-button-down", val );
+            break;
+
+        case WM_LBUTTONUP:
+            var_Get( p_event->p_vout, "mouse-button-down", &val );
+            val.i_int &= ~1;
+            var_Set( p_event->p_vout, "mouse-button-down", val );
+
+            val.b_bool = VLC_TRUE;
+            var_Set( p_event->p_vout, "mouse-clicked", val );
+            break;
+
+        case WM_LBUTTONDBLCLK:
+            p_event->p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE;
+            break;
+
+        case WM_MBUTTONDOWN:
+            var_Get( p_event->p_vout, "mouse-button-down", &val );
+            val.i_int |= 2;
+            var_Set( p_event->p_vout, "mouse-button-down", val );
+            break;
+
+        case WM_MBUTTONUP:
+            var_Get( p_event->p_vout, "mouse-button-down", &val );
+            val.i_int &= ~2;
+            var_Set( p_event->p_vout, "mouse-button-down", val );
+            break;
+
+        case WM_RBUTTONDOWN:
+            var_Get( p_event->p_vout, "mouse-button-down", &val );
+            val.i_int |= 4;
+            var_Set( p_event->p_vout, "mouse-button-down", val );
+            break;
+
         case WM_RBUTTONUP:
+            var_Get( p_event->p_vout, "mouse-button-down", &val );
+            val.i_int &= ~4;
+            var_Set( p_event->p_vout, "mouse-button-down", val );
             {
                 intf_thread_t *p_intf;
                 p_intf = vlc_object_find( p_event, VLC_OBJECT_INTF,
@@ -143,18 +183,6 @@ void DirectXEventThread( event_thread_t *p_event )
             }
             break;
 
-        case WM_LBUTTONUP:
-            val.b_bool = VLC_TRUE;
-            var_Set( p_event->p_vout, "mouse-clicked", val );
-            break;
-
-        case WM_LBUTTONDOWN:
-            break;
-
-        case WM_LBUTTONDBLCLK:
-            p_event->p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE;
-            break;
-
         case WM_KEYDOWN:
             /* the key events are first processed here. The next
              * message processed by this main message loop will be the