Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
cc784e27
Commit
cc784e27
authored
May 18, 2010
by
Ilya Shpigor
Committed by
Alexandre Julliard
May 19, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
shdocvw: Added IDataObject stub implementation.
parent
dcbc22b9
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
121 additions
and
0 deletions
+121
-0
shdocvw.h
dlls/shdocvw/shdocvw.h
+3
-0
view.c
dlls/shdocvw/view.c
+114
-0
webbrowser.c
dlls/shdocvw/webbrowser.c
+4
-0
No files found.
dlls/shdocvw/shdocvw.h
View file @
cc784e27
...
...
@@ -127,6 +127,7 @@ struct WebBrowser {
const
IOleCommandTargetVtbl
*
lpOleCommandTargetVtbl
;
const
IHlinkFrameVtbl
*
lpHlinkFrameVtbl
;
const
IServiceProviderVtbl
*
lpServiceProviderVtbl
;
const
IDataObjectVtbl
*
lpDataObjectVtbl
;
LONG
ref
;
...
...
@@ -184,6 +185,7 @@ struct InternetExplorer {
#define ACTIVEOBJ(x) ((IOleInPlaceActiveObject*) &(x)->lpOleInPlaceActiveObjectVtbl)
#define OLECMD(x) ((IOleCommandTarget*) &(x)->lpOleCommandTargetVtbl)
#define HLINKFRAME(x) ((IHlinkFrame*) &(x)->lpHlinkFrameVtbl)
#define DATAOBJECT(x) ((IDataObject*) &(x)->lpDataObjectVtbl)
#define CLIENTSITE(x) ((IOleClientSite*) &(x)->lpOleClientSiteVtbl)
#define INPLACESITE(x) ((IOleInPlaceSite*) &(x)->lpOleInPlaceSiteVtbl)
...
...
@@ -198,6 +200,7 @@ struct InternetExplorer {
void
WebBrowser_OleObject_Init
(
WebBrowser
*
);
void
WebBrowser_ViewObject_Init
(
WebBrowser
*
);
void
WebBrowser_DataObject_Init
(
WebBrowser
*
);
void
WebBrowser_Persist_Init
(
WebBrowser
*
);
void
WebBrowser_ClassInfo_Init
(
WebBrowser
*
);
void
WebBrowser_HlinkFrame_Init
(
WebBrowser
*
);
...
...
dlls/shdocvw/view.c
View file @
cc784e27
/*
* Copyright 2005 Jacek Caban
* Copyright 2010 Ilya Shpigor
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
...
...
@@ -21,6 +22,10 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
shdocvw
);
/**********************************************************************
* Implement the IViewObject interface
*/
#define VIEWOBJ_THIS(iface) DEFINE_THIS(WebBrowser, ViewObject, iface)
static
HRESULT
WINAPI
ViewObject_QueryInterface
(
IViewObject2
*
iface
,
REFIID
riid
,
void
**
ppv
)
...
...
@@ -122,3 +127,112 @@ void WebBrowser_ViewObject_Init(WebBrowser *This)
{
This
->
lpViewObjectVtbl
=
&
ViewObjectVtbl
;
}
/**********************************************************************
* Implement the IDataObject interface
*/
#define DATAOBJ_THIS(iface) DEFINE_THIS(WebBrowser, DataObject, iface)
static
HRESULT
WINAPI
DataObject_QueryInterface
(
LPDATAOBJECT
iface
,
REFIID
riid
,
LPVOID
*
ppvObj
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
return
IWebBrowser2_QueryInterface
(
WEBBROWSER
(
This
),
riid
,
ppvObj
);
}
static
ULONG
WINAPI
DataObject_AddRef
(
LPDATAOBJECT
iface
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
return
IWebBrowser2_AddRef
(
WEBBROWSER
(
This
));
}
static
ULONG
WINAPI
DataObject_Release
(
LPDATAOBJECT
iface
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
return
IWebBrowser2_Release
(
WEBBROWSER
(
This
));
}
static
HRESULT
WINAPI
DataObject_GetData
(
LPDATAOBJECT
iface
,
LPFORMATETC
pformatetcIn
,
STGMEDIUM
*
pmedium
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_GetDataHere
(
LPDATAOBJECT
iface
,
LPFORMATETC
pformatetc
,
STGMEDIUM
*
pmedium
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_QueryGetData
(
LPDATAOBJECT
iface
,
LPFORMATETC
pformatetc
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_GetCanonicalFormatEtc
(
LPDATAOBJECT
iface
,
LPFORMATETC
pformatectIn
,
LPFORMATETC
pformatetcOut
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_SetData
(
LPDATAOBJECT
iface
,
LPFORMATETC
pformatetc
,
STGMEDIUM
*
pmedium
,
BOOL
fRelease
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_EnumFormatEtc
(
LPDATAOBJECT
iface
,
DWORD
dwDirection
,
IEnumFORMATETC
**
ppenumFormatEtc
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_DAdvise
(
LPDATAOBJECT
iface
,
FORMATETC
*
pformatetc
,
DWORD
advf
,
IAdviseSink
*
pAdvSink
,
DWORD
*
pdwConnection
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_DUnadvise
(
LPDATAOBJECT
iface
,
DWORD
dwConnection
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
DataObject_EnumDAdvise
(
LPDATAOBJECT
iface
,
IEnumSTATDATA
**
ppenumAdvise
)
{
WebBrowser
*
This
=
DATAOBJ_THIS
(
iface
);
FIXME
(
"(%p)->()
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
const
IDataObjectVtbl
DataObjectVtbl
=
{
DataObject_QueryInterface
,
DataObject_AddRef
,
DataObject_Release
,
DataObject_GetData
,
DataObject_GetDataHere
,
DataObject_QueryGetData
,
DataObject_GetCanonicalFormatEtc
,
DataObject_SetData
,
DataObject_EnumFormatEtc
,
DataObject_DAdvise
,
DataObject_DUnadvise
,
DataObject_EnumDAdvise
};
#undef DATAOBJ_THIS
void
WebBrowser_DataObject_Init
(
WebBrowser
*
This
)
{
This
->
lpDataObjectVtbl
=
&
DataObjectVtbl
;
}
dlls/shdocvw/webbrowser.c
View file @
cc784e27
...
...
@@ -105,6 +105,9 @@ static HRESULT WINAPI WebBrowser_QueryInterface(IWebBrowser2 *iface, REFIID riid
}
else
if
(
IsEqualGUID
(
&
IID_IServiceProvider
,
riid
))
{
*
ppv
=
SERVPROV
(
This
);
TRACE
(
"(%p)->(IID_IServiceProvider %p)
\n
"
,
This
,
ppv
);
}
else
if
(
IsEqualGUID
(
&
IID_IDataObject
,
riid
))
{
*
ppv
=
DATAOBJECT
(
This
);
TRACE
(
"(%p)->(IID_IDataObject %p)
\n
"
,
This
,
ppv
);
}
else
if
(
IsEqualGUID
(
&
IID_IQuickActivate
,
riid
))
{
TRACE
(
"(%p)->(IID_IQuickActivate %p) returning NULL
\n
"
,
This
,
ppv
);
return
E_NOINTERFACE
;
...
...
@@ -1132,6 +1135,7 @@ static HRESULT WebBrowser_Create(INT version, IUnknown *pOuter, REFIID riid, voi
WebBrowser_OleObject_Init
(
ret
);
WebBrowser_ViewObject_Init
(
ret
);
WebBrowser_DataObject_Init
(
ret
);
WebBrowser_Persist_Init
(
ret
);
WebBrowser_ClassInfo_Init
(
ret
);
WebBrowser_HlinkFrame_Init
(
ret
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment