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.

68 lines
1.4 KiB

  1. //
  2. // funcprv.h
  3. //
  4. #ifndef FUNCPRV_H
  5. #define FUNCPRV_H
  6. #include "private.h"
  7. #include "immif.h"
  8. #include "fnprbase.h"
  9. //////////////////////////////////////////////////////////////////////////////
  10. //
  11. // CFunctionProvider
  12. //
  13. //////////////////////////////////////////////////////////////////////////////
  14. class CFunctionProvider : public CFunctionProviderBase
  15. {
  16. public:
  17. CFunctionProvider(ImmIfIME *pImmIfIME, TfClientId tid);
  18. STDMETHODIMP GetFunction(REFGUID rguid, REFIID riid, IUnknown **ppunk);
  19. ImmIfIME* _ImmIfIME;
  20. };
  21. //////////////////////////////////////////////////////////////////////////////
  22. //
  23. // CFnDocFeed
  24. //
  25. //////////////////////////////////////////////////////////////////////////////
  26. class CFnDocFeed : public IAImmFnDocFeed
  27. {
  28. public:
  29. CFnDocFeed(CFunctionProvider *pFuncPrv);
  30. ~CFnDocFeed();
  31. //
  32. // IUnknown methods
  33. //
  34. STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
  35. STDMETHODIMP_(ULONG) AddRef(void);
  36. STDMETHODIMP_(ULONG) Release(void);
  37. //
  38. // ITfFunction
  39. //
  40. STDMETHODIMP GetDisplayName(BSTR *pbstrCand);
  41. STDMETHODIMP IsEnabled(BOOL *pfEnable);
  42. //
  43. // ITfFnDocFeed
  44. //
  45. STDMETHODIMP DocFeed();
  46. STDMETHODIMP ClearDocFeedBuffer();
  47. STDMETHODIMP StartReconvert();
  48. STDMETHODIMP StartUndoCompositionString();
  49. private:
  50. CFunctionProvider *_pFuncPrv;
  51. long _cRef;
  52. };
  53. #endif // FUNCPRV_H