]> git.sesse.net Git - vlc/blobdiff - modules/video_output/directx/vout.h
Copyright fixes
[vlc] / modules / video_output / directx / vout.h
index 3fbfec36104e6a4062a985ea37adab1bd422e3b6..f8efacd462ada2166b01dc43e847119d25970dc5 100644 (file)
@@ -1,7 +1,7 @@
 /*****************************************************************************
  * vout.h: Windows DirectX video output header file
  *****************************************************************************
- * Copyright (C) 2001-2004 VideoLAN
+ * Copyright (C) 2001-2004 VideoLAN (Centrale Réseaux) and its contributors
  * $Id$
  *
  * Authors: Gildas Bazin <gbazin@videolan.org>
@@ -49,6 +49,7 @@ struct vout_sys_t
     HWND                 hwnd;                  /* Handle of the main window */
     HWND                 hvideownd;        /* Handle of the video sub-window */
     HWND                 hparent;             /* Handle of the parent window */
+    HWND                 hfswnd;          /* Handle of the fullscreen window */
     WNDPROC              pf_wndproc;             /* Window handling callback */
 
     /* Multi-monitor support */
@@ -71,6 +72,7 @@ struct vout_sys_t
     int          i_window_y;
     int          i_window_width;
     int          i_window_height;
+    int          i_window_style;
 
     /* Coordinates of src and dest images (used when blitting to display) */
     RECT         rect_src;
@@ -100,6 +102,15 @@ struct vout_sys_t
     /* Misc */
     vlc_bool_t      b_on_top_change;
 
+    vlc_bool_t      b_wallpaper;
+    COLORREF        color_bkg;
+    COLORREF        color_bkgtxt;
+
+#ifdef MODULE_NAME_IS_glwin32
+    HDC hGLDC;
+    HGLRC hGLRC;
+#endif
+
     event_thread_t *p_event;
     vlc_mutex_t    lock;
 };
@@ -120,20 +131,76 @@ struct picture_sys_t
 /*****************************************************************************
  * Prototypes from vout.c
  *****************************************************************************/
-int DirectXUpdateOverlay( vout_thread_t *p_vout );
+int E_(DirectXUpdateOverlay)( vout_thread_t *p_vout );
 
 /*****************************************************************************
  * Prototypes from events.c
  *****************************************************************************/
-void DirectXEventThread ( event_thread_t *p_event );
-void DirectXUpdateRects ( vout_thread_t *p_vout, vlc_bool_t b_force );
+void E_(DirectXEventThread) ( event_thread_t *p_event );
+void E_(DirectXUpdateRects) ( vout_thread_t *p_vout, vlc_bool_t b_force );
 
 /*****************************************************************************
  * Constants
  *****************************************************************************/
 #define WM_VLC_HIDE_MOUSE WM_APP
-#define WM_VLC_CREATE_VIDEO_WIN WM_APP + 1
-#define WM_VLC_DESTROY_VIDEO_WIN WM_APP + 2
+#define WM_VLC_SHOW_MOUSE WM_APP + 1
+#define WM_VLC_CREATE_VIDEO_WIN WM_APP + 2
 #define WM_VLC_CHANGE_TEXT WM_APP + 3
 #define IDM_TOGGLE_ON_TOP WM_USER + 1
 #define DX_POSITION_CHANGE 0x1000
+#define DX_WALLPAPER_CHANGE 0x2000
+
+/*****************************************************************************
+ * WinCE helpers
+ *****************************************************************************/
+#ifdef UNDER_CE
+
+#define AdjustWindowRect(a,b,c)
+
+#ifndef GCL_HBRBACKGROUND
+#   define GCL_HBRBACKGROUND (-10)
+#endif
+
+#define FindWindowEx(a,b,c,d) 0
+
+#define GetWindowPlacement(a,b)
+#define SetWindowPlacement(a,b)
+typedef struct _WINDOWPLACEMENT {
+    UINT length;
+    UINT flags;
+    UINT showCmd;
+    POINT ptMinPosition;
+    POINT ptMaxPosition;
+    RECT rcNormalPosition;
+} WINDOWPLACEMENT;
+
+#ifndef WM_NCMOUSEMOVE
+#   define WM_NCMOUSEMOVE 160
+#endif
+#ifndef CS_OWNDC
+#   define CS_OWNDC 32
+#endif
+#ifndef SC_SCREENSAVE
+#   define SC_SCREENSAVE 0xF140
+#endif
+#ifndef SC_MONITORPOWER
+#   define SC_MONITORPOWER 0xF170
+#endif
+#ifndef WM_NCPAINT
+#   define WM_NCPAINT 133
+#endif
+#ifndef WS_OVERLAPPEDWINDOW
+#   define WS_OVERLAPPEDWINDOW 0xcf0000
+#endif
+#ifndef WS_EX_NOPARENTNOTIFY
+#   define WS_EX_NOPARENTNOTIFY 4
+#endif
+#ifndef WS_EX_APPWINDOW
+#define WS_EX_APPWINDOW 0x40000
+#endif
+
+#define SetWindowLongPtr SetWindowLong
+#define GetWindowLongPtr GetWindowLong
+#define GWLP_USERDATA GWL_USERDATA
+
+#endif //UNDER_CE