Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
db7a3a35
Commit
db7a3a35
authored
Jan 17, 2006
by
Michael Jung
Committed by
Alexandre Julliard
Jan 17, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
shell32: Support for CLSID_ShellFSFolder in unixfs.
parent
624efed7
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
2 deletions
+16
-2
shell32_main.h
dlls/shell32/shell32_main.h
+1
-0
shfldr_unixfs.c
dlls/shell32/shfldr_unixfs.c
+15
-2
No files found.
dlls/shell32/shell32_main.h
View file @
db7a3a35
...
@@ -96,6 +96,7 @@ HRESULT WINAPI UnixFolder_Constructor(IUnknown * pUnkOuter, REFIID riid, LPVOID
...
@@ -96,6 +96,7 @@ HRESULT WINAPI UnixFolder_Constructor(IUnknown * pUnkOuter, REFIID riid, LPVOID
HRESULT
WINAPI
UnixDosFolder_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
HRESULT
WINAPI
UnixDosFolder_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
HRESULT
WINAPI
FolderShortcut_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
HRESULT
WINAPI
FolderShortcut_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
HRESULT
WINAPI
MyDocuments_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
HRESULT
WINAPI
MyDocuments_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
HRESULT
WINAPI
ShellFSFolder_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
);
extern
HRESULT
CPanel_GetIconLocationW
(
LPITEMIDLIST
,
LPWSTR
,
UINT
,
int
*
);
extern
HRESULT
CPanel_GetIconLocationW
(
LPITEMIDLIST
,
LPWSTR
,
UINT
,
int
*
);
HRESULT
WINAPI
CPanel_ExtractIconA
(
LPITEMIDLIST
pidl
,
LPCSTR
pszFile
,
UINT
nIconIndex
,
HICON
*
phiconLarge
,
HICON
*
phiconSmall
,
UINT
nIconSize
);
HRESULT
WINAPI
CPanel_ExtractIconA
(
LPITEMIDLIST
pidl
,
LPCSTR
pszFile
,
UINT
nIconIndex
,
HICON
*
phiconLarge
,
HICON
*
phiconSmall
,
UINT
nIconSize
);
HRESULT
WINAPI
CPanel_ExtractIconW
(
LPITEMIDLIST
pidl
,
LPCWSTR
pszFile
,
UINT
nIconIndex
,
HICON
*
phiconLarge
,
HICON
*
phiconSmall
,
UINT
nIconSize
);
HRESULT
WINAPI
CPanel_ExtractIconW
(
LPITEMIDLIST
pidl
,
LPCWSTR
pszFile
,
UINT
nIconIndex
,
HICON
*
phiconLarge
,
HICON
*
phiconSmall
,
UINT
nIconSize
);
...
...
dlls/shell32/shfldr_unixfs.c
View file @
db7a3a35
...
@@ -1494,13 +1494,21 @@ static HRESULT WINAPI UnixFolder_IPersistFolder3_Initialize(IPersistFolder3* ifa
...
@@ -1494,13 +1494,21 @@ static HRESULT WINAPI UnixFolder_IPersistFolder3_Initialize(IPersistFolder3* ifa
/* Find the UnixFolderClass root */
/* Find the UnixFolderClass root */
while
(
current
->
mkid
.
cb
)
{
while
(
current
->
mkid
.
cb
)
{
if
(
_ILIsSpecialFolder
(
current
)
&&
IsEqualIID
(
This
->
m_pCLSID
,
_ILGetGUIDPointer
(
current
)))
if
((
_ILIsDrive
(
current
)
&&
IsEqualCLSID
(
This
->
m_pCLSID
,
&
CLSID_ShellFSFolder
))
||
(
_ILIsSpecialFolder
(
current
)
&&
IsEqualCLSID
(
This
->
m_pCLSID
,
_ILGetGUIDPointer
(
current
))))
{
break
;
break
;
}
current
=
ILGetNext
(
current
);
current
=
ILGetNext
(
current
);
}
}
if
(
current
&&
current
->
mkid
.
cb
)
{
if
(
current
&&
current
->
mkid
.
cb
)
{
if
(
IsEqualIID
(
&
CLSID_MyDocuments
,
_ILGetGUIDPointer
(
current
)))
{
if
(
_ILIsDrive
(
current
))
{
WCHAR
wszDrive
[
4
]
=
{
'?'
,
':'
,
'\\'
,
0
};
wszDrive
[
0
]
=
(
WCHAR
)
*
_ILGetTextPointer
(
current
);
if
(
!
UNIXFS_get_unix_path
(
wszDrive
,
szBasePath
))
return
E_FAIL
;
}
else
if
(
IsEqualIID
(
&
CLSID_MyDocuments
,
_ILGetGUIDPointer
(
current
)))
{
WCHAR
wszMyDocumentsPath
[
MAX_PATH
];
WCHAR
wszMyDocumentsPath
[
MAX_PATH
];
if
(
!
SHGetSpecialFolderPathW
(
0
,
wszMyDocumentsPath
,
CSIDL_PERSONAL
,
FALSE
))
if
(
!
SHGetSpecialFolderPathW
(
0
,
wszMyDocumentsPath
,
CSIDL_PERSONAL
,
FALSE
))
return
E_FAIL
;
return
E_FAIL
;
...
@@ -2122,6 +2130,11 @@ HRESULT WINAPI MyDocuments_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID
...
@@ -2122,6 +2130,11 @@ HRESULT WINAPI MyDocuments_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID
return
CreateUnixFolder
(
pUnkOuter
,
riid
,
ppv
,
&
CLSID_MyDocuments
);
return
CreateUnixFolder
(
pUnkOuter
,
riid
,
ppv
,
&
CLSID_MyDocuments
);
}
}
HRESULT
WINAPI
ShellFSFolder_Constructor
(
IUnknown
*
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppv
)
{
TRACE
(
"(pUnkOuter=%p, riid=%p, ppv=%p)
\n
"
,
pUnkOuter
,
riid
,
ppv
);
return
CreateUnixFolder
(
pUnkOuter
,
riid
,
ppv
,
&
CLSID_ShellFSFolder
);
}
/******************************************************************************
/******************************************************************************
* UnixSubFolderIterator
* UnixSubFolderIterator
*
*
...
...
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