newlib-cygwin/winsup/w32api/include/oleidl.h

357 lines
12 KiB
C
Raw Normal View History

2000-02-18 03:38:33 +08:00
#ifndef _OLEIDL_H
#define _OLEIDL_H
* include/accctrl.h, aclapi.h, basetsd.h, basetyps.h, cderr.h, cguid.h, commctrl.h, commdlg.h, cpl.h, cplext.h, custcntl.h, dbt.h, dde.h, ddeml.h, dlgs.h, excpt.h, httpext.h, imagehlp.h, imm.h, initguid.h, intshcut.h, ipexport.h, iphlpapi.h, ipifcons.h, iprtrmib.h, iptypes.h, isguids.h, largeint.h, lm.h, lmaccess.h, lmalert.h, lmapibuf.h, lmat.h, lmaudit.h, lmbrowsr.h, lmchdev.h, lmconfig.h, lmcons.h, lmerr.h, lmerrlog.h, lmmsg.h, lmremutl.h, lmrepl.h, lmserver.h, lmshare.h, lmsname.h, lmstats.h, lmsvc.h, lmuse.h, lmuseflg.h, lmwksta.h, lzexpand.h, mapi.h, mciavi.h, mcx.h, mmsystem.h, mswsock.h, nb30.h, nddeapi.h, nspapi.h, ntdef.h, ntsecapi.h, ntsecpkg.h, oaidl.h, objbase.h, objfwd.h, objidl.h, odbcinst.h, ole.h, ole2.h, ole2ver.h, oleauto.h, olectl.h, olectlid.h, oledlg.h, oleidl.h, pbt.h, prsht.h, psapi.h, rapi.h, ras.h, raserror.h, rassapi.h, regstr.h, richedit.h, richole.h, rpc.h, rpcdce.h, rpcdce2.h, rpcdcep.h, rpcndr.h, rpcnsi.h, rpcnsip.h, rpcnterr.h, rpcproxy.h, schannel.h, schnlsp.h, scrnsave.h, security.h, setupapi.h, shellapi.h, shlguid.h, shlobj.h, sql.h, sqlext.h, sqltypes.h, sqlucode.h, sspi.h, subauth.h, tlhelp32.h, unknwn.h, userenv.h, w32api.h, winbase.h, wincon.h, wincrypt.h, windef.h, windows.h, windowsx.h, winerror.h, wingdi.h, wininet.h, winioctl.h, winnetwk.h, winnls.h, winnt.h, winperf.h, winreg.h, winresrc.h, winsock.h, winsock2.h, winspool.h, winsvc.h, winuser.h, winver.h, ws2tcpip.h, wsnetbs.h, wtypes.h, zmouse.h: Add #pragma GCC system_header if __GNUC__ >= 3. * include/mapi.h: Change header guard name to _MAPI_H for consistency.
2002-03-09 17:04:10 +08:00
#if __GNUC__ >=3
#pragma GCC system_header
#endif
2000-02-18 03:38:33 +08:00
#ifdef __cplusplus
extern "C" {
#endif
#include <objfwd.h>
2002-07-26 12:38:00 +08:00
#define MK_ALT 32
2000-02-18 03:38:33 +08:00
typedef interface IParseDisplayname *LPPARSEDISPLAYNAME;
typedef interface IOleContainer *LPOLECONTAINER;
typedef interface IOleClientSite *LPOLECLIENTSITE;
typedef interface IOleObject *LPOLEOBJECT;
typedef interface IDropTarget *LPDROPTARGET;
typedef interface IDropSource *LPDROPSOURCE;
typedef interface IEnumOleDocumentViews *LPENUMOLEDOCUMENTVIEWS;
typedef interface IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
typedef interface IEnumOLEVERB *LPENUMOLEVERB;
typedef interface IOleWindow *LPOLEWINDOW;
typedef interface IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
typedef interface IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
typedef interface IOleInPlaceFrame *LPOLEINPLACEFRAME;
typedef interface IOleAdviseHolder *LPOLEADVISEHOLDER;
typedef interface IViewObject *LPVIEWOBJECT;
typedef interface IViewObject2 *LPVIEWOBJECT2;
typedef enum tagOLEWHICHMK {
OLEWHICHMK_CONTAINER=1,
OLEWHICHMK_OBJREL,
OLEWHICHMK_OBJFULL
} OLEWHICHMK;
typedef enum tagOLEGETMONIKER {
OLEGETMONIKER_ONLYIFTHERE=1,
OLEGETMONIKER_FORCEASSIGN,
OLEGETMONIKER_UNASSIGN,
OLEGETMONIKER_TEMPFORUSER
} OLEGETMONIKER;
2001-11-01 Danny Smith <dannysmith@users.sourceforge.net> * include/basetyps.h (DECLARE_INTERFACE): Don't add __attribute__((com_interface)) for __GNUC__ >= 3. 2001-11-01 Danny Smith <dannysmith@users.sourceforge.net> * include/commdlg.h (PRINTPAGERANGE): Add structure definition. (PRINTDLGEX[AW]): Likewise. (PrintDlgEx[AW]): Add function declaration. * lib/comdlg32.def (PrintDlgEx[AW]): Add function stubs. * ChangeLog: Fix typo in last entry. 2001-11-01 TAMURA Kent <tkent@users.sourceforge.net> * include/objbase.h (CoGetClassObject): Change third parameter to COSERVERINFO*. 2001-10-30 Danny Smith <dannysmith@users.sourceforge.net> * include/winuser.h (MOUSEEVENTF_WHEEL): Define. Thanks to: Kim Saunders. * include/oleauto.h: Define VARIANT* flags for VariantChangeType. Thanks to: Pat Thoyts. * include/winnt.h: Change C++ style comment to C style. * include/shlobj.h: Ditto. * include/objbase.h (enum tagCOINIT): Remove comma at end of list. * include/oledlg.h (enum tagOLEUIPASTEFLAG): Ditto. * include/oleidl.h (enum tagDROPEFFECT): Mark as __extension__ (enum not limited to range of int). * include/oaidl.h (struct tagVARIANT): Mark as __extension__ (struct with no named members), ifndef NONAMELESSUNION. 2001-10-30 Danny Smith <dannysmith@users.sourceforge.net> * include/winuser.h (CREATESTRUCT): UNICODE it. (CBT_CREATEWND): Likewise. 2001-10-20 Corinna Vinschen <corinna@vinschen.de> * include/winnetwk.h (WNetGetResourceInformationA): Add declaration. (WNetGetResourceInformationW): Ditto. (WNetGetResourceInformation): Add define. 2001-10-12 Pedro A Aranda <paaguti@hotmail.com> * include/winuser.h (POINTSTOPOINT): Use explicit casts before extracting words.
2001-11-02 03:42:57 +08:00
#ifdef __GNUC__
__extension__ /* IS0 C says enums limited to range of int */
#endif
2000-02-18 03:38:33 +08:00
typedef enum tagDROPEFFECT {
DROPEFFECT_NONE=0,
DROPEFFECT_COPY=1,
DROPEFFECT_MOVE=2,
DROPEFFECT_LINK=4,
DROPEFFECT_SCROLL=0x80000000
} DROPEFFECT;
typedef struct tagOleMenuGroupWidths {
LONG width[6];
} OLEMENUGROUPWIDTHS,*LPOLEMENUGROUPWIDTHS;
typedef HGLOBAL HOLEMENU;
typedef enum tagOLECLOSE {
OLECLOSE_SAVEIFDIRTY,
OLECLOSE_NOSAVE,
OLECLOSE_PROMPTSAVE
} OLECLOSE;
typedef struct tagOLEVERB {
LONG lVerb;
LPWSTR lpszVerbName;
DWORD fuFlags;
DWORD grfAttribs;
} OLEVERB,*LPOLEVERB;
typedef RECT BORDERWIDTHS;
typedef LPRECT LPBORDERWIDTHS;
typedef LPCRECT LPCBORDERWIDTHS;
typedef struct tagOIFI {
UINT cb;
BOOL fMDIApp;
HWND hwndFrame;
HACCEL haccel;
UINT cAccelEntries;
}OLEINPLACEFRAMEINFO,*LPOLEINPLACEFRAMEINFO;
/*DECLARE_ENUMERATOR_(IEnumOleDocumentViews,IOleDocumentView);*/
DECLARE_ENUMERATOR(OLEVERB);
typedef IEnumOLEVERB IEnumOleVerb;
EXTERN_C const IID IID_IParseDisplayName;
#undef INTERFACE
#define INTERFACE IParseDisplayName
DECLARE_INTERFACE_(IParseDisplayName,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
};
EXTERN_C const IID IID_IOleContainer;
#undef INTERFACE
#define INTERFACE IOleContainer
DECLARE_INTERFACE_(IOleContainer,IParseDisplayName)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
};
EXTERN_C const IID IID_IOleItemContainer;
#undef INTERFACE
#define INTERFACE IOleItemContainer
DECLARE_INTERFACE_(IOleItemContainer,IOleContainer)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(ParseDisplayName)(THIS_ IBindCtx*,LPOLESTR,ULONG*,IMoniker**) PURE;
STDMETHOD(EnumObjects)(THIS_ DWORD,IEnumUnknown**) PURE;
STDMETHOD(LockContainer)(THIS_ BOOL) PURE;
STDMETHOD(GetObject)(THIS_ LPOLESTR,DWORD,IBindCtx*,REFIID,void**) PURE;
STDMETHOD(GetObjectStorage)(THIS_ LPOLESTR,IBindCtx*,REFIID,void**) PURE;
STDMETHOD(IsRunning)(THIS_ LPOLESTR) PURE;
};
2000-02-18 03:38:33 +08:00
EXTERN_C const IID IID_IOleClientSite;
#undef INTERFACE
#define INTERFACE IOleClientSite
DECLARE_INTERFACE_(IOleClientSite,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(SaveObject)(THIS) PURE;
STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
STDMETHOD(GetContainer)(THIS_ LPOLECONTAINER*) PURE;
STDMETHOD(ShowObject)(THIS) PURE;
STDMETHOD(OnShowWindow)(THIS_ BOOL) PURE;
STDMETHOD(RequestNewObjectLayout)(THIS) PURE;
};
EXTERN_C const IID IID_IOleObject;
#undef INTERFACE
#define INTERFACE IOleObject
DECLARE_INTERFACE_(IOleObject,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(SetClientSite)(THIS_ LPOLECLIENTSITE) PURE;
STDMETHOD(GetClientSite)(THIS_ LPOLECLIENTSITE*) PURE;
STDMETHOD(SetHostNames)(THIS_ LPCOLESTR,LPCOLESTR) PURE;
STDMETHOD(Close)(THIS_ DWORD) PURE;
STDMETHOD(SetMoniker)(THIS_ DWORD,LPMONIKER) PURE;
STDMETHOD(GetMoniker)(THIS_ DWORD,DWORD,LPMONIKER*) PURE;
STDMETHOD(InitFromData)(THIS_ LPDATAOBJECT,BOOL,DWORD) PURE;
STDMETHOD(GetClipboardData)(THIS_ DWORD,LPDATAOBJECT*) PURE;
STDMETHOD(DoVerb)(THIS_ LONG,LPMSG,LPOLECLIENTSITE,LONG,HWND,LPCRECT) PURE;
STDMETHOD(EnumVerbs)(THIS_ LPENUMOLEVERB*) PURE;
STDMETHOD(Update)(THIS) PURE;
STDMETHOD(IsUpToDate)(THIS) PURE;
STDMETHOD(GetUserClassID)(THIS_ LPCLSID) PURE;
STDMETHOD(GetUserType)(THIS_ DWORD,LPOLESTR) PURE;
STDMETHOD(SetExtent)(THIS_ DWORD,SIZEL*) PURE;
STDMETHOD(GetExtent)(THIS_ DWORD,SIZEL*) PURE;
STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
STDMETHOD(GetMiscStatus)(THIS_ DWORD,PDWORD) PURE;
STDMETHOD(SetColorScheme)(THIS_ LPLOGPALETTE) PURE;
};
EXTERN_C const IID IID_IOleWindow;
#undef INTERFACE
#define INTERFACE IOleWindow
DECLARE_INTERFACE_(IOleWindow,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
};
EXTERN_C const IID IID_IOleInPlaceUIWindow;
#undef INTERFACE
#define INTERFACE IOleInPlaceUIWindow
DECLARE_INTERFACE_(IOleInPlaceUIWindow,IOleWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
};
EXTERN_C const IID IID_IOleInPlaceObject;
#undef INTERFACE
#define INTERFACE IOleInPlaceObject
DECLARE_INTERFACE_(IOleInPlaceObject,IOleWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(InPlaceDeactivate)(THIS) PURE;
STDMETHOD(UIDeactivate)(THIS) PURE;
STDMETHOD(SetObjectRects)(THIS_ LPCRECT,LPCRECT) PURE;
STDMETHOD(ReactivateAndUndo)(THIS) PURE;
};
2000-02-18 03:38:33 +08:00
EXTERN_C const IID IID_IOleInPlaceActiveObject;
#undef INTERFACE
#define INTERFACE IOleInPlaceActiveObject
DECLARE_INTERFACE_(IOleInPlaceActiveObject,IOleWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(TranslateAccelerator)(THIS_ LPMSG) PURE;
STDMETHOD(OnFrameWindowActivate)(THIS_ BOOL) PURE;
STDMETHOD(OnDocWindowActivate)(THIS_ BOOL) PURE;
STDMETHOD(ResizeBorder)(THIS_ LPCRECT,LPOLEINPLACEUIWINDOW,BOOL) PURE;
STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
};
EXTERN_C const IID IID_IOleInPlaceFrame;
#undef INTERFACE
#define INTERFACE IOleInPlaceFrame
DECLARE_INTERFACE_(IOleInPlaceFrame,IOleInPlaceUIWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(GetBorder)(THIS_ LPRECT) PURE;
STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS) PURE;
STDMETHOD(SetActiveObject)(THIS_ LPOLEINPLACEACTIVEOBJECT,LPCOLESTR) PURE;
STDMETHOD(InsertMenus)(THIS_ HMENU,LPOLEMENUGROUPWIDTHS) PURE;
STDMETHOD(SetMenu)(THIS_ HMENU,HOLEMENU,HWND) PURE;
STDMETHOD(RemoveMenus)(THIS_ HMENU) PURE;
STDMETHOD(SetStatusText)(THIS_ LPCOLESTR) PURE;
STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;
STDMETHOD(TranslateAccelerator)(THIS_ LPMSG,WORD) PURE;
};
EXTERN_C const IID IID_IOleInPlaceSite;
#undef INTERFACE
#define INTERFACE IOleInPlaceSite
DECLARE_INTERFACE_(IOleInPlaceSite,IOleWindow)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetWindow)(THIS_ HWND*) PURE;
STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
STDMETHOD(CanInPlaceActivate)(THIS) PURE;
STDMETHOD(OnInPlaceActivate)(THIS) PURE;
STDMETHOD(OnUIActivate)(THIS) PURE;
STDMETHOD(GetWindowContext)(THIS_ IOleInPlaceFrame**,IOleInPlaceUIWindow**,LPRECT,LPRECT,LPOLEINPLACEFRAMEINFO) PURE;
STDMETHOD(Scroll)(THIS_ SIZE) PURE;
STDMETHOD(OnUIDeactivate)(THIS_ BOOL) PURE;
STDMETHOD(OnInPlaceDeactivate)(THIS) PURE;
STDMETHOD(DiscardUndoState)(THIS) PURE;
STDMETHOD(DeactivateAndUndo)(THIS) PURE;
STDMETHOD(OnPosRectChange)(THIS_ LPCRECT) PURE;
};
2000-02-18 03:38:33 +08:00
EXTERN_C const IID IID_IOleAdviseHolder;
#undef INTERFACE
#define INTERFACE IOleAdviseHolder
DECLARE_INTERFACE_(IOleAdviseHolder,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Advise)(THIS_ LPADVISESINK,PDWORD) PURE;
STDMETHOD(Unadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumAdvise)(THIS_ LPENUMSTATDATA*) PURE;
STDMETHOD(SendOnRename)(THIS_ LPMONIKER) PURE;
STDMETHOD(SendOnSave)(THIS) PURE;
STDMETHOD(SendOnClose)(THIS) PURE;
};
EXTERN_C const IID IID_IDropSource;
#undef INTERFACE
#define INTERFACE IDropSource
DECLARE_INTERFACE_(IDropSource,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(QueryContinueDrag)(THIS_ BOOL,DWORD) PURE;
STDMETHOD(GiveFeedback)(THIS_ DWORD) PURE;
};
EXTERN_C const IID IID_IDropTarget;
#undef INTERFACE
#define INTERFACE IDropTarget
DECLARE_INTERFACE_(IDropTarget,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(DragEnter)(THIS_ LPDATAOBJECT,DWORD,POINTL,PDWORD) PURE;
STDMETHOD(DragOver)(THIS_ DWORD,POINTL,PDWORD) PURE;
STDMETHOD(DragLeave)(THIS) PURE;
STDMETHOD(Drop)(THIS_ LPDATAOBJECT,DWORD,POINTL,PDWORD) PURE;
};
typedef BOOL(CALLBACK *__IView_pfncont)(DWORD);
EXTERN_C const IID IID_IViewObject;
#undef INTERFACE
#define INTERFACE IViewObject
DECLARE_INTERFACE_(IViewObject,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Draw)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,HDC,LPCRECTL,LPCRECTL,__IView_pfncont pfnContinue,DWORD) PURE;
STDMETHOD(GetColorSet)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,LPLOGPALETTE*) PURE;
STDMETHOD(Freeze)(THIS_ DWORD,LONG,PVOID,PDWORD) PURE;
STDMETHOD(Unfreeze)(THIS_ DWORD) PURE;
STDMETHOD(SetAdvise)(THIS_ DWORD,DWORD,IAdviseSink*) PURE;
STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
};
EXTERN_C const IID IID_IViewObject2;
#undef INTERFACE
#define INTERFACE IViewObject2
DECLARE_INTERFACE_(IViewObject2,IUnknown)
{
STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(Draw)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,HDC,LPCRECTL,LPCRECTL,__IView_pfncont pfnContinue,DWORD) PURE;
STDMETHOD(GetColorSet)(THIS_ DWORD,LONG,PVOID,DVTARGETDEVICE*,HDC,LPLOGPALETTE*) PURE;
STDMETHOD(Freeze)(THIS_ DWORD,LONG,PVOID,PDWORD) PURE;
STDMETHOD(Unfreeze)(THIS_ DWORD) PURE;
STDMETHOD(SetAdvise)(THIS_ DWORD,DWORD,IAdviseSink*) PURE;
STDMETHOD(GetAdvise)(THIS_ PDWORD,PDWORD,IAdviseSink**) PURE;
STDMETHOD(GetExtent)(THIS_ DWORD,DWORD,DVTARGETDEVICE*,LPSIZEL) PURE;
};
#ifdef __cplusplus
}
#endif
#endif