home *** CD-ROM | disk | FTP | other *** search
- #pragma option push -b -a8 -pc -A- /*P_O_Push*/
- /*++
-
- Copyright (c) 1996-1999, Microsoft Corporation
-
- Module Name:
- mprui.h
-
- Abstract:
- Declarations for the Multi-Protocol router's UI plugin interface.
-
- --*/
-
- #if _MSC_VER > 1000
- #pragma once
- #endif
-
- // forward declarations
- #ifdef _cplusplus
- struct IMprUIHost;
- struct IMprUIPlugin;
- #else
- typedef struct IMprUIHost IMprUIHost;
- typedef struct IMprUIPlugin IMprUIPlugin;
- #endif
-
- // {73A827F0-FF6E-11cf-AA6B-00805F0C9232}
- DEFINE_GUID(IID_IMprUIHost,
- 0x73a827f0, 0xff6e, 0x11cf, 0xaa, 0x6b, 0x0, 0x80, 0x5f, 0xc, 0x92, 0x32);
-
- // {73A827F1-FF6E-11cf-AA6B-00805F0C9232}
- DEFINE_GUID(IID_IMprUIPlugin,
- 0x73a827f1, 0xff6e, 0x11cf, 0xaa, 0x6b, 0x0, 0x80, 0x5f, 0xc, 0x92, 0x32);
-
- #undef INTERFACE
- #define INTERFACE IMprUIHost
-
- DECLARE_INTERFACE_(IMprUIHost, IUnknown)
- {
- // *** IUnknown methods ***
- STDMETHOD(QueryInterface) (
- THIS_
- REFIID riid,
- LPVOID FAR* ppvObj
- ) PURE;
-
- STDMETHOD_(ULONG,AddRef) (
- THIS
- ) PURE;
-
- STDMETHOD_(ULONG,Release) (
- THIS
- ) PURE;
-
- // *** IMprUIHost methods ***
-
- // Create a floating window for the given control
- // Use CoTaskMemAlloc to allocate pszTitle
- STDMETHOD(FloatWindow) (
- THIS_
- REFCLSID rguidModule, // CLSID representing the object
- REFCLSID rclsidCtrl, // CLSID of Ole Control to create
- IMprUIPlugin* pConnection, // Plugin in node making request
- DWORD dwContext, // constant context passed back to Ole Control
- PWCHAR pszTitle // Title of floating window
- ) PURE;
-
- // Force all nodes to be refreshed
- STDMETHOD(GlobalRefresh) (
- THIS
- ) PURE;
- };
-
- #undef INTERFACE
- #define INTERFACE IMprUIPlugin
-
- DECLARE_INTERFACE_(IMprUIPlugin, IUnknown)
- {
- // *** IUnknown methods ***
- STDMETHOD(QueryInterface) (
- THIS_
- REFIID riid,
- LPVOID FAR* ppvObj
- ) PURE;
-
- STDMETHOD_(ULONG,AddRef) (
- THIS
- ) PURE;
-
- STDMETHOD_(ULONG,Release) (
- THIS
- ) PURE;
-
- // *** IMprUIPlugin Methods ***
-
- // Connect to router. The plugin module should disconnect from the
- // router when the IMprUIPlugin is released.
- STDMETHOD(ConnectToRouter) (
- THIS_
- LPCTSTR pRouterName,
- IMprUIHost *pMprUIHost
- ) PURE;
-
- // Returns the text for the given node.
- // Use CoTaskMemAlloc to allocate memory for ppszTitle
- STDMETHOD(GetTitle) (
- THIS_
- PWSTR* ppszTitle
- ) PURE;
-
- // Returns a context menu for the given node.
- // Menu will be destroyed by host.
- STDMETHOD(GetContextMenu) (
- THIS_
- HMENU* phMenu
- ) PURE;
-
- // Processes the command returned by the context menu
- // There are reserved commands (used to pass down the Hotkeys)
- // such as IDM_HOTKEY_INSERT, IDM_HOTKEY_DELETE, and
- // IDM_HOTKEY_RETURN. These commands are to be assigned to
- // the appropriate task by the implementor of this interface.
- STDMETHOD(ProcessCommand) (
- THIS_
- WPARAM wParam,
- LPARAM lParam,
- HWND hWndParent
- ) PURE;
-
- // Returns CLSID for the ole control which displays right hand pane
- // Use CoTaskMemAlloc to allocate space for CLSID*
- STDMETHOD(GetCLSID) (
- THIS_
- CLSID** ppClsid
- ) PURE;
- };
-
- #define IDM_HOTKEY_INSERT (1024)
- #define IDM_HOTKEY_DELETE (1025)
- #define IDM_HOTKEY_RETURN (1026)
-
- /* name mangling off */
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- typedef DWORD
- (APIENTRY* PFNMPRUITRANSPORTCONFIG)(
- IN HWND hwndParent,
- IN LPCWSTR pwsMachine,
- IN DWORD dwTransportId,
- IN DWORD dwReserved
- );
-
- #define MPRUITRANSPORTCONFIG MprUITransportConfig
- #define SZMPRUITRANSPORTCONFIG "MprUITransportConfig"
-
-
- typedef DWORD
- (APIENTRY* PFNMPRUIPROTOCOLCONFIG)(
- IN HWND hwndParent,
- IN LPCWSTR pwsMachine,
- IN DWORD dwTransportId,
- IN DWORD dwProtocolId,
- IN DWORD dwReserved
- );
-
- #define MPRUIPROTOCOLCONFIG MprUIProtocolConfig
- #define SZMPRUIPROTOCOLCONFIG "MprUIProtocolConfig"
-
-
-
- typedef DWORD
- (APIENTRY* PFNMPRUITRANSPORTINTERFACECONFIG)(
- IN HWND hwndParent,
- IN LPCWSTR pwsMachine,
- IN LPCWSTR pwsInterface,
- IN DWORD dwIfType,
- IN DWORD dwTransportId,
- IN DWORD dwReserved
- );
-
- #define MPRUITRANSPORTINTERFACECONFIG MprUITransportInterfaceConfig
- #define SZMPRUITRANSPORTINTERFACECONFIG "MprUITransportInterfaceConfig"
-
-
-
- typedef DWORD
- (APIENTRY* PFNMPRUIPROTOCOLINTERFACECONFIG)(
- IN HWND hwndParent,
- IN LPCWSTR pwsMachine,
- IN LPCWSTR pwsInterface,
- IN DWORD dwIfType,
- IN DWORD dwTransportId,
- IN DWORD dwProtocolId,
- IN DWORD dwReserved
- );
-
- #define MPRUIPROTOCOLINTERFACECONFIG MprUIProtocolInterfaceConfig
- #define SZMPRUIPROTOCOLINTERFACECONFIG "MprUIProtocolInterfaceConfig"
-
-
- #ifdef __cplusplus
- }
- #endif
- #pragma option pop /*P_O_Pop*/
-