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.
295 lines
13 KiB
295 lines
13 KiB
// marscore.idl : IDL source for marscore.dll
|
|
//
|
|
|
|
// This file will be processed by the MIDL tool to
|
|
// produce the type library (marscore.tlb) and marshalling code.
|
|
|
|
import "oaidl.idl";
|
|
import "ocidl.idl";
|
|
import "mshtml.idl";
|
|
|
|
#ifdef USE_DOWNLOADMANAGER
|
|
import "dlmgridl.idl";
|
|
#endif
|
|
|
|
#include "olectl.h"
|
|
|
|
cpp_quote("#define MTF_USE_DEFAULT_POS 0x00000001")
|
|
cpp_quote("#define MTF_MANAGE_WINDOW_SIZE 0x00000002")
|
|
cpp_quote("#define MTF_DONT_SHOW_WINDOW 0x00000004")
|
|
cpp_quote("#define MTF_RESTORING_FROM_REGISTRY 0x00000008")
|
|
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK: -----Original Message-----
|
|
//// LEGACY CODE CHECK: From: Oleg Ovetchkine
|
|
//// LEGACY CODE CHECK: Sent: Thursday, May 03, 2001 2:46 PM
|
|
//// LEGACY CODE CHECK: To: Desktop Delta Mail Communications; IE Check-in Mail; IE Build Lab
|
|
//// LEGACY CODE CHECK: Subject: Lab06: (G) Approved bug fix
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK: 26693 HSS:UI:Bad redraw shifts navbar down and right a few pixels, leaving a transparent band top & left
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK: We have legacy code that supposed to render UI active border around trident when it is hosted.
|
|
//// LEGACY CODE CHECK: The bug happens due to two events. First, we set border flag to TRUE while processing CRootElement::BecomeUIActive(),
|
|
//// LEGACY CODE CHECK: second because of the flag we inflate window region rectangle by 4 pixels each side,
|
|
//// LEGACY CODE CHECK: which causes four pixels bands not to be rendering from left and top sides later.
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK: We already have a bit flag that suppresses setting border flag in first place (CServer::_fMsoDocMode.
|
|
//// LEGACY CODE CHECK: _fMsoDocMode == TRUE when client supports IID_IOleDocumentSite).
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK: Taking into acount the stage we are now, my suggestion whould be to implement appHack fix for HSS
|
|
//// LEGACY CODE CHECK: by introducing one more bit flag on CDoc object, set it to TRUE when Trident is hosted by HSS and
|
|
//// LEGACY CODE CHECK: suppress border flag when appHack flag is TRUE. I have worked out the way to recognize HSS application with dmassare,
|
|
//// LEGACY CODE CHECK: implemented the fix and verified it on HSS.
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK:
|
|
//// LEGACY CODE CHECK: !!NEVER!! change GUID for SID_SMarsPanel and IMarsPanel.
|
|
//// LEGACY CODE CHECK:
|
|
|
|
typedef struct
|
|
{
|
|
UINT cbSize;
|
|
HICON hIcon;
|
|
int nCmdShow;
|
|
DWORD dwFlags;
|
|
LPCWSTR pwszTitle;
|
|
LPCWSTR pwszPanelURL;
|
|
LPCWSTR pwszFirstPlace;
|
|
RECT rcDefaultPosition;
|
|
}
|
|
MARSTHREADPARAM;
|
|
|
|
[
|
|
uuid(88519F49-040A-11D3-9883-00C04FA35C89),
|
|
version(1.0)
|
|
]
|
|
library MARSCORELib
|
|
{
|
|
importlib("stdole32.tlb");
|
|
importlib("stdole2.tlb");
|
|
|
|
[
|
|
object,
|
|
uuid(988934A0-064B-11D3-BB80-00104B35E7F9),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsPanel : IDispatch
|
|
{
|
|
[propget, id( 1)] HRESULT name ( [out, retval] BSTR *pVal );
|
|
[propget, id( 2)] HRESULT content ( [out, retval] IDispatch* *pVal );
|
|
[propget, id( 3)] HRESULT visible ( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id( 3)] HRESULT visible ( [in ] VARIANT_BOOL newVal );
|
|
[propget, id( 4)] HRESULT startUrl ( [out, retval] BSTR *pVal );
|
|
[propput, id( 4)] HRESULT startUrl ( [in ] BSTR newVal );
|
|
[propget, id( 5)] HRESULT height ( [out, retval] long *pVal );
|
|
[propput, id( 5)] HRESULT height ( [in ] long newVal );
|
|
[propget, id( 6)] HRESULT width ( [out, retval] long *pVal );
|
|
[propput, id( 6)] HRESULT width ( [in ] long newVal );
|
|
[propget, id( 7)] HRESULT x ( [out, retval] long *pVal );
|
|
[propput, id( 7)] HRESULT x ( [in ] long newVal );
|
|
[propget, id( 8)] HRESULT y ( [out, retval] long *pVal );
|
|
[propput, id( 8)] HRESULT y ( [in ] long newVal );
|
|
[propget, id( 9)] HRESULT position ( [out, retval] VARIANT *pVal );
|
|
[propput, id( 9)] HRESULT position ( [in ] VARIANT newVal );
|
|
[propget, id(10)] HRESULT autoSize ( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id(10)] HRESULT autoSize ( [in ] VARIANT_BOOL newVal );
|
|
[propget, id(11)] HRESULT contentInvalid ( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id(11)] HRESULT contentInvalid ( [in ] VARIANT_BOOL newVal );
|
|
[propget, id(12)] HRESULT layoutIndex ( [out, retval] long *pVal );
|
|
[propget, id(13)] HRESULT isCurrentlyVisible( [out, retval] VARIANT_BOOL *pVal );
|
|
|
|
[id(20)] HRESULT moveto( [in] VARIANT lX, [in] VARIANT lY, [in] VARIANT lWidth, [in] VARIANT lHeight );
|
|
|
|
[id(21)] HRESULT restrictHeight( [in] VARIANT lMin, [in] VARIANT lMax, [in] VARIANT varMarker );
|
|
[id(22)] HRESULT restrictWidth ( [in] VARIANT lMin, [in] VARIANT lMax, [in] VARIANT varMarker );
|
|
|
|
[id(23)] HRESULT canResize( [in] long lDX, [in] long lDY, [out, retval] VARIANT_BOOL *pVal );
|
|
|
|
[id(24)] HRESULT navigate([in] VARIANT varTarget, [in, optional] VARIANT varForceLoad);
|
|
[id(25)] HRESULT refresh();
|
|
|
|
[id(26)] HRESULT activate();
|
|
[id(27)] HRESULT insertBefore( [in] VARIANT varInsertBefore );
|
|
|
|
[id(28)] HRESULT execMshtml( [in ] DWORD nCmdID ,
|
|
[in ] DWORD nCmdExecOpt ,
|
|
[in, optional] VARIANTARG *pvaIn ,
|
|
[in, out, optional] VARIANTARG *pvaOut );
|
|
}
|
|
|
|
[
|
|
object,
|
|
uuid(988934A1-064B-11D3-BB80-00104B35E7F9),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsPanelCollection : IDispatch
|
|
{
|
|
[propget, id(1000) ] HRESULT length ( [out, retval] LONG *plNumPanels );
|
|
[propget, id(DISPID_VALUE) ] HRESULT item ( [in] VARIANT varPanel, [out, retval] IMarsPanel* *ppPanel );
|
|
[propget, id(DISPID_NEWENUM), hidden, restricted] HRESULT _newEnum( [out, retval] IUnknown* *ppEnumPanels );
|
|
|
|
[propget, id(1)] HRESULT panel( [in] BSTR bstrName, [out, retval] IMarsPanel* *ppPanel );
|
|
|
|
[id(2)] HRESULT addPanel( [in ] BSTR bstrName ,
|
|
[in ] VARIANT varType ,
|
|
[in ] BSTR bstrStartUrl ,
|
|
[in ] VARIANT varCreate ,
|
|
[in ] long lFlags ,
|
|
[out, retval] IMarsPanel* *ppPanel );
|
|
|
|
[id(3)] HRESULT removePanel([in] BSTR bstrName);
|
|
|
|
[id(4)] HRESULT lockLayout ();
|
|
[id(5)] HRESULT unlockLayout();
|
|
|
|
[propget, id(6)] HRESULT activePanel( [out, retval] IMarsPanel* *ppPanel );
|
|
};
|
|
|
|
[
|
|
object,
|
|
uuid(988934A2-064B-11D3-BB80-00104B35E7F9),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsPlace : IDispatch
|
|
{
|
|
[propget, id(1)] HRESULT name( [out, retval] BSTR *pbstrName );
|
|
|
|
[id(2)] HRESULT transitionTo();
|
|
};
|
|
|
|
[
|
|
object,
|
|
uuid(988934A3-064B-11D3-BB80-00104B35E7F9),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsPlaceCollection : IDispatch
|
|
{
|
|
[ id(1)] HRESULT place ( [in] BSTR bstrName, [out, retval] IMarsPlace* *ppMarsPlace );
|
|
[propget, id(2)] HRESULT currentPlace( [out, retval] IMarsPlace* *ppMarsPlace );
|
|
[ id(3)] HRESULT transitionTo( [in] BSTR bstrName );
|
|
};
|
|
|
|
[
|
|
object,
|
|
uuid(E2984BA5-294A-4cc5-8CA9-82CDDEC72DD0),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsWindowOM : IDispatch
|
|
{
|
|
[propget, id( 1)] HRESULT active ( [out, retval] VARIANT_BOOL *pVal );
|
|
[propget, id( 2)] HRESULT minimized( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id( 2)] HRESULT minimized( [in ] VARIANT_BOOL newVal );
|
|
[propget, id( 3)] HRESULT maximized( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id( 3)] HRESULT maximized( [in ] VARIANT_BOOL newVal );
|
|
[propget, id( 4)] HRESULT title ( [out, retval] BSTR *pVal );
|
|
[propput, id( 4)] HRESULT title ( [in ] BSTR newVal );
|
|
[propget, id( 5)] HRESULT x ( [out, retval] long *pVal );
|
|
[propput, id( 5)] HRESULT x ( [in ] long newVal );
|
|
[propget, id( 6)] HRESULT y ( [out, retval] long *pVal );
|
|
[propput, id( 6)] HRESULT y ( [in ] long newVal );
|
|
[propget, id( 7)] HRESULT width ( [out, retval] long *pVal );
|
|
[propput, id( 7)] HRESULT width ( [in ] long newVal );
|
|
[propget, id( 8)] HRESULT height ( [out, retval] long *pVal );
|
|
[propput, id( 8)] HRESULT height ( [in ] long newVal );
|
|
[propget, id( 9)] HRESULT visible ( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id( 9)] HRESULT visible ( [in ] VARIANT_BOOL newVal );
|
|
|
|
[propget, id(15)] HRESULT panels( [out, retval] IMarsPanelCollection* *ppPanels );
|
|
[propget, id(16)] HRESULT places( [out, retval] IMarsPlaceCollection* *ppPlaces );
|
|
|
|
[id(20)] HRESULT setWindowDimensions( [in] long lX, [in] long lY, [in] long lW, [in] long lH );
|
|
[id(21)] HRESULT close();
|
|
[id(22)] HRESULT refreshLayout();
|
|
}
|
|
|
|
[
|
|
uuid(6E204F82-E5AB-4567-B28E-57A5C8BFDDB6),
|
|
]
|
|
coclass MarsExternal
|
|
{
|
|
[default] interface IMarsExternal;
|
|
};
|
|
|
|
cpp_quote("#define MARS_E_BAD_FIREEVENT_ARGS 1000")
|
|
cpp_quote("")
|
|
cpp_quote("// {24EC0AE8-734E-4c18-B191-6D3BF1D9413B}")
|
|
cpp_quote("DEFINE_GUID(SID_SMarsPanel, ")
|
|
cpp_quote("0x24ec0ae8, 0x734e, 0x4c18, 0xb1, 0x91, 0x6d, 0x3b, 0xf1, 0xd9, 0x41, 0x3b);")
|
|
cpp_quote("")
|
|
cpp_quote("// {CECC5FD8-4FEF-448f-B5CB-59E44F9D7ED5}")
|
|
cpp_quote("DEFINE_GUID(SID_SMarsWindow, ")
|
|
cpp_quote("0xcecc5fd8, 0x4fef, 0x448f, 0xb5, 0xcb, 0x59, 0xe4, 0x4f, 0x9d, 0x7e, 0xd5);")
|
|
cpp_quote("")
|
|
cpp_quote("// {6A0DFD86-87FD-4722-A21B-31920DCECBFE}")
|
|
cpp_quote("DEFINE_GUID(SID_SMarsDocument, ")
|
|
cpp_quote("0x6a0dfd86, 0x87fd, 0x4722, 0xa2, 0x1b, 0x31, 0x92, 0xd, 0xce, 0xcb, 0xfe);")
|
|
cpp_quote("")
|
|
cpp_quote("// {847F06DF-970F-4535-883F-B780CB605A12}")
|
|
cpp_quote("DEFINE_GUID(SID_SMarsHost, ")
|
|
cpp_quote("0x847f06df, 0x970f, 0x4535, 0x88, 0x3f, 0xb7, 0x80, 0xcb, 0x60, 0x5a, 0x12);")
|
|
cpp_quote("")
|
|
cpp_quote("typedef HRESULT (STDMETHODCALLTYPE *PFNMARSTHREADPROC)(IMarsHost *pMarsHost, MARSTHREADPARAM *pThreadParam);")
|
|
cpp_quote("#define ORD_MARSTHREADPROC 5")
|
|
};
|
|
|
|
[
|
|
object,
|
|
uuid(CC6FFEB0-E379-427a-9810-A16B7A826A89),
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsHost : IUnknown
|
|
{
|
|
typedef enum
|
|
{
|
|
// punk - a mars window
|
|
// lParam - WINDOWPLACEMENT*
|
|
MARSHOST_ON_WIN_SETPOS,
|
|
|
|
// punk - a mars window
|
|
// lParam - unused
|
|
MARSHOST_ON_WIN_INIT,
|
|
MARSHOST_ON_WIN_READY,
|
|
MARSHOST_ON_WIN_PASSIVATE,
|
|
|
|
// punk - a mars panel
|
|
// lParam - unused
|
|
MARSHOST_ON_PANEL_INIT,
|
|
MARSHOST_ON_PANEL_PASSIVATE,
|
|
MARSHOST_ON_PANEL_CONTROL_CREATE,
|
|
|
|
// punk - a mars place
|
|
// lParam - unused
|
|
MARSHOST_ON_PLACE_TRANSITION_DONE,
|
|
|
|
// punk - IUnknown of the faulting document
|
|
// lParam - unused
|
|
MARSHOST_ON_SCRIPT_ERROR,
|
|
}
|
|
MARSHOSTEVENT;
|
|
|
|
HRESULT OnHostNotify([in] MARSHOSTEVENT event, [in] IUnknown *punk, [in] LPARAM lParam);
|
|
|
|
HRESULT PreTranslateMessage( [in] MSG* msg );
|
|
};
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(B616B681-04D6-11D3-9883-00C04FA35C89),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface IMarsExternal : IDispatch
|
|
{
|
|
[propget, id(1)] HRESULT singleButtonMouse( [out, retval] VARIANT_BOOL *pVal );
|
|
[propput, id(1)] HRESULT singleButtonMouse( [in ] VARIANT_BOOL newVal );
|
|
[propget, id(2)] HRESULT panels ( [out, retval] IMarsPanelCollection* *pVal );
|
|
[propget, id(3)] HRESULT places ( [out, retval] IMarsPlaceCollection* *pVal );
|
|
[propget, id(4)] HRESULT window ( [out, retval] IMarsWindowOM* *pVal );
|
|
};
|
|
|