412 lines
10 KiB
Plaintext
412 lines
10 KiB
Plaintext
//+---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1993 - 1995.
|
|
//
|
|
// File: ocx96.idl
|
|
//
|
|
// Contents: 96 extensions to OLE and OLE Controls.
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
import "oaidl.idl";
|
|
import "oleidl.idl";
|
|
import "olectl.idl";
|
|
import "datapath.idl";
|
|
|
|
cpp_quote("#define OLEMISC_IGNOREACTIVATEWHENVISIBLE 0x00080000")
|
|
cpp_quote("#define OLEMISC_SUPPORTSMULTILEVELUNDO 0x00200000")
|
|
|
|
[
|
|
local,
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(3af24290-0c96-11ce-a0cf-00aa00600ab8)
|
|
]
|
|
interface IAdviseSinkEx : IAdviseSink
|
|
{
|
|
typedef IAdviseSinkEx * LPADVISESINKEX;
|
|
void OnViewStatusChange([in] DWORD dwViewStatus);
|
|
}
|
|
|
|
cpp_quote("typedef IAdviseSinkEx * LPADVISESINKEX;")
|
|
|
|
[
|
|
local,
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(1c2056cc-5ef4-101b-8bc8-00aa003e3b29)
|
|
]
|
|
interface IOleInPlaceObjectWindowless : IOleInPlaceObject
|
|
{
|
|
typedef IOleInPlaceObjectWindowless * LPOLEINPLACEOBJECTWINDOWLESS;
|
|
|
|
HRESULT OnWindowMessage([in] UINT msg, [in] WPARAM wParam, [in] LPARAM lparam, [out] LRESULT *plResult);
|
|
HRESULT GetDropTarget([out] IDropTarget **ppDropTarget);
|
|
}
|
|
|
|
cpp_quote("typedef IOleInPlaceObjectWindowless * LPOLEINPLACEOBJECTWINDOWLESS;")
|
|
|
|
[
|
|
local,
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(9c2cad80-3424-11cf-b670-00aa004cd6d8)
|
|
]
|
|
interface IOleInPlaceSiteEx : IOleInPlaceSite
|
|
{
|
|
typedef
|
|
enum _ACTIVATEFLAGS
|
|
{
|
|
ACTIVATE_WINDOWLESS = 1,
|
|
}
|
|
ACTIVATEFLAGS;
|
|
|
|
HRESULT OnInPlaceActivateEx([out] BOOL *pfNoRedraw, [in] DWORD dwFlags);
|
|
HRESULT OnInPlaceDeactivateEx([in] BOOL fNoRedraw);
|
|
HRESULT RequestUIActivate();
|
|
}
|
|
|
|
cpp_quote("typedef IOleInPlaceSiteEx * LPOLEINPLACESITEEX;")
|
|
|
|
[
|
|
local,
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(922eada0-3424-11cf-b670-00aa004cd6d8)
|
|
]
|
|
interface IOleInPlaceSiteWindowless : IOleInPlaceSiteEx
|
|
{
|
|
typedef IOleInPlaceSiteWindowless * LPOLEINPLACESITEWINDOWLESS;
|
|
|
|
cpp_quote("#define OLEDC_NODRAW 1")
|
|
cpp_quote("#define OLEDC_PAINTBKGND 2")
|
|
cpp_quote("#define OLEDC_OFFSCREEN 4")
|
|
|
|
HRESULT CanWindowlessActivate();
|
|
|
|
HRESULT GetCapture();
|
|
|
|
HRESULT SetCapture([in] BOOL fCapture);
|
|
|
|
HRESULT GetFocus();
|
|
|
|
HRESULT SetFocus([in] BOOL fFocus);
|
|
|
|
HRESULT GetDC([in] LPCRECT prc, [in] DWORD grfFlags, [out] HDC * phDC);
|
|
|
|
HRESULT ReleaseDC([in] HDC hDC);
|
|
|
|
HRESULT InvalidateRect([in] LPCRECT prc, [in] BOOL fErase);
|
|
|
|
HRESULT InvalidateRgn([in] HRGN hrgn, [in] BOOL fErase);
|
|
|
|
HRESULT ScrollRect([in] int dx,
|
|
[in] int dy,
|
|
[in] LPCRECT prcScroll,
|
|
[in] LPCRECT prcClip);
|
|
|
|
HRESULT AdjustRect([in, out] LPRECT prc);
|
|
|
|
HRESULT OnDefWindowMessage([in] UINT msg, [in] WPARAM wParam, [in] LPARAM lParam, [out] LRESULT *plResult);
|
|
}
|
|
|
|
cpp_quote("typedef IOleInPlaceSiteWindowless * LPOLEINPLACESITEWINDOWLESS;")
|
|
|
|
[
|
|
local,
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(3af24292-0c96-11ce-a0cf-00aa00600ab8)
|
|
]
|
|
|
|
interface IViewObjectEx : IViewObject2
|
|
{
|
|
typedef IViewObjectEx * LPVIEWOBJECTEX;
|
|
|
|
typedef
|
|
enum _VIEWSTATUS
|
|
{
|
|
VIEWSTATUS_OPAQUE = 1,
|
|
VIEWSTATUS_SOLIDBKGND = 2,
|
|
VIEWSTATUS_DVASPECTOPAQUE = 4,
|
|
VIEWSTATUS_DVASPECTTRANSPARENT = 8,
|
|
}
|
|
VIEWSTATUS;
|
|
|
|
typedef enum _HITRESULT
|
|
{
|
|
HITRESULT_OUTSIDE = 0,
|
|
HITRESULT_TRANSPARENT = 1,
|
|
HITRESULT_CLOSE = 2,
|
|
HITRESULT_HIT = 3
|
|
}
|
|
HITRESULT;
|
|
|
|
typedef
|
|
enum _DVASPECT2
|
|
{
|
|
DVASPECT_OPAQUE = 16,
|
|
DVASPECT_TRANSPARENT = 32,
|
|
}
|
|
DVASPECT2;
|
|
|
|
typedef struct tagExtentInfo
|
|
{
|
|
UINT cb;
|
|
DWORD dwExtentMode;
|
|
SIZEL sizelProposed;
|
|
} DVEXTENTINFO;
|
|
|
|
typedef enum tagExtentMode
|
|
{
|
|
DVEXTENT_CONTENT,
|
|
DVEXTENT_INTEGRAL
|
|
} DVEXTENTMODE;
|
|
|
|
typedef enum tagAspectInfoFlag
|
|
{
|
|
DVASPECTINFOFLAG_CANOPTIMIZE = 1
|
|
} DVASPECTINFOFLAG;
|
|
|
|
typedef struct tagAspectInfo
|
|
{
|
|
UINT cb;
|
|
DWORD dwFlags;
|
|
} DVASPECTINFO;
|
|
|
|
HRESULT GetRect([in] DWORD dwAspect, [out] LPRECTL pRect);
|
|
|
|
HRESULT GetViewStatus([out] DWORD * pdwStatus);
|
|
|
|
HRESULT QueryHitPoint(
|
|
[in] DWORD dwAspect,
|
|
[in] LPCRECT pRectBounds,
|
|
[in] POINT ptlLoc,
|
|
[in] LONG lCloseHint,
|
|
[out] DWORD * pHitResult);
|
|
|
|
HRESULT QueryHitRect(
|
|
[in] DWORD dwAspect,
|
|
[in] LPCRECT pRectBounds,
|
|
[in] LPCRECT prcLoc,
|
|
[in] LONG lCloseHint,
|
|
[out] DWORD * pHitResult);
|
|
|
|
HRESULT GetNaturalExtent (
|
|
[in] DWORD dwAspect,
|
|
[in] LONG lindex,
|
|
[in] DVTARGETDEVICE * ptd,
|
|
[in] HDC hicTargetDev,
|
|
[in] DVEXTENTINFO * pExtentInfo,
|
|
[out] LPSIZEL psizel);
|
|
}
|
|
|
|
cpp_quote("typedef IViewObjectEx * LPVIEWOBJECTEX;")
|
|
|
|
// --------------------------------------------------------------------------
|
|
//
|
|
// Undo interfaces
|
|
//
|
|
// --------------------------------------------------------------------------
|
|
|
|
interface IOleUndoManager;
|
|
|
|
cpp_quote("#define UAS_NORMAL 0")
|
|
cpp_quote("#define UAS_BLOCKED 1")
|
|
cpp_quote("#define UAS_NOPARENTENABLE 2")
|
|
|
|
cpp_quote("#define UAS_MASK 0x03")
|
|
|
|
[
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(894ad3b0-ef97-11ce-9bc9-00aa00608e01)
|
|
]
|
|
interface IOleUndoUnit : IUnknown
|
|
{
|
|
HRESULT Do([in] IOleUndoManager * pUndoManager);
|
|
|
|
HRESULT GetDescription([out] BSTR *pbstr);
|
|
|
|
HRESULT GetUnitType([out] CLSID *pclsid, [out] LONG * plID);
|
|
|
|
HRESULT OnNextAdd(void);
|
|
}
|
|
|
|
cpp_quote("typedef IOleUndoUnit * LPOLEUNDOUNIT;")
|
|
|
|
[
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(a1faf330-ef97-11ce-9bc9-00aa00608e01)
|
|
]
|
|
interface IOleParentUndoUnit : IOleUndoUnit
|
|
{
|
|
HRESULT Open([in] IOleParentUndoUnit * pPUU);
|
|
|
|
HRESULT Close([in] IOleParentUndoUnit * pPUU, [in] BOOL fCommit);
|
|
|
|
HRESULT Add([in] IOleUndoUnit * pUU);
|
|
|
|
HRESULT FindUnit([in] IOleUndoUnit * pUU);
|
|
|
|
HRESULT GetParentState([out] DWORD * pdwState);
|
|
}
|
|
|
|
cpp_quote("typedef IOleParentUndoUnit * LPOLEPARENTUNDOUNIT;")
|
|
|
|
[
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(b3e7c340-ef97-11ce-9bc9-00aa00608e01)
|
|
]
|
|
interface IEnumOleUndoUnits : IUnknown
|
|
{
|
|
HRESULT Next
|
|
(
|
|
[in] ULONG celt,
|
|
#ifndef __MKTYPLIB__
|
|
[out, size_is(celt), length_is((ULONG) (pceltFetched != 0) ? *pceltFetched : celt)]
|
|
#endif
|
|
[out] IOleUndoUnit ** rgelt,
|
|
|
|
[in, out] ULONG *pceltFetched
|
|
);
|
|
|
|
HRESULT Skip([in] ULONG celt);
|
|
|
|
HRESULT Reset(void);
|
|
|
|
HRESULT Clone([out] IEnumOleUndoUnits **ppenum);
|
|
}
|
|
|
|
cpp_quote("typedef IEnumOleUndoUnits * LPENUMOLEUNDOUNITS;")
|
|
|
|
cpp_quote("#define SID_SOleUndoManager IID_IOleUndoManager")
|
|
|
|
[
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(d001f200-ef97-11ce-9bc9-00aa00608e01)
|
|
]
|
|
interface IOleUndoManager : IUnknown
|
|
{
|
|
HRESULT Open([in] IOleParentUndoUnit * pPUU);
|
|
|
|
HRESULT Close([in] IOleParentUndoUnit *pPUU, [in] BOOL fCommit);
|
|
|
|
HRESULT Add([in] IOleUndoUnit * pUU);
|
|
|
|
HRESULT GetOpenParentState([out] DWORD * pdwState);
|
|
|
|
HRESULT DiscardFrom([in] IOleUndoUnit * pUU);
|
|
|
|
HRESULT UndoTo([in] IOleUndoUnit * pUU);
|
|
|
|
HRESULT RedoTo([in] IOleUndoUnit * pUU);
|
|
|
|
HRESULT EnumUndoable([out] IEnumOleUndoUnits **ppEnum);
|
|
|
|
HRESULT EnumRedoable([out] IEnumOleUndoUnits **ppEnum);
|
|
|
|
HRESULT GetLastUndoDescription([out] BSTR *pbstr);
|
|
|
|
HRESULT GetLastRedoDescription([out] BSTR *pbstr);
|
|
|
|
HRESULT Enable([in] BOOL fEnable);
|
|
}
|
|
|
|
cpp_quote("typedef IOleUndoManager * LPOLEUNDOMANAGER;")
|
|
|
|
cpp_quote("#define QACONTAINER_SHOWHATCHING 0x0001")
|
|
cpp_quote("#define QACONTAINER_SHOWGRABHANDLES 0x0002")
|
|
cpp_quote("#define QACONTAINER_USERMODE 0x0004")
|
|
cpp_quote("#define QACONTAINER_DISPLAYASDEFAULT 0x0008")
|
|
cpp_quote("#define QACONTAINER_UIDEAD 0x0010")
|
|
cpp_quote("#define QACONTAINER_AUTOCLIP 0x0020")
|
|
cpp_quote("#define QACONTAINER_MESSAGEREFLECT 0x0040")
|
|
cpp_quote("#define QACONTAINER_SUPPORTSMNEMONICS 0x0080")
|
|
|
|
typedef struct _QACONTAINER
|
|
{
|
|
ULONG cbSize;
|
|
IOleClientSite * pClientSite;
|
|
IAdviseSinkEx * pAdviseSink;
|
|
IPropertyNotifySink* pPropertyNotifySink;
|
|
IUnknown * pUnkEventSink;
|
|
DWORD dwAmbientFlags;
|
|
OLE_COLOR colorFore;
|
|
OLE_COLOR colorBack;
|
|
IFont * pFont;
|
|
IOleUndoManager * pUndoMgr;
|
|
DWORD dwAppearance;
|
|
LONG lcid;
|
|
HPALETTE hpal;
|
|
IBindHost * pBindHost;
|
|
} QACONTAINER;
|
|
|
|
typedef struct _QACONTROL
|
|
{
|
|
ULONG cbSize;
|
|
DWORD dwMiscStatus;
|
|
DWORD dwViewStatus;
|
|
DWORD dwEventCookie;
|
|
DWORD dwPropNotifyCookie;
|
|
DWORD dwPointerActivationPolicy;
|
|
} QACONTROL;
|
|
|
|
[local, object, pointer_default(unique), uuid(cf51ed10-62fe-11cf-bf86-00a0c9034836)]
|
|
interface IQuickActivate : IUnknown
|
|
{
|
|
HRESULT QuickActivate(
|
|
[in] QACONTAINER *pqacontainer,
|
|
[out] QACONTROL *pqacontrol);
|
|
|
|
HRESULT SetContentExtent(LPSIZEL lpsizel);
|
|
HRESULT GetContentExtent(LPSIZEL lpsizel);
|
|
}
|
|
|
|
cpp_quote("typedef IQuickActivate * LPQUICKACTIVATE;")
|
|
|
|
|
|
typedef enum _POINTERINACTIVE
|
|
{
|
|
POINTERINACTIVE_ACTIVATEONENTRY = 1,
|
|
POINTERINACTIVE_DEACTIVATEONLEAVE = 2,
|
|
POINTERINACTIVE_ACTIVATEONDRAG = 4
|
|
} POINTERINACTIVE;
|
|
|
|
[
|
|
local,
|
|
object,
|
|
pointer_default(unique),
|
|
uuid(55980ba0-35aa-11cf-b671-00aa004cd6d8)
|
|
]
|
|
interface IPointerInactive : IUnknown
|
|
{
|
|
HRESULT GetActivationPolicy
|
|
(
|
|
[out] DWORD * pdwPolicy
|
|
);
|
|
|
|
HRESULT OnInactiveMouseMove
|
|
(
|
|
[in] LPCRECT pRectBounds,
|
|
[in] long x,
|
|
[in] long y,
|
|
[in] DWORD grfKeyState
|
|
);
|
|
|
|
HRESULT OnInactiveSetCursor
|
|
(
|
|
[in] LPCRECT pRectBounds,
|
|
[in] long x,
|
|
[in] long y,
|
|
[in] DWORD dwMouseMsg,
|
|
[in] BOOL fSetAlways
|
|
);
|
|
}
|
|
|
|
cpp_quote("typedef IPointerInactive * LPPOINTERINACTIVE;")
|