summaryrefslogtreecommitdiff
path: root/legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h
diff options
context:
space:
mode:
authorVincent Torri <vincent.torri@gmail.com>2008-12-01 22:43:04 +0000
committerVincent Torri <vincent.torri@gmail.com>2008-12-01 22:43:04 +0000
commit1a897239c71ad8af78dbf80f058a4351e19aaae0 (patch)
tree9f86269464d6f742caf2a80571303454d975dd4d /legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h
parent6a06a92ac8d7f7a710a95271b40638270613be12 (diff)
Patch by Dmitriy Mazovka:
add drag'n drop support in ecore_win32 (reworked) (missing files) SVN revision: 37890
Diffstat (limited to 'legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h')
-rw-r--r--legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h b/legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h
new file mode 100644
index 0000000000..3d289cf7f5
--- /dev/null
+++ b/legacy/ecore/src/lib/ecore_win32/ecore_win32_dnd_data_object.h
@@ -0,0 +1,49 @@
1#ifndef __ECORE_WIN32_DND_DATA_OBJECT_H__
2#define __ECORE_WIN32_DND_DATA_OBJECT_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
11class DataObject : public IDataObject
12{
13 private:
14
15 LONG ref_count_;
16 int formats_num_;
17 FORMATETC *format_etc_;
18 STGMEDIUM *stg_medium_;
19
20 private: // internal helper function
21
22 int lookup_format_etc(FORMATETC *format_etc);
23
24 public: // structors
25
26 DataObject(FORMATETC *fmtetc, STGMEDIUM *stgmed, int count);
27 ~DataObject();
28
29 public: // IUnknown
30
31 HRESULT __stdcall QueryInterface(REFIID iid, void **ppvObject);
32 ULONG __stdcall AddRef();
33 ULONG __stdcall Release();
34
35 public: // IDataObject
36
37 HRESULT __stdcall GetData(FORMATETC *pFormatEtc, STGMEDIUM *pmedium);
38 HRESULT __stdcall GetDataHere(FORMATETC *pFormatEtc, STGMEDIUM *pmedium);
39 HRESULT __stdcall QueryGetData(FORMATETC *pFormatEtc);
40 HRESULT __stdcall GetCanonicalFormatEtc(FORMATETC *pFormatEct, FORMATETC *pFormatEtcOut);
41 HRESULT __stdcall SetData(FORMATETC *pFormatEtc, STGMEDIUM *pMedium, BOOL fRelease);
42 HRESULT __stdcall EnumFormatEtc(DWORD dwDirection, IEnumFORMATETC **ppEnumFormatEtc);
43 HRESULT __stdcall DAdvise(FORMATETC *pFormatEtc, DWORD advf, IAdviseSink *, DWORD *);
44 HRESULT __stdcall DUnadvise(DWORD dwConnection);
45 HRESULT __stdcall EnumDAdvise(IEnumSTATDATA **ppEnumAdvise);
46};
47
48
49#endif /* __ECORE_WIN32_DND_DATA_OBJECT_H__ */