| 1 | /* $Id: oslibwin.h,v 1.65 2002-03-18 13:03:53 sandervl Exp $ */ | 
|---|
| 2 | /* | 
|---|
| 3 | * Window API wrappers for OS/2 | 
|---|
| 4 | * | 
|---|
| 5 | * | 
|---|
| 6 | * Copyright 1999 Sander van Leeuwen (sandervl@xs4all.nl) | 
|---|
| 7 | * Copyright 1999      Daniela Engert (dani@ngrt.de) | 
|---|
| 8 | * | 
|---|
| 9 | * | 
|---|
| 10 | * Project Odin Software License can be found in LICENSE.TXT | 
|---|
| 11 | * | 
|---|
| 12 | */ | 
|---|
| 13 | #ifndef __OSLIBWIN_H__ | 
|---|
| 14 | #define __OSLIBWIN_H__ | 
|---|
| 15 | #include <oslibgdi.h> | 
|---|
| 16 |  | 
|---|
| 17 | #ifndef WIN_INCLUDED | 
|---|
| 18 | typedef struct _SWP    /* swp */ | 
|---|
| 19 | { | 
|---|
| 20 | ULONG   fl; | 
|---|
| 21 | LONG    cy; | 
|---|
| 22 | LONG    cx; | 
|---|
| 23 | LONG    y; | 
|---|
| 24 | LONG    x; | 
|---|
| 25 | HWND    hwndInsertBehind; | 
|---|
| 26 | HWND    hwnd; | 
|---|
| 27 | ULONG   ulReserved1; | 
|---|
| 28 | ULONG   ulReserved2; | 
|---|
| 29 | } SWP, *PSWP; | 
|---|
| 30 | typedef POINTL *PPOINTL; | 
|---|
| 31 | #endif | 
|---|
| 32 |  | 
|---|
| 33 | //SvL: Must be the same as HWND_DESKTOP/OBJECT in pmwin.h! | 
|---|
| 34 | #define OSLIB_HWND_DESKTOP      1 | 
|---|
| 35 | #define OSLIB_HWND_OBJECT       2 | 
|---|
| 36 |  | 
|---|
| 37 | BOOL  OSLibWinSetParent(HWND hwnd, HWND hwndParent, ULONG fRedraw = TRUE); | 
|---|
| 38 | BOOL  OSLibWinSetOwner(HWND hwnd, HWND hwndOwner); | 
|---|
| 39 |  | 
|---|
| 40 |  | 
|---|
| 41 | HWND  OSLibWinCreateWindow(HWND hwndParent,ULONG dwWinStyle, ULONG dwOSFrameStyle, | 
|---|
| 42 | char *pszName, HWND Owner, ULONG fBottom, | 
|---|
| 43 | ULONG id, BOOL fTaskList,BOOL fShellPosition, | 
|---|
| 44 | int classStyle, HWND *hwndFrame); | 
|---|
| 45 |  | 
|---|
| 46 | BOOL  OSLibWinConvertStyle(ULONG dwStyle, ULONG dwExStyle, ULONG *OSWinStyle, ULONG *OSFrameStyle); | 
|---|
| 47 | void  OSLibSetWindowStyle(HWND hwndFrame, HWND hwndClient, ULONG dwStyle, ULONG dwExStyle); | 
|---|
| 48 | DWORD OSLibQueryWindowStyle(HWND hwnd); | 
|---|
| 49 |  | 
|---|
| 50 | BOOL  OSLibWinPositionFrameControls(HWND hwndFrame, RECTLOS2 *pRect, DWORD dwStyle, DWORD dwExStyle, HICON hSysMenuIcon); | 
|---|
| 51 |  | 
|---|
| 52 | #define OSLIB_QWL_USER -4 | 
|---|
| 53 |  | 
|---|
| 54 | BOOL  OSLibWinSetWindowULong(HWND hwnd, ULONG offset, ULONG value); | 
|---|
| 55 | ULONG OSLibWinGetWindowULong(HWND hwnd, ULONG offset); | 
|---|
| 56 | BOOL  OSLibSetWindowID(HWND hwnd, ULONG value); | 
|---|
| 57 |  | 
|---|
| 58 | #define WAOS_WARNING                 0 | 
|---|
| 59 | #define WAOS_NOTE                    1 | 
|---|
| 60 | #define WAOS_ERROR                   2 | 
|---|
| 61 | #define WAOS_CWINALARMS             13     /* count of valid alarms     53304*/ | 
|---|
| 62 |  | 
|---|
| 63 | BOOL OSLibWinAlarm(HWND hwndDeskTop,ULONG flStyle); | 
|---|
| 64 | ULONG OSLibDosBeep(ULONG freg,ULONG dur); | 
|---|
| 65 | HWND OSLibWinQueryFocus(HWND hwndDeskTop); | 
|---|
| 66 |  | 
|---|
| 67 | #define OSLIB_FID_SYSMENU                0x8002 | 
|---|
| 68 | #define OSLIB_FID_TITLEBAR               0x8003 | 
|---|
| 69 | #define OSLIB_FID_MINMAX                 0x8004 | 
|---|
| 70 | #define OSLIB_FID_MENU                   0x8005 | 
|---|
| 71 | #define OSLIB_FID_VERTSCROLL             0x8006 | 
|---|
| 72 | #define OSLIB_FID_HORZSCROLL             0x8007 | 
|---|
| 73 | #define OSLIB_FID_CLIENT                 0x8008 | 
|---|
| 74 |  | 
|---|
| 75 | HWND OSLibWinWindowFromID(HWND hwndParent,ULONG id); | 
|---|
| 76 | BOOL OSLibWinSetFocus(HWND hwndDeskTop,HWND hwndNewFocus, BOOL activate); | 
|---|
| 77 |  | 
|---|
| 78 | extern ULONG ScreenHeight, ScreenWidth; | 
|---|
| 79 | inline ULONG OSLibQueryScreenHeight(void) { return (ScreenHeight); } | 
|---|
| 80 | inline ULONG OSLibQueryScreenWidth(void)  { return (ScreenWidth); } | 
|---|
| 81 |  | 
|---|
| 82 | //reserved deleted | 
|---|
| 83 |  | 
|---|
| 84 | #define SVOS_SWAPBUTTON              0 | 
|---|
| 85 | #define SVOS_DBLCLKTIME              1 | 
|---|
| 86 | #define SVOS_CXDBLCLK                2 | 
|---|
| 87 | #define SVOS_CYDBLCLK                3 | 
|---|
| 88 | #define SVOS_CXSIZEBORDER            4 | 
|---|
| 89 | #define SVOS_CYSIZEBORDER            5 | 
|---|
| 90 | #define SVOS_ALARM                   6 | 
|---|
| 91 | #define SVOS_CURSORRATE              9 | 
|---|
| 92 | #define SVOS_FIRSTSCROLLRATE         10 | 
|---|
| 93 | #define SVOS_SCROLLRATE              11 | 
|---|
| 94 | #define SVOS_NUMBEREDLISTS           12 | 
|---|
| 95 | #define SVOS_WARNINGFREQ             13 | 
|---|
| 96 | #define SVOS_NOTEFREQ                14 | 
|---|
| 97 | #define SVOS_ERRORFREQ               15 | 
|---|
| 98 | #define SVOS_WARNINGDURATION         16 | 
|---|
| 99 | #define SVOS_NOTEDURATION            17 | 
|---|
| 100 | #define SVOS_ERRORDURATION           18 | 
|---|
| 101 | #define SVOS_CXSCREEN                20 | 
|---|
| 102 | #define SVOS_CYSCREEN                21 | 
|---|
| 103 | #define SVOS_CXVSCROLL               22 | 
|---|
| 104 | #define SVOS_CYHSCROLL               23 | 
|---|
| 105 | #define SVOS_CYVSCROLLARROW          24 | 
|---|
| 106 | #define SVOS_CXHSCROLLARROW          25 | 
|---|
| 107 | #define SVOS_CXBORDER                26 | 
|---|
| 108 | #define SVOS_CYBORDER                27 | 
|---|
| 109 | #define SVOS_CXDLGFRAME              28 | 
|---|
| 110 | #define SVOS_CYDLGFRAME              29 | 
|---|
| 111 | #define SVOS_CYTITLEBAR              30 | 
|---|
| 112 | #define SVOS_CYVSLIDER               31 | 
|---|
| 113 | #define SVOS_CXHSLIDER               32 | 
|---|
| 114 | #define SVOS_CXMINMAXBUTTON          33 | 
|---|
| 115 | #define SVOS_CYMINMAXBUTTON          34 | 
|---|
| 116 | #define SVOS_CYMENU                  35 | 
|---|
| 117 | #define SVOS_CXFULLSCREEN            36 | 
|---|
| 118 | #define SVOS_CYFULLSCREEN            37 | 
|---|
| 119 | #define SVOS_CXICON                  38 | 
|---|
| 120 | #define SVOS_CYICON                  39 | 
|---|
| 121 | #define SVOS_CXPOINTER               40 | 
|---|
| 122 | #define SVOS_CYPOINTER               41 | 
|---|
| 123 | #define SVOS_DEBUG                   42 | 
|---|
| 124 | #define SVOS_CMOUSEBUTTONS           43 | 
|---|
| 125 | #define SVOS_CPOINTERBUTTONS         43 | 
|---|
| 126 | #define SVOS_POINTERLEVEL            44 | 
|---|
| 127 | #define SVOS_CURSORLEVEL             45 | 
|---|
| 128 | #define SVOS_TRACKRECTLEVEL          46 | 
|---|
| 129 | #define SVOS_CTIMERS                 47 | 
|---|
| 130 | #define SVOS_MOUSEPRESENT            48 | 
|---|
| 131 | #define SVOS_CXBYTEALIGN             49 | 
|---|
| 132 | #define SVOS_CXALIGN                 49 | 
|---|
| 133 | #define SVOS_CYBYTEALIGN             50 | 
|---|
| 134 | #define SVOS_CYALIGN                 50 | 
|---|
| 135 | #define SVOS_DESKTOPWORKAREAYTOP     51 | 
|---|
| 136 | #define SVOS_DESKTOPWORKAREAYBOTTOM  52 | 
|---|
| 137 | #define SVOS_DESKTOPWORKAREAXRIGHT   53 | 
|---|
| 138 | #define SVOS_DESKTOPWORKAREAXLEFT    54 | 
|---|
| 139 |  | 
|---|
| 140 | /* The following value enables any greater value to be set by WinSetSysValue. */ | 
|---|
| 141 | /* This is to enable the setting of SV_EXTRAKEYBEEP by applications.          */ | 
|---|
| 142 |  | 
|---|
| 143 | #define SVOS_NOTRESERVED             56 | 
|---|
| 144 | #define SVOS_EXTRAKEYBEEP            57 | 
|---|
| 145 |  | 
|---|
| 146 | /* The following system value controls whether PM controls the keyboard      */ | 
|---|
| 147 | /* lights for light key keystrokes (else applications will)                  */ | 
|---|
| 148 | #define SVOS_SETLIGHTS               58 | 
|---|
| 149 | #define SVOS_INSERTMODE              59 | 
|---|
| 150 |  | 
|---|
| 151 | #define SVOS_MENUROLLDOWNDELAY       64 | 
|---|
| 152 | #define SVOS_MENUROLLUPDELAY         65 | 
|---|
| 153 | #define SVOS_ALTMNEMONIC             66 | 
|---|
| 154 | #define SVOS_TASKLISTMOUSEACCESS     67 | 
|---|
| 155 | #define SVOS_CXICONTEXTWIDTH         68 | 
|---|
| 156 | #define SVOS_CICONTEXTLINES          69 | 
|---|
| 157 | #define SVOS_CHORDTIME               70 | 
|---|
| 158 | #define SVOS_CXCHORD                 71 | 
|---|
| 159 | #define SVOS_CYCHORD                 72 | 
|---|
| 160 | #define SVOS_CXMOTIONSTART           73 | 
|---|
| 161 | #define SVOS_CYMOTIONSTART           74 | 
|---|
| 162 | #define SVOS_BEGINDRAG               75 | 
|---|
| 163 | #define SVOS_ENDDRAG                 76 | 
|---|
| 164 | #define SVOS_SINGLESELECT            77 | 
|---|
| 165 | #define SVOS_OPEN                    78 | 
|---|
| 166 | #define SVOS_CONTEXTMENU             79 | 
|---|
| 167 | #define SVOS_CONTEXTHELP             80 | 
|---|
| 168 | #define SVOS_TEXTEDIT                81 | 
|---|
| 169 | #define SVOS_BEGINSELECT             82 | 
|---|
| 170 | #define SVOS_ENDSELECT               83 | 
|---|
| 171 | #define SVOS_BEGINDRAGKB             84 | 
|---|
| 172 | #define SVOS_ENDDRAGKB               85 | 
|---|
| 173 | #define SVOS_SELECTKB                86 | 
|---|
| 174 | #define SVOS_OPENKB                  87 | 
|---|
| 175 | #define SVOS_CONTEXTMENUKB           88 | 
|---|
| 176 | #define SVOS_CONTEXTHELPKB           89 | 
|---|
| 177 | #define SVOS_TEXTEDITKB              90 | 
|---|
| 178 | #define SVOS_BEGINSELECTKB           91 | 
|---|
| 179 | #define SVOS_ENDSELECTKB             92 | 
|---|
| 180 | #define SVOS_ANIMATION               93 | 
|---|
| 181 | #define SVOS_ANIMATIONSPEED          94 | 
|---|
| 182 | #define SVOS_MONOICONS               95 | 
|---|
| 183 | #define SVOS_KBDALTERED              96 | 
|---|
| 184 | #define SVOS_PRINTSCREEN             97 | 
|---|
| 185 | #define SVOS_LOCKSTARTINPUT          98 | 
|---|
| 186 | #define SVOS_DYNAMICDRAG             99 | 
|---|
| 187 | #define SVOS_ALTTABWINDOW            100 | 
|---|
| 188 | #define SVOS_VIOMOUSEACTIONS         101 | 
|---|
| 189 | #define SVOS_ASYNCFOCUSCHANGE        102 | 
|---|
| 190 | #define SVOS_AFCSENSITIVITY          103 | 
|---|
| 191 | #define SVOS_CLOSEVIOWITHOUTCONFIRM  104 | 
|---|
| 192 | #define SVOS_CXCURSOR                106 | 
|---|
| 193 | #define SVOS_CYCURSOR                107 | 
|---|
| 194 | #define SVOS_CSYSVALUES              108 | 
|---|
| 195 |  | 
|---|
| 196 | LONG OSLibWinQuerySysValue(LONG iSysValue); | 
|---|
| 197 | BOOL OSLibWinSetSysValue(LONG iSysValue, ULONG val); | 
|---|
| 198 | ULONG OSLibWinQueryDlgItemText(HWND hwndDlg,ULONG idItem,LONG cchBufferMax,char* pchBuffer); | 
|---|
| 199 | BOOL OSLibWinSetDlgItemText(HWND hwndDlg,ULONG idItem,char* pszText); | 
|---|
| 200 | BOOL OSLibWinQueryPointerPos(PPOINT pptlPoint); //pptlPoint == POINTL pointer! | 
|---|
| 201 | BOOL OSLibWinGetMinPosition(HWND hwndDlg,PSWP swp, PPOINTL pointl); | 
|---|
| 202 | BOOL OSLibWinSetPointerPos(int x, int y); | 
|---|
| 203 |  | 
|---|
| 204 | #define SWPOS_SIZE                   0x0001 | 
|---|
| 205 | #define SWPOS_MOVE                   0x0002 | 
|---|
| 206 | #define SWPOS_ZORDER                 0x0004 | 
|---|
| 207 | #define SWPOS_SHOW                   0x0008 | 
|---|
| 208 | #define SWPOS_HIDE                   0x0010 | 
|---|
| 209 | #define SWPOS_NOREDRAW               0x0020 | 
|---|
| 210 | #define SWPOS_NOADJUST               0x0040 | 
|---|
| 211 | #define SWPOS_ACTIVATE               0x0080 | 
|---|
| 212 | #define SWPOS_DEACTIVATE             0x0100 | 
|---|
| 213 | #define SWPOS_EXTSTATECHANGE         0x0200 | 
|---|
| 214 | #define SWPOS_MINIMIZE               0x0400 | 
|---|
| 215 | #define SWPOS_MAXIMIZE               0x0800 | 
|---|
| 216 | #define SWPOS_RESTORE                0x1000 | 
|---|
| 217 | #define SWPOS_FOCUSACTIVATE          0x2000 | 
|---|
| 218 | #define SWPOS_FOCUSDEACTIVATE        0x4000 | 
|---|
| 219 | #define SWPOS_NOAUTOCLOSE            0x8000    /* Valid in PROGDETAILS struct only */ | 
|---|
| 220 |  | 
|---|
| 221 | #define HWNDOS_TOP                      (HWND)3 | 
|---|
| 222 | #define HWNDOS_BOTTOM                   (HWND)4 | 
|---|
| 223 |  | 
|---|
| 224 | BOOL  OSLibWinSetMultWindowPos(struct _SWP *pswp, ULONG num); | 
|---|
| 225 | BOOL  OSLibWinShowWindow(HWND hwnd, ULONG fl); | 
|---|
| 226 |  | 
|---|
| 227 | BOOL  OSLibWinDestroyWindow(HWND hwnd); | 
|---|
| 228 |  | 
|---|
| 229 | BOOL  OSLibWinIsIconic(HWND hwnd); | 
|---|
| 230 | BOOL  OSLibWinIsChild (HWND hwnd, HWND hwndOf); | 
|---|
| 231 | BOOL  OSLibWinSetActiveWindow(HWND hwnd); | 
|---|
| 232 | BOOL  OSLibWinSetFocus(HWND hwnd); | 
|---|
| 233 | BOOL  OSLibWinEnableWindow(HWND hwnd, BOOL fEnable); | 
|---|
| 234 | BOOL  OSLibWinIsWindowEnabled(HWND hwnd); | 
|---|
| 235 | BOOL  OSLibWinIsWindowVisible(HWND hwnd); | 
|---|
| 236 | HWND  OSLibWinQueryActiveWindow(); | 
|---|
| 237 |  | 
|---|
| 238 |  | 
|---|
| 239 | #define RELATIVE_TO_WINDOW 0 | 
|---|
| 240 | #define RELATIVE_TO_SCREEN 1 | 
|---|
| 241 | BOOL  OSLibWinQueryWindowRect(Win32BaseWindow *window, PRECT pRect, int RelativeTo = RELATIVE_TO_WINDOW); | 
|---|
| 242 | BOOL  OSLibQueryWindowRectAbsolute (HWND hwndOS2, PRECT pRect); | 
|---|
| 243 | ULONG OSLibGetWindowHeight(HWND hwnd); //for point transformation | 
|---|
| 244 |  | 
|---|
| 245 | BOOL  OSLibWinQueryWindowClientRect(HWND hwnd, PRECT pRect); | 
|---|
| 246 |  | 
|---|
| 247 | BOOL  OSLibWinCalcFrameRect(HWND hwnd, RECT *pRect, BOOL fClient); | 
|---|
| 248 | BOOL  OSLibGetMinMaxInfo(HWND hwndFrame, MINMAXINFO *pMinMax); | 
|---|
| 249 |  | 
|---|
| 250 | #define QWOS_NEXT         0 | 
|---|
| 251 | #define QWOS_PREV         1 | 
|---|
| 252 | #define QWOS_TOP          2 | 
|---|
| 253 | #define QWOS_BOTTOM       3 | 
|---|
| 254 | #define QWOS_OWNER        4 | 
|---|
| 255 | #define QWOS_PARENT       5 | 
|---|
| 256 | #define QWOS_NEXTTOP      6 | 
|---|
| 257 | #define QWOS_PREVTOP      7 | 
|---|
| 258 | #define QWOS_FRAMEOWNER   8 | 
|---|
| 259 |  | 
|---|
| 260 | HWND  OSLibWinQueryWindow(HWND hwnd, ULONG lCode); | 
|---|
| 261 |  | 
|---|
| 262 | LONG  OSLibWinQueryWindowTextLength(HWND hwnd); | 
|---|
| 263 | LONG  OSLibWinQueryWindowText(HWND hwnd, LONG length, LPSTR lpsz); | 
|---|
| 264 | BOOL  OSLibWinSetWindowText(HWND hwnd, LPSTR lpsz); | 
|---|
| 265 | BOOL  OSLibWinSetTitleBarText(HWND hwnd, LPSTR lpsz); | 
|---|
| 266 | BOOL  OSLibWinFlashWindow(HWND hwnd, BOOL fFlash); | 
|---|
| 267 | HWND  OSLibWinWindowFromPoint(HWND hwnd, PVOID ppoint); | 
|---|
| 268 | BOOL  OSLibWinMinimizeWindow(HWND hwnd); | 
|---|
| 269 |  | 
|---|
| 270 | BOOL  OSLibWinGetBorderSize(HWND hwnd, OSLIBPOINT *pointl); | 
|---|
| 271 | BOOL  OSLibWinSetIcon(HWND hwnd, HANDLE hIcon); | 
|---|
| 272 |  | 
|---|
| 273 | BOOL  OSLibWinQueryWindowPos (HWND hwnd, PSWP pswp); | 
|---|
| 274 | void  OSLibMapSWPtoWINDOWPOS(PSWP pswp, PWINDOWPOS pwpos, PSWP pswpOld, | 
|---|
| 275 | int parentHeight, HWND hwnd); | 
|---|
| 276 | void  OSLibMapWINDOWPOStoSWP(struct tagWINDOWPOS *pwpos, PSWP pswp, PSWP pswpOld, | 
|---|
| 277 | int parentHeight, HWND hFrame); | 
|---|
| 278 |  | 
|---|
| 279 | void  OSLibWinSetClientPos(HWND hwnd, int x, int y, int cx, int cy, int parentHeight); | 
|---|
| 280 |  | 
|---|
| 281 | HWND  OSLibWinBeginEnumWindows(HWND hwnd); | 
|---|
| 282 | HWND  OSLibWinGetNextWindow(HWND hwndEnum); | 
|---|
| 283 | HWND  OSLibWinQueryClientWindow(HWND hwndFrame); | 
|---|
| 284 | BOOL  OSLibWinEndEnumWindows(HWND hwndEnum); | 
|---|
| 285 | BOOL  OSLibWinQueryWindowProcess(HWND hwnd, ULONG *pid, ULONG *tid); | 
|---|
| 286 | BOOL  OSLibWinMapWindowPoints (HWND hwndFrom, HWND hwndTo, OSLIBPOINT *pptl, ULONG num); | 
|---|
| 287 |  | 
|---|
| 288 | HWND  OSLibWinObjectWindowFromID(HWND hwndOwner, ULONG ID); | 
|---|
| 289 |  | 
|---|
| 290 | HWND  OSLibWinQueryObjectWindow(VOID); | 
|---|
| 291 |  | 
|---|
| 292 | PVOID OSLibWinSubclassWindow(HWND hwnd,PVOID newWndProc); | 
|---|
| 293 |  | 
|---|
| 294 | BOOL OSLibSetWindowRestoreRect(HWND hwnd, PRECT pRect); | 
|---|
| 295 | BOOL OSLibSetWindowMinPos(HWND hwnd, ULONG x, ULONG y); | 
|---|
| 296 |  | 
|---|
| 297 | BOOL   OSLibWinGetKeyboardStateTable(unsigned char * PMKeyState); | 
|---|
| 298 | BOOL   OSLibWinSetKeyboardStateTable(unsigned char * PMKeyState); | 
|---|
| 299 |  | 
|---|
| 300 | #define TCF_LSHIFT                 0x0001 | 
|---|
| 301 | #define TCF_RSHIFT                 0x0002 | 
|---|
| 302 | #define TCF_SHIFT                  (TCF_LSHIFT | TCF_RSHIFT) | 
|---|
| 303 | #define TCF_LCONTROL               0x0004 | 
|---|
| 304 | #define TCF_RCONTROL               0x0008 | 
|---|
| 305 | #define TCF_CONTROL                (TCF_LCONTROL | TCF_RCONTROL) | 
|---|
| 306 | #define TCF_ALT                    0x0010 | 
|---|
| 307 | #define TCF_ALTGR                  0x0020 | 
|---|
| 308 | #define TCF_CAPSLOCK               0x0040 | 
|---|
| 309 | #define TCF_NUMLOCK                0x0080 | 
|---|
| 310 | #define TCF_OEMSCANCODE            0x0100 | 
|---|
| 311 | #define TCF_EXTENDEDKEY            0x0200 | 
|---|
| 312 |  | 
|---|
| 313 | #define TC_CHARTOSCANCODE          0 | 
|---|
| 314 | #define TC_SCANCODETOCHAR          1 | 
|---|
| 315 | #define TC_VIRTUALKEYTOSCANCODE    2 | 
|---|
| 316 | #define TC_SCANCODETOVIRTUALKEY    3 | 
|---|
| 317 | #define TC_SCANTOOEMSCAN           4 | 
|---|
| 318 | #define TC_OEMSCANTOSCAN           5 | 
|---|
| 319 |  | 
|---|
| 320 | USHORT OSLibWinTranslateChar(USHORT usScanCode, ULONG type, USHORT shiftstate); | 
|---|
| 321 |  | 
|---|
| 322 | #define HTOS_NORMAL                   0 | 
|---|
| 323 | #define HTOS_TRANSPARENT              (-1) | 
|---|
| 324 | #define HTOS_DISCARD                  (-2) | 
|---|
| 325 | #define HTOS_ERROR                    (-3) | 
|---|
| 326 |  | 
|---|
| 327 | BOOL OSLibWinEnableWindowUpdate(HWND hwndFrame, HWND hwndClient ,BOOL fEnable); | 
|---|
| 328 | ULONG OSLibWinGetLastError(); | 
|---|
| 329 |  | 
|---|
| 330 | void  OSLibWinShowTaskList(HWND hwndFrame); | 
|---|
| 331 |  | 
|---|
| 332 | void  OSLibWinSetVisibleRegionNotify(HWND hwnd, BOOL fNotify); | 
|---|
| 333 |  | 
|---|
| 334 | HWND  OSLibWinQueryCapture(); | 
|---|
| 335 | BOOL  OSLibWinSetCapture(HWND hwnd); | 
|---|
| 336 |  | 
|---|
| 337 | BOOL   OSLibWinRemoveFromTasklist(HANDLE hTaskList); | 
|---|
| 338 | HANDLE OSLibWinAddToTaskList(HWND hwndFrame, char *title, BOOL fVisible); | 
|---|
| 339 | BOOL   OSLibWinChangeTaskList(HANDLE hTaskList, HWND hwndFrame, char *title, BOOL fVisible); | 
|---|
| 340 |  | 
|---|
| 341 | inline ULONG GetScreenHeight() | 
|---|
| 342 | { | 
|---|
| 343 | return ScreenHeight; | 
|---|
| 344 | } | 
|---|
| 345 |  | 
|---|
| 346 | inline ULONG GetScreenWidth() | 
|---|
| 347 | { | 
|---|
| 348 | return ScreenWidth; | 
|---|
| 349 | } | 
|---|
| 350 |  | 
|---|
| 351 | ULONG OSLibGetScreenHeight(); | 
|---|
| 352 | ULONG OSLibGetScreenWidth(); | 
|---|
| 353 |  | 
|---|
| 354 | BOOL   OSLibWinLockWindowUpdate(HWND hwnd); | 
|---|
| 355 | BOOL   OSLibWinGetMaxPosition(HWND hwndOS2, RECT *rect); | 
|---|
| 356 |  | 
|---|
| 357 | BOOL   OSLibWinShowPointer(BOOL fShow); | 
|---|
| 358 |  | 
|---|
| 359 |  | 
|---|
| 360 | #define PMSYSCLR_SHADOWHILITEBGND         (-50L) | 
|---|
| 361 | #define PMSYSCLR_SHADOWHILITEFGND         (-49L) | 
|---|
| 362 | #define PMSYSCLR_SHADOWTEXT               (-48L) | 
|---|
| 363 | #define PMSYSCLR_ENTRYFIELD               (-47L) | 
|---|
| 364 | #define PMSYSCLR_MENUDISABLEDTEXT         (-46L) | 
|---|
| 365 | #define PMSYSCLR_MENUHILITE               (-45L) | 
|---|
| 366 | #define PMSYSCLR_MENUHILITEBGND           (-44L) | 
|---|
| 367 | #define PMSYSCLR_PAGEBACKGROUND           (-43L) | 
|---|
| 368 | #define PMSYSCLR_FIELDBACKGROUND          (-42L) | 
|---|
| 369 | #define PMSYSCLR_BUTTONLIGHT              (-41L) | 
|---|
| 370 | #define PMSYSCLR_BUTTONMIDDLE             (-40L) | 
|---|
| 371 | #define PMSYSCLR_BUTTONDARK               (-39L) | 
|---|
| 372 | #define PMSYSCLR_BUTTONDEFAULT            (-38L) | 
|---|
| 373 | #define PMSYSCLR_TITLEBOTTOM              (-37L) | 
|---|
| 374 | #define PMSYSCLR_SHADOW                   (-36L) | 
|---|
| 375 | #define PMSYSCLR_ICONTEXT                 (-35L) | 
|---|
| 376 | #define PMSYSCLR_DIALOGBACKGROUND         (-34L) | 
|---|
| 377 | #define PMSYSCLR_HILITEFOREGROUND         (-33L) | 
|---|
| 378 | #define PMSYSCLR_HILITEBACKGROUND         (-32L) | 
|---|
| 379 | #define PMSYSCLR_INACTIVETITLETEXTBGND    (-31L) | 
|---|
| 380 | #define PMSYSCLR_ACTIVETITLETEXTBGND      (-30L) | 
|---|
| 381 | #define PMSYSCLR_INACTIVETITLETEXT        (-29L) | 
|---|
| 382 | #define PMSYSCLR_ACTIVETITLETEXT          (-28L) | 
|---|
| 383 | #define PMSYSCLR_OUTPUTTEXT               (-27L) | 
|---|
| 384 | #define PMSYSCLR_WINDOWSTATICTEXT         (-26L) | 
|---|
| 385 | #define PMSYSCLR_SCROLLBAR                (-25L) | 
|---|
| 386 | #define PMSYSCLR_BACKGROUND               (-24L) | 
|---|
| 387 | #define PMSYSCLR_ACTIVETITLE              (-23L) | 
|---|
| 388 | #define PMSYSCLR_INACTIVETITLE            (-22L) | 
|---|
| 389 | #define PMSYSCLR_MENU                     (-21L) | 
|---|
| 390 | #define PMSYSCLR_WINDOW                   (-20L) | 
|---|
| 391 | #define PMSYSCLR_WINDOWFRAME              (-19L) | 
|---|
| 392 | #define PMSYSCLR_MENUTEXT                 (-18L) | 
|---|
| 393 | #define PMSYSCLR_WINDOWTEXT               (-17L) | 
|---|
| 394 | #define PMSYSCLR_TITLETEXT                (-16L) | 
|---|
| 395 | #define PMSYSCLR_ACTIVEBORDER             (-15L) | 
|---|
| 396 | #define PMSYSCLR_INACTIVEBORDER           (-14L) | 
|---|
| 397 | #define PMSYSCLR_APPWORKSPACE             (-13L) | 
|---|
| 398 | #define PMSYSCLR_HELPBACKGROUND           (-12L) | 
|---|
| 399 | #define PMSYSCLR_HELPTEXT                 (-11L) | 
|---|
| 400 | #define PMSYSCLR_HELPHILITE               (-10L) | 
|---|
| 401 |  | 
|---|
| 402 | #define PMSYSCLR_CSYSCOLORS               41L | 
|---|
| 403 | #define PMSYSCLR_BASE                     50L | 
|---|
| 404 |  | 
|---|
| 405 | #define CONVERT_RGB(colorRef) ( ((colorRef) & 0x0000FF00     )   |   \ | 
|---|
| 406 | (((colorRef) & 0x00FF0000)>>16)  |   \ | 
|---|
| 407 | (((colorRef) & 0x000000FF)<<16)   ) | 
|---|
| 408 |  | 
|---|
| 409 | ULONG  OSLibWinQuerySysColor(int index); | 
|---|
| 410 |  | 
|---|
| 411 | #endif //__OSLIBWIN_H__ | 
|---|