/*[]=====================================================================[]*/ /*[] LeadTools Run Time Library - Version 14 []*/ /*[] []*/ /*[] []*/ /*[] Copyright (c) 1991-2004 LEAD Technologies, Inc. []*/ /*[] All Rights Reserved. []*/ /*[]=====================================================================[]*/ /*------------------------------------------------------------------------- We have made the assumption that the user has the knowledge of programming in C and Windows. --------------------------------------------------------------------------*/ #include "ImgConVw.h" L_INT GetNumChar(L_TCHAR ch) { L_BOOL bGt = (L_INT)(ch >= 'A'); return ch - (bGt ? ('A' - 10) : '0'); } L_INT GetVirtualKey(HWND hWnd, HWND ComboWindow) { L_INT nValue; L_TCHAR a[20] = TEXT("\0"); L_INT nVk = 0; L_INT nAcum; nValue = ComboBox_GetCurSel(ComboWindow); if (nValue != 0) { ComboBox_SetCurSel(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), nValue); ComboBox_GetText(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), a, 5); nAcum = GetNumChar(a[0]); nVk = nAcum * 16; nAcum = GetNumChar(a[1]); nVk += nAcum; } return nVk; } L_VOID GetKeyboardAction(HWND hCombWnd, L_INT nAction, L_INT nMouseDirection) { L_UINT uVk, uModifier; L_TCHAR VkString[20] = TEXT("\0"); L_INT nIndex; HWND VirtualKeyCombo = GetDlgItem(GetParent(hCombWnd), IDC_ACTION_VKEY_COM); L_DispContainerGetKeyboardAction(hCon, nAction, nMouseDirection, &uVk, &uModifier, 0); #if defined UNICODE _itow(uVk, VkString, 16); #else _itoa(uVk, VkString, 16); #endif nIndex = ComboBox_FindString(VirtualKeyCombo, 0, VkString); if (nIndex == -1) nIndex = 0; ComboBox_SetCurSel(hCombWnd, nIndex); ComboBox_SetCurSel(GetDlgItem(GetParent(hCombWnd), IDC_ACTION_MOD_COM), min(3, uModifier)); } L_VOID CheckKeyValidity(HWND hWndCtl, L_INT nType) { L_INT nIndex; L_INT nIndex1 = ComboBox_FindString(GetDlgItem(GetParent(hWndCtl), IDC_ACTION_UPKEY_COM), 0, "Num 0"); L_BOOL bNum = FALSE; if ((nType == 0) || (nType == 2)) { nIndex = ComboBox_GetCurSel(GetDlgItem(GetParent(hWndCtl), IDC_ACTION_UPKEY_COM)); if (nIndex >= nIndex1 && (nIndex < nIndex1 + 10)) bNum = TRUE; nIndex = ComboBox_GetCurSel(GetDlgItem(GetParent(hWndCtl), IDC_ACTION_DOWNKEY_COM)); if (nIndex >= nIndex1 && (nIndex < nIndex1 + 10)) bNum = TRUE; } if ((nType == 1) || (nType == 2)) { nIndex = ComboBox_GetCurSel(GetDlgItem(GetParent(hWndCtl), IDC_ACTION_LEFTKEY_COM)); if (nIndex >= nIndex1 && (nIndex < nIndex1 + 10)) bNum = TRUE; nIndex = ComboBox_GetCurSel(GetDlgItem(GetParent(hWndCtl), IDC_ACTION_RIGHTKEY_COM)); if (nIndex >= nIndex1 && (nIndex < nIndex1 + 10)) bNum = TRUE; } if (bNum) { if (ComboBox_GetCount(hWndCtl) == 3) return; if (ComboBox_GetCurSel(hWndCtl) == 1) ComboBox_SetCurSel(hWndCtl, 0); ComboBox_DeleteString(hWndCtl, 1); } else { if (ComboBox_GetCount(hWndCtl) != 3) return; ComboBox_InsertString(hWndCtl, 1, TEXT("Shift")); } } L_VOID AddVirtualKeyString(HWND hWnd) { ComboBox_AddString(hWnd, TEXT("N/A")); ComboBox_AddString(hWnd, TEXT("Space")); ComboBox_AddString(hWnd, TEXT("Page Up")); ComboBox_AddString(hWnd, TEXT("Page Down")); ComboBox_AddString(hWnd, TEXT("End")); ComboBox_AddString(hWnd, TEXT("Home")); ComboBox_AddString(hWnd, TEXT("Left")); ComboBox_AddString(hWnd, TEXT("Up")); ComboBox_AddString(hWnd, TEXT("Right")); ComboBox_AddString(hWnd, TEXT("Down")); ComboBox_AddString(hWnd, TEXT("Print Screen")); ComboBox_AddString(hWnd, TEXT("Insert")); ComboBox_AddString(hWnd, TEXT("Delete")); ComboBox_AddString(hWnd, TEXT("0")); ComboBox_AddString(hWnd, TEXT("1")); ComboBox_AddString(hWnd, TEXT("2")); ComboBox_AddString(hWnd, TEXT("3")); ComboBox_AddString(hWnd, TEXT("4")); ComboBox_AddString(hWnd, TEXT("5")); ComboBox_AddString(hWnd, TEXT("6")); ComboBox_AddString(hWnd, TEXT("7")); ComboBox_AddString(hWnd, TEXT("8")); ComboBox_AddString(hWnd, TEXT("9")); ComboBox_AddString(hWnd, TEXT("A")); ComboBox_AddString(hWnd, TEXT("B")); ComboBox_AddString(hWnd, TEXT("C")); ComboBox_AddString(hWnd, TEXT("D")); ComboBox_AddString(hWnd, TEXT("E")); ComboBox_AddString(hWnd, TEXT("F")); ComboBox_AddString(hWnd, TEXT("G")); ComboBox_AddString(hWnd, TEXT("H")); ComboBox_AddString(hWnd, TEXT("I")); ComboBox_AddString(hWnd, TEXT("J")); ComboBox_AddString(hWnd, TEXT("K")); ComboBox_AddString(hWnd, TEXT("L")); ComboBox_AddString(hWnd, TEXT("M")); ComboBox_AddString(hWnd, TEXT("N")); ComboBox_AddString(hWnd, TEXT("O")); ComboBox_AddString(hWnd, TEXT("P")); ComboBox_AddString(hWnd, TEXT("Q")); ComboBox_AddString(hWnd, TEXT("R")); ComboBox_AddString(hWnd, TEXT("S")); ComboBox_AddString(hWnd, TEXT("T")); ComboBox_AddString(hWnd, TEXT("U")); ComboBox_AddString(hWnd, TEXT("V")); ComboBox_AddString(hWnd, TEXT("W")); ComboBox_AddString(hWnd, TEXT("X")); ComboBox_AddString(hWnd, TEXT("Y")); ComboBox_AddString(hWnd, TEXT("Z")); ComboBox_AddString(hWnd, TEXT("Num 0")); ComboBox_AddString(hWnd, TEXT("Num 1")); ComboBox_AddString(hWnd, TEXT("Num 2")); ComboBox_AddString(hWnd, TEXT("Num 3")); ComboBox_AddString(hWnd, TEXT("Num 4")); ComboBox_AddString(hWnd, TEXT("Num 5")); ComboBox_AddString(hWnd, TEXT("Num 6")); ComboBox_AddString(hWnd, TEXT("Num 7")); ComboBox_AddString(hWnd, TEXT("Num 8")); ComboBox_AddString(hWnd, TEXT("Num 9")); ComboBox_AddString(hWnd, TEXT("Multiply")); ComboBox_AddString(hWnd, TEXT("Add")); ComboBox_AddString(hWnd, TEXT("Subtract")); ComboBox_AddString(hWnd, TEXT("Decimal")); ComboBox_AddString(hWnd, TEXT("F1")); ComboBox_AddString(hWnd, TEXT("F2")); ComboBox_AddString(hWnd, TEXT("F3")); ComboBox_AddString(hWnd, TEXT("F4")); ComboBox_AddString(hWnd, TEXT("F5")); ComboBox_AddString(hWnd, TEXT("F6")); ComboBox_AddString(hWnd, TEXT("F7")); ComboBox_AddString(hWnd, TEXT("F8")); ComboBox_AddString(hWnd, TEXT("F9")); ComboBox_AddString(hWnd, TEXT("F10")); ComboBox_AddString(hWnd, TEXT("F11")); ComboBox_AddString(hWnd, TEXT("F12")); ComboBox_SetCurSel(hWnd, 0); } L_VOID AddSupString(HWND hWnd) { ComboBox_AddString(hWnd, TEXT("N/A")); ComboBox_AddString(hWnd, TEXT("Shift")); ComboBox_AddString(hWnd, TEXT("Ctrl")); ComboBox_AddString(hWnd, TEXT("Alt")); ComboBox_SetCurSel(hWnd, 0); } L_VOID InitlizeVirtualKeyList(HWND hWnd) { ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("00")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("20")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("21")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("22")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("23")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("24")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("25")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("26")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("27")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("28")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("2C")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("2D")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("2E")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("30")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("31")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("32")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("33")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("34")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("35")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("36")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("37")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("38")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("39")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("41")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("42")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("43")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("44")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("45")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("46")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("47")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("48")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("49")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("4A")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("4B")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("4C")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("4D")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("4E")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("4F")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("50")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("51")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("52")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("53")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("54")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("55")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("56")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("57")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("58")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("59")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("5A")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("60")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("61")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("62")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("63")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("64")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("65")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("66")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("67")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("68")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("69")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("6A")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("6B")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("6D")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("6E")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("70")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("71")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("72")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("73")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("74")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("75")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("76")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("77")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("78")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("79")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("7A")); ComboBox_AddString(GetDlgItem(hWnd, IDC_ACTION_VKEY_COM), TEXT("7B")); }