8#if !defined(OWL_PRIVATE_WSYSINC_H)
9#define OWL_PRIVATE_WSYSINC_H
10#define SERVICES_WSYSINC_H
13#if defined(BI_HAS_PRAGMA_ONCE)
20#if !defined(_INC_WINDOWS)
28#define _WIN32_WINNT 0x0600
47#define WIN32_LEAN_AND_MEAN
60#if !defined(STRICT) || !defined(NOMINMAX)
61#error If "windows.h" is included before OWLNext, then STRICT and NOMINMAX must be defined.
78#if defined(GetWindowLongPtr)
79#undef GetWindowLongPtr
80inline LONG_PTR GetWindowLongPtr(HWND hWnd,
int nIndex)
82 { return ::GetWindowLongPtrW(hWnd, nIndex); }
84 { return ::GetWindowLongPtrA(hWnd, nIndex); }
89#if defined(SetWindowLongPtr)
90#undef SetWindowLongPtr
91inline LONG_PTR SetWindowLongPtr(HWND hWnd,
int nIndex, LONG_PTR dwNewLong)
93 { return ::SetWindowLongPtrW(hWnd, nIndex, dwNewLong); }
95 { return ::SetWindowLongPtrA(hWnd, nIndex, dwNewLong); }
102#if defined(MessageBox)
104inline int MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)
106 { return ::MessageBoxExW(hWnd, lpText, lpCaption, uType, 0); }
108 { return ::MessageBoxExA(hWnd, lpText, lpCaption, uType, 0); }
113#if defined(MessageBoxIndirect)
114#undef MessageBoxIndirect
115inline auto MessageBoxIndirect(
const MSGBOXPARAMS* p) ->
int
117 { return ::MessageBoxIndirectW(p); }
119 { return ::MessageBoxIndirectA(p); }
124#if defined(GetFileTitle)
126inline short GetFileTitle(LPCTSTR lpszFile, LPTSTR lpszTitle, WORD cbBuf)
128 { return ::GetFileTitleW(lpszFile, lpszTitle, cbBuf); }
130 { return ::GetFileTitleA(lpszFile, lpszTitle, cbBuf); }
135#if defined(DrawStatusText)
137inline void DrawStatusText(HDC hDC,
142 { ::DrawStatusTextW(hDC, lprc, szText, uFlags); }
144 { ::DrawStatusTextA(hDC, lprc, szText, uFlags); }
149#if defined(DrawState)
151inline BOOL DrawState(HDC hdc, HBRUSH hbr, DRAWSTATEPROC lpOutputFunc,
152 LPARAM lData, WPARAM wData,
int x,
int y,
int cx,
int cy, UINT fuFlags)
154 { return ::DrawStateW(hdc, hbr, lpOutputFunc, lData, wData, x, y, cx, cy, fuFlags); }
156 { return ::DrawStateA(hdc, hbr, lpOutputFunc, lData, wData, x, y, cx, cy, fuFlags); }
162inline BOOL SetProp(HWND hWnd, LPCTSTR lpString, HANDLE hData)
164{ return ::SetPropW(hWnd, lpString, hData); }
166{ return ::SetPropA(hWnd, lpString, hData); }
170#if defined(GetIconInfoEx)
172inline auto GetIconInfoEx(HICON hIcon, PICONINFOEX piconinfo) -> BOOL
174{ return ::GetIconInfoExW(hIcon, piconinfo); }
176{ return ::GetIconInfoExA(hIcon, piconinfo); }