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.

99 lines
2.6 KiB

  1. #ifndef _ENUMCP_H_
  2. #define _ENUMCP_H_
  3. #ifdef __cplusplus
  4. //
  5. // CEnumCodePage declaration with IEnumCodePage Interface
  6. //
  7. class CEnumCodePage : public IEnumCodePage
  8. {
  9. MIMECONTF dwMimeSource;
  10. public:
  11. // IUnknown methods
  12. virtual STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
  13. virtual STDMETHODIMP_(ULONG) AddRef(void);
  14. virtual STDMETHODIMP_(ULONG) Release(void);
  15. // IEnumCodePage methods
  16. virtual STDMETHODIMP Clone(IEnumCodePage **ppEnumCodePage);
  17. virtual STDMETHODIMP Next(ULONG celt, PMIMECPINFO rgcpInfo, ULONG *pceltFetched);
  18. virtual STDMETHODIMP Reset(void);
  19. virtual STDMETHODIMP Skip(ULONG celt);
  20. // Constructor & Destructor
  21. CEnumCodePage(DWORD grfFlags, LANGID LangId, MIMECONTF dwSource);
  22. ~CEnumCodePage();
  23. protected:
  24. int _cRef;
  25. int _iCur;
  26. DWORD _dwLevel;
  27. LANGID _LangId;
  28. };
  29. //
  30. // CEnumRfc1766 declaration with IEnumRfc1766 Interface
  31. //
  32. class CEnumRfc1766 : public IEnumRfc1766
  33. {
  34. MIMECONTF dwMimeSource;
  35. public:
  36. // IUnknown methods
  37. virtual STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
  38. virtual STDMETHODIMP_(ULONG) AddRef(void);
  39. virtual STDMETHODIMP_(ULONG) Release(void);
  40. // IEnumCodePage methods
  41. virtual STDMETHODIMP Clone(IEnumRfc1766 **ppEnumRfc1766);
  42. virtual STDMETHODIMP Next(ULONG celt, PRFC1766INFO rgRfc1766Info, ULONG *pceltFetched);
  43. virtual STDMETHODIMP Reset(void);
  44. virtual STDMETHODIMP Skip(ULONG celt);
  45. // Constructor & Destructor
  46. CEnumRfc1766(MIMECONTF dwSource, LANGID LangId);
  47. ~CEnumRfc1766();
  48. protected:
  49. LANGID _LangID;
  50. int _cRef;
  51. UINT _uCur;
  52. };
  53. class CEnumScript : public IEnumScript
  54. {
  55. public:
  56. // IUnknown methods
  57. virtual STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
  58. virtual STDMETHODIMP_(ULONG) AddRef(void);
  59. virtual STDMETHODIMP_(ULONG) Release(void);
  60. // IEnumScript methods
  61. virtual STDMETHODIMP Clone(IEnumScript **ppEnumScript);
  62. virtual STDMETHODIMP Next(ULONG celt, PSCRIPTINFO rgScriptInfo, ULONG *pceltFetched);
  63. virtual STDMETHODIMP Reset(void);
  64. virtual STDMETHODIMP Skip(ULONG celt);
  65. // Constructor & Destructor
  66. CEnumScript(DWORD grfFlags, LANGID LangId, MIMECONTF dwSource);
  67. ~CEnumScript();
  68. protected:
  69. int _cRef;
  70. UINT _uCur;
  71. LANGID _LangId;
  72. DWORD _dwLevel;
  73. };
  74. #endif // __cplusplus
  75. typedef struct tagRFC1766INFOA
  76. {
  77. LCID lcid;
  78. char szRfc1766[MAX_RFC1766_NAME];
  79. char szLocaleName[MAX_LOCALE_NAME];
  80. } RFC1766INFOA, *PRFC1766INFOA;
  81. #endif // _ENUMCP_H_