diff options
Diffstat (limited to 'libraries/ecore/src/lib/ecore_win32/ecore_win32_dnd_enumformatetc.h')
-rw-r--r-- | libraries/ecore/src/lib/ecore_win32/ecore_win32_dnd_enumformatetc.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/libraries/ecore/src/lib/ecore_win32/ecore_win32_dnd_enumformatetc.h b/libraries/ecore/src/lib/ecore_win32/ecore_win32_dnd_enumformatetc.h new file mode 100644 index 0000000..9f17f56 --- /dev/null +++ b/libraries/ecore/src/lib/ecore_win32/ecore_win32_dnd_enumformatetc.h | |||
@@ -0,0 +1,50 @@ | |||
1 | #ifndef __ECORE_WIN32_DND_ENUMFORMATETC_H__ | ||
2 | #define __ECORE_WIN32_DND_ENUMFORMATETC_H__ | ||
3 | |||
4 | |||
5 | #define WIN32_LEAN_AND_MEAN | ||
6 | #include <windows.h> | ||
7 | #undef WIN32_LEAN_AND_MEAN | ||
8 | #include <objbase.h> | ||
9 | |||
10 | |||
11 | class CEnumFormatEtc : public IEnumFORMATETC | ||
12 | { | ||
13 | private: | ||
14 | |||
15 | LONG ref_count_; // Reference count for this COM interface | ||
16 | ULONG index_; // current enumerator index | ||
17 | ULONG formats_num_; // number of FORMATETC members | ||
18 | FORMATETC *format_etc_; // array of FORMATETC objects | ||
19 | |||
20 | public: // structors | ||
21 | |||
22 | CEnumFormatEtc(FORMATETC *pFormatEtc, int nNumFormats); | ||
23 | |||
24 | ~CEnumFormatEtc(); | ||
25 | |||
26 | public: // IUnknown | ||
27 | |||
28 | HRESULT __stdcall QueryInterface (REFIID iid, void ** ppvObject); | ||
29 | |||
30 | ULONG __stdcall AddRef (void); | ||
31 | |||
32 | ULONG __stdcall Release (void); | ||
33 | |||
34 | public: // IEnumFormatEtc | ||
35 | |||
36 | HRESULT __stdcall Next (ULONG celt, FORMATETC * rgelt, ULONG * pceltFetched); | ||
37 | |||
38 | HRESULT __stdcall Skip (ULONG celt); | ||
39 | |||
40 | HRESULT __stdcall Reset (void); | ||
41 | |||
42 | HRESULT __stdcall Clone (IEnumFORMATETC ** ppEnumFormatEtc); | ||
43 | }; | ||
44 | |||
45 | void DeepCopyFormatEtc(FORMATETC *dest, FORMATETC *source); | ||
46 | |||
47 | HRESULT CreateEnumFormatEtc(UINT cfmt, FORMATETC *afmt, IEnumFORMATETC **ppEnumFormatEtc); | ||
48 | |||
49 | |||
50 | #endif /* __ECORE_WIN32_DND_ENUMFORMATETC_H__ */ | ||