348 lines
7.2 KiB
Plaintext
348 lines
7.2 KiB
Plaintext
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1992 - 1995.
|
|
//
|
|
// File: srvhndlr.idl
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
|
|
#ifndef DO_NO_IMPORTS
|
|
import "oleidl.idl";
|
|
import "unknwn.idl";
|
|
#endif
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(F4F569D0-593B-101A-B569-08002B2DBF7A),
|
|
pointer_default(unique)
|
|
]
|
|
interface IServerHandler : IUnknown
|
|
{
|
|
|
|
cpp_quote("//+-------------------------------------------------------------------------")
|
|
cpp_quote("//")
|
|
cpp_quote("// Microsoft Windows")
|
|
cpp_quote("// Copyright (C) Microsoft Corporation, 1992 - 1995.")
|
|
cpp_quote("//")
|
|
cpp_quote("//--------------------------------------------------------------------------")
|
|
|
|
|
|
typedef [unique] IServerHandler *LPSERVERHANDLER;
|
|
|
|
typedef struct tagInSrvRun
|
|
{
|
|
DWORD dwOperation;
|
|
|
|
// in parameter
|
|
// IUnknown *pUnk; // Unknown of object
|
|
IMoniker *pMnk; // Moniker
|
|
IOleContainer *pOCont; // container object
|
|
|
|
// optional clientsite of container
|
|
//IOleClientSite *pOContCS; // the client ole object
|
|
|
|
// Storage for IPersistStorage
|
|
IStorage *pStg;
|
|
|
|
// DoVerb stuff
|
|
LONG iVerb;
|
|
LPMSG lpmsg;
|
|
LONG lindex;
|
|
HWND hwndParent;
|
|
RECT *lprcPosRect;
|
|
|
|
// inplace stuff
|
|
DWORD dwInPlace; // inplace options
|
|
DWORD dwInFlags; // generic Flags
|
|
DWORD dwInOptions;
|
|
|
|
// SetHostName
|
|
LPOLESTR pszContainerApp;
|
|
LPOLESTR pszContainerObj;
|
|
|
|
// AdviseSink
|
|
IAdviseSink *pAS; // IAdviseSink
|
|
DWORD dwConnOle;
|
|
|
|
CLSID *pContClassID;
|
|
|
|
|
|
} INSRVRUN, *PINSRVRUN;
|
|
|
|
typedef struct tagOutSrvRunInit
|
|
{
|
|
DWORD dwOperation;
|
|
// out parameter
|
|
IOleObject *pOO; // IOleObject
|
|
IDataObject *pDO; // IDataObject
|
|
IPersistStorage *pPStg; // IPersistStorage
|
|
|
|
HRESULT hrSetHostNames;
|
|
HRESULT hrPStg;
|
|
HRESULT hrAdvise;
|
|
DWORD dwConnOle;
|
|
|
|
CLSID *pUserClassID; // the user class id
|
|
|
|
DWORD dwOutFlag;
|
|
DWORD dwOutOptions;
|
|
} OUTSRVRUN, *POUTSRVRUN;
|
|
|
|
typedef struct tagSrvRunDoVerb
|
|
{
|
|
IUnknown *pUnk;
|
|
} SRVRUNDOVERB, *PSRVRUNDOVERB;
|
|
|
|
typedef struct tagSrvDoVerb
|
|
{
|
|
IUnknown *pUnk;
|
|
} SRVDOVERB, *PSRVDOVERB;
|
|
|
|
HRESULT RunAndInitialize
|
|
(
|
|
[in] INSRVRUN *pInSrvRun,
|
|
[out] OUTSRVRUN **pOutSrvRun
|
|
);
|
|
|
|
HRESULT RunAndDoVerb
|
|
(
|
|
[in] INSRVRUN *pInSrvRun,
|
|
[out] OUTSRVRUN **pOutSrvRun
|
|
|
|
);
|
|
|
|
HRESULT DoVerb
|
|
(
|
|
[in] INSRVRUN *pInSrvRun,
|
|
[out] OUTSRVRUN **pOutSrvRun
|
|
);
|
|
|
|
HRESULT CloseAndRelease
|
|
(
|
|
[in] DWORD dwClose
|
|
);
|
|
|
|
}
|
|
|
|
|
|
[
|
|
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;
|
|
|
|
|
|
[local]
|
|
HRESULT __stdcall PrivQueryInterface(
|
|
[in] DWORD dwId,
|
|
[in] REFIID riidResult,
|
|
[out, iid_is(riidResult)] void **ppvResult);
|
|
|
|
[call_as(PrivQueryInterface)]
|
|
HRESULT __stdcall RemotePrivQueryInterface(
|
|
[in] DWORD dwId,
|
|
[in] REFIID riidResult,
|
|
[out, iid_is(riidResult)] IUnknown **ppvResult);
|
|
|
|
|
|
HRESULT PrivAddRef(
|
|
[in] DWORD dwId
|
|
);
|
|
|
|
HRESULT PrivRelease(
|
|
[in] DWORD dwId
|
|
);
|
|
|
|
// IOleClientSite methods
|
|
HRESULT SaveObject
|
|
(
|
|
[in] DWORD dwId
|
|
);
|
|
|
|
HRESULT GetMoniker
|
|
(
|
|
[in] DWORD dwId,
|
|
[in] DWORD dwAssign,
|
|
[in] DWORD dwWhichMoniker,
|
|
[out] IMoniker **ppmk
|
|
);
|
|
|
|
HRESULT GetContainer
|
|
(
|
|
[in] DWORD dwId,
|
|
[out] IOleContainer **ppContainer
|
|
);
|
|
|
|
HRESULT ShowObject
|
|
(
|
|
[in] DWORD dwId
|
|
);
|
|
|
|
HRESULT OnShowWindow
|
|
(
|
|
[in] DWORD dwId,
|
|
[in] BOOL fShow
|
|
);
|
|
|
|
HRESULT RequestNewObjectLayout
|
|
(
|
|
[in] DWORD dwId
|
|
);
|
|
|
|
// 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
|
|
(
|
|
[in] INSRVINPLACE *pInSrvInPlace,
|
|
[out] OUTSRVINPLACE **pOutSrvInPlace
|
|
);
|
|
|
|
HRESULT GoInPlace
|
|
(
|
|
[in] INSRVINPLACE *pInSrvInPlace,
|
|
[out] OUTSRVINPLACE **pOutSrvInPlace
|
|
);
|
|
HRESULT UndoPlace
|
|
(
|
|
[in] INSRVINPLACE *pInSrvInPlace,
|
|
[out] OUTSRVINPLACE **pOutSrvInPlace
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|