mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
292 lines
6.0 KiB
292 lines
6.0 KiB
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1992 - 1997.
|
|
//
|
|
// File: srvhndlr.idl
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(F4F569D0-593B-101A-B569-08002B2DBF7A),
|
|
pointer_default(unique)
|
|
]
|
|
interface IServerHandler : IUnknown
|
|
{
|
|
|
|
#ifndef DO_NO_IMPORTS
|
|
import "oleidl.idl";
|
|
import "unknwn.idl";
|
|
import "iface.idl";
|
|
import "objidl.idl";
|
|
import "obase.idl";
|
|
#endif
|
|
|
|
cpp_quote("//+-------------------------------------------------------------------------")
|
|
cpp_quote("//")
|
|
cpp_quote("// Microsoft Windows")
|
|
cpp_quote("// Copyright (C) Microsoft Corporation, 1992 - 1997.")
|
|
cpp_quote("//")
|
|
cpp_quote("//--------------------------------------------------------------------------")
|
|
|
|
|
|
typedef [unique] IServerHandler *LPSERVERHANDLER;
|
|
|
|
HRESULT Run
|
|
(
|
|
[in] DWORD dwDHFlags,
|
|
[in] REFIID riidClientInterface,
|
|
[in, unique] MInterfacePointer* pIRDClientInterface,
|
|
[in] BOOL fHasIPSite,
|
|
[in, unique] LPOLESTR szContainerApp,
|
|
[in, unique] LPOLESTR szContainerObj,
|
|
[in, unique] IStorage * pStg,
|
|
[in, unique] IAdviseSink* pAdvSink,
|
|
[out] DWORD *pdwConnection,
|
|
[out] HRESULT *hresultClsidUser,
|
|
[out] CLSID *pContClassID,
|
|
[out] HRESULT *hresultContentMiscStatus,
|
|
[out] DWORD *pdwMiscStatus
|
|
);
|
|
|
|
|
|
|
|
HRESULT DoVerb
|
|
(
|
|
[in] LONG iVerb,
|
|
[in, unique] LPMSG lpmsg,
|
|
[in] BOOL fRunClientSite,
|
|
[in, unique] IOleClientSite *pClientSite,
|
|
[in] LONG lindex,
|
|
[in] HWND hwndParent,
|
|
[in, unique] LPCRECT lprcPosRect
|
|
);
|
|
|
|
HRESULT SetClientSite
|
|
(
|
|
[in, unique] IOleClientSite *pClientSite
|
|
);
|
|
|
|
// IDataObject Methods
|
|
|
|
HRESULT GetData(
|
|
[in, unique] FORMATETC *pformatetcIn,
|
|
[out] STGMEDIUM *pmedium);
|
|
|
|
HRESULT GetDataHere(
|
|
[in, unique] FORMATETC *pformatetc,
|
|
[in, out] STGMEDIUM *pmedium);
|
|
|
|
HRESULT QueryGetData(
|
|
[in, unique] FORMATETC *pformatetc);
|
|
|
|
|
|
HRESULT GetCanonicalFormatEtc(
|
|
[in, unique] FORMATETC *pformatectIn,
|
|
[out] FORMATETC *pformatetcOut);
|
|
|
|
HRESULT SetData(
|
|
[in, unique] FORMATETC *pformatetc,
|
|
[in, unique] STGMEDIUM *pmedium,
|
|
[in] BOOL fRelease);
|
|
|
|
HRESULT EnumFormatEtc(
|
|
[in] DWORD dwDirection,
|
|
[out] IEnumFORMATETC **ppenumFormatEtc);
|
|
|
|
HRESULT DAdvise(
|
|
[in] FORMATETC *pformatetc,
|
|
[in] DWORD advf,
|
|
[in, unique] IAdviseSink *pAdvSink,
|
|
[out] DWORD *pdwConnection);
|
|
|
|
HRESULT DUnadvise(
|
|
[in] DWORD dwConnection);
|
|
|
|
HRESULT EnumDAdvise(
|
|
[out] IEnumSTATDATA **ppenumAdvise);
|
|
|
|
}
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(F4F569D1-593B-101A-B569-08002B2DBF7A),
|
|
pointer_default(unique)
|
|
]
|
|
|
|
//interface IClientSiteHandler : IOleClientSite
|
|
interface IClientSiteHandler : IUnknown
|
|
{
|
|
|
|
cpp_quote("//+-------------------------------------------------------------------------")
|
|
cpp_quote("//")
|
|
cpp_quote("// Microsoft Windows")
|
|
cpp_quote("// Copyright (C) Microsoft Corporation, 1992 - 1995.")
|
|
cpp_quote("//")
|
|
cpp_quote("//--------------------------------------------------------------------------")
|
|
|
|
|
|
typedef [unique] IClientSiteHandler *LPCLIENTSITEHANDLER;
|
|
|
|
typedef struct tagInSrvInPlace
|
|
{
|
|
DWORD dwOperation;
|
|
DWORD dwDelegateID;
|
|
|
|
DWORD dwInFlags; // generic Flags
|
|
DWORD dwInOptions;
|
|
|
|
// IOleObject::GetExtend
|
|
DWORD dwDrawAspect;
|
|
SIZEL sizel;
|
|
|
|
//
|
|
IOleInPlaceObject *pOIPObj;
|
|
|
|
} INSRVINPLACE, *PINSRVINPLACE;
|
|
|
|
typedef struct tagOutSrvInPlace
|
|
{
|
|
DWORD dwOperation;
|
|
DWORD dwOutFlags; // generic Flags
|
|
DWORD dwOutOptions;
|
|
|
|
HWND hwnd;
|
|
|
|
IOleInPlaceFrame *pOIPFrame;
|
|
IOleInPlaceUIWindow *pOIPUIWnd;
|
|
|
|
LPRECT lprcPosRect;
|
|
LPRECT lprcClipRect;
|
|
LPOLEINPLACEFRAMEINFO lpFrameInfo;
|
|
|
|
RECT rcPosRect;
|
|
RECT rcClipRect;
|
|
OLEINPLACEFRAMEINFO FrameInfo;
|
|
|
|
|
|
// menu stuff
|
|
HMENU hmenuShared;
|
|
OLEMENUGROUPWIDTHS MenuWidths;
|
|
//
|
|
LPOLESTR pszStatusText;
|
|
|
|
// IOleObject::SetExtend
|
|
DWORD dwDrawAspect;
|
|
SIZEL sizel;
|
|
|
|
|
|
} OUTSRVINPLACE, *POUTSRVINPLACE;
|
|
|
|
|
|
// IOleClientSite methods
|
|
HRESULT SaveObject
|
|
(
|
|
);
|
|
|
|
HRESULT GetMoniker
|
|
(
|
|
[in] DWORD dwAssign,
|
|
[in] DWORD dwWhichMoniker,
|
|
[out] IMoniker **ppmk
|
|
);
|
|
|
|
HRESULT GetContainer
|
|
(
|
|
[out] IOleContainer **ppContainer
|
|
);
|
|
|
|
HRESULT ShowObject
|
|
(
|
|
);
|
|
|
|
HRESULT OnShowWindow
|
|
(
|
|
[in] BOOL fShow
|
|
);
|
|
|
|
HRESULT RequestNewObjectLayout
|
|
(
|
|
);
|
|
|
|
// IOleInPlaceSite methods
|
|
[input_sync]
|
|
HRESULT GetWindow
|
|
(
|
|
[out] HWND *phwnd
|
|
);
|
|
|
|
HRESULT ContextSensitiveHelp
|
|
(
|
|
[in] BOOL fEnterMode
|
|
);
|
|
|
|
|
|
HRESULT CanInPlaceActivate
|
|
(
|
|
void
|
|
);
|
|
|
|
HRESULT OnInPlaceActivate
|
|
(
|
|
void
|
|
);
|
|
|
|
HRESULT OnUIActivate
|
|
(
|
|
void
|
|
);
|
|
|
|
HRESULT GetWindowContext
|
|
(
|
|
[out] IOleInPlaceFrame **ppFrame,
|
|
[out] IOleInPlaceUIWindow **ppDoc,
|
|
[out] LPRECT lprcPosRect,
|
|
[out] LPRECT lprcClipRect,
|
|
[in, out] LPOLEINPLACEFRAMEINFO lpFrameInfo
|
|
);
|
|
|
|
HRESULT Scroll
|
|
(
|
|
[in] SIZE scrollExtant
|
|
);
|
|
|
|
HRESULT OnUIDeactivate
|
|
(
|
|
[in] BOOL fUndoable
|
|
);
|
|
|
|
HRESULT OnInPlaceDeactivate
|
|
(
|
|
void
|
|
);
|
|
|
|
HRESULT DiscardUndoState
|
|
(
|
|
void
|
|
);
|
|
|
|
HRESULT DeactivateAndUndo
|
|
(
|
|
void
|
|
);
|
|
|
|
HRESULT OnPosRectChange
|
|
(
|
|
[in] LPCRECT lprcPosRect
|
|
);
|
|
|
|
|
|
HRESULT GoInPlaceActivate
|
|
(
|
|
[out] HWND *phwndOIPS
|
|
);
|
|
|
|
|
|
}
|
|
|
|
|
|
|