ReactOS 0.4.16-dev-297-gc569aee
oleobj.c File Reference
#include "mshtml_private.h"
Include dependency graph for oleobj.c:

Go to the source code of this file.

Classes

struct  EnumUnknown
 

Macros

#define DOCHOST_DOCCANNAVIGATE   0
 

Functions

static EnumUnknownimpl_from_IEnumUnknown (IEnumUnknown *iface)
 
static HRESULT WINAPI EnumUnknown_QueryInterface (IEnumUnknown *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI EnumUnknown_AddRef (IEnumUnknown *iface)
 
static ULONG WINAPI EnumUnknown_Release (IEnumUnknown *iface)
 
static HRESULT WINAPI EnumUnknown_Next (IEnumUnknown *iface, ULONG celt, IUnknown **rgelt, ULONG *pceltFetched)
 
static HRESULT WINAPI EnumUnknown_Skip (IEnumUnknown *iface, ULONG celt)
 
static HRESULT WINAPI EnumUnknown_Reset (IEnumUnknown *iface)
 
static HRESULT WINAPI EnumUnknown_Clone (IEnumUnknown *iface, IEnumUnknown **ppenum)
 
static HTMLDocumentimpl_from_IOleObject (IOleObject *iface)
 
static HRESULT WINAPI OleObject_QueryInterface (IOleObject *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI OleObject_AddRef (IOleObject *iface)
 
static ULONG WINAPI OleObject_Release (IOleObject *iface)
 
static void update_hostinfo (HTMLDocumentObj *This, DOCHOSTUIINFO *hostinfo)
 
void call_docview_84 (HTMLDocumentObj *doc)
 
void set_document_navigation (HTMLDocumentObj *doc, BOOL doc_can_navigate)
 
static void load_settings (HTMLDocumentObj *doc)
 
static HRESULT WINAPI OleObject_SetClientSite (IOleObject *iface, IOleClientSite *pClientSite)
 
static HRESULT WINAPI OleObject_GetClientSite (IOleObject *iface, IOleClientSite **ppClientSite)
 
static HRESULT WINAPI OleObject_SetHostNames (IOleObject *iface, LPCOLESTR szContainerApp, LPCOLESTR szContainerObj)
 
static HRESULT WINAPI OleObject_Close (IOleObject *iface, DWORD dwSaveOption)
 
static HRESULT WINAPI OleObject_SetMoniker (IOleObject *iface, DWORD dwWhichMoniker, IMoniker *pmk)
 
static HRESULT WINAPI OleObject_GetMoniker (IOleObject *iface, DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk)
 
static HRESULT WINAPI OleObject_InitFromData (IOleObject *iface, IDataObject *pDataObject, BOOL fCreation, DWORD dwReserved)
 
static HRESULT WINAPI OleObject_GetClipboardData (IOleObject *iface, DWORD dwReserved, IDataObject **ppDataObject)
 
static HRESULT WINAPI OleObject_DoVerb (IOleObject *iface, LONG iVerb, LPMSG lpmsg, IOleClientSite *pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect)
 
static HRESULT WINAPI OleObject_EnumVerbs (IOleObject *iface, IEnumOLEVERB **ppEnumOleVerb)
 
static HRESULT WINAPI OleObject_Update (IOleObject *iface)
 
static HRESULT WINAPI OleObject_IsUpToDate (IOleObject *iface)
 
static HRESULT WINAPI OleObject_GetUserClassID (IOleObject *iface, CLSID *pClsid)
 
static HRESULT WINAPI OleObject_GetUserType (IOleObject *iface, DWORD dwFormOfType, LPOLESTR *pszUserType)
 
static HRESULT WINAPI OleObject_SetExtent (IOleObject *iface, DWORD dwDrawAspect, SIZEL *psizel)
 
static HRESULT WINAPI OleObject_GetExtent (IOleObject *iface, DWORD dwDrawAspect, SIZEL *psizel)
 
static HRESULT WINAPI OleObject_Advise (IOleObject *iface, IAdviseSink *pAdvSink, DWORD *pdwConnection)
 
static HRESULT WINAPI OleObject_Unadvise (IOleObject *iface, DWORD dwConnection)
 
static HRESULT WINAPI OleObject_EnumAdvise (IOleObject *iface, IEnumSTATDATA **ppenumAdvise)
 
static HRESULT WINAPI OleObject_GetMiscStatus (IOleObject *iface, DWORD dwAspect, DWORD *pdwStatus)
 
static HRESULT WINAPI OleObject_SetColorScheme (IOleObject *iface, LOGPALETTE *pLogpal)
 
static HTMLDocumentimpl_from_IOleDocument (IOleDocument *iface)
 
static HRESULT WINAPI OleDocument_QueryInterface (IOleDocument *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI OleDocument_AddRef (IOleDocument *iface)
 
static ULONG WINAPI OleDocument_Release (IOleDocument *iface)
 
static HRESULT WINAPI OleDocument_CreateView (IOleDocument *iface, IOleInPlaceSite *pIPSite, IStream *pstm, DWORD dwReserved, IOleDocumentView **ppView)
 
static HRESULT WINAPI OleDocument_GetDocMiscStatus (IOleDocument *iface, DWORD *pdwStatus)
 
static HRESULT WINAPI OleDocument_EnumViews (IOleDocument *iface, IEnumOleDocumentViews **ppEnum, IOleDocumentView **ppView)
 
static HTMLDocumentimpl_from_IOleControl (IOleControl *iface)
 
static HRESULT WINAPI OleControl_QueryInterface (IOleControl *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI OleControl_AddRef (IOleControl *iface)
 
static ULONG WINAPI OleControl_Release (IOleControl *iface)
 
static HRESULT WINAPI OleControl_GetControlInfo (IOleControl *iface, CONTROLINFO *pCI)
 
static HRESULT WINAPI OleControl_OnMnemonic (IOleControl *iface, MSG *pMsg)
 
HRESULT get_client_disp_property (IOleClientSite *client, DISPID dispid, VARIANT *res)
 
static HRESULT on_change_dlcontrol (HTMLDocument *This)
 
static HRESULT WINAPI OleControl_OnAmbientPropertyChange (IOleControl *iface, DISPID dispID)
 
static HRESULT WINAPI OleControl_FreezeEvents (IOleControl *iface, BOOL bFreeze)
 
static HTMLDocumentimpl_from_IObjectWithSite (IObjectWithSite *iface)
 
static HRESULT WINAPI ObjectWithSite_QueryInterface (IObjectWithSite *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI ObjectWithSite_AddRef (IObjectWithSite *iface)
 
static ULONG WINAPI ObjectWithSite_Release (IObjectWithSite *iface)
 
static HRESULT WINAPI ObjectWithSite_SetSite (IObjectWithSite *iface, IUnknown *pUnkSite)
 
static HRESULT WINAPI ObjectWithSite_GetSite (IObjectWithSite *iface, REFIID riid, PVOID *ppvSite)
 
static HTMLDocumentimpl_from_IOleContainer (IOleContainer *iface)
 
static HRESULT WINAPI OleContainer_QueryInterface (IOleContainer *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI OleContainer_AddRef (IOleContainer *iface)
 
static ULONG WINAPI OleContainer_Release (IOleContainer *iface)
 
static HRESULT WINAPI OleContainer_ParseDisplayName (IOleContainer *iface, IBindCtx *pbc, LPOLESTR pszDisplayName, ULONG *pchEaten, IMoniker **ppmkOut)
 
static HRESULT WINAPI OleContainer_EnumObjects (IOleContainer *iface, DWORD grfFlags, IEnumUnknown **ppenum)
 
static HRESULT WINAPI OleContainer_LockContainer (IOleContainer *iface, BOOL fLock)
 
static HTMLDocumentObjimpl_from_ITargetContainer (ITargetContainer *iface)
 
static HRESULT WINAPI TargetContainer_QueryInterface (ITargetContainer *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI TargetContainer_AddRef (ITargetContainer *iface)
 
static ULONG WINAPI TargetContainer_Release (ITargetContainer *iface)
 
static HRESULT WINAPI TargetContainer_GetFrameUrl (ITargetContainer *iface, LPWSTR *ppszFrameSrc)
 
static HRESULT WINAPI TargetContainer_GetFramesContainer (ITargetContainer *iface, IOleContainer **ppContainer)
 
void TargetContainer_Init (HTMLDocumentObj *This)
 
static HTMLDocumentimpl_from_IObjectSafety (IObjectSafety *iface)
 
static HRESULT WINAPI ObjectSafety_QueryInterface (IObjectSafety *iface, REFIID riid, void **ppv)
 
static ULONG WINAPI ObjectSafety_AddRef (IObjectSafety *iface)
 
static ULONG WINAPI ObjectSafety_Release (IObjectSafety *iface)
 
static HRESULT WINAPI ObjectSafety_GetInterfaceSafetyOptions (IObjectSafety *iface, REFIID riid, DWORD *pdwSupportedOptions, DWORD *pdwEnabledOptions)
 
static HRESULT WINAPI ObjectSafety_SetInterfaceSafetyOptions (IObjectSafety *iface, REFIID riid, DWORD dwOptionSetMask, DWORD dwEnabledOptions)
 
void HTMLDocument_LockContainer (HTMLDocumentObj *This, BOOL fLock)
 
void HTMLDocument_OleObj_Init (HTMLDocument *This)
 

Variables

static const IEnumUnknownVtbl EnumUnknownVtbl
 
static const IOleObjectVtbl OleObjectVtbl
 
static const IOleDocumentVtbl OleDocumentVtbl
 
static const IOleControlVtbl OleControlVtbl
 
static const IObjectWithSiteVtbl ObjectWithSiteVtbl
 
static const IOleContainerVtbl OleContainerVtbl
 
static const ITargetContainerVtbl TargetContainerVtbl
 
static const IObjectSafetyVtbl ObjectSafetyVtbl
 

Macro Definition Documentation

◆ DOCHOST_DOCCANNAVIGATE

#define DOCHOST_DOCCANNAVIGATE   0

Definition at line 21 of file oleobj.c.

Function Documentation

◆ call_docview_84()

void call_docview_84 ( HTMLDocumentObj doc)

Definition at line 173 of file oleobj.c.

174{
175 IOleCommandTarget *olecmd;
176 VARIANT var;
178
179 if(!doc->client)
180 return;
181
182 hres = IOleClientSite_QueryInterface(doc->client, &IID_IOleCommandTarget, (void**)&olecmd);
183 if(FAILED(hres))
184 return;
185
187 hres = IOleCommandTarget_Exec(olecmd, &CGID_ShellDocView, 84, 0, NULL, &var);
188 IOleCommandTarget_Release(olecmd);
189 if(SUCCEEDED(hres) && V_VT(&var) != VT_NULL)
190 FIXME("handle result\n");
191}
#define FIXME(fmt,...)
Definition: precomp.h:53
#define NULL
Definition: types.h:112
@ VT_NULL
Definition: compat.h:2296
#define SUCCEEDED(hr)
Definition: intsafe.h:50
#define FAILED(hr)
Definition: intsafe.h:51
const char * var
Definition: shader.c:5666
HRESULT hres
Definition: protocol.c:465
#define V_VT(A)
Definition: oleauto.h:211
IOleClientSite * client
void WINAPI VariantInit(VARIANTARG *pVarg)
Definition: variant.c:568

Referenced by OleObject_SetClientSite(), PersistMoniker_Load(), and super_navigate().

◆ EnumUnknown_AddRef()

static ULONG WINAPI EnumUnknown_AddRef ( IEnumUnknown iface)
static

Definition at line 53 of file oleobj.c.

54{
57
58 TRACE("(%p) ref=%d\n", This, ref);
59
60 return ref;
61}
#define InterlockedIncrement
Definition: armddk.h:53
static EnumUnknown * impl_from_IEnumUnknown(IEnumUnknown *iface)
Definition: oleobj.c:28
long LONG
Definition: pedump.c:60
#define TRACE(s)
Definition: solgame.cpp:4
Definition: send.c:48

◆ EnumUnknown_Clone()

static HRESULT WINAPI EnumUnknown_Clone ( IEnumUnknown iface,
IEnumUnknown **  ppenum 
)
static

Definition at line 102 of file oleobj.c.

103{
105 FIXME("(%p)->(%p)\n", This, ppenum);
106 return E_NOTIMPL;
107}
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ EnumUnknown_Next()

static HRESULT WINAPI EnumUnknown_Next ( IEnumUnknown iface,
ULONG  celt,
IUnknown **  rgelt,
ULONG pceltFetched 
)
static

Definition at line 76 of file oleobj.c.

77{
79
80 TRACE("(%p)->(%u %p %p)\n", This, celt, rgelt, pceltFetched);
81
82 /* FIXME: It's not clear if we should ever return something here */
83 if(pceltFetched)
84 *pceltFetched = 0;
85 return S_FALSE;
86}
#define S_FALSE
Definition: winerror.h:2357

◆ EnumUnknown_QueryInterface()

static HRESULT WINAPI EnumUnknown_QueryInterface ( IEnumUnknown iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 33 of file oleobj.c.

34{
36
38 TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
39 *ppv = &This->IEnumUnknown_iface;
40 }else if(IsEqualGUID(&IID_IEnumUnknown, riid)) {
41 TRACE("(%p)->(IID_IEnumUnknown %p)\n", This, ppv);
42 *ppv = &This->IEnumUnknown_iface;
43 }else {
44 WARN("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
45 *ppv = NULL;
46 return E_NOINTERFACE;
47 }
48
49 IUnknown_AddRef((IUnknown*)*ppv);
50 return S_OK;
51}
#define WARN(fmt,...)
Definition: precomp.h:61
const GUID IID_IUnknown
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define S_OK
Definition: intsafe.h:52
#define debugstr_guid
Definition: kernel32.h:35
const GUID IID_IEnumUnknown
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147
#define E_NOINTERFACE
Definition: winerror.h:2364

◆ EnumUnknown_Release()

static ULONG WINAPI EnumUnknown_Release ( IEnumUnknown iface)
static

Definition at line 63 of file oleobj.c.

64{
67
68 TRACE("(%p) ref=%d\n", This, ref);
69
70 if(!ref)
72
73 return ref;
74}
static BOOL heap_free(void *mem)
Definition: appwiz.h:76
#define InterlockedDecrement
Definition: armddk.h:52

◆ EnumUnknown_Reset()

static HRESULT WINAPI EnumUnknown_Reset ( IEnumUnknown iface)
static

Definition at line 95 of file oleobj.c.

96{
98 FIXME("(%p)\n", This);
99 return E_NOTIMPL;
100}

◆ EnumUnknown_Skip()

static HRESULT WINAPI EnumUnknown_Skip ( IEnumUnknown iface,
ULONG  celt 
)
static

Definition at line 88 of file oleobj.c.

89{
91 FIXME("(%p)->(%u)\n", This, celt);
92 return E_NOTIMPL;
93}

◆ get_client_disp_property()

HRESULT get_client_disp_property ( IOleClientSite client,
DISPID  dispid,
VARIANT res 
)

Definition at line 811 of file oleobj.c.

812{
813 IDispatch *disp = NULL;
814 DISPPARAMS dispparams = {NULL, 0};
815 UINT err;
817
818 hres = IOleClientSite_QueryInterface(client, &IID_IDispatch, (void**)&disp);
819 if(FAILED(hres)) {
820 TRACE("Could not get IDispatch\n");
821 return hres;
822 }
823
825
826 hres = IDispatch_Invoke(disp, dispid, &IID_NULL, LOCALE_SYSTEM_DEFAULT,
827 DISPATCH_PROPERTYGET, &dispparams, res, NULL, &err);
828
829 IDispatch_Release(disp);
830
831 return hres;
832}
GLuint res
Definition: glext.h:9613
struct stdole::DISPPARAMS DISPPARAMS
unsigned int UINT
Definition: ndis.h:50
#define LOCALE_SYSTEM_DEFAULT
#define DISPATCH_PROPERTYGET
Definition: oleauto.h:1007
const GUID IID_IDispatch
#define IID_NULL
Definition: guiddef.h:98
#define err(...)
static FILE * client
Definition: client.c:41

Referenced by OleControl_OnAmbientPropertyChange(), OleObject_SetClientSite(), and on_change_dlcontrol().

◆ HTMLDocument_LockContainer()

void HTMLDocument_LockContainer ( HTMLDocumentObj This,
BOOL  fLock 
)

Definition at line 1183 of file oleobj.c.

1184{
1186 HRESULT hres;
1187
1188 if(!This->client || This->container_locked == fLock)
1189 return;
1190
1191 hres = IOleClientSite_GetContainer(This->client, &container);
1192 if(SUCCEEDED(hres)) {
1193 IOleContainer_LockContainer(container, fLock);
1194 This->container_locked = fLock;
1195 IOleContainer_Release(container);
1196 }
1197}

Referenced by OleDocumentView_UIActivate(), OleObject_Close(), OleObject_DoVerb(), and set_moniker().

◆ HTMLDocument_OleObj_Init()

void HTMLDocument_OleObj_Init ( HTMLDocument This)

Definition at line 1199 of file oleobj.c.

1200{
1201 This->IOleObject_iface.lpVtbl = &OleObjectVtbl;
1202 This->IOleDocument_iface.lpVtbl = &OleDocumentVtbl;
1203 This->IOleControl_iface.lpVtbl = &OleControlVtbl;
1204 This->IObjectWithSite_iface.lpVtbl = &ObjectWithSiteVtbl;
1205 This->IOleContainer_iface.lpVtbl = &OleContainerVtbl;
1206 This->IObjectSafety_iface.lpVtbl = &ObjectSafetyVtbl;
1207}
static const IObjectWithSiteVtbl ObjectWithSiteVtbl
Definition: oleobj.c:994
static const IOleContainerVtbl OleContainerVtbl
Definition: oleobj.c:1062
static const IObjectSafetyVtbl ObjectSafetyVtbl
Definition: oleobj.c:1175
static const IOleDocumentVtbl OleDocumentVtbl
Definition: oleobj.c:761
static const IOleObjectVtbl OleObjectVtbl
Definition: oleobj.c:660
static const IOleControlVtbl OleControlVtbl
Definition: oleobj.c:943

Referenced by init_doc().

◆ impl_from_IEnumUnknown()

static EnumUnknown * impl_from_IEnumUnknown ( IEnumUnknown iface)
inlinestatic

Definition at line 28 of file oleobj.c.

29{
30 return CONTAINING_RECORD(iface, EnumUnknown, IEnumUnknown_iface);
31}
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260

Referenced by EnumUnknown_AddRef(), EnumUnknown_Clone(), EnumUnknown_Next(), EnumUnknown_QueryInterface(), EnumUnknown_Release(), EnumUnknown_Reset(), and EnumUnknown_Skip().

◆ impl_from_IObjectSafety()

static HTMLDocument * impl_from_IObjectSafety ( IObjectSafety iface)
inlinestatic

◆ impl_from_IObjectWithSite()

static HTMLDocument * impl_from_IObjectWithSite ( IObjectWithSite iface)
inlinestatic

Definition at line 957 of file oleobj.c.

958{
959 return CONTAINING_RECORD(iface, HTMLDocument, IObjectWithSite_iface);
960}

Referenced by ObjectWithSite_AddRef(), ObjectWithSite_GetSite(), ObjectWithSite_QueryInterface(), ObjectWithSite_Release(), and ObjectWithSite_SetSite().

◆ impl_from_IOleContainer()

static HTMLDocument * impl_from_IOleContainer ( IOleContainer iface)
inlinestatic

◆ impl_from_IOleControl()

static HTMLDocument * impl_from_IOleControl ( IOleControl iface)
inlinestatic

◆ impl_from_IOleDocument()

static HTMLDocument * impl_from_IOleDocument ( IOleDocument iface)
inlinestatic

◆ impl_from_IOleObject()

◆ impl_from_ITargetContainer()

static HTMLDocumentObj * impl_from_ITargetContainer ( ITargetContainer iface)
inlinestatic

◆ load_settings()

static void load_settings ( HTMLDocumentObj doc)
static

Definition at line 209 of file oleobj.c.

210{
211 HKEY settings_key;
212 DWORD val, size;
213 LONG res;
214
215 static const WCHAR ie_keyW[] = {
216 'S','O','F','T','W','A','R','E','\\',
217 'M','i','c','r','o','s','o','f','t','\\',
218 'I','n','t','e','r','n','e','t',' ','E','x','p','l','o','r','e','r',0};
219 static const WCHAR zoomW[] = {'Z','o','o','m',0};
220 static const WCHAR zoom_factorW[] = {'Z','o','o','m','F','a','c','t','o','r',0};
221
222 res = RegOpenKeyW(HKEY_CURRENT_USER, ie_keyW, &settings_key);
223 if(res != ERROR_SUCCESS)
224 return;
225
226 size = sizeof(val);
227 res = RegGetValueW(settings_key, zoomW, zoom_factorW, RRF_RT_REG_DWORD, NULL, &val, &size);
228 RegCloseKey(settings_key);
229 if(res == ERROR_SUCCESS)
230 set_viewer_zoom(doc->nscontainer, (float)val/100000);
231}
#define RegCloseKey(hKey)
Definition: registry.h:49
#define ERROR_SUCCESS
Definition: deptool.c:10
LSTATUS WINAPI RegGetValueW(HKEY hKey, LPCWSTR pszSubKey, LPCWSTR pszValue, DWORD dwFlags, LPDWORD pdwType, PVOID pvData, LPDWORD pcbData)
Definition: reg.c:1931
LONG WINAPI RegOpenKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
Definition: reg.c:3268
#define RRF_RT_REG_DWORD
Definition: driver.c:578
unsigned long DWORD
Definition: ntddk_ex.h:95
GLsizeiptr size
Definition: glext.h:5919
GLuint GLfloat * val
Definition: glext.h:7180
static const WCHAR zoomW[]
Definition: htmlstyle3.c:92
void set_viewer_zoom(NSContainer *, float) DECLSPEC_HIDDEN
Definition: nsembed.c:1130
NSContainer * nscontainer
#define HKEY_CURRENT_USER
Definition: winreg.h:11
__wchar_t WCHAR
Definition: xmlstorage.h:180

Referenced by OleObject_SetClientSite().

◆ ObjectSafety_AddRef()

static ULONG WINAPI ObjectSafety_AddRef ( IObjectSafety iface)
static

Definition at line 1141 of file oleobj.c.

1142{
1144 return htmldoc_addref(This);
1145}
static HTMLDocument * impl_from_IObjectSafety(IObjectSafety *iface)
Definition: oleobj.c:1130
static ULONG htmldoc_addref(HTMLDocument *This)

◆ ObjectSafety_GetInterfaceSafetyOptions()

static HRESULT WINAPI ObjectSafety_GetInterfaceSafetyOptions ( IObjectSafety iface,
REFIID  riid,
DWORD pdwSupportedOptions,
DWORD pdwEnabledOptions 
)
static

Definition at line 1153 of file oleobj.c.

1155{
1157 FIXME("(%p)->(%s %p %p)\n", This, debugstr_guid(riid), pdwSupportedOptions, pdwEnabledOptions);
1158 return E_NOTIMPL;
1159}

◆ ObjectSafety_QueryInterface()

static HRESULT WINAPI ObjectSafety_QueryInterface ( IObjectSafety iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1135 of file oleobj.c.

1136{
1139}
static HRESULT htmldoc_query_interface(HTMLDocument *This, REFIID riid, void **ppv)

◆ ObjectSafety_Release()

static ULONG WINAPI ObjectSafety_Release ( IObjectSafety iface)
static

Definition at line 1147 of file oleobj.c.

1148{
1150 return htmldoc_release(This);
1151}
static ULONG htmldoc_release(HTMLDocument *This)

◆ ObjectSafety_SetInterfaceSafetyOptions()

static HRESULT WINAPI ObjectSafety_SetInterfaceSafetyOptions ( IObjectSafety iface,
REFIID  riid,
DWORD  dwOptionSetMask,
DWORD  dwEnabledOptions 
)
static

Definition at line 1161 of file oleobj.c.

1163{
1165 FIXME("(%p)->(%s %x %x)\n", This, debugstr_guid(riid), dwOptionSetMask, dwEnabledOptions);
1166
1167 if(IsEqualGUID(&IID_IPersistMoniker, riid) &&
1168 dwOptionSetMask==INTERFACESAFE_FOR_UNTRUSTED_DATA &&
1169 dwEnabledOptions==INTERFACESAFE_FOR_UNTRUSTED_DATA)
1170 return S_OK;
1171
1172 return E_NOTIMPL;
1173}

◆ ObjectWithSite_AddRef()

static ULONG WINAPI ObjectWithSite_AddRef ( IObjectWithSite iface)
static

Definition at line 968 of file oleobj.c.

969{
971 return htmldoc_addref(This);
972}
static HTMLDocument * impl_from_IObjectWithSite(IObjectWithSite *iface)
Definition: oleobj.c:957

◆ ObjectWithSite_GetSite()

static HRESULT WINAPI ObjectWithSite_GetSite ( IObjectWithSite iface,
REFIID  riid,
PVOID ppvSite 
)
static

Definition at line 987 of file oleobj.c.

988{
990 FIXME("(%p)->(%p)\n", This, ppvSite);
991 return E_NOTIMPL;
992}

◆ ObjectWithSite_QueryInterface()

static HRESULT WINAPI ObjectWithSite_QueryInterface ( IObjectWithSite iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 962 of file oleobj.c.

◆ ObjectWithSite_Release()

static ULONG WINAPI ObjectWithSite_Release ( IObjectWithSite iface)
static

Definition at line 974 of file oleobj.c.

975{
977 return htmldoc_release(This);
978}

◆ ObjectWithSite_SetSite()

static HRESULT WINAPI ObjectWithSite_SetSite ( IObjectWithSite iface,
IUnknown pUnkSite 
)
static

Definition at line 980 of file oleobj.c.

981{
983 FIXME("(%p)->(%p)\n", This, pUnkSite);
984 return E_NOTIMPL;
985}

◆ OleContainer_AddRef()

static ULONG WINAPI OleContainer_AddRef ( IOleContainer iface)
static

Definition at line 1017 of file oleobj.c.

1018{
1020 return htmldoc_addref(This);
1021}
static HTMLDocument * impl_from_IOleContainer(IOleContainer *iface)
Definition: oleobj.c:1006

◆ OleContainer_EnumObjects()

static HRESULT WINAPI OleContainer_EnumObjects ( IOleContainer iface,
DWORD  grfFlags,
IEnumUnknown **  ppenum 
)
static

Definition at line 1037 of file oleobj.c.

1038{
1041
1042 TRACE("(%p)->(%x %p)\n", This, grfFlags, ppenum);
1043
1044 ret = heap_alloc(sizeof(*ret));
1045 if(!ret)
1046 return E_OUTOFMEMORY;
1047
1048 ret->IEnumUnknown_iface.lpVtbl = &EnumUnknownVtbl;
1049 ret->ref = 1;
1050
1051 *ppenum = &ret->IEnumUnknown_iface;
1052 return S_OK;
1053}
static void * heap_alloc(size_t len)
Definition: appwiz.h:66
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static const IEnumUnknownVtbl EnumUnknownVtbl
Definition: oleobj.c:109
int ret

◆ OleContainer_LockContainer()

static HRESULT WINAPI OleContainer_LockContainer ( IOleContainer iface,
BOOL  fLock 
)
static

Definition at line 1055 of file oleobj.c.

1056{
1058 FIXME("(%p)->(%x)\n", This, fLock);
1059 return E_NOTIMPL;
1060}

◆ OleContainer_ParseDisplayName()

static HRESULT WINAPI OleContainer_ParseDisplayName ( IOleContainer iface,
IBindCtx pbc,
LPOLESTR  pszDisplayName,
ULONG pchEaten,
IMoniker **  ppmkOut 
)
static

Definition at line 1029 of file oleobj.c.

1031{
1033 FIXME("(%p)->(%p %s %p %p)\n", This, pbc, debugstr_w(pszDisplayName), pchEaten, ppmkOut);
1034 return E_NOTIMPL;
1035}
#define debugstr_w
Definition: kernel32.h:32

◆ OleContainer_QueryInterface()

static HRESULT WINAPI OleContainer_QueryInterface ( IOleContainer iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1011 of file oleobj.c.

1012{
1015}

◆ OleContainer_Release()

static ULONG WINAPI OleContainer_Release ( IOleContainer iface)
static

Definition at line 1023 of file oleobj.c.

1024{
1026 return htmldoc_release(This);
1027}

◆ OleControl_AddRef()

static ULONG WINAPI OleControl_AddRef ( IOleControl iface)
static

Definition at line 785 of file oleobj.c.

786{
788 return htmldoc_addref(This);
789}
static HTMLDocument * impl_from_IOleControl(IOleControl *iface)
Definition: oleobj.c:774

◆ OleControl_FreezeEvents()

static HRESULT WINAPI OleControl_FreezeEvents ( IOleControl iface,
BOOL  bFreeze 
)
static

Definition at line 936 of file oleobj.c.

937{
939 FIXME("(%p)->(%x)\n", This, bFreeze);
940 return E_NOTIMPL;
941}

◆ OleControl_GetControlInfo()

static HRESULT WINAPI OleControl_GetControlInfo ( IOleControl iface,
CONTROLINFO *  pCI 
)
static

Definition at line 797 of file oleobj.c.

798{
800 FIXME("(%p)->(%p)\n", This, pCI);
801 return E_NOTIMPL;
802}

◆ OleControl_OnAmbientPropertyChange()

static HRESULT WINAPI OleControl_OnAmbientPropertyChange ( IOleControl iface,
DISPID  dispID 
)
static

Definition at line 846 of file oleobj.c.

847{
850 VARIANT res;
852
853 client = This->doc_obj->client;
854 if(!client) {
855 TRACE("client = NULL\n");
856 return S_OK;
857 }
858
859 switch(dispID) {
861 TRACE("(%p)->(DISPID_AMBIENT_USERMODE)\n", This);
863 if(FAILED(hres))
864 return S_OK;
865
866 if(V_VT(&res) == VT_BOOL) {
867 if(V_BOOL(&res)) {
868 This->doc_obj->usermode = BROWSEMODE;
869 }else {
870 FIXME("edit mode is not supported\n");
871 This->doc_obj->usermode = EDITMODE;
872 }
873 }else {
874 FIXME("usermode=%s\n", debugstr_variant(&res));
875 }
876 return S_OK;
878 TRACE("(%p)->(DISPID_AMBIENT_DLCONTROL)\n", This);
881 TRACE("(%p)->(DISPID_AMBIENT_OFFLINEIFNOTCONNECTED)\n", This);
884 if(FAILED(hres))
885 return S_OK;
886
887 if(V_VT(&res) == VT_BOOL) {
888 if(V_BOOL(&res)) {
889 FIXME("offline connection is not supported\n");
890 hres = E_FAIL;
891 }
892 }else {
893 FIXME("offlineconnected=%s\n", debugstr_variant(&res));
894 }
895 return S_OK;
897 TRACE("(%p)->(DISPID_AMBIENT_SILENT)\n", This);
900 if(FAILED(hres))
901 return S_OK;
902
903 if(V_VT(&res) == VT_BOOL) {
904 if(V_BOOL(&res)) {
905 FIXME("silent mode is not supported\n");
906 hres = E_FAIL;
907 }
908 }else {
909 FIXME("silent=%s\n", debugstr_variant(&res));
910 }
911 return S_OK;
913 TRACE("(%p)->(DISPID_AMBIENT_USERAGENT)\n", This);
915 if(FAILED(hres))
916 return S_OK;
917
918 FIXME("not supported AMBIENT_USERAGENT\n");
919 hres = E_FAIL;
920 return S_OK;
922 TRACE("(%p)->(DISPID_AMBIENT_PALETTE)\n", This);
924 if(FAILED(hres))
925 return S_OK;
926
927 FIXME("not supported AMBIENT_PALETTE\n");
928 hres = E_FAIL;
929 return S_OK;
930 }
931
932 FIXME("(%p) unsupported dispID=%d\n", This, dispID);
933 return E_FAIL;
934}
#define E_FAIL
Definition: ddrawi.h:102
@ VT_BOOL
Definition: compat.h:2306
#define DISPID_AMBIENT_OFFLINEIFNOTCONNECTED
Definition: idispids.h:25
#define DISPID_AMBIENT_SILENT
Definition: idispids.h:26
static const char * debugstr_variant(const VARIANT *var)
Definition: container.c:46
#define DISPID_AMBIENT_DLCONTROL
Definition: mshtmdid.h:539
#define DISPID_AMBIENT_USERAGENT
Definition: mshtmdid.h:540
HRESULT get_client_disp_property(IOleClientSite *client, DISPID dispid, VARIANT *res)
Definition: oleobj.c:811
static HRESULT on_change_dlcontrol(HTMLDocument *This)
Definition: oleobj.c:834
@ BROWSEMODE
@ EDITMODE
#define V_BOOL(A)
Definition: oleauto.h:224
#define DISPID_AMBIENT_USERMODE
Definition: olectl.h:405
#define DISPID_AMBIENT_PALETTE
Definition: olectl.h:415

◆ OleControl_OnMnemonic()

static HRESULT WINAPI OleControl_OnMnemonic ( IOleControl iface,
MSG pMsg 
)
static

Definition at line 804 of file oleobj.c.

805{
807 FIXME("(%p)->(%p)\n", This, pMsg);
808 return E_NOTIMPL;
809}

◆ OleControl_QueryInterface()

static HRESULT WINAPI OleControl_QueryInterface ( IOleControl iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 779 of file oleobj.c.

780{
783}

◆ OleControl_Release()

static ULONG WINAPI OleControl_Release ( IOleControl iface)
static

Definition at line 791 of file oleobj.c.

792{
794 return htmldoc_release(This);
795}

◆ OleDocument_AddRef()

static ULONG WINAPI OleDocument_AddRef ( IOleDocument iface)
static

Definition at line 702 of file oleobj.c.

703{
705 return htmldoc_addref(This);
706}
static HTMLDocument * impl_from_IOleDocument(IOleDocument *iface)
Definition: oleobj.c:691

◆ OleDocument_CreateView()

static HRESULT WINAPI OleDocument_CreateView ( IOleDocument iface,
IOleInPlaceSite pIPSite,
IStream pstm,
DWORD  dwReserved,
IOleDocumentView **  ppView 
)
static

Definition at line 714 of file oleobj.c.

716{
719
720 TRACE("(%p)->(%p %p %d %p)\n", This, pIPSite, pstm, dwReserved, ppView);
721
722 if(!ppView)
723 return E_INVALIDARG;
724
725 /* FIXME:
726 * Windows implementation creates new IOleDocumentView when function is called for the
727 * first time and returns E_FAIL when it is called for the second time, but it doesn't matter
728 * if the application uses returned interfaces, passed to ActivateMe or returned by
729 * QueryInterface, so there is no reason to create new interface. This needs more testing.
730 */
731
732 if(pIPSite) {
733 hres = IOleDocumentView_SetInPlaceSite(&This->IOleDocumentView_iface, pIPSite);
734 if(FAILED(hres))
735 return hres;
736 }
737
738 if(pstm)
739 FIXME("pstm is not supported\n");
740
741 IOleDocumentView_AddRef(&This->IOleDocumentView_iface);
742 *ppView = &This->IOleDocumentView_iface;
743 return S_OK;
744}
#define E_INVALIDARG
Definition: ddrawi.h:101
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
Definition: mswsock.h:95

◆ OleDocument_EnumViews()

static HRESULT WINAPI OleDocument_EnumViews ( IOleDocument iface,
IEnumOleDocumentViews **  ppEnum,
IOleDocumentView **  ppView 
)
static

Definition at line 753 of file oleobj.c.

755{
757 FIXME("(%p)->(%p %p)\n", This, ppEnum, ppView);
758 return E_NOTIMPL;
759}

◆ OleDocument_GetDocMiscStatus()

static HRESULT WINAPI OleDocument_GetDocMiscStatus ( IOleDocument iface,
DWORD pdwStatus 
)
static

Definition at line 746 of file oleobj.c.

747{
749 FIXME("(%p)->(%p)\n", This, pdwStatus);
750 return E_NOTIMPL;
751}

◆ OleDocument_QueryInterface()

static HRESULT WINAPI OleDocument_QueryInterface ( IOleDocument iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 696 of file oleobj.c.

697{
700}

◆ OleDocument_Release()

static ULONG WINAPI OleDocument_Release ( IOleDocument iface)
static

Definition at line 708 of file oleobj.c.

709{
711 return htmldoc_release(This);
712}

◆ OleObject_AddRef()

static ULONG WINAPI OleObject_AddRef ( IOleObject iface)
static

Definition at line 134 of file oleobj.c.

135{
137 return htmldoc_addref(This);
138}
static HTMLDocument * impl_from_IOleObject(IOleObject *iface)
Definition: oleobj.c:123

◆ OleObject_Advise()

static HRESULT WINAPI OleObject_Advise ( IOleObject iface,
IAdviseSink pAdvSink,
DWORD pdwConnection 
)
static

Definition at line 601 of file oleobj.c.

602{
604 TRACE("(%p)->(%p %p)\n", This, pAdvSink, pdwConnection);
605
606 if(!pdwConnection)
607 return E_INVALIDARG;
608
609 if(!pAdvSink) {
610 *pdwConnection = 0;
611 return E_INVALIDARG;
612 }
613
614 if(!This->advise_holder) {
615 CreateOleAdviseHolder(&This->advise_holder);
616 if(!This->advise_holder)
617 return E_OUTOFMEMORY;
618 }
619
620 return IOleAdviseHolder_Advise(This->advise_holder, pAdvSink, pdwConnection);
621}
HRESULT WINAPI CreateOleAdviseHolder(IOleAdviseHolder **ppOAHolder)
Definition: oleobj.c:875

◆ OleObject_Close()

static HRESULT WINAPI OleObject_Close ( IOleObject iface,
DWORD  dwSaveOption 
)
static

Definition at line 458 of file oleobj.c.

459{
461
462 TRACE("(%p)->(%08x)\n", This, dwSaveOption);
463
464 if(dwSaveOption == OLECLOSE_PROMPTSAVE)
465 FIXME("OLECLOSE_PROMPTSAVE not implemented\n");
466
467 if(This->doc_obj->in_place_active)
468 IOleInPlaceObjectWindowless_InPlaceDeactivate(&This->IOleInPlaceObjectWindowless_iface);
469
471
472 if(This->advise_holder)
473 IOleAdviseHolder_SendOnClose(This->advise_holder);
474
475 return S_OK;
476}
#define FALSE
Definition: types.h:117
void HTMLDocument_LockContainer(HTMLDocumentObj *This, BOOL fLock)
Definition: oleobj.c:1183

◆ OleObject_DoVerb()

static HRESULT WINAPI OleObject_DoVerb ( IOleObject iface,
LONG  iVerb,
LPMSG  lpmsg,
IOleClientSite pActiveSite,
LONG  lindex,
HWND  hwndParent,
LPCRECT  lprcPosRect 
)
static

Definition at line 507 of file oleobj.c.

509{
511 IOleDocumentSite *pDocSite;
513
514 TRACE("(%p)->(%d %p %p %d %p %p)\n", This, iVerb, lpmsg, pActiveSite, lindex, hwndParent, lprcPosRect);
515
516 if(iVerb != OLEIVERB_SHOW && iVerb != OLEIVERB_UIACTIVATE && iVerb != OLEIVERB_INPLACEACTIVATE) {
517 FIXME("iVerb = %d not supported\n", iVerb);
518 return E_NOTIMPL;
519 }
520
521 if(!pActiveSite)
522 pActiveSite = This->doc_obj->client;
523
524 hres = IOleClientSite_QueryInterface(pActiveSite, &IID_IOleDocumentSite, (void**)&pDocSite);
525 if(SUCCEEDED(hres)) {
527
528 /* FIXME: Create new IOleDocumentView. See CreateView for more info. */
529 hres = IOleDocumentSite_ActivateMe(pDocSite, &This->IOleDocumentView_iface);
530 IOleDocumentSite_Release(pDocSite);
531 }else {
532 hres = IOleDocumentView_UIActivate(&This->IOleDocumentView_iface, TRUE);
533 if(SUCCEEDED(hres)) {
534 if(lprcPosRect) {
535 RECT rect; /* We need to pass rect as not const pointer */
536 rect = *lprcPosRect;
537 IOleDocumentView_SetRect(&This->IOleDocumentView_iface, &rect);
538 }
539 IOleDocumentView_Show(&This->IOleDocumentView_iface, TRUE);
540 }
541 }
542
543 return hres;
544}
static HWND hwndParent
Definition: cryptui.c:300
#define TRUE
Definition: types.h:120
#define OLEIVERB_UIACTIVATE
Definition: ole2.h:42
#define OLEIVERB_INPLACEACTIVATE
Definition: ole2.h:43
#define OLEIVERB_SHOW
Definition: ole2.h:39
& rect
Definition: startmenu.cpp:1413

◆ OleObject_EnumAdvise()

static HRESULT WINAPI OleObject_EnumAdvise ( IOleObject iface,
IEnumSTATDATA **  ppenumAdvise 
)
static

Definition at line 634 of file oleobj.c.

635{
637
638 if(!This->advise_holder) {
639 *ppenumAdvise = NULL;
640 return S_OK;
641 }
642
643 return IOleAdviseHolder_EnumAdvise(This->advise_holder, ppenumAdvise);
644}

◆ OleObject_EnumVerbs()

static HRESULT WINAPI OleObject_EnumVerbs ( IOleObject iface,
IEnumOLEVERB **  ppEnumOleVerb 
)
static

Definition at line 546 of file oleobj.c.

547{
549 FIXME("(%p)->(%p)\n", This, ppEnumOleVerb);
550 return E_NOTIMPL;
551}

◆ OleObject_GetClientSite()

static HRESULT WINAPI OleObject_GetClientSite ( IOleObject iface,
IOleClientSite **  ppClientSite 
)
static

Definition at line 435 of file oleobj.c.

436{
438
439 TRACE("(%p)->(%p)\n", This, ppClientSite);
440
441 if(!ppClientSite)
442 return E_INVALIDARG;
443
444 if(This->doc_obj->client)
445 IOleClientSite_AddRef(This->doc_obj->client);
446 *ppClientSite = This->doc_obj->client;
447
448 return S_OK;
449}

◆ OleObject_GetClipboardData()

static HRESULT WINAPI OleObject_GetClipboardData ( IOleObject iface,
DWORD  dwReserved,
IDataObject **  ppDataObject 
)
static

Definition at line 500 of file oleobj.c.

501{
503 FIXME("(%p)->(%d %p)\n", This, dwReserved, ppDataObject);
504 return E_NOTIMPL;
505}

◆ OleObject_GetExtent()

static HRESULT WINAPI OleObject_GetExtent ( IOleObject iface,
DWORD  dwDrawAspect,
SIZEL psizel 
)
static

Definition at line 594 of file oleobj.c.

595{
597 FIXME("(%p)->(%d %p)\n", This, dwDrawAspect, psizel);
598 return E_NOTIMPL;
599}

◆ OleObject_GetMiscStatus()

static HRESULT WINAPI OleObject_GetMiscStatus ( IOleObject iface,
DWORD  dwAspect,
DWORD pdwStatus 
)
static

Definition at line 646 of file oleobj.c.

647{
649 FIXME("(%p)->(%d %p)\n", This, dwAspect, pdwStatus);
650 return E_NOTIMPL;
651}

◆ OleObject_GetMoniker()

static HRESULT WINAPI OleObject_GetMoniker ( IOleObject iface,
DWORD  dwAssign,
DWORD  dwWhichMoniker,
IMoniker **  ppmk 
)
static

Definition at line 485 of file oleobj.c.

486{
488 FIXME("(%p)->(%d %d %p)\n", This, dwAssign, dwWhichMoniker, ppmk);
489 return E_NOTIMPL;
490}

◆ OleObject_GetUserClassID()

static HRESULT WINAPI OleObject_GetUserClassID ( IOleObject iface,
CLSID pClsid 
)
static

Definition at line 567 of file oleobj.c.

568{
570
571 TRACE("(%p)->(%p)\n", This, pClsid);
572
573 if(!pClsid)
574 return E_INVALIDARG;
575
576 *pClsid = CLSID_HTMLDocument;
577 return S_OK;
578}

◆ OleObject_GetUserType()

static HRESULT WINAPI OleObject_GetUserType ( IOleObject iface,
DWORD  dwFormOfType,
LPOLESTR pszUserType 
)
static

Definition at line 580 of file oleobj.c.

581{
583 FIXME("(%p)->(%d %p)\n", This, dwFormOfType, pszUserType);
584 return E_NOTIMPL;
585}

◆ OleObject_InitFromData()

static HRESULT WINAPI OleObject_InitFromData ( IOleObject iface,
IDataObject pDataObject,
BOOL  fCreation,
DWORD  dwReserved 
)
static

Definition at line 492 of file oleobj.c.

494{
496 FIXME("(%p)->(%p %x %d)\n", This, pDataObject, fCreation, dwReserved);
497 return E_NOTIMPL;
498}

◆ OleObject_IsUpToDate()

static HRESULT WINAPI OleObject_IsUpToDate ( IOleObject iface)
static

Definition at line 560 of file oleobj.c.

561{
563 FIXME("(%p)\n", This);
564 return E_NOTIMPL;
565}

◆ OleObject_QueryInterface()

static HRESULT WINAPI OleObject_QueryInterface ( IOleObject iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 128 of file oleobj.c.

129{
132}

◆ OleObject_Release()

static ULONG WINAPI OleObject_Release ( IOleObject iface)
static

Definition at line 140 of file oleobj.c.

141{
143 return htmldoc_release(This);
144}

◆ OleObject_SetClientSite()

static HRESULT WINAPI OleObject_SetClientSite ( IOleObject iface,
IOleClientSite pClientSite 
)
static

Definition at line 233 of file oleobj.c.

234{
236 IOleCommandTarget *cmdtrg = NULL;
237 IOleWindow *ole_window;
238 IBrowserService *browser_service;
239 BOOL hostui_setup;
241 HWND hwnd;
243
244 TRACE("(%p)->(%p)\n", This, pClientSite);
245
246 if(pClientSite == This->doc_obj->client)
247 return S_OK;
248
249 if(This->doc_obj->client) {
250 IOleClientSite_Release(This->doc_obj->client);
251 This->doc_obj->client = NULL;
252 This->doc_obj->usermode = UNKNOWN_USERMODE;
253 }
254
255 if(This->doc_obj->client_cmdtrg) {
256 IOleCommandTarget_Release(This->doc_obj->client_cmdtrg);
257 This->doc_obj->client_cmdtrg = NULL;
258 }
259
260 if(This->doc_obj->hostui && !This->doc_obj->custom_hostui) {
261 IDocHostUIHandler_Release(This->doc_obj->hostui);
262 This->doc_obj->hostui = NULL;
263 }
264
265 if(This->doc_obj->doc_object_service) {
266 IDocObjectService_Release(This->doc_obj->doc_object_service);
267 This->doc_obj->doc_object_service = NULL;
268 }
269
270 if(This->doc_obj->webbrowser) {
271 IUnknown_Release(This->doc_obj->webbrowser);
272 This->doc_obj->webbrowser = NULL;
273 }
274
275 if(This->doc_obj->browser_service) {
276 IUnknown_Release(This->doc_obj->browser_service);
277 This->doc_obj->browser_service = NULL;
278 }
279
280 if(This->doc_obj->travel_log) {
281 ITravelLog_Release(This->doc_obj->travel_log);
282 This->doc_obj->travel_log = NULL;
283 }
284
285 memset(&This->doc_obj->hostinfo, 0, sizeof(DOCHOSTUIINFO));
286
287 if(!pClientSite)
288 return S_OK;
289
290 IOleClientSite_AddRef(pClientSite);
291 This->doc_obj->client = pClientSite;
292
293 hostui_setup = This->doc_obj->hostui_setup;
294
295 if(!This->doc_obj->hostui) {
296 IDocHostUIHandler *uihandler;
297
298 This->doc_obj->custom_hostui = FALSE;
299
300 hres = IOleClientSite_QueryInterface(pClientSite, &IID_IDocHostUIHandler, (void**)&uihandler);
301 if(SUCCEEDED(hres))
302 This->doc_obj->hostui = uihandler;
303 }
304
305 if(This->doc_obj->hostui) {
306 DOCHOSTUIINFO hostinfo;
307 LPOLESTR key_path = NULL, override_key_path = NULL;
308 IDocHostUIHandler2 *uihandler2;
309
310 memset(&hostinfo, 0, sizeof(DOCHOSTUIINFO));
311 hostinfo.cbSize = sizeof(DOCHOSTUIINFO);
312 hres = IDocHostUIHandler_GetHostInfo(This->doc_obj->hostui, &hostinfo);
313 if(SUCCEEDED(hres)) {
314 TRACE("hostinfo = {%u %08x %08x %s %s}\n",
315 hostinfo.cbSize, hostinfo.dwFlags, hostinfo.dwDoubleClick,
316 debugstr_w(hostinfo.pchHostCss), debugstr_w(hostinfo.pchHostNS));
317 update_hostinfo(This->doc_obj, &hostinfo);
318 This->doc_obj->hostinfo = hostinfo;
319 }
320
321 if(!hostui_setup) {
322 hres = IDocHostUIHandler_GetOptionKeyPath(This->doc_obj->hostui, &key_path, 0);
323 if(hres == S_OK && key_path) {
324 if(key_path[0]) {
325 /* FIXME: use key_path */
326 FIXME("key_path = %s\n", debugstr_w(key_path));
327 }
328 CoTaskMemFree(key_path);
329 }
330
331 hres = IDocHostUIHandler_QueryInterface(This->doc_obj->hostui, &IID_IDocHostUIHandler2,
332 (void**)&uihandler2);
333 if(SUCCEEDED(hres)) {
334 hres = IDocHostUIHandler2_GetOverrideKeyPath(uihandler2, &override_key_path, 0);
335 if(hres == S_OK && override_key_path) {
336 if(override_key_path[0]) {
337 /*FIXME: use override_key_path */
338 FIXME("override_key_path = %s\n", debugstr_w(override_key_path));
339 }
340 CoTaskMemFree(override_key_path);
341 }
342 IDocHostUIHandler2_Release(uihandler2);
343 }
344
345 This->doc_obj->hostui_setup = TRUE;
346 }
347 }
348
349 load_settings(This->doc_obj);
350
351 /* Native calls here GetWindow. What is it for?
352 * We don't have anything to do with it here (yet). */
353 hres = IOleClientSite_QueryInterface(pClientSite, &IID_IOleWindow, (void**)&ole_window);
354 if(SUCCEEDED(hres)) {
355 IOleWindow_GetWindow(ole_window, &hwnd);
356 IOleWindow_Release(ole_window);
357 }
358
359 hres = do_query_service((IUnknown*)pClientSite, &IID_IShellBrowser,
360 &IID_IBrowserService, (void**)&browser_service);
361 if(SUCCEEDED(hres)) {
362 ITravelLog *travel_log;
363
364 This->doc_obj->browser_service = (IUnknown*)browser_service;
365
366 hres = IBrowserService_GetTravelLog(browser_service, &travel_log);
367 if(SUCCEEDED(hres))
368 This->doc_obj->travel_log = travel_log;
369 }else {
370 browser_service = NULL;
371 }
372
373 hres = IOleClientSite_QueryInterface(pClientSite, &IID_IOleCommandTarget, (void**)&cmdtrg);
374 if(SUCCEEDED(hres)) {
375 VARIANT var;
376 OLECMD cmd = {OLECMDID_SETPROGRESSTEXT, 0};
377
378 This->doc_obj->client_cmdtrg = cmdtrg;
379
380 if(!hostui_setup) {
381 IDocObjectService *doc_object_service;
382 IWebBrowser2 *wb;
383
385
386 if(browser_service) {
387 hres = IBrowserService_QueryInterface(browser_service,
388 &IID_IDocObjectService, (void**)&doc_object_service);
389 if(SUCCEEDED(hres)) {
390 This->doc_obj->doc_object_service = doc_object_service;
391
392 /*
393 * Some embedding routines, esp. in regards to use of IDocObjectService, differ if
394 * embedder supports IWebBrowserApp.
395 */
396 hres = do_query_service((IUnknown*)pClientSite, &IID_IWebBrowserApp, &IID_IWebBrowser2, (void**)&wb);
397 if(SUCCEEDED(hres))
398 This->doc_obj->webbrowser = (IUnknown*)wb;
399 }
400 }
401 }
402
403 call_docview_84(This->doc_obj);
404
405 IOleCommandTarget_QueryStatus(cmdtrg, NULL, 1, &cmd, NULL);
406
407 V_VT(&var) = VT_I4;
408 V_I4(&var) = 0;
409 IOleCommandTarget_Exec(cmdtrg, NULL, OLECMDID_SETPROGRESSMAX,
410 OLECMDEXECOPT_DONTPROMPTUSER, &var, NULL);
411 IOleCommandTarget_Exec(cmdtrg, NULL, OLECMDID_SETPROGRESSPOS,
412 OLECMDEXECOPT_DONTPROMPTUSER, &var, NULL);
413 }
414
415 if(This->doc_obj->usermode == UNKNOWN_USERMODE)
416 IOleControl_OnAmbientPropertyChange(&This->IOleControl_iface, DISPID_AMBIENT_USERMODE);
417
418 IOleControl_OnAmbientPropertyChange(&This->IOleControl_iface,
420
422 if(SUCCEEDED(hres)) {
423 if(V_VT(&silent) != VT_BOOL)
424 WARN("silent = %s\n", debugstr_variant(&silent));
425 else if(V_BOOL(&silent))
426 FIXME("silent == true\n");
427 }
428
429 IOleControl_OnAmbientPropertyChange(&This->IOleControl_iface, DISPID_AMBIENT_USERAGENT);
430 IOleControl_OnAmbientPropertyChange(&This->IOleControl_iface, DISPID_AMBIENT_PALETTE);
431
432 return S_OK;
433}
@ VT_I4
Definition: compat.h:2298
HRESULT do_query_service(IUnknown *unk, REFGUID guid_service, REFIID riid, void **ppv)
Definition: main.c:148
unsigned int BOOL
Definition: ntddk_ex.h:94
VOID WINAPI CoTaskMemFree(LPVOID ptr)
Definition: ifs.c:442
static LPOLESTR
Definition: stg_prop.c:27
void set_document_navigation(HTMLDocumentObj *doc, BOOL doc_can_navigate)
Definition: oleobj.c:193
static void update_hostinfo(HTMLDocumentObj *This, DOCHOSTUIINFO *hostinfo)
Definition: oleobj.c:146
static void load_settings(HTMLDocumentObj *doc)
Definition: oleobj.c:209
void call_docview_84(HTMLDocumentObj *doc)
Definition: oleobj.c:173
@ UNKNOWN_USERMODE
static BOOL silent
Definition: msiexec.c:42
#define V_I4(A)
Definition: oleauto.h:247
const GUID IID_IOleWindow
#define memset(x, y, z)
Definition: compat.h:39
Definition: ftp_var.h:139
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023

◆ OleObject_SetColorScheme()

static HRESULT WINAPI OleObject_SetColorScheme ( IOleObject iface,
LOGPALETTE pLogpal 
)
static

Definition at line 653 of file oleobj.c.

654{
656 FIXME("(%p)->(%p)\n", This, pLogpal);
657 return E_NOTIMPL;
658}

◆ OleObject_SetExtent()

static HRESULT WINAPI OleObject_SetExtent ( IOleObject iface,
DWORD  dwDrawAspect,
SIZEL psizel 
)
static

Definition at line 587 of file oleobj.c.

588{
590 FIXME("(%p)->(%d %p)\n", This, dwDrawAspect, psizel);
591 return E_NOTIMPL;
592}

◆ OleObject_SetHostNames()

static HRESULT WINAPI OleObject_SetHostNames ( IOleObject iface,
LPCOLESTR  szContainerApp,
LPCOLESTR  szContainerObj 
)
static

Definition at line 451 of file oleobj.c.

452{
454 FIXME("(%p)->(%s %s)\n", This, debugstr_w(szContainerApp), debugstr_w(szContainerObj));
455 return E_NOTIMPL;
456}

◆ OleObject_SetMoniker()

static HRESULT WINAPI OleObject_SetMoniker ( IOleObject iface,
DWORD  dwWhichMoniker,
IMoniker pmk 
)
static

Definition at line 478 of file oleobj.c.

479{
481 FIXME("(%p %d %p)->()\n", This, dwWhichMoniker, pmk);
482 return E_NOTIMPL;
483}

◆ OleObject_Unadvise()

static HRESULT WINAPI OleObject_Unadvise ( IOleObject iface,
DWORD  dwConnection 
)
static

Definition at line 623 of file oleobj.c.

624{
626 TRACE("(%p)->(%d)\n", This, dwConnection);
627
628 if(!This->advise_holder)
629 return OLE_E_NOCONNECTION;
630
631 return IOleAdviseHolder_Unadvise(This->advise_holder, dwConnection);
632}
#define OLE_E_NOCONNECTION
Definition: winerror.h:2618

◆ OleObject_Update()

static HRESULT WINAPI OleObject_Update ( IOleObject iface)
static

Definition at line 553 of file oleobj.c.

554{
556 FIXME("(%p)\n", This);
557 return E_NOTIMPL;
558}

◆ on_change_dlcontrol()

static HRESULT on_change_dlcontrol ( HTMLDocument This)
static

Definition at line 834 of file oleobj.c.

835{
836 VARIANT res;
838
840 if(SUCCEEDED(hres))
841 FIXME("unsupported dlcontrol %08x\n", V_I4(&res));
842
843 return S_OK;
844}

Referenced by OleControl_OnAmbientPropertyChange().

◆ set_document_navigation()

void set_document_navigation ( HTMLDocumentObj doc,
BOOL  doc_can_navigate 
)

Definition at line 193 of file oleobj.c.

194{
195 VARIANT var;
196
197 if(!doc->client_cmdtrg)
198 return;
199
200 if(doc_can_navigate) {
201 V_VT(&var) = VT_UNKNOWN;
203 }
204
205 IOleCommandTarget_Exec(doc->client_cmdtrg, &CGID_DocHostCmdPriv, DOCHOST_DOCCANNAVIGATE, 0,
206 doc_can_navigate ? &var : NULL, NULL);
207}
@ VT_UNKNOWN
Definition: compat.h:2308
#define DOCHOST_DOCCANNAVIGATE
Definition: oleobj.c:21
#define V_UNKNOWN(A)
Definition: oleauto.h:281
HTMLDocument basedoc
IOleCommandTarget * client_cmdtrg
HTMLOuterWindow * window
IHTMLWindow2 IHTMLWindow2_iface

Referenced by handle_extern_mime_navigation(), and OleObject_SetClientSite().

◆ TargetContainer_AddRef()

static ULONG WINAPI TargetContainer_AddRef ( ITargetContainer iface)
static

Definition at line 1082 of file oleobj.c.

1083{
1085 return ICustomDoc_AddRef(&This->ICustomDoc_iface);
1086}
static HTMLDocumentObj * impl_from_ITargetContainer(ITargetContainer *iface)
Definition: oleobj.c:1071

◆ TargetContainer_GetFramesContainer()

static HRESULT WINAPI TargetContainer_GetFramesContainer ( ITargetContainer iface,
IOleContainer **  ppContainer 
)
static

Definition at line 1101 of file oleobj.c.

1102{
1104
1105 TRACE("(%p)->(%p)\n", This, ppContainer);
1106
1107 /* NOTE: we should return wrapped interface here */
1108 IOleContainer_AddRef(&This->basedoc.IOleContainer_iface);
1109 *ppContainer = &This->basedoc.IOleContainer_iface;
1110 return S_OK;
1111}

◆ TargetContainer_GetFrameUrl()

static HRESULT WINAPI TargetContainer_GetFrameUrl ( ITargetContainer iface,
LPWSTR ppszFrameSrc 
)
static

Definition at line 1094 of file oleobj.c.

1095{
1097 FIXME("(%p)->(%p)\n", This, ppszFrameSrc);
1098 return E_NOTIMPL;
1099}

◆ TargetContainer_Init()

void TargetContainer_Init ( HTMLDocumentObj This)

Definition at line 1121 of file oleobj.c.

1122{
1123 This->ITargetContainer_iface.lpVtbl = &TargetContainerVtbl;
1124}
static const ITargetContainerVtbl TargetContainerVtbl
Definition: oleobj.c:1113

Referenced by HTMLDocument_Create().

◆ TargetContainer_QueryInterface()

static HRESULT WINAPI TargetContainer_QueryInterface ( ITargetContainer iface,
REFIID  riid,
void **  ppv 
)
static

Definition at line 1076 of file oleobj.c.

1077{
1079 return ICustomDoc_QueryInterface(&This->ICustomDoc_iface, riid, ppv);
1080}

◆ TargetContainer_Release()

static ULONG WINAPI TargetContainer_Release ( ITargetContainer iface)
static

Definition at line 1088 of file oleobj.c.

1089{
1091 return ICustomDoc_Release(&This->ICustomDoc_iface);
1092}

◆ update_hostinfo()

static void update_hostinfo ( HTMLDocumentObj This,
DOCHOSTUIINFO *  hostinfo 
)
static

Definition at line 146 of file oleobj.c.

147{
148 nsIScrollable *scrollable;
149 nsresult nsres;
150
151 if(!This->nscontainer)
152 return;
153
154 nsres = nsIWebBrowser_QueryInterface(This->nscontainer->webbrowser, &IID_nsIScrollable, (void**)&scrollable);
155 if(NS_SUCCEEDED(nsres)) {
156 nsres = nsIScrollable_SetDefaultScrollbarPreferences(scrollable, ScrollOrientation_Y,
157 (hostinfo->dwFlags & DOCHOSTUIFLAG_SCROLL_NO) ? Scrollbar_Never : Scrollbar_Always);
158 if(NS_FAILED(nsres))
159 ERR("Could not set default Y scrollbar prefs: %08x\n", nsres);
160
161 nsres = nsIScrollable_SetDefaultScrollbarPreferences(scrollable, ScrollOrientation_X,
162 hostinfo->dwFlags & DOCHOSTUIFLAG_SCROLL_NO ? Scrollbar_Never : Scrollbar_Auto);
163 if(NS_FAILED(nsres))
164 ERR("Could not set default X scrollbar prefs: %08x\n", nsres);
165
166 nsIScrollable_Release(scrollable);
167 }else {
168 ERR("Could not get nsIScrollable: %08x\n", nsres);
169 }
170}
#define ERR(fmt,...)
Definition: precomp.h:57
@ DOCHOSTUIFLAG_SCROLL_NO
Definition: mshtmhst.idl:119
#define NS_SUCCEEDED(res)
#define NS_FAILED(res)

Referenced by OleObject_SetClientSite().

Variable Documentation

◆ EnumUnknownVtbl

const IEnumUnknownVtbl EnumUnknownVtbl
static
Initial value:
= {
}
static HRESULT WINAPI EnumUnknown_QueryInterface(IEnumUnknown *iface, REFIID riid, void **ppv)
Definition: oleobj.c:33
static HRESULT WINAPI EnumUnknown_Clone(IEnumUnknown *iface, IEnumUnknown **ppenum)
Definition: oleobj.c:102
static HRESULT WINAPI EnumUnknown_Skip(IEnumUnknown *iface, ULONG celt)
Definition: oleobj.c:88
static HRESULT WINAPI EnumUnknown_Reset(IEnumUnknown *iface)
Definition: oleobj.c:95
static ULONG WINAPI EnumUnknown_Release(IEnumUnknown *iface)
Definition: oleobj.c:63
static ULONG WINAPI EnumUnknown_AddRef(IEnumUnknown *iface)
Definition: oleobj.c:53
static HRESULT WINAPI EnumUnknown_Next(IEnumUnknown *iface, ULONG celt, IUnknown **rgelt, ULONG *pceltFetched)
Definition: oleobj.c:76

Definition at line 109 of file oleobj.c.

Referenced by OleContainer_EnumObjects().

◆ ObjectSafetyVtbl

const IObjectSafetyVtbl ObjectSafetyVtbl
static
Initial value:
= {
}
static ULONG WINAPI ObjectSafety_AddRef(IObjectSafety *iface)
Definition: oleobj.c:1141
static HRESULT WINAPI ObjectSafety_QueryInterface(IObjectSafety *iface, REFIID riid, void **ppv)
Definition: oleobj.c:1135
static ULONG WINAPI ObjectSafety_Release(IObjectSafety *iface)
Definition: oleobj.c:1147
static HRESULT WINAPI ObjectSafety_GetInterfaceSafetyOptions(IObjectSafety *iface, REFIID riid, DWORD *pdwSupportedOptions, DWORD *pdwEnabledOptions)
Definition: oleobj.c:1153
static HRESULT WINAPI ObjectSafety_SetInterfaceSafetyOptions(IObjectSafety *iface, REFIID riid, DWORD dwOptionSetMask, DWORD dwEnabledOptions)
Definition: oleobj.c:1161

Definition at line 1175 of file oleobj.c.

Referenced by HTMLDocument_OleObj_Init().

◆ ObjectWithSiteVtbl

const IObjectWithSiteVtbl ObjectWithSiteVtbl
static
Initial value:
= {
}
static ULONG WINAPI ObjectWithSite_Release(IObjectWithSite *iface)
Definition: oleobj.c:974
static ULONG WINAPI ObjectWithSite_AddRef(IObjectWithSite *iface)
Definition: oleobj.c:968
static HRESULT WINAPI ObjectWithSite_GetSite(IObjectWithSite *iface, REFIID riid, PVOID *ppvSite)
Definition: oleobj.c:987
static HRESULT WINAPI ObjectWithSite_QueryInterface(IObjectWithSite *iface, REFIID riid, void **ppv)
Definition: oleobj.c:962
static HRESULT WINAPI ObjectWithSite_SetSite(IObjectWithSite *iface, IUnknown *pUnkSite)
Definition: oleobj.c:980

Definition at line 994 of file oleobj.c.

Referenced by HTMLDocument_OleObj_Init().

◆ OleContainerVtbl

const IOleContainerVtbl OleContainerVtbl
static
Initial value:
= {
}
static ULONG WINAPI OleContainer_Release(IOleContainer *iface)
Definition: oleobj.c:1023
static HRESULT WINAPI OleContainer_EnumObjects(IOleContainer *iface, DWORD grfFlags, IEnumUnknown **ppenum)
Definition: oleobj.c:1037
static HRESULT WINAPI OleContainer_ParseDisplayName(IOleContainer *iface, IBindCtx *pbc, LPOLESTR pszDisplayName, ULONG *pchEaten, IMoniker **ppmkOut)
Definition: oleobj.c:1029
static HRESULT WINAPI OleContainer_LockContainer(IOleContainer *iface, BOOL fLock)
Definition: oleobj.c:1055
static HRESULT WINAPI OleContainer_QueryInterface(IOleContainer *iface, REFIID riid, void **ppv)
Definition: oleobj.c:1011
static ULONG WINAPI OleContainer_AddRef(IOleContainer *iface)
Definition: oleobj.c:1017

Definition at line 1062 of file oleobj.c.

Referenced by HTMLDocument_OleObj_Init().

◆ OleControlVtbl

const IOleControlVtbl OleControlVtbl
static
Initial value:
= {
}
static HRESULT WINAPI OleControl_FreezeEvents(IOleControl *iface, BOOL bFreeze)
Definition: oleobj.c:936
static HRESULT WINAPI OleControl_OnMnemonic(IOleControl *iface, MSG *pMsg)
Definition: oleobj.c:804
static HRESULT WINAPI OleControl_OnAmbientPropertyChange(IOleControl *iface, DISPID dispID)
Definition: oleobj.c:846
static HRESULT WINAPI OleControl_QueryInterface(IOleControl *iface, REFIID riid, void **ppv)
Definition: oleobj.c:779
static ULONG WINAPI OleControl_Release(IOleControl *iface)
Definition: oleobj.c:791
static ULONG WINAPI OleControl_AddRef(IOleControl *iface)
Definition: oleobj.c:785
static HRESULT WINAPI OleControl_GetControlInfo(IOleControl *iface, CONTROLINFO *pCI)
Definition: oleobj.c:797

Definition at line 943 of file oleobj.c.

Referenced by HTMLDocument_OleObj_Init().

◆ OleDocumentVtbl

const IOleDocumentVtbl OleDocumentVtbl
static
Initial value:
= {
}
static HRESULT WINAPI OleDocument_EnumViews(IOleDocument *iface, IEnumOleDocumentViews **ppEnum, IOleDocumentView **ppView)
Definition: oleobj.c:753
static HRESULT WINAPI OleDocument_QueryInterface(IOleDocument *iface, REFIID riid, void **ppv)
Definition: oleobj.c:696
static ULONG WINAPI OleDocument_Release(IOleDocument *iface)
Definition: oleobj.c:708
static ULONG WINAPI OleDocument_AddRef(IOleDocument *iface)
Definition: oleobj.c:702
static HRESULT WINAPI OleDocument_GetDocMiscStatus(IOleDocument *iface, DWORD *pdwStatus)
Definition: oleobj.c:746
static HRESULT WINAPI OleDocument_CreateView(IOleDocument *iface, IOleInPlaceSite *pIPSite, IStream *pstm, DWORD dwReserved, IOleDocumentView **ppView)
Definition: oleobj.c:714

Definition at line 761 of file oleobj.c.

Referenced by HTMLDocument_OleObj_Init().

◆ OleObjectVtbl

const IOleObjectVtbl OleObjectVtbl
static
Initial value:
= {
}
static HRESULT WINAPI OleObject_GetMiscStatus(IOleObject *iface, DWORD dwAspect, DWORD *pdwStatus)
Definition: oleobj.c:646
static HRESULT WINAPI OleObject_IsUpToDate(IOleObject *iface)
Definition: oleobj.c:560
static HRESULT WINAPI OleObject_Advise(IOleObject *iface, IAdviseSink *pAdvSink, DWORD *pdwConnection)
Definition: oleobj.c:601
static HRESULT WINAPI OleObject_QueryInterface(IOleObject *iface, REFIID riid, void **ppv)
Definition: oleobj.c:128
static HRESULT WINAPI OleObject_EnumAdvise(IOleObject *iface, IEnumSTATDATA **ppenumAdvise)
Definition: oleobj.c:634
static ULONG WINAPI OleObject_AddRef(IOleObject *iface)
Definition: oleobj.c:134
static HRESULT WINAPI OleObject_GetMoniker(IOleObject *iface, DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk)
Definition: oleobj.c:485
static HRESULT WINAPI OleObject_GetClipboardData(IOleObject *iface, DWORD dwReserved, IDataObject **ppDataObject)
Definition: oleobj.c:500
static HRESULT WINAPI OleObject_GetExtent(IOleObject *iface, DWORD dwDrawAspect, SIZEL *psizel)
Definition: oleobj.c:594
static HRESULT WINAPI OleObject_GetUserType(IOleObject *iface, DWORD dwFormOfType, LPOLESTR *pszUserType)
Definition: oleobj.c:580
static ULONG WINAPI OleObject_Release(IOleObject *iface)
Definition: oleobj.c:140
static HRESULT WINAPI OleObject_SetHostNames(IOleObject *iface, LPCOLESTR szContainerApp, LPCOLESTR szContainerObj)
Definition: oleobj.c:451
static HRESULT WINAPI OleObject_GetUserClassID(IOleObject *iface, CLSID *pClsid)
Definition: oleobj.c:567
static HRESULT WINAPI OleObject_DoVerb(IOleObject *iface, LONG iVerb, LPMSG lpmsg, IOleClientSite *pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect)
Definition: oleobj.c:507
static HRESULT WINAPI OleObject_SetClientSite(IOleObject *iface, IOleClientSite *pClientSite)
Definition: oleobj.c:233
static HRESULT WINAPI OleObject_SetMoniker(IOleObject *iface, DWORD dwWhichMoniker, IMoniker *pmk)
Definition: oleobj.c:478
static HRESULT WINAPI OleObject_EnumVerbs(IOleObject *iface, IEnumOLEVERB **ppEnumOleVerb)
Definition: oleobj.c:546
static HRESULT WINAPI OleObject_Update(IOleObject *iface)
Definition: oleobj.c:553
static HRESULT WINAPI OleObject_SetExtent(IOleObject *iface, DWORD dwDrawAspect, SIZEL *psizel)
Definition: oleobj.c:587
static HRESULT WINAPI OleObject_SetColorScheme(IOleObject *iface, LOGPALETTE *pLogpal)
Definition: oleobj.c:653
static HRESULT WINAPI OleObject_Unadvise(IOleObject *iface, DWORD dwConnection)
Definition: oleobj.c:623
static HRESULT WINAPI OleObject_Close(IOleObject *iface, DWORD dwSaveOption)
Definition: oleobj.c:458
static HRESULT WINAPI OleObject_GetClientSite(IOleObject *iface, IOleClientSite **ppClientSite)
Definition: oleobj.c:435
static HRESULT WINAPI OleObject_InitFromData(IOleObject *iface, IDataObject *pDataObject, BOOL fCreation, DWORD dwReserved)
Definition: oleobj.c:492

Definition at line 660 of file oleobj.c.

Referenced by HTMLDocument_OleObj_Init().

◆ TargetContainerVtbl

const ITargetContainerVtbl TargetContainerVtbl
static
Initial value:
= {
}
static ULONG WINAPI TargetContainer_AddRef(ITargetContainer *iface)
Definition: oleobj.c:1082
static ULONG WINAPI TargetContainer_Release(ITargetContainer *iface)
Definition: oleobj.c:1088
static HRESULT WINAPI TargetContainer_QueryInterface(ITargetContainer *iface, REFIID riid, void **ppv)
Definition: oleobj.c:1076
static HRESULT WINAPI TargetContainer_GetFrameUrl(ITargetContainer *iface, LPWSTR *ppszFrameSrc)
Definition: oleobj.c:1094
static HRESULT WINAPI TargetContainer_GetFramesContainer(ITargetContainer *iface, IOleContainer **ppContainer)
Definition: oleobj.c:1101

Definition at line 1113 of file oleobj.c.

Referenced by TargetContainer_Init().