163 for (
i = 0;
i <
Globals.Keyboard->KeyCount;
i++)
186 BYTE bKeyStates[256];
197 DPRINT(
"OSK_SetKeys(): GetKeyboardState() call failed.\n");
207 for (
i = 0;
i <
Globals.Keyboard->KeyCount;
i++)
220 szKey = Keys[
i].
name;
239 if (
Globals.bIsEnhancedKeyboard)
252 DPRINT(
"OSK_SetKeys(): Failed to allocate memory for button handles.\n");
259 for (
i = 0;
i <
Globals.Keyboard->KeyCount;
i++)
269 szKey = Keys[
i].
name;
295 Globals.Keyboard->Size.cy + yPad,
299 LedPos =
Globals.Keyboard->LedStart;
300 LedSize =
Globals.Keyboard->LedSize;
306 LedPos.
x +=
Globals.Keyboard->LedGap;
312 LedPos.
x +=
Globals.Keyboard->LedGap;
372 RECT rcWindow, rcDlgIntersect;
387 if (
Globals.bIsEnhancedKeyboard)
407 memset(&Pt, 0,
sizeof(Pt));
525 if (
LedKey[
i].bWasKeyPressed != bKeyIsPressed)
541 HWND hWndActiveWindow;
582 cf.lStructSize =
sizeof(
cf);
602 for (
i = 0;
i <
Globals.Keyboard->KeyCount;
i++)
667 bExtendedKey =
FALSE;
678 Input.ki.dwFlags = KEYEVENTF_SCANCODE;
729 bExtendedKey =
FALSE;
764 rcText.
top =
Globals.Keyboard->LedTextStart.y;
840 if (!
Globals.bIsEnhancedKeyboard)
863 if (
Globals.bIsEnhancedKeyboard)
944 case WM_THEMECHANGED:
994 DPRINT(
"wWinMain(): Failed to create a mutex! The program instance is already running.\n");
int WINAPI wWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPWSTR cmdline, int cmdshow)
#define IDC_SHOWWARNINGCHECK
void quit(int argc, const char *argv[])
KEYBOARD_STRUCT EnhancedKeyboard
KEYBOARD_STRUCT StandardKeyboard
OSK_KEYLEDINDICATOR LedKey[]
DWORD WINAPI OSK_WarningDlgThread(LPVOID lpParameter)
void OSK_SetText(int IdDlgItem, int IdResource)
VOID OSK_ChooseFont(VOID)
VOID OSK_DestroyKeys(VOID)
LRESULT OSK_Create(HWND hwnd)
BOOL OSK_Command(WPARAM wCommand, HWND hWndControl)
BOOL OSK_ReleaseKey(WORD ScanCode)
LRESULT OSK_Paint(HWND hwnd)
LRESULT OSK_SetKeys(int reason)
VOID OSK_RefreshLEDKeys(VOID)
int OSK_SetImage(int IdDlgItem, int IdResource)
INT_PTR CALLBACK OSK_WarningProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam)
LRESULT APIENTRY OSK_WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
BOOL WINAPI InitCommonControlsEx(const INITCOMMONCONTROLSEX *lpInitCtrls)
#define CF_INITTOLOGFONTSTRUCT
BOOL WINAPI ChooseFontW(LPCHOOSEFONTW lpChFont)
static WCHAR reason[MAX_STRING_RESOURCE_LEN]
#define HeapFree(x, y, z)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
DWORD WINAPI GetTickCount(VOID)
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define ERROR_ALREADY_EXISTS
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
HMONITOR WINAPI MonitorFromPoint(POINT, DWORD)
#define UNREFERENCED_PARAMETER(P)
INT WINAPI DrawTextW(HDC hdc, LPCWSTR str, INT count, LPRECT rect, UINT flags)
#define IDD_WARNINGDIALOG_OSK
BOOL WINAPI PlaySoundW(LPCWSTR pszSoundW, HMODULE hmod, DWORD fdwSound)
_Out_opt_ int _Out_opt_ int * cy
struct tagINITCOMMONCONTROLSEX INITCOMMONCONTROLSEX
#define ICC_STANDARD_CLASSES
#define ICC_WIN95_CLASSES
_Check_return_ _CRTIMP int __cdecl wcsncmp(_In_reads_or_z_(_MaxCount) const wchar_t *_Str1, _In_reads_or_z_(_MaxCount) const wchar_t *_Str2, _In_ size_t _MaxCount)
BOOL WINAPI ShellAboutW(HWND hWnd, LPCWSTR szApp, LPCWSTR szOtherStuff, HICON hIcon)
STRSAFEAPI StringCchCopyW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszSrc)
WCHAR lfFaceName[LF_FACESIZE]
HANDLE WINAPI DECLSPEC_HOTPATCH CreateMutexW(IN LPSECURITY_ATTRIBUTES lpMutexAttributes OPTIONAL, IN BOOL bInitialOwner, IN LPCWSTR lpName OPTIONAL)
TW_UINT32 TW_UINT16 TW_UINT16 MSG
UINT WINAPI SendInput(UINT, LPINPUT, int)
DWORD WINAPI GetLastError(void)
DWORD WINAPI GetWindowThreadProcessId(HWND hWnd, PDWORD lpdwProcessId)
HGDIOBJ WINAPI GetStockObject(_In_ int)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
HFONT WINAPI CreateFontIndirectW(_In_ const LOGFONTW *)
HBRUSH WINAPI CreateSolidBrush(_In_ COLORREF)
#define WM_CTLCOLORSTATIC
HKL WINAPI GetKeyboardLayout(_In_ DWORD)
BOOL WINAPI TranslateMessage(_In_ const MSG *)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
HWND WINAPI GetForegroundWindow(void)
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetMessageW(_Out_ LPMSG, _In_opt_ HWND, _In_ UINT, _In_ UINT)
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
#define LR_COPYFROMRESOURCE
#define DialogBoxW(i, t, p, f)
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
HANDLE WINAPI LoadImageW(_In_opt_ HINSTANCE hInst, _In_ LPCWSTR name, _In_ UINT type, _In_ int cx, _In_ int cy, _In_ UINT fuLoad)
int WINAPI ToUnicode(_In_ UINT wVirtKey, _In_ UINT wScanCode, _In_reads_bytes_opt_(256) CONST BYTE *lpKeyState, _Out_writes_(cchBuff) LPWSTR pwszBuff, _In_ int cchBuff, _In_ UINT wFlags)
_Check_return_ BOOL WINAPI GetKeyboardState(_Out_writes_(256) PBYTE lpKeyState)
HANDLE WINAPI CopyImage(_In_ HANDLE, _In_ UINT, _In_ int, _In_ int, _In_ UINT)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)
DWORD WINAPI CheckMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI SetWindowTextW(_In_ HWND, _In_opt_ LPCWSTR)
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
UINT WINAPI MapVirtualKeyW(_In_ UINT, _In_ UINT)
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
BOOL WINAPI IntersectRect(_Out_ LPRECT, _In_ LPCRECT, _In_ LPCRECT)
BOOL WINAPI UpdateWindow(_In_ HWND)
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
#define CreateWindowW(a, b, c, d, e, f, g, h, i, j, k)
#define KEYEVENTF_EXTENDEDKEY
LRESULT WINAPI DispatchMessageW(_In_ const MSG *)
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
SHORT WINAPI GetAsyncKeyState(_In_ int)
BOOL WINAPI GetMonitorInfoW(_In_ HMONITOR, _Inout_ LPMONITORINFO)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
#define MAKEINTRESOURCEW(i)
HKL WINAPI ActivateKeyboardLayout(_In_ HKL, _In_ UINT)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)
LPARAM WINAPI GetMessageExtraInfo(void)
BOOL WINAPI DestroyWindow(_In_ HWND)
int WINAPI GetSystemMetrics(_In_ int)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HMENU WINAPI GetMenu(_In_ HWND)
SHORT WINAPI GetKeyState(_In_ int)
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
BOOL WINAPI DestroyIcon(_In_ HICON)