OSDN Git Service

Add GetIMEInfo to CProfile. Make InitApplicationList uses it.
[xkeymacs/xkeymacs.git] / xkeymacs / profile.h
1 // Profile.h: interface of the CProfile class\r
2 //\r
3 //////////////////////////////////////////////////////////////////////\r
4 \r
5 #if !defined(AFX_PROFILE_H__9415254D_4656_484B_A730_E02580D8A221__INCLUDED_)\r
6 #define AFX_PROFILE_H__9415254D_4656_484B_A730_E02580D8A221__INCLUDED_\r
7 \r
8 #if _MSC_VER > 1000\r
9 #pragma once\r
10 #endif // _MSC_VER > 1000\r
11 \r
12 #include <winperf.h>   // for Windows NT\r
13 #include "resource.h"\r
14 #include "data.h"\r
15 \r
16 struct TASK_LIST {\r
17     DWORD dwProcessId;\r
18     CHAR ProcessName[MAX_PATH];\r
19 };\r
20 typedef TASK_LIST *PTASK_LIST;\r
21 \r
22 enum { MAX_TASKS = 256 };\r
23 \r
24 enum HKEY_TYPE { CURRENT_USER, LOCAL_MACHINE, MAX_HKEY_TYPE };\r
25 \r
26 class CKey;\r
27 \r
28 class CProfile\r
29 {\r
30 public:\r
31         static int GetKeyboardSpeed(void);\r
32         static CString GetWindowText(int nApplicationID);\r
33         static void SetWindowText(int nApplicationID, CString szWindowText);\r
34         static void SetEnableCUA(int nApplicationID, BOOL bEnableCUA);\r
35         static BOOL GetEnableCUA(int nApplicationID);\r
36         static void ImportProperties();\r
37         static void ExportProperties();\r
38         static void RestartComputer();\r
39         static BOOL IsVistaOrLater();\r
40         static void SaveScanCodeMap(HKEY_TYPE hkeyType);\r
41         static void LoadScanCodeMap(HKEY_TYPE hkeyType);\r
42         static BOOL Is106Keyboard();\r
43         static BOOL IsDialog(CString sz);\r
44         static BOOL GetUseDialogSetting(int nApplicationID);\r
45         static void SetUseDialogSetting(int nApplicationID, BOOL bUseDialogSetting);\r
46         static int GetApplicationIndex(CString szApplicationName);\r
47         static void CopyData(CString szDestinationApplication, CString szSourceApplication);\r
48         static void ReadKeyBind(int *pnCommandType, int *pnKey, LPCTSTR szKeyBind);\r
49         static LPCTSTR Key2String(int nKey);\r
50         static LPCTSTR CommandType2String(int nCommandType);\r
51         static int GetCurrentApplicationID(CComboBox *cApplicationList, CString szCurrentApplication);\r
52         static int GetKillRingMax(int nApplicationID);\r
53         static void SetKillRingMax(int nApplicationID, int nKillRingMax);\r
54         static int GetCommandID(int nApplicationID, int nCommandType, int nKey);\r
55         static void SetCommandID(int nApplicationID, int nCommandType, int nKey, int nCommandID);\r
56         static void UpdateApplicationTitle(CComboBox *cApplicationList, CString szCurrentApplication, int nApplicationID, BOOL bSaveAndValidate);\r
57         static void GetApplicationTitle(CComboBox *cApplicationList, CString &rList, int nIndex = -1);\r
58         static BOOL IsDefault(CString sz);\r
59         static int GetApplicationIndex(CString szApplicationName, BOOL bSaveAndValidate, int *nSettingStyle);\r
60         static void InitApplicationList(CComboBox *cApplicationList);\r
61         static int GetSavedSettingCount();\r
62         static void ClearData(CString szCurrentApplication);\r
63         static void InitDllData();\r
64         static void LoadData();\r
65         static void SaveData();\r
66 \r
67 private:\r
68         static void SaveKeyBind(CString szApplicationName, CString szCommandName, int nCommandType, int nKey);\r
69         static BOOL DiableTokenPrivileges();\r
70         static BOOL AdjustTokenPrivileges(LPCTSTR lpName);\r
71         static void SaveCommand(CString szApplicationName, int nCommandID);\r
72         static void SaveKeyBind(CString szApplicationName, int nCommandID, int nCommandType, int nKey);\r
73         static void AddKeyBind2C_(CString szApplicationName, BYTE bVk);\r
74         static void LevelUp();\r
75         static void Item2AppName(CString *sz);\r
76         static int IsNotSameString(CComboBox *pApplication, CString szListItem);\r
77         static int CountSeparator(CString szMainString, CString szSeparator);\r
78         static void GetNthString(CString *szAppName, CString szWindowName, CString szSeparator, int n);\r
79         static void GetAppName(CString *szAppName, LPCTSTR pWindowName);\r
80         static BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam);\r
81         static BOOL IsTheString(CString sz, UINT nID);\r
82         static void SetDllData();\r
83         static CData m_Data[MAX_APP];\r
84         static void DeleteAllRegistryData();\r
85         static TASK_LIST m_TaskList[MAX_TASKS];\r
86         static DWORD m_dwTasks;\r
87         static void GetTaskList();\r
88         static BOOL IsCommandType(int nCommandType, LPCTSTR szKeyBind);\r
89         static int KeyBind2Key(LPCTSTR szKey);\r
90         static int KeyBind2CommandType(LPCTSTR szKeyBind);\r
91         static CString WriteKeyBind(int nCommandType, int nKey);\r
92         static void LoadRegistory();\r
93         static void SaveRegistory();\r
94         static void GetIMEInfo(const LPTSTR szFilename, const LPTSTR szDescription);\r
95 };\r
96 \r
97 #endif // !defined(AFX_PROFILE_H__9415254D_4656_484B_A730_E02580D8A221__INCLUDED_)\r