Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
2.0 KiB

  1. //
  2. // %%Title: UI IMEPad Button
  3. // %%Unit: UI
  4. // %%Contact: TakeshiF
  5. // %%Date: 97/04/14
  6. // %%File: pad.h
  7. //
  8. // UI IMEPad Button support
  9. //
  10. #ifndef __PAD_H__
  11. #define __PAD_H__
  12. #include "cicbtn.h"
  13. #include "toolbar.h"
  14. #include "padcb.h"
  15. #include "../fecommon/srcuim/cpadsvu.h"
  16. class CKorIMX;
  17. class CImePadSvrUIM;
  18. class CPadCore
  19. {
  20. public:
  21. BOOL m_fShown;
  22. BOOL m_fCurrentlyShown;
  23. CPadCore(CKorIMX *pTip);
  24. ~CPadCore();
  25. void PadBoot(IImeIPoint1* pIP, IID* piid);
  26. #if 0
  27. void PadBoot( IImeIPoint* pIP, UINT uiType );
  28. #endif
  29. BOOL InitializePad();
  30. void SetIPoint(IImeIPoint1* pIP);
  31. void IMEPadNotify(BOOL fShown);
  32. void SetFocus(BOOL fFocus);
  33. void ShowPad(BOOL fShow);
  34. BOOL IsShown()
  35. {
  36. return m_fShown;
  37. }
  38. BOOL IsCurrentlyShown(void)
  39. {
  40. return m_fCurrentlyShown;
  41. }
  42. UINT MakeAppletMenu(UINT uidStart, UINT uidEnd, ITfMenu *pMenu, LPIMEPADAPPLETCONFIG *ppCfg);
  43. #if 0
  44. BOOL GetHWInfo( BSTR* pbsz, HICON* phIcon );
  45. BOOL InvokeHWTIP(void);
  46. BOOL IsHWTIP(void);
  47. #endif
  48. CPadCB* m_pPadCB;
  49. CImePadSvrUIM* m_pPadSvr;
  50. private:
  51. CKorIMX *m_pImx;
  52. };
  53. class CPad : public CCicButton
  54. {
  55. public:
  56. CPad(CToolBar *ptb, CPadCore* pPadCore);
  57. ~CPad();
  58. void Reset(void);
  59. STDMETHODIMP GetIcon(HICON *phIcon);
  60. STDMETHODIMP InitMenu(ITfMenu *pMenu);
  61. STDMETHODIMP OnMenuSelect(UINT uID);
  62. STDMETHODIMP_(ULONG) Release(void);
  63. #if 0
  64. static BOOL __declspec(dllexport) HWDlgProc( HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
  65. static BOOL OnProcessAttach(HINSTANCE hInst);
  66. static BOOL OnProcessDetach(void);
  67. static BOOL OnThreadAttach(void);
  68. static BOOL OnThreadDetach(void);
  69. void UnloadImePad(void);
  70. void LoadImePad(HWND hWndUI);
  71. #endif
  72. void ShowItem(BOOL fShow);
  73. UINT MakeAppletMenu( void** ppcmh );
  74. void CleanAppletCfg(void);
  75. private:
  76. UINT m_ciApplets;
  77. CToolBar *m_pTb;
  78. CPadCore *m_pPadCore;
  79. IMEPADAPPLETCONFIG *m_pCfg;
  80. };
  81. #endif // __PAD_H__