home *** CD-ROM | disk | FTP | other *** search
/ H4CK3R 14 / hacker14.iso / programacao / cwin / c.exe / $INSTDIR / include / oleidl.h < prev    next >
Encoding:
C/C++ Source or Header  |  2003-12-15  |  12.2 KB  |  357 lines

  1. #ifndef _OLEIDL_H
  2. #define _OLEIDL_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10.  
  11. #include <objfwd.h>
  12.  
  13. #define MK_ALT    32
  14.  
  15. typedef interface IParseDisplayname *LPPARSEDISPLAYNAME;
  16. typedef interface IOleContainer *LPOLECONTAINER;
  17. typedef interface IOleClientSite *LPOLECLIENTSITE;
  18. typedef interface IOleObject *LPOLEOBJECT;
  19. typedef interface IDropTarget *LPDROPTARGET;
  20. typedef interface IDropSource *LPDROPSOURCE;
  21. typedef interface IEnumOleDocumentViews *LPENUMOLEDOCUMENTVIEWS;
  22. typedef interface IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
  23. typedef interface IEnumOLEVERB *LPENUMOLEVERB;
  24. typedef interface IOleWindow *LPOLEWINDOW;
  25. typedef interface IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
  26. typedef interface IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
  27. typedef interface IOleInPlaceFrame *LPOLEINPLACEFRAME;
  28. typedef interface IOleAdviseHolder *LPOLEADVISEHOLDER;
  29. typedef interface IViewObject *LPVIEWOBJECT;
  30. typedef interface IViewObject2 *LPVIEWOBJECT2;
  31.  
  32. typedef enum tagOLEWHICHMK {
  33.     OLEWHICHMK_CONTAINER=1,
  34.     OLEWHICHMK_OBJREL,
  35.     OLEWHICHMK_OBJFULL
  36. } OLEWHICHMK;
  37. typedef enum tagOLEGETMONIKER {
  38.     OLEGETMONIKER_ONLYIFTHERE=1,
  39.     OLEGETMONIKER_FORCEASSIGN,
  40.     OLEGETMONIKER_UNASSIGN,
  41.     OLEGETMONIKER_TEMPFORUSER
  42. } OLEGETMONIKER;
  43. #ifdef __GNUC__
  44. __extension__  /* IS0 C says enums limited to range of int */ 
  45. #endif
  46. typedef enum tagDROPEFFECT {
  47.     DROPEFFECT_NONE=0,
  48.     DROPEFFECT_COPY=1,
  49.     DROPEFFECT_MOVE=2,
  50.     DROPEFFECT_LINK=4,
  51.     DROPEFFECT_SCROLL=0x80000000
  52. } DROPEFFECT;
  53. typedef struct tagOleMenuGroupWidths {
  54.     LONG width[6];
  55. } OLEMENUGROUPWIDTHS,*LPOLEMENUGROUPWIDTHS;
  56. typedef HGLOBAL HOLEMENU;
  57. typedef enum tagOLECLOSE {
  58.     OLECLOSE_SAVEIFDIRTY,
  59.     OLECLOSE_NOSAVE,
  60.     OLECLOSE_PROMPTSAVE
  61. } OLECLOSE;
  62. typedef struct tagOLEVERB {
  63.     LONG lVerb;
  64.     LPWSTR lpszVerbName;
  65.     DWORD fuFlags;
  66.     DWORD grfAttribs;
  67. } OLEVERB,*LPOLEVERB;
  68. typedef RECT BORDERWIDTHS;
  69. typedef LPRECT LPBORDERWIDTHS;
  70. typedef LPCRECT LPCBORDERWIDTHS;
  71. typedef struct tagOIFI {
  72.     UINT cb;
  73.     BOOL fMDIApp;
  74.     HWND hwndFrame;
  75.     HACCEL haccel;
  76.     UINT cAccelEntries;
  77. }OLEINPLACEFRAMEINFO,*LPOLEINPLACEFRAMEINFO;
  78.  
  79. /*DECLARE_ENUMERATOR_(IEnumOleDocumentViews,IOleDocumentView);*/
  80. DECLARE_ENUMERATOR(OLEVERB);
  81. typedef IEnumOLEVERB IEnumOleVerb;
  82.  
  83. EXTERN_C const IID IID_IParseDisplayName;
  84. #undef INTERFACE
  85. #define INTERFACE IParseDisplayName
  86. DECLARE_INTERFACE_(IParseDisplayName,IUnknown)
  87. {
  88.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  89.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  90.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  91.     STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
  92. };
  93.  
  94. EXTERN_C const IID IID_IOleContainer;
  95. #undef INTERFACE
  96. #define INTERFACE IOleContainer
  97. DECLARE_INTERFACE_(IOleContainer,IParseDisplayName)
  98. {
  99.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  100.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  101.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  102.     STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
  103.     STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
  104.     STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
  105. };
  106.  
  107. EXTERN_C const IID IID_IOleItemContainer;
  108. #undef INTERFACE
  109. #define INTERFACE IOleItemContainer
  110. DECLARE_INTERFACE_(IOleItemContainer,IOleContainer)
  111. {
  112.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  113.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  114.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  115.     STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
  116.     STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
  117.     STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
  118.     STDMETHOD(GetObject)(THIS_ LPOLESTR,DWORD,IBindCtx*,REFIID,void**) PURE;
  119.     STDMETHOD(GetObjectStorage)(THIS_ LPOLESTR,IBindCtx*,REFIID,void**) PURE;
  120.     STDMETHOD(IsRunning)(THIS_ LPOLESTR) PURE;
  121. };
  122.  
  123. EXTERN_C const IID IID_IOleClientSite;
  124. #undef INTERFACE
  125. #define INTERFACE IOleClientSite
  126. DECLARE_INTERFACE_(IOleClientSite,IUnknown)
  127. {
  128.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  129.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  130.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  131.     STDMETHOD(SaveObject)(THIS) PURE;
  132.     STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
  133.     STDMETHOD(GetContainer)(THIS_ LPOLECONTAINER*) PURE;
  134.     STDMETHOD(ShowObject)(THIS) PURE;
  135.     STDMETHOD(OnShowWindow)(THIS_ BOOL) PURE;
  136.     STDMETHOD(RequestNewObjectLayout)(THIS) PURE;
  137. };
  138.  
  139. EXTERN_C const IID IID_IOleObject;
  140. #undef INTERFACE
  141. #define INTERFACE IOleObject
  142. DECLARE_INTERFACE_(IOleObject,IUnknown)
  143. {
  144.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  145.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  146.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  147.     STDMETHOD(SetClientSite)(THIS_ LPOLECLIENTSITE) PURE;
  148.     STDMETHOD(GetClientSite)(THIS_ LPOLECLIENTSITE*) PURE;
  149.     STDMETHOD(SetHostNames)(THIS_ LPCOLESTR,LPCOLESTR) PURE;
  150.     STDMETHOD(Close)(THIS_ DWORD) PURE;
  151.     STDMETHOD(SetMoniker)(THIS_ DWORD,LPMONIKER) PURE;
  152.     STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
  153.     STDMETHOD(InitFromData)(THIS_ LPDATAOBJECT,BOOL,DWORD) PURE;
  154.     STDMETHOD(GetClipboardData)(THIS_ DWORD,LPDATAOBJECT*) PURE;
  155.     STDMETHOD(DoVerb)(THIS_ LONG,LPMSG,LPOLECLIENTSITE,LONG,HWND,LPCRECT) PURE;
  156.     STDMETHOD(EnumVerbs)(THIS_ LPENUMOLEVERB*) PURE;
  157.     STDMETHOD(Update)(THIS) PURE;
  158.     STDMETHOD(IsUpToDate)(THIS) PURE;
  159.     STDMETHOD(GetUserClassID)(THIS_ LPCLSID) PURE;
  160.     STDMETHOD(GetUserType)(THIS_ DWORD,LPOLESTR) PURE;
  161.     STDMETHOD(SetExtent)(THIS_ DWORD,SIZEL*) PURE;
  162.     STDMETHOD(GetExtent)(THIS_ DWORD,SIZEL*) PURE;
  163.     STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
  164.     STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
  165.     STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
  166.     STDMETHOD(GetMiscStatus)(THIS_ DWORD,PDWORD) PURE;
  167.     STDMETHOD(SetColorScheme)(THIS_ LPLOGPALETTE) PURE;
  168. };
  169.  
  170. EXTERN_C const IID IID_IOleWindow;
  171. #undef INTERFACE
  172. #define INTERFACE IOleWindow
  173. DECLARE_INTERFACE_(IOleWindow,IUnknown)
  174. {
  175.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  176.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  177.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  178.     STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
  179.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  180. };
  181.  
  182. EXTERN_C const IID IID_IOleInPlaceUIWindow;
  183. #undef INTERFACE
  184. #define INTERFACE IOleInPlaceUIWindow
  185. DECLARE_INTERFACE_(IOleInPlaceUIWindow,IOleWindow)
  186. {
  187.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  188.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  189.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  190.     STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
  191.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  192.     STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
  193.     STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
  194.     STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
  195.     STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
  196. };
  197.  
  198. EXTERN_C const IID IID_IOleInPlaceObject;
  199. #undef INTERFACE
  200. #define INTERFACE IOleInPlaceObject
  201. DECLARE_INTERFACE_(IOleInPlaceObject,IOleWindow)
  202. {
  203.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  204.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  205.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  206.     STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
  207.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  208.     STDMETHOD(InPlaceDeactivate)(THIS) PURE;
  209.     STDMETHOD(UIDeactivate)(THIS) PURE;
  210.     STDMETHOD(SetObjectRects)(THIS_ LPCRECT,LPCRECT) PURE;
  211.     STDMETHOD(ReactivateAndUndo)(THIS) PURE;
  212. };
  213.  
  214. EXTERN_C const IID IID_IOleInPlaceActiveObject;
  215. #undef INTERFACE
  216. #define INTERFACE IOleInPlaceActiveObject
  217. DECLARE_INTERFACE_(IOleInPlaceActiveObject,IOleWindow)
  218. {
  219.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  220.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  221.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  222.     STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
  223.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  224.     STDMETHOD(TranslateAccelerator)(THIS_ LPMSG) PURE;
  225.     STDMETHOD(OnFrameWindowActivate)(THIS_ BOOL) PURE;
  226.     STDMETHOD(OnDocWindowActivate)(THIS_ BOOL) PURE;
  227.     STDMETHOD(ResizeBorder)(THIS_ LPCRECT,LPOLEINPLACEUIWINDOW,BOOL) PURE;
  228.     STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
  229. };
  230.  
  231. EXTERN_C const IID IID_IOleInPlaceFrame;
  232. #undef INTERFACE
  233. #define INTERFACE IOleInPlaceFrame
  234. DECLARE_INTERFACE_(IOleInPlaceFrame,IOleInPlaceUIWindow)
  235. {
  236.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  237.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  238.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  239.     STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
  240.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  241.     STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
  242.     STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
  243.     STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
  244.     STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
  245.     STDMETHOD(InsertMenus)(THIS_ HMENU,LPOLEMENUGROUPWIDTHS) PURE;
  246.     STDMETHOD(SetMenu)(THIS_ HMENU,HOLEMENU,HWND) PURE;
  247.     STDMETHOD(RemoveMenus)(THIS_ HMENU) PURE;
  248.     STDMETHOD(SetStatusText)(THIS_ LPCOLESTR) PURE;
  249.     STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
  250.     STDMETHOD(TranslateAccelerator)(THIS_ LPMSG,WORD) PURE;
  251. };
  252.  
  253. EXTERN_C const IID IID_IOleInPlaceSite;
  254. #undef INTERFACE
  255. #define INTERFACE IOleInPlaceSite
  256. DECLARE_INTERFACE_(IOleInPlaceSite,IOleWindow)
  257. {
  258.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  259.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  260.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  261.     STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
  262.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  263.     STDMETHOD(CanInPlaceActivate)(THIS) PURE;
  264.     STDMETHOD(OnInPlaceActivate)(THIS) PURE;
  265.     STDMETHOD(OnUIActivate)(THIS) PURE;
  266.     STDMETHOD(GetWindowContext)(THIS_ IOleInPlaceFrame**,IOleInPlaceUIWindow**,LPRECT,LPRECT,LPOLEINPLACEFRAMEINFO) PURE;
  267.     STDMETHOD(Scroll)(THIS_ SIZE) PURE;
  268.     STDMETHOD(OnUIDeactivate)(THIS_ BOOL) PURE;
  269.     STDMETHOD(OnInPlaceDeactivate)(THIS) PURE;
  270.     STDMETHOD(DiscardUndoState)(THIS) PURE;
  271.     STDMETHOD(DeactivateAndUndo)(THIS) PURE;
  272.     STDMETHOD(OnPosRectChange)(THIS_ LPCRECT) PURE;
  273. };
  274.  
  275. EXTERN_C const IID IID_IOleAdviseHolder;
  276. #undef INTERFACE
  277. #define INTERFACE IOleAdviseHolder
  278. DECLARE_INTERFACE_(IOleAdviseHolder,IUnknown)
  279. {
  280.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  281.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  282.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  283.     STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
  284.     STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
  285.     STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
  286.     STDMETHOD(SendOnRename)(THIS_ LPMONIKER) PURE;
  287.     STDMETHOD(SendOnSave)(THIS) PURE;
  288.     STDMETHOD(SendOnClose)(THIS) PURE;
  289. };
  290.  
  291. EXTERN_C const IID IID_IDropSource;
  292. #undef INTERFACE
  293. #define INTERFACE IDropSource
  294. DECLARE_INTERFACE_(IDropSource,IUnknown)
  295. {
  296.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  297.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  298.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  299.     STDMETHOD(QueryContinueDrag)(THIS_ BOOL,DWORD) PURE;
  300.     STDMETHOD(GiveFeedback)(THIS_ DWORD) PURE;
  301. };
  302.  
  303. EXTERN_C const IID IID_IDropTarget;
  304. #undef INTERFACE
  305. #define INTERFACE IDropTarget
  306. DECLARE_INTERFACE_(IDropTarget,IUnknown)
  307. {
  308.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  309.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  310.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  311.     STDMETHOD(DragEnter)(THIS_ LPDATAOBJECT,DWORD,POINTL,PDWORD) PURE;
  312.     STDMETHOD(DragOver)(THIS_ DWORD,POINTL,PDWORD) PURE;
  313.     STDMETHOD(DragLeave)(THIS) PURE;
  314.     STDMETHOD(Drop)(THIS_ LPDATAOBJECT,DWORD,POINTL,PDWORD) PURE;
  315. };
  316.  
  317. typedef BOOL(CALLBACK *__IView_pfncont)(DWORD);
  318. EXTERN_C const IID IID_IViewObject;
  319. #undef INTERFACE
  320. #define INTERFACE IViewObject
  321. DECLARE_INTERFACE_(IViewObject,IUnknown)
  322. {
  323.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  324.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  325.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  326.     STDMETHOD(Draw)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,HDC,LPCRECTL,LPCRECTL,__IView_pfncont pfnContinue,DWORD) PURE;
  327.     STDMETHOD(GetColorSet)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,LPLOGPALETTE*) PURE;
  328.     STDMETHOD(Freeze)(THIS_ DWORD,LONG,PVOID,PDWORD) PURE;
  329.     STDMETHOD(Unfreeze)(THIS_ DWORD) PURE;
  330.     STDMETHOD(SetAdvise)(THIS_ DWORD,DWORD,IAdviseSink*) PURE;
  331.     STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
  332. };
  333.  
  334. EXTERN_C const IID IID_IViewObject2;
  335. #undef INTERFACE
  336. #define INTERFACE IViewObject2
  337. DECLARE_INTERFACE_(IViewObject2,IUnknown)
  338. {
  339.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  340.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  341.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  342.     STDMETHOD(Draw)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,HDC,LPCRECTL,LPCRECTL,__IView_pfncont pfnContinue,DWORD) PURE;
  343.     STDMETHOD(GetColorSet)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,LPLOGPALETTE*) PURE;
  344.     STDMETHOD(Freeze)(THIS_ DWORD,LONG,PVOID,PDWORD) PURE;
  345.     STDMETHOD(Unfreeze)(THIS_ DWORD) PURE;
  346.     STDMETHOD(SetAdvise)(THIS_ DWORD,DWORD,IAdviseSink*) PURE;
  347.     STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
  348.     STDMETHOD(GetExtent)(THIS_ DWORD,DWORD,DVTARGETDEVICE*,LPSIZEL) PURE;
  349. };
  350.  
  351.  
  352. #ifdef __cplusplus
  353. }
  354. #endif
  355. #endif
  356.  
  357.