Store monitor size and depth in the generic structure.
Merged monitor driver into USER driver.
diff --git a/include/desktop.h b/include/desktop.h
index 7d75ac0..9e130ab 100644
--- a/include/desktop.h
+++ b/include/desktop.h
@@ -9,22 +9,14 @@
#include "windef.h"
-struct tagMONITOR;
-
typedef struct tagDESKTOP
{
HBRUSH hbrushPattern;
HBITMAP hbitmapWallPaper;
SIZE bitmapSize;
BOOL fTileWallPaper;
- struct tagMONITOR *pPrimaryMonitor;
} DESKTOP;
-extern BOOL DESKTOP_IsSingleWindow(void);
-extern int DESKTOP_GetScreenWidth(void);
-extern int DESKTOP_GetScreenHeight(void);
-extern int DESKTOP_GetScreenDepth(void);
-
extern BOOL DESKTOP_SetPattern( LPCSTR pattern );
extern LRESULT WINAPI DesktopWndProc( HWND hwnd, UINT message,
WPARAM wParam, LPARAM lParam );
diff --git a/include/monitor.h b/include/monitor.h
index 7947748..e7c95c5 100644
--- a/include/monitor.h
+++ b/include/monitor.h
@@ -8,38 +8,27 @@
#include "windef.h"
-struct tagMONITOR_DRIVER;
-
typedef struct tagMONITOR
{
- void *pDriverData;
+ RECT rect;
+ int depth;
} MONITOR;
-typedef struct tagMONITOR_DRIVER {
- void (*pInitialize)(struct tagMONITOR *);
- void (*pFinalize)(struct tagMONITOR *);
- BOOL (*pIsSingleWindow)(struct tagMONITOR *);
- int (*pGetWidth)(struct tagMONITOR *);
- int (*pGetHeight)(struct tagMONITOR *);
- int (*pGetDepth)(struct tagMONITOR *);
- BOOL (*pGetScreenSaveActive)(struct tagMONITOR *);
- void (*pSetScreenSaveActive)(struct tagMONITOR *, BOOL);
- int (*pGetScreenSaveTimeout)(struct tagMONITOR *);
- void (*pSetScreenSaveTimeout)(struct tagMONITOR *, int);
-} MONITOR_DRIVER;
-
-extern MONITOR_DRIVER *MONITOR_Driver;
-
extern MONITOR MONITOR_PrimaryMonitor;
-extern BOOL MONITOR_IsSingleWindow(MONITOR *pMonitor);
-extern int MONITOR_GetWidth(MONITOR *pMonitor);
-extern int MONITOR_GetHeight(MONITOR *pMonitor);
-extern int MONITOR_GetDepth(MONITOR *pMonitor);
-extern BOOL MONITOR_GetScreenSaveActive(MONITOR *pMonitor);
-extern void MONITOR_SetScreenSaveActive(MONITOR *pMonitor, BOOL bActivate);
-extern int MONITOR_GetScreenSaveTimeout(MONITOR *pMonitor);
-extern void MONITOR_SetScreenSaveTimeout(MONITOR *pMonitor, int nTimeout);
+static int inline MONITOR_GetWidth(MONITOR *pMonitor)
+{
+ return pMonitor->rect.right - pMonitor->rect.left;
+}
+
+static int inline MONITOR_GetHeight(MONITOR *pMonitor)
+{
+ return pMonitor->rect.bottom - pMonitor->rect.top;
+}
+
+static int inline MONITOR_GetDepth(MONITOR *pMonitor)
+{
+ return pMonitor->depth;
+}
#endif /* __WINE_MONITOR_H */
-
diff --git a/include/ttydrv.h b/include/ttydrv.h
index 4a56d76..cbe9788 100644
--- a/include/ttydrv.h
+++ b/include/ttydrv.h
@@ -114,6 +114,22 @@
* TTY USER driver
*/
+extern int cell_width;
+extern int cell_height;
+static inline int TTYDRV_GetCellWidth(void) { return cell_width; }
+static inline int TTYDRV_GetCellHeight(void) { return cell_height; }
+
+#ifdef HAVE_LIBCURSES
+extern WINDOW *root_window;
+static inline WINDOW *TTYDRV_GetRootWindow(void) { return root_window; }
+#endif /* defined(HAVE_LIBCURSES) */
+
+extern BOOL TTYDRV_GetScreenSaveActive(void);
+extern void TTYDRV_SetScreenSaveActive(BOOL bActivate);
+extern int TTYDRV_GetScreenSaveTimeout(void);
+extern void TTYDRV_SetScreenSaveTimeout(int nTimeout);
+extern BOOL TTYDRV_IsSingleWindow(void);
+
/* TTY clipboard driver */
extern struct tagCLIPBOARD_DRIVER TTYDRV_CLIPBOARD_Driver;
@@ -154,41 +170,6 @@
extern void TTYDRV_KEYBOARD_GetKeyboardConfig(struct tagKEYBOARD_CONFIG *cfg);
extern void TTYDRV_KEYBOARD_SetKeyboardConfig(struct tagKEYBOARD_CONFIG *cfg, DWORD mask);
-/* TTY monitor driver */
-
-extern struct tagMONITOR_DRIVER TTYDRV_MONITOR_Driver;
-
-typedef struct tagTTYDRV_MONITOR_DATA {
-#ifdef HAVE_LIBCURSES
- WINDOW *rootWindow;
-#endif /* defined(HAVE_LIBCURSES) */
- int cellWidth;
- int cellHeight;
- int width;
- int height;
- int depth;
-} TTYDRV_MONITOR_DATA;
-
-struct tagMONITOR;
-
-#ifdef HAVE_LIBCURSES
-extern WINDOW *TTYDRV_MONITOR_GetCursesRootWindow(struct tagMONITOR *pMonitor);
-#endif /* defined(HAVE_LIBCURSES) */
-
-extern INT TTYDRV_MONITOR_GetCellWidth(struct tagMONITOR *pMonitor);
-extern INT TTYDRV_MONITOR_GetCellHeight(struct tagMONITOR *pMonitor);
-
-extern void TTYDRV_MONITOR_Initialize(struct tagMONITOR *pMonitor);
-extern void TTYDRV_MONITOR_Finalize(struct tagMONITOR *pMonitor);
-extern BOOL TTYDRV_MONITOR_IsSingleWindow(struct tagMONITOR *pMonitor);
-extern int TTYDRV_MONITOR_GetWidth(struct tagMONITOR *pMonitor);
-extern int TTYDRV_MONITOR_GetHeight(struct tagMONITOR *pMonitor);
-extern int TTYDRV_MONITOR_GetDepth(struct tagMONITOR *pMonitor);
-extern BOOL TTYDRV_MONITOR_GetScreenSaveActive(struct tagMONITOR *pMonitor);
-extern void TTYDRV_MONITOR_SetScreenSaveActive(struct tagMONITOR *pMonitor, BOOL bActivate);
-extern int TTYDRV_MONITOR_GetScreenSaveTimeout(struct tagMONITOR *pMonitor);
-extern void TTYDRV_MONITOR_SetScreenSaveTimeout(struct tagMONITOR *pMonitor, int nTimeout);
-
/* TTY mouse driver */
extern void TTYDRV_MOUSE_Init();
@@ -210,7 +191,6 @@
#ifdef HAVE_LIBCURSES
WINDOW *TTYDRV_WND_GetCursesWindow(struct tagWND *wndPtr);
-WINDOW *TTYDRV_WND_GetCursesRootWindow(struct tagWND *wndPtr);
#endif /* defined(HAVE_LIBCURSES) */
extern void TTYDRV_WND_Initialize(struct tagWND *wndPtr);
diff --git a/include/user.h b/include/user.h
index 74af41d..741428a 100644
--- a/include/user.h
+++ b/include/user.h
@@ -60,6 +60,13 @@
void (*pSetCursor)(struct tagCURSORICONINFO *);
void (*pMoveCursor)(WORD, WORD);
LONG (*pEnableWarpPointer)(BOOL);
+ /* screen saver functions */
+ BOOL (*pGetScreenSaveActive)(void);
+ void (*pSetScreenSaveActive)(BOOL);
+ int (*pGetScreenSaveTimeout)(void);
+ void (*pSetScreenSaveTimeout)(int);
+ /* windowing functions */
+ BOOL (*pIsSingleWindow)(void);
} USER_DRIVER;
extern USER_DRIVER *USER_Driver;
diff --git a/include/x11drv.h b/include/x11drv.h
index 5a0a1a7..e155659 100644
--- a/include/x11drv.h
+++ b/include/x11drv.h
@@ -321,6 +321,12 @@
static inline Window X11DRV_GetXRootWindow(void) { return root_window; }
static inline int X11DRV_GetDepth(void) { return screen_depth; }
+extern BOOL X11DRV_GetScreenSaveActive(void);
+extern void X11DRV_SetScreenSaveActive(BOOL bActivate);
+extern int X11DRV_GetScreenSaveTimeout(void);
+extern void X11DRV_SetScreenSaveTimeout(int nTimeout);
+extern BOOL X11DRV_IsSingleWindow(void);
+
/* X11 clipboard driver */
extern struct tagCLIPBOARD_DRIVER X11DRV_CLIPBOARD_Driver;
@@ -378,28 +384,6 @@
extern void X11DRV_KEYBOARD_HandleEvent(struct tagWND *pWnd, XKeyEvent *event);
-/* X11 monitor driver */
-
-extern struct tagMONITOR_DRIVER X11DRV_MONITOR_Driver;
-
-typedef struct _X11DRV_MONITOR_DATA {
- int width;
- int height;
-} X11DRV_MONITOR_DATA;
-
-struct tagMONITOR;
-
-extern void X11DRV_MONITOR_Initialize(struct tagMONITOR *pMonitor);
-extern void X11DRV_MONITOR_Finalize(struct tagMONITOR *pMonitor);
-extern BOOL X11DRV_MONITOR_IsSingleWindow(struct tagMONITOR *pMonitor);
-extern int X11DRV_MONITOR_GetWidth(struct tagMONITOR *pMonitor);
-extern int X11DRV_MONITOR_GetHeight(struct tagMONITOR *pMonitor);
-extern int X11DRV_MONITOR_GetDepth(struct tagMONITOR *pMonitor);
-extern BOOL X11DRV_MONITOR_GetScreenSaveActive(struct tagMONITOR *pMonitor);
-extern void X11DRV_MONITOR_SetScreenSaveActive(struct tagMONITOR *pMonitor, BOOL bActivate);
-extern int X11DRV_MONITOR_GetScreenSaveTimeout(struct tagMONITOR *pMonitor);
-extern void X11DRV_MONITOR_SetScreenSaveTimeout(struct tagMONITOR *pMonitor, int nTimeout);
-
/* X11 mouse driver */
extern void X11DRV_MOUSE_Init();