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
dd9813b5
Commit
dd9813b5
authored
Apr 29, 2015
by
Nikolay Sivov
Committed by
Alexandre Julliard
Apr 30, 2015
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
shell32: Added a stub implementation of IShellFolderViewDual3.
parent
c4f4edcf
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
315 additions
and
5 deletions
+315
-5
shlview.c
dlls/shell32/shlview.c
+263
-0
shelldispatch.c
dlls/shell32/tests/shelldispatch.c
+51
-4
shlview.c
dlls/shell32/tests/shlview.c
+1
-1
No files found.
dlls/shell32/shlview.c
View file @
dd9813b5
This diff is collapsed.
Click to expand it.
dlls/shell32/tests/shelldispatch.c
View file @
dd9813b5
...
@@ -364,11 +364,14 @@ static void test_service(void)
...
@@ -364,11 +364,14 @@ static void test_service(void)
IShellDispatch2_Release
(
sd
);
IShellDispatch2_Release
(
sd
);
}
}
static
void
test_ShellFolderView
(
void
)
static
void
test_ShellFolderView
Dual
(
void
)
{
{
IShellFolderViewDual
*
viewdual
;
IShellFolderViewDual
*
viewdual
;
IShellFolder
*
desktop
;
IShellFolder
*
desktop
,
*
tmpdir
;
IShellView
*
view
;
IShellView
*
view
,
*
view2
;
IDispatch
*
disp
,
*
disp2
;
WCHAR
pathW
[
MAX_PATH
];
LPITEMIDLIST
pidl
;
HRESULT
hr
;
HRESULT
hr
;
/* IShellFolderViewDual is not an IShellView extension */
/* IShellFolderViewDual is not an IShellView extension */
...
@@ -381,7 +384,51 @@ static void test_ShellFolderView(void)
...
@@ -381,7 +384,51 @@ static void test_ShellFolderView(void)
hr
=
IShellView_QueryInterface
(
view
,
&
IID_IShellFolderViewDual
,
(
void
**
)
&
viewdual
);
hr
=
IShellView_QueryInterface
(
view
,
&
IID_IShellFolderViewDual
,
(
void
**
)
&
viewdual
);
ok
(
hr
==
E_NOINTERFACE
,
"got 0x%08x
\n
"
,
hr
);
ok
(
hr
==
E_NOINTERFACE
,
"got 0x%08x
\n
"
,
hr
);
hr
=
IShellView_GetItemObject
(
view
,
SVGIO_BACKGROUND
,
&
IID_IDispatch
,
(
void
**
)
&
disp
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
hr
=
IShellView_GetItemObject
(
view
,
SVGIO_BACKGROUND
,
&
IID_IDispatch
,
(
void
**
)
&
disp2
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
ok
(
disp2
==
disp
,
"got %p, %p
\n
"
,
disp2
,
disp
);
IDispatch_Release
(
disp2
);
hr
=
IDispatch_QueryInterface
(
disp
,
&
IID_IShellFolderViewDual
,
(
void
**
)
&
viewdual
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
ok
(
disp
==
(
IDispatch
*
)
viewdual
,
"got %p, expected %p
\n
"
,
viewdual
,
disp
);
hr
=
IShellFolderViewDual_QueryInterface
(
viewdual
,
&
IID_IShellView
,
(
void
**
)
&
view2
);
ok
(
hr
==
E_NOINTERFACE
,
"got 0x%08x
\n
"
,
hr
);
IShellFolderViewDual_Release
(
viewdual
);
IDispatch_Release
(
disp
);
disp
=
(
void
*
)
0xdeadbeef
;
hr
=
IShellView_GetItemObject
(
view
,
SVGIO_BACKGROUND
,
&
IID_IShellFolderViewDual
,
(
void
**
)
&
disp
);
ok
(
hr
==
E_NOINTERFACE
,
"got 0x%08x
\n
"
,
hr
);
ok
(
disp
==
NULL
,
"got %p
\n
"
,
disp
);
IShellView_Release
(
view
);
/* Try with some other folder, that's not a desktop */
GetTempPathW
(
sizeof
(
pathW
)
/
sizeof
(
pathW
[
0
]),
pathW
);
hr
=
IShellFolder_ParseDisplayName
(
desktop
,
NULL
,
NULL
,
pathW
,
NULL
,
&
pidl
,
NULL
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
hr
=
IShellFolder_BindToObject
(
desktop
,
pidl
,
NULL
,
&
IID_IShellFolder
,
(
void
**
)
&
tmpdir
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
CoTaskMemFree
(
pidl
);
hr
=
IShellFolder_CreateViewObject
(
desktop
,
NULL
,
&
IID_IShellView
,
(
void
**
)
&
view
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
hr
=
IShellView_QueryInterface
(
view
,
&
IID_IShellFolderViewDual
,
(
void
**
)
&
viewdual
);
ok
(
hr
==
E_NOINTERFACE
,
"got 0x%08x
\n
"
,
hr
);
hr
=
IShellView_GetItemObject
(
view
,
SVGIO_BACKGROUND
,
&
IID_IDispatch
,
(
void
**
)
&
disp
);
ok
(
hr
==
S_OK
,
"got 0x%08x
\n
"
,
hr
);
IDispatch_Release
(
disp
);
IShellView_Release
(
view
);
IShellView_Release
(
view
);
IShellFolder_Release
(
tmpdir
);
IShellFolder_Release
(
desktop
);
IShellFolder_Release
(
desktop
);
}
}
...
@@ -505,7 +552,7 @@ START_TEST(shelldispatch)
...
@@ -505,7 +552,7 @@ START_TEST(shelldispatch)
init_function_pointers
();
init_function_pointers
();
test_namespace
();
test_namespace
();
test_service
();
test_service
();
test_ShellFolderView
();
test_ShellFolderView
Dual
();
test_ShellWindows
();
test_ShellWindows
();
CoUninitialize
();
CoUninitialize
();
...
...
dlls/shell32/tests/shlview.c
View file @
dd9813b5
...
@@ -707,7 +707,7 @@ static void test_GetItemObject(void)
...
@@ -707,7 +707,7 @@ static void test_GetItemObject(void)
unk
=
NULL
;
unk
=
NULL
;
hr
=
IShellView_GetItemObject
(
view
,
SVGIO_BACKGROUND
,
&
IID_IDispatch
,
(
void
**
)
&
unk
);
hr
=
IShellView_GetItemObject
(
view
,
SVGIO_BACKGROUND
,
&
IID_IDispatch
,
(
void
**
)
&
unk
);
todo_wine
ok
(
hr
==
S_OK
||
broken
(
hr
==
E_NOTIMPL
)
/* NT4 */
,
"got (0x%08x)
\n
"
,
hr
);
ok
(
hr
==
S_OK
||
broken
(
hr
==
E_NOTIMPL
)
/* NT4 */
,
"got (0x%08x)
\n
"
,
hr
);
if
(
unk
)
IUnknown_Release
(
unk
);
if
(
unk
)
IUnknown_Release
(
unk
);
unk
=
NULL
;
unk
=
NULL
;
...
...
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