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
a2ac4d23
Commit
a2ac4d23
authored
Jan 05, 2009
by
Jacek Caban
Committed by
Alexandre Julliard
Jan 06, 2009
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mshtml: Added IDispatchEx support to HTMLLocation object.
parent
cd31fd39
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
20 additions
and
3 deletions
+20
-3
dispex.c
dlls/mshtml/dispex.c
+1
-0
htmllocation.c
dlls/mshtml/htmllocation.c
+16
-3
mshtml_private.h
dlls/mshtml/mshtml_private.h
+2
-0
dom.c
dlls/mshtml/tests/dom.c
+1
-0
No files found.
dlls/mshtml/dispex.c
View file @
a2ac4d23
...
@@ -106,6 +106,7 @@ static REFIID tid_ids[] = {
...
@@ -106,6 +106,7 @@ static REFIID tid_ids[] = {
&
IID_IHTMLGenericElement
,
&
IID_IHTMLGenericElement
,
&
IID_IHTMLImgElement
,
&
IID_IHTMLImgElement
,
&
IID_IHTMLInputElement
,
&
IID_IHTMLInputElement
,
&
IID_IHTMLLocation
,
&
IID_IHTMLOptionElement
,
&
IID_IHTMLOptionElement
,
&
IID_IHTMLSelectElement
,
&
IID_IHTMLSelectElement
,
&
IID_IHTMLStyle
,
&
IID_IHTMLStyle
,
...
...
dlls/mshtml/htmllocation.c
View file @
a2ac4d23
...
@@ -43,12 +43,11 @@ static HRESULT WINAPI HTMLLocation_QueryInterface(IHTMLLocation *iface, REFIID r
...
@@ -43,12 +43,11 @@ static HRESULT WINAPI HTMLLocation_QueryInterface(IHTMLLocation *iface, REFIID r
if
(
IsEqualGUID
(
&
IID_IUnknown
,
riid
))
{
if
(
IsEqualGUID
(
&
IID_IUnknown
,
riid
))
{
TRACE
(
"(%p)->(IID_IUnknown %p)
\n
"
,
This
,
ppv
);
TRACE
(
"(%p)->(IID_IUnknown %p)
\n
"
,
This
,
ppv
);
*
ppv
=
HTMLLOCATION
(
This
);
*
ppv
=
HTMLLOCATION
(
This
);
}
else
if
(
IsEqualGUID
(
&
IID_IDispatch
,
riid
))
{
TRACE
(
"(%p)->(IID_IDispatch %p)
\n
"
,
This
,
ppv
);
*
ppv
=
HTMLLOCATION
(
This
);
}
else
if
(
IsEqualGUID
(
&
IID_IHTMLLocation
,
riid
))
{
}
else
if
(
IsEqualGUID
(
&
IID_IHTMLLocation
,
riid
))
{
TRACE
(
"(%p)->(IID_IHTMLLocation %p)
\n
"
,
This
,
ppv
);
TRACE
(
"(%p)->(IID_IHTMLLocation %p)
\n
"
,
This
,
ppv
);
*
ppv
=
HTMLLOCATION
(
This
);
*
ppv
=
HTMLLOCATION
(
This
);
}
else
if
(
dispex_query_interface
(
&
This
->
dispex
,
riid
,
ppv
))
{
return
*
ppv
?
S_OK
:
E_NOINTERFACE
;
}
}
if
(
*
ppv
)
{
if
(
*
ppv
)
{
...
@@ -293,6 +292,18 @@ static const IHTMLLocationVtbl HTMLLocationVtbl = {
...
@@ -293,6 +292,18 @@ static const IHTMLLocationVtbl HTMLLocationVtbl = {
HTMLLocation_toString
HTMLLocation_toString
};
};
static
const
tid_t
HTMLLocation_iface_tids
[]
=
{
IHTMLLocation_tid
,
0
};
static
dispex_static_data_t
HTMLLocation_dispex
=
{
NULL
,
IHTMLLocation_tid
,
NULL
,
HTMLLocation_iface_tids
};
HTMLLocation
*
HTMLLocation_Create
(
HTMLDocument
*
doc
)
HTMLLocation
*
HTMLLocation_Create
(
HTMLDocument
*
doc
)
{
{
HTMLLocation
*
ret
=
heap_alloc
(
sizeof
(
*
ret
));
HTMLLocation
*
ret
=
heap_alloc
(
sizeof
(
*
ret
));
...
@@ -301,5 +312,7 @@ HTMLLocation *HTMLLocation_Create(HTMLDocument *doc)
...
@@ -301,5 +312,7 @@ HTMLLocation *HTMLLocation_Create(HTMLDocument *doc)
ret
->
ref
=
1
;
ret
->
ref
=
1
;
ret
->
doc
=
doc
;
ret
->
doc
=
doc
;
init_dispex
(
&
ret
->
dispex
,
(
IUnknown
*
)
HTMLLOCATION
(
ret
),
&
HTMLLocation_dispex
);
return
ret
;
return
ret
;
}
}
dlls/mshtml/mshtml_private.h
View file @
a2ac4d23
...
@@ -102,6 +102,7 @@ typedef enum {
...
@@ -102,6 +102,7 @@ typedef enum {
IHTMLGenericElement_tid
,
IHTMLGenericElement_tid
,
IHTMLImgElement_tid
,
IHTMLImgElement_tid
,
IHTMLInputElement_tid
,
IHTMLInputElement_tid
,
IHTMLLocation_tid
,
IHTMLOptionElement_tid
,
IHTMLOptionElement_tid
,
IHTMLSelectElement_tid
,
IHTMLSelectElement_tid
,
IHTMLStyle_tid
,
IHTMLStyle_tid
,
...
@@ -199,6 +200,7 @@ struct ConnectionPoint {
...
@@ -199,6 +200,7 @@ struct ConnectionPoint {
};
};
typedef
struct
{
typedef
struct
{
DispatchEx
dispex
;
const
IHTMLLocationVtbl
*
lpHTMLLocationVtbl
;
const
IHTMLLocationVtbl
*
lpHTMLLocationVtbl
;
LONG
ref
;
LONG
ref
;
...
...
dlls/mshtml/tests/dom.c
View file @
a2ac4d23
...
@@ -2207,6 +2207,7 @@ static void test_location(IHTMLDocument2 *doc)
...
@@ -2207,6 +2207,7 @@ static void test_location(IHTMLDocument2 *doc)
IHTMLLocation_Release
(
location2
);
IHTMLLocation_Release
(
location2
);
test_ifaces
((
IUnknown
*
)
location
,
location_iids
);
test_ifaces
((
IUnknown
*
)
location
,
location_iids
);
test_disp
((
IUnknown
*
)
location
,
&
IID_IHTMLLocation
);
ref
=
IHTMLLocation_Release
(
location
);
ref
=
IHTMLLocation_Release
(
location
);
ok
(
!
ref
,
"location chould be destroyed here
\n
"
);
ok
(
!
ref
,
"location chould be destroyed here
\n
"
);
...
...
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