[SHELL]: Move shell dlls to where they should belong.
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Fri, 6 Mar 2015 01:26:58 +0000 (01:26 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Fri, 6 Mar 2015 01:26:58 +0000 (01:26 +0000)
CORE-9111

svn path=/trunk/; revision=66582

453 files changed:
reactos/base/shell/CMakeLists.txt
reactos/base/shell/shell32/CDefView.cpp [moved from reactos/dll/win32/shell32/CDefView.cpp with 100% similarity]
reactos/base/shell/shell32/CDefaultContextMenu.cpp [moved from reactos/dll/win32/shell32/CDefaultContextMenu.cpp with 100% similarity]
reactos/base/shell/shell32/CDesktopBrowser.cpp [moved from reactos/dll/win32/shell32/CDesktopBrowser.cpp with 100% similarity]
reactos/base/shell/shell32/CDropTargetHelper.cpp [moved from reactos/dll/win32/shell32/CDropTargetHelper.cpp with 100% similarity]
reactos/base/shell/shell32/CDropTargetHelper.h [moved from reactos/dll/win32/shell32/CDropTargetHelper.h with 100% similarity]
reactos/base/shell/shell32/CEnumIDListBase.cpp [moved from reactos/dll/win32/shell32/CEnumIDListBase.cpp with 100% similarity]
reactos/base/shell/shell32/CEnumIDListBase.h [moved from reactos/dll/win32/shell32/CEnumIDListBase.h with 100% similarity]
reactos/base/shell/shell32/CExtractIcon.cpp [moved from reactos/dll/win32/shell32/CExtractIcon.cpp with 100% similarity]
reactos/base/shell/shell32/CFileSysBindData.cpp [moved from reactos/dll/win32/shell32/CFileSysBindData.cpp with 100% similarity]
reactos/base/shell/shell32/CIDLDataObj.cpp [moved from reactos/dll/win32/shell32/CIDLDataObj.cpp with 100% similarity]
reactos/base/shell/shell32/CMakeLists.txt [moved from reactos/dll/win32/shell32/CMakeLists.txt with 100% similarity]
reactos/base/shell/shell32/CMenuBand.cpp [moved from reactos/dll/win32/shell32/CMenuBand.cpp with 100% similarity]
reactos/base/shell/shell32/CMenuBand.h [moved from reactos/dll/win32/shell32/CMenuBand.h with 100% similarity]
reactos/base/shell/shell32/CMenuDeskBar.cpp [moved from reactos/dll/win32/shell32/CMenuDeskBar.cpp with 100% similarity]
reactos/base/shell/shell32/CMenuDeskBar.h [moved from reactos/dll/win32/shell32/CMenuDeskBar.h with 100% similarity]
reactos/base/shell/shell32/CNewMenu.cpp [moved from reactos/dll/win32/shell32/CNewMenu.cpp with 100% similarity]
reactos/base/shell/shell32/CNewMenu.h [moved from reactos/dll/win32/shell32/CNewMenu.h with 100% similarity]
reactos/base/shell/shell32/COpenWithMenu.cpp [moved from reactos/dll/win32/shell32/COpenWithMenu.cpp with 100% similarity]
reactos/base/shell/shell32/COpenWithMenu.h [moved from reactos/dll/win32/shell32/COpenWithMenu.h with 100% similarity]
reactos/base/shell/shell32/CShellItem.cpp [moved from reactos/dll/win32/shell32/CShellItem.cpp with 100% similarity]
reactos/base/shell/shell32/CShellItem.h [moved from reactos/dll/win32/shell32/CShellItem.h with 100% similarity]
reactos/base/shell/shell32/CShellLink.cpp [moved from reactos/dll/win32/shell32/CShellLink.cpp with 100% similarity]
reactos/base/shell/shell32/CShellLink.h [moved from reactos/dll/win32/shell32/CShellLink.h with 100% similarity]
reactos/base/shell/shell32/CStartMenu.cpp [moved from reactos/dll/win32/shell32/CStartMenu.cpp with 100% similarity]
reactos/base/shell/shell32/CStartMenu.h [moved from reactos/dll/win32/shell32/CStartMenu.h with 100% similarity]
reactos/base/shell/shell32/avi_res.rc [moved from reactos/dll/win32/shell32/avi_res.rc with 100% similarity]
reactos/base/shell/shell32/bitmap_res.rc [moved from reactos/dll/win32/shell32/bitmap_res.rc with 100% similarity]
reactos/base/shell/shell32/cpanel.h [moved from reactos/dll/win32/shell32/cpanel.h with 100% similarity]
reactos/base/shell/shell32/dde.cpp [moved from reactos/dll/win32/shell32/dde.cpp with 100% similarity]
reactos/base/shell/shell32/debughlp.cpp [moved from reactos/dll/win32/shell32/debughlp.cpp with 100% similarity]
reactos/base/shell/shell32/debughlp.h [moved from reactos/dll/win32/shell32/debughlp.h with 100% similarity]
reactos/base/shell/shell32/dialogs/dialogs.cpp [moved from reactos/dll/win32/shell32/dialogs/dialogs.cpp with 100% similarity]
reactos/base/shell/shell32/dialogs/drive.cpp [moved from reactos/dll/win32/shell32/dialogs/drive.cpp with 100% similarity]
reactos/base/shell/shell32/dialogs/drvdefext.cpp [moved from reactos/dll/win32/shell32/dialogs/drvdefext.cpp with 100% similarity]
reactos/base/shell/shell32/dialogs/filedefext.cpp [moved from reactos/dll/win32/shell32/dialogs/filedefext.cpp with 100% similarity]
reactos/base/shell/shell32/dialogs/folder_options.cpp [moved from reactos/dll/win32/shell32/dialogs/folder_options.cpp with 100% similarity]
reactos/base/shell/shell32/dialogs/fprop.cpp [moved from reactos/dll/win32/shell32/dialogs/fprop.cpp with 100% similarity]
reactos/base/shell/shell32/droptargets/CexeDropHandler.cpp [moved from reactos/dll/win32/shell32/droptargets/CexeDropHandler.cpp with 100% similarity]
reactos/base/shell/shell32/droptargets/CexeDropHandler.h [moved from reactos/dll/win32/shell32/droptargets/CexeDropHandler.h with 100% similarity]
reactos/base/shell/shell32/drvdefext.h [moved from reactos/dll/win32/shell32/drvdefext.h with 100% similarity]
reactos/base/shell/shell32/filedefext.h [moved from reactos/dll/win32/shell32/filedefext.h with 100% similarity]
reactos/base/shell/shell32/folders.cpp [moved from reactos/dll/win32/shell32/folders.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CAdminToolsFolder.cpp [moved from reactos/dll/win32/shell32/folders/CAdminToolsFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CAdminToolsFolder.h [moved from reactos/dll/win32/shell32/folders/CAdminToolsFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CControlPanelFolder.cpp [moved from reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CControlPanelFolder.h [moved from reactos/dll/win32/shell32/folders/CControlPanelFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CDesktopFolder.cpp [moved from reactos/dll/win32/shell32/folders/CDesktopFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CDesktopFolder.h [moved from reactos/dll/win32/shell32/folders/CDesktopFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CDrivesFolder.cpp [moved from reactos/dll/win32/shell32/folders/CDrivesFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CDrivesFolder.h [moved from reactos/dll/win32/shell32/folders/CDrivesFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CFSFolder.cpp [moved from reactos/dll/win32/shell32/folders/CFSFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CFSFolder.h [moved from reactos/dll/win32/shell32/folders/CFSFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CFontsFolder.cpp [moved from reactos/dll/win32/shell32/folders/CFontsFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CFontsFolder.h [moved from reactos/dll/win32/shell32/folders/CFontsFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CMyDocsFolder.cpp [moved from reactos/dll/win32/shell32/folders/CMyDocsFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CMyDocsFolder.h [moved from reactos/dll/win32/shell32/folders/CMyDocsFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CNetFolder.cpp [moved from reactos/dll/win32/shell32/folders/CNetFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CNetFolder.h [moved from reactos/dll/win32/shell32/folders/CNetFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CPrinterFolder.cpp [moved from reactos/dll/win32/shell32/folders/CPrinterFolder.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CPrinterFolder.h [moved from reactos/dll/win32/shell32/folders/CPrinterFolder.h with 100% similarity]
reactos/base/shell/shell32/folders/CRecycleBin.cpp [moved from reactos/dll/win32/shell32/folders/CRecycleBin.cpp with 100% similarity]
reactos/base/shell/shell32/folders/CRecycleBin.h [moved from reactos/dll/win32/shell32/folders/CRecycleBin.h with 100% similarity]
reactos/base/shell/shell32/icon_res.rc [moved from reactos/dll/win32/shell32/icon_res.rc with 100% similarity]
reactos/base/shell/shell32/iconcache.cpp [moved from reactos/dll/win32/shell32/iconcache.cpp with 100% similarity]
reactos/base/shell/shell32/lang/bg-BG.rc [moved from reactos/dll/win32/shell32/lang/bg-BG.rc with 100% similarity]
reactos/base/shell/shell32/lang/ca-ES.rc [moved from reactos/dll/win32/shell32/lang/ca-ES.rc with 100% similarity]
reactos/base/shell/shell32/lang/cs-CZ.rc [moved from reactos/dll/win32/shell32/lang/cs-CZ.rc with 100% similarity]
reactos/base/shell/shell32/lang/da-DK.rc [moved from reactos/dll/win32/shell32/lang/da-DK.rc with 100% similarity]
reactos/base/shell/shell32/lang/de-DE.rc [moved from reactos/dll/win32/shell32/lang/de-DE.rc with 100% similarity]
reactos/base/shell/shell32/lang/el-GR.rc [moved from reactos/dll/win32/shell32/lang/el-GR.rc with 100% similarity]
reactos/base/shell/shell32/lang/en-GB.rc [moved from reactos/dll/win32/shell32/lang/en-GB.rc with 100% similarity]
reactos/base/shell/shell32/lang/en-US.rc [moved from reactos/dll/win32/shell32/lang/en-US.rc with 100% similarity]
reactos/base/shell/shell32/lang/es-ES.rc [moved from reactos/dll/win32/shell32/lang/es-ES.rc with 100% similarity]
reactos/base/shell/shell32/lang/fi-FI.rc [moved from reactos/dll/win32/shell32/lang/fi-FI.rc with 100% similarity]
reactos/base/shell/shell32/lang/fr-FR.rc [moved from reactos/dll/win32/shell32/lang/fr-FR.rc with 100% similarity]
reactos/base/shell/shell32/lang/he-IL.rc [moved from reactos/dll/win32/shell32/lang/he-IL.rc with 100% similarity]
reactos/base/shell/shell32/lang/hu-HU.rc [moved from reactos/dll/win32/shell32/lang/hu-HU.rc with 100% similarity]
reactos/base/shell/shell32/lang/it-IT.rc [moved from reactos/dll/win32/shell32/lang/it-IT.rc with 100% similarity]
reactos/base/shell/shell32/lang/ja-JP.rc [moved from reactos/dll/win32/shell32/lang/ja-JP.rc with 100% similarity]
reactos/base/shell/shell32/lang/ko-KR.rc [moved from reactos/dll/win32/shell32/lang/ko-KR.rc with 100% similarity]
reactos/base/shell/shell32/lang/nl-NL.rc [moved from reactos/dll/win32/shell32/lang/nl-NL.rc with 100% similarity]
reactos/base/shell/shell32/lang/no-NO.rc [moved from reactos/dll/win32/shell32/lang/no-NO.rc with 100% similarity]
reactos/base/shell/shell32/lang/pl-PL.rc [moved from reactos/dll/win32/shell32/lang/pl-PL.rc with 100% similarity]
reactos/base/shell/shell32/lang/pt-BR.rc [moved from reactos/dll/win32/shell32/lang/pt-BR.rc with 100% similarity]
reactos/base/shell/shell32/lang/pt-PT.rc [moved from reactos/dll/win32/shell32/lang/pt-PT.rc with 100% similarity]
reactos/base/shell/shell32/lang/ro-RO.rc [moved from reactos/dll/win32/shell32/lang/ro-RO.rc with 100% similarity]
reactos/base/shell/shell32/lang/ru-RU.rc [moved from reactos/dll/win32/shell32/lang/ru-RU.rc with 100% similarity]
reactos/base/shell/shell32/lang/sk-SK.rc [moved from reactos/dll/win32/shell32/lang/sk-SK.rc with 100% similarity]
reactos/base/shell/shell32/lang/sl-SI.rc [moved from reactos/dll/win32/shell32/lang/sl-SI.rc with 100% similarity]
reactos/base/shell/shell32/lang/sq-AL.rc [moved from reactos/dll/win32/shell32/lang/sq-AL.rc with 100% similarity]
reactos/base/shell/shell32/lang/sv-SE.rc [moved from reactos/dll/win32/shell32/lang/sv-SE.rc with 100% similarity]
reactos/base/shell/shell32/lang/tr-TR.rc [moved from reactos/dll/win32/shell32/lang/tr-TR.rc with 100% similarity]
reactos/base/shell/shell32/lang/uk-UA.rc [moved from reactos/dll/win32/shell32/lang/uk-UA.rc with 100% similarity]
reactos/base/shell/shell32/lang/zh-CN.rc [moved from reactos/dll/win32/shell32/lang/zh-CN.rc with 100% similarity]
reactos/base/shell/shell32/lang/zh-TW.rc [moved from reactos/dll/win32/shell32/lang/zh-TW.rc with 100% similarity]
reactos/base/shell/shell32/precomp.h [moved from reactos/dll/win32/shell32/precomp.h with 100% similarity]
reactos/base/shell/shell32/res/avis/160+161+167+168.avi [moved from reactos/dll/win32/shell32/res/avis/160+161+167+168.avi with 100% similarity]
reactos/base/shell/shell32/res/avis/162.avi [moved from reactos/dll/win32/shell32/res/avis/162.avi with 100% similarity]
reactos/base/shell/shell32/res/avis/163.avi [moved from reactos/dll/win32/shell32/res/avis/163.avi with 100% similarity]
reactos/base/shell/shell32/res/avis/164+169.avi [moved from reactos/dll/win32/shell32/res/avis/164+169.avi with 100% similarity]
reactos/base/shell/shell32/res/avis/170.avi [moved from reactos/dll/win32/shell32/res/avis/170.avi with 100% similarity]
reactos/base/shell/shell32/res/avis/Licence/COPYING [moved from reactos/dll/win32/shell32/res/avis/Licence/COPYING with 100% similarity]
reactos/base/shell/shell32/res/avis/Licence/Tango.txt [moved from reactos/dll/win32/shell32/res/avis/Licence/Tango.txt with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/204.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/204.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/205.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/205.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/206.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/206.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/207.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/207.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/214.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/214.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/215.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/215.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/216.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/216.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/217.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/217.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/225.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/225.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/226.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/226.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/227.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/227.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/228.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/228.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/230.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/230.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/231.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/231.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/240.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/240.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/241.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/241.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/242.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/242.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/245.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/245.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/246.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/246.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/247.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/247.bmp with 100% similarity]
reactos/base/shell/shell32/res/bitmaps/reactos.bmp [moved from reactos/dll/win32/shell32/res/bitmaps/reactos.bmp with 100% similarity]
reactos/base/shell/shell32/res/icons/1.ico [moved from reactos/dll/win32/shell32/res/icons/1.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/10.ico [moved from reactos/dll/win32/shell32/res/icons/10.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/1001.ico [moved from reactos/dll/win32/shell32/res/icons/1001.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/1004.ico [moved from reactos/dll/win32/shell32/res/icons/1004.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/11.ico [moved from reactos/dll/win32/shell32/res/icons/11.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/12.ico [moved from reactos/dll/win32/shell32/res/icons/12.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/13.ico [moved from reactos/dll/win32/shell32/res/icons/13.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/134.ico [moved from reactos/dll/win32/shell32/res/icons/134.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/135.ico [moved from reactos/dll/win32/shell32/res/icons/135.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/137.ico [moved from reactos/dll/win32/shell32/res/icons/137.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/138.ico [moved from reactos/dll/win32/shell32/res/icons/138.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/14.ico [moved from reactos/dll/win32/shell32/res/icons/14.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/15.ico [moved from reactos/dll/win32/shell32/res/icons/15.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/151.ico [moved from reactos/dll/win32/shell32/res/icons/151.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/152.ico [moved from reactos/dll/win32/shell32/res/icons/152.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/153.ico [moved from reactos/dll/win32/shell32/res/icons/153.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/154.ico [moved from reactos/dll/win32/shell32/res/icons/154.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/155.ico [moved from reactos/dll/win32/shell32/res/icons/155.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/156.ico [moved from reactos/dll/win32/shell32/res/icons/156.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/157.ico [moved from reactos/dll/win32/shell32/res/icons/157.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/16.ico [moved from reactos/dll/win32/shell32/res/icons/16.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/160.ico [moved from reactos/dll/win32/shell32/res/icons/160.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/161.ico [moved from reactos/dll/win32/shell32/res/icons/161.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/16710.ico [moved from reactos/dll/win32/shell32/res/icons/16710.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/16715.ico [moved from reactos/dll/win32/shell32/res/icons/16715.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/16717.ico [moved from reactos/dll/win32/shell32/res/icons/16717.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/16718.ico [moved from reactos/dll/win32/shell32/res/icons/16718.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/16721.ico [moved from reactos/dll/win32/shell32/res/icons/16721.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/17.ico [moved from reactos/dll/win32/shell32/res/icons/17.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/1700.ico [moved from reactos/dll/win32/shell32/res/icons/1700.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/172.ico [moved from reactos/dll/win32/shell32/res/icons/172.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/173.ico [moved from reactos/dll/win32/shell32/res/icons/173.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/18.ico [moved from reactos/dll/win32/shell32/res/icons/18.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/182.ico [moved from reactos/dll/win32/shell32/res/icons/182.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/183.ico [moved from reactos/dll/win32/shell32/res/icons/183.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/184.ico [moved from reactos/dll/win32/shell32/res/icons/184.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/185.ico [moved from reactos/dll/win32/shell32/res/icons/185.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/186.ico [moved from reactos/dll/win32/shell32/res/icons/186.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/187.ico [moved from reactos/dll/win32/shell32/res/icons/187.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/19.ico [moved from reactos/dll/win32/shell32/res/icons/19.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/191.ico [moved from reactos/dll/win32/shell32/res/icons/191.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/192.ico [moved from reactos/dll/win32/shell32/res/icons/192.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/2.ico [moved from reactos/dll/win32/shell32/res/icons/2.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/20.ico [moved from reactos/dll/win32/shell32/res/icons/20.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/21.ico [moved from reactos/dll/win32/shell32/res/icons/21.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/210.ico [moved from reactos/dll/win32/shell32/res/icons/210.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/22.ico [moved from reactos/dll/win32/shell32/res/icons/22.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/220.ico [moved from reactos/dll/win32/shell32/res/icons/220.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/221.ico [moved from reactos/dll/win32/shell32/res/icons/221.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/222.ico [moved from reactos/dll/win32/shell32/res/icons/222.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/224.ico [moved from reactos/dll/win32/shell32/res/icons/224.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/225.ico [moved from reactos/dll/win32/shell32/res/icons/225.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/226.ico [moved from reactos/dll/win32/shell32/res/icons/226.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/228.ico [moved from reactos/dll/win32/shell32/res/icons/228.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/23.ico [moved from reactos/dll/win32/shell32/res/icons/23.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/233.ico [moved from reactos/dll/win32/shell32/res/icons/233.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/235.ico [moved from reactos/dll/win32/shell32/res/icons/235.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/236.ico [moved from reactos/dll/win32/shell32/res/icons/236.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/237.ico [moved from reactos/dll/win32/shell32/res/icons/237.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/238.ico [moved from reactos/dll/win32/shell32/res/icons/238.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/24.ico [moved from reactos/dll/win32/shell32/res/icons/24.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/240.ico [moved from reactos/dll/win32/shell32/res/icons/240.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/245.ico [moved from reactos/dll/win32/shell32/res/icons/245.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/246.ico [moved from reactos/dll/win32/shell32/res/icons/246.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/248.ico [moved from reactos/dll/win32/shell32/res/icons/248.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/249.ico [moved from reactos/dll/win32/shell32/res/icons/249.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/25.ico [moved from reactos/dll/win32/shell32/res/icons/25.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/250.ico [moved from reactos/dll/win32/shell32/res/icons/250.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/252.ico [moved from reactos/dll/win32/shell32/res/icons/252.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/254.ico [moved from reactos/dll/win32/shell32/res/icons/254.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/255.ico [moved from reactos/dll/win32/shell32/res/icons/255.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/263.ico [moved from reactos/dll/win32/shell32/res/icons/263.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/265.ico [moved from reactos/dll/win32/shell32/res/icons/265.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/268.ico [moved from reactos/dll/win32/shell32/res/icons/268.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/269.ico [moved from reactos/dll/win32/shell32/res/icons/269.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/270.ico [moved from reactos/dll/win32/shell32/res/icons/270.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/271.ico [moved from reactos/dll/win32/shell32/res/icons/271.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/277.ico [moved from reactos/dll/win32/shell32/res/icons/277.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/279.ico [moved from reactos/dll/win32/shell32/res/icons/279.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/28.ico [moved from reactos/dll/win32/shell32/res/icons/28.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/289.ico [moved from reactos/dll/win32/shell32/res/icons/289.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/29.ico [moved from reactos/dll/win32/shell32/res/icons/29.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/290.ico [moved from reactos/dll/win32/shell32/res/icons/290.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/291.ico [moved from reactos/dll/win32/shell32/res/icons/291.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/292.ico [moved from reactos/dll/win32/shell32/res/icons/292.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/293.ico [moved from reactos/dll/win32/shell32/res/icons/293.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/294.ico [moved from reactos/dll/win32/shell32/res/icons/294.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/295.ico [moved from reactos/dll/win32/shell32/res/icons/295.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/296.ico [moved from reactos/dll/win32/shell32/res/icons/296.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/297.ico [moved from reactos/dll/win32/shell32/res/icons/297.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/298.ico [moved from reactos/dll/win32/shell32/res/icons/298.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/299.ico [moved from reactos/dll/win32/shell32/res/icons/299.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/3.ico [moved from reactos/dll/win32/shell32/res/icons/3.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/30.ico [moved from reactos/dll/win32/shell32/res/icons/30.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/302.ico [moved from reactos/dll/win32/shell32/res/icons/302.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/304.ico [moved from reactos/dll/win32/shell32/res/icons/304.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/305.ico [moved from reactos/dll/win32/shell32/res/icons/305.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/309.ico [moved from reactos/dll/win32/shell32/res/icons/309.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/315.ico [moved from reactos/dll/win32/shell32/res/icons/315.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/317.ico [moved from reactos/dll/win32/shell32/res/icons/317.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/318.ico [moved from reactos/dll/win32/shell32/res/icons/318.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/319.ico [moved from reactos/dll/win32/shell32/res/icons/319.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/32.ico [moved from reactos/dll/win32/shell32/res/icons/32.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/322.ico [moved from reactos/dll/win32/shell32/res/icons/322.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/323.ico [moved from reactos/dll/win32/shell32/res/icons/323.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/324.ico [moved from reactos/dll/win32/shell32/res/icons/324.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/325.ico [moved from reactos/dll/win32/shell32/res/icons/325.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/326.ico [moved from reactos/dll/win32/shell32/res/icons/326.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/327.ico [moved from reactos/dll/win32/shell32/res/icons/327.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/328.ico [moved from reactos/dll/win32/shell32/res/icons/328.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/329.ico [moved from reactos/dll/win32/shell32/res/icons/329.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/33.ico [moved from reactos/dll/win32/shell32/res/icons/33.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/330.ico [moved from reactos/dll/win32/shell32/res/icons/330.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/35.ico [moved from reactos/dll/win32/shell32/res/icons/35.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/36.ico [moved from reactos/dll/win32/shell32/res/icons/36.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/37.ico [moved from reactos/dll/win32/shell32/res/icons/37.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/38.ico [moved from reactos/dll/win32/shell32/res/icons/38.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/39.ico [moved from reactos/dll/win32/shell32/res/icons/39.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/4.ico [moved from reactos/dll/win32/shell32/res/icons/4.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/40.ico [moved from reactos/dll/win32/shell32/res/icons/40.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/41.ico [moved from reactos/dll/win32/shell32/res/icons/41.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/44.ico [moved from reactos/dll/win32/shell32/res/icons/44.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/45.ico [moved from reactos/dll/win32/shell32/res/icons/45.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/46.ico [moved from reactos/dll/win32/shell32/res/icons/46.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/47.ico [moved from reactos/dll/win32/shell32/res/icons/47.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/48.ico [moved from reactos/dll/win32/shell32/res/icons/48.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/5.ico [moved from reactos/dll/win32/shell32/res/icons/5.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/54.ico [moved from reactos/dll/win32/shell32/res/icons/54.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/6.ico [moved from reactos/dll/win32/shell32/res/icons/6.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/7.ico [moved from reactos/dll/win32/shell32/res/icons/7.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/8.ico [moved from reactos/dll/win32/shell32/res/icons/8.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/8240.ico [moved from reactos/dll/win32/shell32/res/icons/8240.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/9.ico [moved from reactos/dll/win32/shell32/res/icons/9.ico with 100% similarity]
reactos/base/shell/shell32/res/icons/Icon_Licence/COPYING [moved from reactos/dll/win32/shell32/res/icons/Icon_Licence/COPYING with 100% similarity]
reactos/base/shell/shell32/res/icons/Icon_Licence/Tango.txt [moved from reactos/dll/win32/shell32/res/icons/Icon_Licence/Tango.txt with 100% similarity]
reactos/base/shell/shell32/res/rgs/adminfoldershortcut.rgs [moved from reactos/dll/win32/shell32/res/rgs/adminfoldershortcut.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/controlpanel.rgs [moved from reactos/dll/win32/shell32/res/rgs/controlpanel.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/dragdrophelper.rgs [moved from reactos/dll/win32/shell32/res/rgs/dragdrophelper.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/exedrophandler.rgs [moved from reactos/dll/win32/shell32/res/rgs/exedrophandler.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/folderoptions.rgs [moved from reactos/dll/win32/shell32/res/rgs/folderoptions.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/foldershortcut.rgs [moved from reactos/dll/win32/shell32/res/rgs/foldershortcut.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/fontsfoldershortcut.rgs [moved from reactos/dll/win32/shell32/res/rgs/fontsfoldershortcut.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/menuband.rgs [moved from reactos/dll/win32/shell32/res/rgs/menuband.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/menubandsite.rgs [moved from reactos/dll/win32/shell32/res/rgs/menubandsite.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/menudeskbar.rgs [moved from reactos/dll/win32/shell32/res/rgs/menudeskbar.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/mycomputer.rgs [moved from reactos/dll/win32/shell32/res/rgs/mycomputer.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/mydocuments.rgs [moved from reactos/dll/win32/shell32/res/rgs/mydocuments.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/networkplaces.rgs [moved from reactos/dll/win32/shell32/res/rgs/networkplaces.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/newmenu.rgs [moved from reactos/dll/win32/shell32/res/rgs/newmenu.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/openwithmenu.rgs [moved from reactos/dll/win32/shell32/res/rgs/openwithmenu.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/printers.rgs [moved from reactos/dll/win32/shell32/res/rgs/printers.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/recyclebin.rgs [moved from reactos/dll/win32/shell32/res/rgs/recyclebin.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/shelldesktop.rgs [moved from reactos/dll/win32/shell32/res/rgs/shelldesktop.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/shelldrvdefext.rgs [moved from reactos/dll/win32/shell32/res/rgs/shelldrvdefext.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/shellfiledefext.rgs [moved from reactos/dll/win32/shell32/res/rgs/shellfiledefext.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/shellfsfolder.rgs [moved from reactos/dll/win32/shell32/res/rgs/shellfsfolder.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/shelllink.rgs [moved from reactos/dll/win32/shell32/res/rgs/shelllink.rgs with 100% similarity]
reactos/base/shell/shell32/res/rgs/startmenu.rgs [moved from reactos/dll/win32/shell32/res/rgs/startmenu.rgs with 100% similarity]
reactos/base/shell/shell32/rgs_res.rc [moved from reactos/dll/win32/shell32/rgs_res.rc with 100% similarity]
reactos/base/shell/shell32/shell32.cpp [moved from reactos/dll/win32/shell32/shell32.cpp with 100% similarity]
reactos/base/shell/shell32/shell32.rc [moved from reactos/dll/win32/shell32/shell32.rc with 100% similarity]
reactos/base/shell/shell32/shell32.spec [moved from reactos/dll/win32/shell32/shell32.spec with 100% similarity]
reactos/base/shell/shell32/shell32_version.h [moved from reactos/dll/win32/shell32/shell32_version.h with 100% similarity]
reactos/base/shell/shell32/shell32_version.rc [moved from reactos/dll/win32/shell32/shell32_version.rc with 100% similarity]
reactos/base/shell/shell32/shellfolder.h [moved from reactos/dll/win32/shell32/shellfolder.h with 100% similarity]
reactos/base/shell/shell32/shfldr.h [moved from reactos/dll/win32/shell32/shfldr.h with 100% similarity]
reactos/base/shell/shell32/shlexec.cpp [moved from reactos/dll/win32/shell32/shlexec.cpp with 100% similarity]
reactos/base/shell/shell32/shlfileop.cpp [moved from reactos/dll/win32/shell32/shlfileop.cpp with 100% similarity]
reactos/base/shell/shell32/shlfolder.cpp [moved from reactos/dll/win32/shell32/shlfolder.cpp with 100% similarity]
reactos/base/shell/shell32/shobjidl_local.idl [moved from reactos/dll/win32/shell32/shobjidl_local.idl with 100% similarity]
reactos/base/shell/shell32/shresdef.h [moved from reactos/dll/win32/shell32/shresdef.h with 100% similarity]
reactos/base/shell/shell32/stubs.cpp [moved from reactos/dll/win32/shell32/stubs.cpp with 100% similarity]
reactos/base/shell/shell32/systray.cpp [moved from reactos/dll/win32/shell32/systray.cpp with 100% similarity]
reactos/base/shell/shell32/vista.c [moved from reactos/dll/win32/shell32/vista.c with 100% similarity]
reactos/base/shell/shell32/wine/brsfolder.c [moved from reactos/dll/win32/shell32/wine/brsfolder.c with 100% similarity]
reactos/base/shell/shell32/wine/changenotify.c [moved from reactos/dll/win32/shell32/wine/changenotify.c with 100% similarity]
reactos/base/shell/shell32/wine/classes.c [moved from reactos/dll/win32/shell32/wine/classes.c with 100% similarity]
reactos/base/shell/shell32/wine/clipboard.c [moved from reactos/dll/win32/shell32/wine/clipboard.c with 100% similarity]
reactos/base/shell/shell32/wine/control.c [moved from reactos/dll/win32/shell32/wine/control.c with 100% similarity]
reactos/base/shell/shell32/wine/pidl.c [moved from reactos/dll/win32/shell32/wine/pidl.c with 100% similarity]
reactos/base/shell/shell32/wine/pidl.h [moved from reactos/dll/win32/shell32/wine/pidl.h with 100% similarity]
reactos/base/shell/shell32/wine/shell32_main.c [moved from reactos/dll/win32/shell32/wine/shell32_main.c with 100% similarity]
reactos/base/shell/shell32/wine/shell32_main.h [moved from reactos/dll/win32/shell32/wine/shell32_main.h with 100% similarity]
reactos/base/shell/shell32/wine/shellole.c [moved from reactos/dll/win32/shell32/wine/shellole.c with 100% similarity]
reactos/base/shell/shell32/wine/shellord.c [moved from reactos/dll/win32/shell32/wine/shellord.c with 100% similarity]
reactos/base/shell/shell32/wine/shellpath.c [moved from reactos/dll/win32/shell32/wine/shellpath.c with 100% similarity]
reactos/base/shell/shell32/wine/shellreg.c [moved from reactos/dll/win32/shell32/wine/shellreg.c with 100% similarity]
reactos/base/shell/shell32/wine/shellstring.c [moved from reactos/dll/win32/shell32/wine/shellstring.c with 100% similarity]
reactos/base/shell/shell32/wine/shlmenu.c [moved from reactos/dll/win32/shell32/wine/shlmenu.c with 100% similarity]
reactos/base/shell/shell32/wine/shpolicy.c [moved from reactos/dll/win32/shell32/wine/shpolicy.c with 100% similarity]
reactos/base/shell/shfolder/CMakeLists.txt [moved from reactos/dll/win32/shfolder/CMakeLists.txt with 100% similarity]
reactos/base/shell/shfolder/shfolder.spec [moved from reactos/dll/win32/shfolder/shfolder.spec with 100% similarity]
reactos/base/shell/shfolder/version.rc [moved from reactos/dll/win32/shfolder/version.rc with 100% similarity]
reactos/base/shell/shimgvw/CMakeLists.txt [moved from reactos/dll/win32/shimgvw/CMakeLists.txt with 100% similarity]
reactos/base/shell/shimgvw/comsup.c [moved from reactos/dll/win32/shimgvw/comsup.c with 100% similarity]
reactos/base/shell/shimgvw/comsup.h [moved from reactos/dll/win32/shimgvw/comsup.h with 100% similarity]
reactos/base/shell/shimgvw/lang/bg-BG.rc [moved from reactos/dll/win32/shimgvw/lang/bg-BG.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/cs-CZ.rc [moved from reactos/dll/win32/shimgvw/lang/cs-CZ.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/de-DE.rc [moved from reactos/dll/win32/shimgvw/lang/de-DE.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/en-US.rc [moved from reactos/dll/win32/shimgvw/lang/en-US.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/es-ES.rc [moved from reactos/dll/win32/shimgvw/lang/es-ES.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/fr-FR.rc [moved from reactos/dll/win32/shimgvw/lang/fr-FR.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/he-IL.rc [moved from reactos/dll/win32/shimgvw/lang/he-IL.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/it-IT.rc [moved from reactos/dll/win32/shimgvw/lang/it-IT.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/lt-LT.rc [moved from reactos/dll/win32/shimgvw/lang/lt-LT.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/no-NO.rc [moved from reactos/dll/win32/shimgvw/lang/no-NO.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/pl-PL.rc [moved from reactos/dll/win32/shimgvw/lang/pl-PL.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/ro-RO.rc [moved from reactos/dll/win32/shimgvw/lang/ro-RO.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/ru-RU.rc [moved from reactos/dll/win32/shimgvw/lang/ru-RU.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/sk-SK.rc [moved from reactos/dll/win32/shimgvw/lang/sk-SK.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/sq-AL.rc [moved from reactos/dll/win32/shimgvw/lang/sq-AL.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/tr-TR.rc [moved from reactos/dll/win32/shimgvw/lang/tr-TR.rc with 100% similarity]
reactos/base/shell/shimgvw/lang/uk-UA.rc [moved from reactos/dll/win32/shimgvw/lang/uk-UA.rc with 100% similarity]
reactos/base/shell/shimgvw/res/main.ico [moved from reactos/dll/win32/shimgvw/res/main.ico with 100% similarity]
reactos/base/shell/shimgvw/res/next.bmp [moved from reactos/dll/win32/shimgvw/res/next.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/prev.bmp [moved from reactos/dll/win32/shimgvw/res/prev.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/print.bmp [moved from reactos/dll/win32/shimgvw/res/print.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/rot1.bmp [moved from reactos/dll/win32/shimgvw/res/rot1.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/rot2.bmp [moved from reactos/dll/win32/shimgvw/res/rot2.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/save.bmp [moved from reactos/dll/win32/shimgvw/res/save.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/zoomm.bmp [moved from reactos/dll/win32/shimgvw/res/zoomm.bmp with 100% similarity]
reactos/base/shell/shimgvw/res/zoomp.bmp [moved from reactos/dll/win32/shimgvw/res/zoomp.bmp with 100% similarity]
reactos/base/shell/shimgvw/resource.h [moved from reactos/dll/win32/shimgvw/resource.h with 100% similarity]
reactos/base/shell/shimgvw/shimgvw.c [moved from reactos/dll/win32/shimgvw/shimgvw.c with 100% similarity]
reactos/base/shell/shimgvw/shimgvw.h [moved from reactos/dll/win32/shimgvw/shimgvw.h with 100% similarity]
reactos/base/shell/shimgvw/shimgvw.rc [moved from reactos/dll/win32/shimgvw/shimgvw.rc with 100% similarity]
reactos/base/shell/shimgvw/shimgvw.spec [moved from reactos/dll/win32/shimgvw/shimgvw.spec with 100% similarity]
reactos/base/shell/shlwapi/CMakeLists.txt [moved from reactos/dll/win32/shlwapi/CMakeLists.txt with 100% similarity]
reactos/base/shell/shlwapi/assoc.c [moved from reactos/dll/win32/shlwapi/assoc.c with 100% similarity]
reactos/base/shell/shlwapi/clist.c [moved from reactos/dll/win32/shlwapi/clist.c with 100% similarity]
reactos/base/shell/shlwapi/istream.c [moved from reactos/dll/win32/shlwapi/istream.c with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Da.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Da.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_De.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_De.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_En.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_En.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Es.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Es.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Fi.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Fi.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Fr.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Fr.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_He.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_He.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Hu.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Hu.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_It.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_It.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Ja.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Ja.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Ko.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Ko.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Lt.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Lt.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Nl.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Nl.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_No.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_No.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Pl.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Pl.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Pt.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Pt.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Ro.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Ro.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Ru.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Ru.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Si.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Si.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Sk.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Sk.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Sq.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Sq.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Sv.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Sv.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Tr.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Tr.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Uk.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Uk.rc with 100% similarity]
reactos/base/shell/shlwapi/lang/shlwapi_Zh.rc [moved from reactos/dll/win32/shlwapi/lang/shlwapi_Zh.rc with 100% similarity]
reactos/base/shell/shlwapi/msgbox.c [moved from reactos/dll/win32/shlwapi/msgbox.c with 100% similarity]
reactos/base/shell/shlwapi/ordinal.c [moved from reactos/dll/win32/shlwapi/ordinal.c with 100% similarity]
reactos/base/shell/shlwapi/path.c [moved from reactos/dll/win32/shlwapi/path.c with 100% similarity]
reactos/base/shell/shlwapi/precomp.h [moved from reactos/dll/win32/shlwapi/precomp.h with 100% similarity]
reactos/base/shell/shlwapi/reg.c [moved from reactos/dll/win32/shlwapi/reg.c with 100% similarity]
reactos/base/shell/shlwapi/regstream.c [moved from reactos/dll/win32/shlwapi/regstream.c with 100% similarity]
reactos/base/shell/shlwapi/resource.h [moved from reactos/dll/win32/shlwapi/resource.h with 100% similarity]
reactos/base/shell/shlwapi/shlwapi.rc [moved from reactos/dll/win32/shlwapi/shlwapi.rc with 100% similarity]
reactos/base/shell/shlwapi/shlwapi.spec [moved from reactos/dll/win32/shlwapi/shlwapi.spec with 100% similarity]
reactos/base/shell/shlwapi/shlwapi_main.c [moved from reactos/dll/win32/shlwapi/shlwapi_main.c with 100% similarity]
reactos/base/shell/shlwapi/shlwapi_ros.diff [moved from reactos/dll/win32/shlwapi/shlwapi_ros.diff with 100% similarity]
reactos/base/shell/shlwapi/stopwatch.c [moved from reactos/dll/win32/shlwapi/stopwatch.c with 100% similarity]
reactos/base/shell/shlwapi/string.c [moved from reactos/dll/win32/shlwapi/string.c with 100% similarity]
reactos/base/shell/shlwapi/thread.c [moved from reactos/dll/win32/shlwapi/thread.c with 100% similarity]
reactos/base/shell/shlwapi/url.c [moved from reactos/dll/win32/shlwapi/url.c with 100% similarity]
reactos/base/shell/shlwapi/version.rc [moved from reactos/dll/win32/shlwapi/version.rc with 100% similarity]
reactos/base/shell/shlwapi/wsprintf.c [moved from reactos/dll/win32/shlwapi/wsprintf.c with 100% similarity]
reactos/dll/win32/CMakeLists.txt
reactos/dll/win32/shell32/authors.c [deleted file]
reactos/dll/win32/shell32/autocomplete.c [deleted file]
reactos/dll/win32/shell32/brsfolder.c [deleted file]
reactos/dll/win32/shell32/changenotify.c [deleted file]
reactos/dll/win32/shell32/classes.c [deleted file]
reactos/dll/win32/shell32/clipboard.c [deleted file]
reactos/dll/win32/shell32/control.c [deleted file]
reactos/dll/win32/shell32/dataobject.c [deleted file]
reactos/dll/win32/shell32/dde.c [deleted file]
reactos/dll/win32/shell32/debughlp.c [deleted file]
reactos/dll/win32/shell32/desktop.c [deleted file]
reactos/dll/win32/shell32/dialogs.c [deleted file]
reactos/dll/win32/shell32/dragdrophelper.c [deleted file]
reactos/dll/win32/shell32/drive.c [deleted file]
reactos/dll/win32/shell32/enumidlist.c [deleted file]
reactos/dll/win32/shell32/extracticon.c [deleted file]
reactos/dll/win32/shell32/folder_options.c [deleted file]
reactos/dll/win32/shell32/folders.c [deleted file]
reactos/dll/win32/shell32/fprop.c [deleted file]
reactos/dll/win32/shell32/iconcache.c [deleted file]
reactos/dll/win32/shell32/pidl.c [deleted file]
reactos/dll/win32/shell32/ros-systray.c [deleted file]
reactos/dll/win32/shell32/she_ocmenu.c [deleted file]
reactos/dll/win32/shell32/shell.c [deleted file]
reactos/dll/win32/shell32/shell32_main.c [deleted file]
reactos/dll/win32/shell32/shellitem.c [deleted file]
reactos/dll/win32/shell32/shelllink.c [deleted file]
reactos/dll/win32/shell32/shellole.c [deleted file]
reactos/dll/win32/shell32/shellord.c [deleted file]
reactos/dll/win32/shell32/shellpath.c [deleted file]
reactos/dll/win32/shell32/shellreg.c [deleted file]
reactos/dll/win32/shell32/shfldr_admintools.c [deleted file]
reactos/dll/win32/shell32/shfldr_cpanel.c [deleted file]
reactos/dll/win32/shell32/shfldr_desktop.c [deleted file]
reactos/dll/win32/shell32/shfldr_fonts.c [deleted file]
reactos/dll/win32/shell32/shfldr_fs.c [deleted file]
reactos/dll/win32/shell32/shfldr_mycomp.c [deleted file]
reactos/dll/win32/shell32/shfldr_mydocuments.c [deleted file]
reactos/dll/win32/shell32/shfldr_netplaces.c [deleted file]
reactos/dll/win32/shell32/shfldr_printers.c [deleted file]
reactos/dll/win32/shell32/shfldr_recyclebin.c [deleted file]
reactos/dll/win32/shell32/shfldr_unixfs.c [deleted file]
reactos/dll/win32/shell32/shlexec.c [deleted file]
reactos/dll/win32/shell32/shlfileop.c [deleted file]
reactos/dll/win32/shell32/shlfolder.c [deleted file]
reactos/dll/win32/shell32/shlfsbind.c [deleted file]
reactos/dll/win32/shell32/shlmenu.c [deleted file]
reactos/dll/win32/shell32/shlview.c [deleted file]
reactos/dll/win32/shell32/shpolicy.c [deleted file]
reactos/dll/win32/shell32/shv_def_cmenu.c [deleted file]
reactos/dll/win32/shell32/shv_item_new.c [deleted file]
reactos/dll/win32/shell32/startmenu.c [deleted file]
reactos/dll/win32/shell32/stubs.c [deleted file]
reactos/dll/win32/shell32/systray.c [deleted file]

index 5203c2b..0b89f31 100644 (file)
@@ -5,4 +5,8 @@ add_subdirectory(explorer)
 add_subdirectory(filebrowser)
 add_subdirectory(ie)
 add_subdirectory(rshell)
+add_subdirectory(shell32)
+add_subdirectory(shfolder)
+add_subdirectory(shimgvw)
+add_subdirectory(shlwapi)
 add_subdirectory(shellext)
index 8bbbc32..acce4e4 100644 (file)
@@ -173,10 +173,6 @@ add_subdirectory(serialui)
 add_subdirectory(setupapi)
 add_subdirectory(sfc)
 add_subdirectory(sfc_os)
-add_subdirectory(shell32)
-add_subdirectory(shfolder)
-add_subdirectory(shimgvw)
-add_subdirectory(shlwapi)
 add_subdirectory(slbcsp)
 add_subdirectory(smdll)
 add_subdirectory(sndblst)
diff --git a/reactos/dll/win32/shell32/authors.c b/reactos/dll/win32/shell32/authors.c
deleted file mode 100644 (file)
index 3101d76..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-#include <reactos/version.h>
-
-const char * const SHELL_Authors[] = { "Copyright 1993-" COPYRIGHT_YEAR " WINE team", "Copyright 1998-" COPYRIGHT_YEAR " ReactOS Team", 0 };
diff --git a/reactos/dll/win32/shell32/autocomplete.c b/reactos/dll/win32/shell32/autocomplete.c
deleted file mode 100644 (file)
index b05fd67..0000000
+++ /dev/null
@@ -1,629 +0,0 @@
-/*
- *     AutoComplete interfaces implementation.
- *
- *     Copyright 2004  Maxime Bellengé <maxime.bellenge@laposte.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-/*
-  Implemented:
-  - ACO_AUTOAPPEND style
-  - ACO_AUTOSUGGEST style
-  - ACO_UPDOWNKEYDROPSLIST style
-
-  - Handle pwzsRegKeyPath and pwszQuickComplete in Init
-
-  TODO:
-  - implement ACO_SEARCH style
-  - implement ACO_FILTERPREFIXES style
-  - implement ACO_USETAB style
-  - implement ACO_RTLREADING style
-
- */
-
-#include <precomp.h>
-
-
-WINE_DEFAULT_DEBUG_CHANNEL(shell);
-
-typedef struct
-{
-    const IAutoCompleteVtbl  *lpVtbl;
-    const IAutoComplete2Vtbl *lpvtblAutoComplete2;
-    LONG ref;
-    BOOL  enabled;
-    HWND hwndEdit;
-    HWND hwndListBox;
-    WNDPROC wpOrigEditProc;
-    WNDPROC wpOrigLBoxProc;
-    WCHAR *txtbackup;
-    WCHAR *quickComplete;
-    IEnumString *enumstr;
-    AUTOCOMPLETEOPTIONS options;
-} IAutoCompleteImpl;
-
-static const IAutoCompleteVtbl acvt;
-static const IAutoComplete2Vtbl ac2vt;
-
-static IAutoCompleteImpl * impl_from_IAutoComplete2( IAutoComplete2 *iface )
-{
-    return (IAutoCompleteImpl *)((char*)iface - FIELD_OFFSET(IAutoCompleteImpl, lpvtblAutoComplete2));
-}
-
-
-/*
-  converts This to an interface pointer
-*/
-#define _IUnknown_(This) (IUnknown*)&(This->lpVtbl)
-#define _IAutoComplete2_(This)  (IAutoComplete2*)&(This->lpvtblAutoComplete2)
-
-static LRESULT APIENTRY ACEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
-static LRESULT APIENTRY ACLBoxSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
-
-/**************************************************************************
- *  IAutoComplete_Constructor
- */
-HRESULT WINAPI IAutoComplete_Constructor(IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv)
-{
-    IAutoCompleteImpl *lpac;
-
-    if (pUnkOuter && !IsEqualIID (riid, &IID_IUnknown))
-       return CLASS_E_NOAGGREGATION;
-
-    lpac = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(IAutoCompleteImpl));
-    if (!lpac)
-       return E_OUTOFMEMORY;
-
-    lpac->ref = 1;
-    lpac->lpVtbl = &acvt;
-    lpac->lpvtblAutoComplete2 = &ac2vt;
-    lpac->enabled = TRUE;
-    lpac->enumstr = NULL;
-    lpac->options = ACO_AUTOAPPEND;
-    lpac->wpOrigEditProc = NULL;
-    lpac->hwndListBox = NULL;
-    lpac->txtbackup = NULL;
-    lpac->quickComplete = NULL;
-
-    if (!SUCCEEDED (IUnknown_QueryInterface (_IUnknown_ (lpac), riid, ppv))) {
-       IUnknown_Release (_IUnknown_ (lpac));
-       return E_NOINTERFACE;
-    }
-
-    TRACE("-- (%p)->\n",lpac);
-
-    return S_OK;
-}
-
-/**************************************************************************
- *  AutoComplete_QueryInterface
- */
-static HRESULT WINAPI IAutoComplete_fnQueryInterface(
-    IAutoComplete * iface,
-    REFIID riid,
-    LPVOID *ppvObj)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)iface;
-
-    TRACE("(%p)->(\n\tIID:\t%s,%p)\n", This, shdebugstr_guid(riid), ppvObj);
-    *ppvObj = NULL;
-
-    if(IsEqualIID(riid, &IID_IUnknown))
-    {
-       *ppvObj = This;
-    }
-    else if(IsEqualIID(riid, &IID_IAutoComplete))
-    {
-       *ppvObj = (IAutoComplete*)This;
-    }
-    else if(IsEqualIID(riid, &IID_IAutoComplete2))
-    {
-       *ppvObj = _IAutoComplete2_ (This);
-    }
-
-    if (*ppvObj)
-    {
-       IAutoComplete_AddRef((IAutoComplete*)*ppvObj);
-       TRACE("-- Interface: (%p)->(%p)\n", ppvObj, *ppvObj);
-       return S_OK;
-    }
-    TRACE("-- Interface: E_NOINTERFACE\n");
-    return E_NOINTERFACE;
-}
-
-/******************************************************************************
- * IAutoComplete_fnAddRef
- */
-static ULONG WINAPI IAutoComplete_fnAddRef(
-       IAutoComplete * iface)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)iface;
-    ULONG refCount = InterlockedIncrement(&This->ref);
-
-    TRACE("(%p)->(%u)\n", This, refCount - 1);
-
-    return refCount;
-}
-
-/******************************************************************************
- * IAutoComplete_fnRelease
- */
-static ULONG WINAPI IAutoComplete_fnRelease(
-       IAutoComplete * iface)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)iface;
-    ULONG refCount = InterlockedDecrement(&This->ref);
-
-    TRACE("(%p)->(%u)\n", This, refCount + 1);
-
-    if (!refCount) {
-       TRACE(" destroying IAutoComplete(%p)\n",This);
-        HeapFree(GetProcessHeap(), 0, This->quickComplete);
-        HeapFree(GetProcessHeap(), 0, This->txtbackup);
-       if (This->hwndListBox)
-           DestroyWindow(This->hwndListBox);
-       if (This->enumstr)
-           IEnumString_Release(This->enumstr);
-       HeapFree(GetProcessHeap(), 0, This);
-    }
-    return refCount;
-}
-
-/******************************************************************************
- * IAutoComplete_fnEnable
- */
-static HRESULT WINAPI IAutoComplete_fnEnable(
-    IAutoComplete * iface,
-    BOOL fEnable)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)iface;
-
-    HRESULT hr = S_OK;
-
-    TRACE("(%p)->(%s)\n", This, (fEnable)?"true":"false");
-
-    This->enabled = fEnable;
-
-    return hr;
-}
-
-/******************************************************************************
- * IAutoComplete_fnInit
- */
-static HRESULT WINAPI IAutoComplete_fnInit(
-    IAutoComplete * iface,
-    HWND hwndEdit,
-    IUnknown *punkACL,
-    LPCOLESTR pwzsRegKeyPath,
-    LPCOLESTR pwszQuickComplete)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)iface;
-    static const WCHAR lbName[] = {'L','i','s','t','B','o','x',0};
-
-    TRACE("(%p)->(0x%08lx, %p, %s, %s)\n",
-         This, hwndEdit, punkACL, debugstr_w(pwzsRegKeyPath), debugstr_w(pwszQuickComplete));
-
-    if (This->options & ACO_AUTOSUGGEST) TRACE(" ACO_AUTOSUGGEST\n");
-    if (This->options & ACO_AUTOAPPEND) TRACE(" ACO_AUTOAPPEND\n");
-    if (This->options & ACO_SEARCH) FIXME(" ACO_SEARCH not supported\n");
-    if (This->options & ACO_FILTERPREFIXES) FIXME(" ACO_FILTERPREFIXES not supported\n");
-    if (This->options & ACO_USETAB) FIXME(" ACO_USETAB not supported\n");
-    if (This->options & ACO_UPDOWNKEYDROPSLIST) TRACE(" ACO_UPDOWNKEYDROPSLIST\n");
-    if (This->options & ACO_RTLREADING) FIXME(" ACO_RTLREADING not supported\n");
-
-    This->hwndEdit = hwndEdit;
-
-    if (!SUCCEEDED (IUnknown_QueryInterface (punkACL, &IID_IEnumString, (LPVOID*)&This->enumstr))) {
-       TRACE("No IEnumString interface\n");
-       return  E_NOINTERFACE;
-    }
-
-    This->wpOrigEditProc = (WNDPROC) SetWindowLongPtrW( hwndEdit, GWLP_WNDPROC, (LONG_PTR) ACEditSubclassProc);
-    SetWindowLongPtrW( hwndEdit, GWLP_USERDATA, (LONG_PTR)This);
-
-    if (This->options & ACO_AUTOSUGGEST) {
-       HWND hwndParent;
-
-       hwndParent = GetParent(This->hwndEdit);
-
-       /* FIXME : The listbox should be resizable with the mouse. WS_THICKFRAME looks ugly */
-       This->hwndListBox = CreateWindowExW(0, lbName, NULL,
-                                           WS_BORDER | WS_CHILD | WS_VSCROLL | LBS_HASSTRINGS | LBS_NOTIFY | LBS_NOINTEGRALHEIGHT,
-                                           CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
-                                           hwndParent, NULL,
-                                           (HINSTANCE)GetWindowLongPtrW( hwndParent, GWLP_HINSTANCE ), NULL);
-
-       if (This->hwndListBox) {
-           This->wpOrigLBoxProc = (WNDPROC) SetWindowLongPtrW( This->hwndListBox, GWLP_WNDPROC, (LONG_PTR) ACLBoxSubclassProc);
-           SetWindowLongPtrW( This->hwndListBox, GWLP_USERDATA, (LONG_PTR)This);
-       }
-    }
-
-    if (pwzsRegKeyPath) {
-       WCHAR *key;
-       WCHAR result[MAX_PATH];
-       WCHAR *value;
-       HKEY hKey = 0;
-       LONG res;
-       LONG len;
-
-       /* pwszRegKeyPath contains the key as well as the value, so we split */
-       key = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (wcslen(pwzsRegKeyPath)+1)*sizeof(WCHAR));
-       wcscpy(key, pwzsRegKeyPath);
-       value = strrchrW(key, '\\');
-       *value = 0;
-       value++;
-       /* Now value contains the value and buffer the key */
-       res = RegOpenKeyExW(HKEY_CURRENT_USER, key, 0, KEY_READ, &hKey);
-       if (res != ERROR_SUCCESS) {
-           /* if the key is not found, MSDN states we must seek in HKEY_LOCAL_MACHINE */
-           res = RegOpenKeyExW(HKEY_LOCAL_MACHINE, key, 0, KEY_READ, &hKey);
-       }
-       if (res == ERROR_SUCCESS) {
-           res = RegQueryValueW(hKey, value, result, &len);
-           if (res == ERROR_SUCCESS) {
-               This->quickComplete = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len*sizeof(WCHAR));
-               wcscpy(This->quickComplete, result);
-           }
-           RegCloseKey(hKey);
-       }
-       HeapFree(GetProcessHeap(), 0, key);
-    }
-
-    if ((pwszQuickComplete) && (!This->quickComplete)) {
-       This->quickComplete = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (wcslen(pwszQuickComplete)+1)*sizeof(WCHAR));
-       wcscpy(This->quickComplete, pwszQuickComplete);
-    }
-
-    return S_OK;
-}
-
-/**************************************************************************
- *  IAutoComplete_fnVTable
- */
-static const IAutoCompleteVtbl acvt =
-{
-    IAutoComplete_fnQueryInterface,
-    IAutoComplete_fnAddRef,
-    IAutoComplete_fnRelease,
-    IAutoComplete_fnInit,
-    IAutoComplete_fnEnable,
-};
-
-/**************************************************************************
- *  AutoComplete2_QueryInterface
- */
-static HRESULT WINAPI IAutoComplete2_fnQueryInterface(
-    IAutoComplete2 * iface,
-    REFIID riid,
-    LPVOID *ppvObj)
-{
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE ("(%p)->(%s,%p)\n", This, shdebugstr_guid (riid), ppvObj);
-
-    return IAutoComplete_QueryInterface((IAutoComplete*)This, riid, ppvObj);
-}
-
-/******************************************************************************
- * IAutoComplete2_fnAddRef
- */
-static ULONG WINAPI IAutoComplete2_fnAddRef(
-       IAutoComplete2 * iface)
-{
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE ("(%p)->(count=%u)\n", This, This->ref);
-
-    return IAutoComplete2_AddRef((IAutoComplete*)This);
-}
-
-/******************************************************************************
- * IAutoComplete2_fnRelease
- */
-static ULONG WINAPI IAutoComplete2_fnRelease(
-       IAutoComplete2 * iface)
-{
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE ("(%p)->(count=%u)\n", This, This->ref);
-
-    return IAutoComplete_Release((IAutoComplete*)This);
-}
-
-/******************************************************************************
- * IAutoComplete2_fnEnable
- */
-static HRESULT WINAPI IAutoComplete2_fnEnable(
-    IAutoComplete2 * iface,
-    BOOL fEnable)
-{
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE ("(%p)->(%s)\n", This, (fEnable)?"true":"false");
-
-    return IAutoComplete_Enable((IAutoComplete*)This, fEnable);
-}
-
-/******************************************************************************
- * IAutoComplete2_fnInit
- */
-static HRESULT WINAPI IAutoComplete2_fnInit(
-    IAutoComplete2 * iface,
-    HWND hwndEdit,
-    IUnknown *punkACL,
-    LPCOLESTR pwzsRegKeyPath,
-    LPCOLESTR pwszQuickComplete)
-{
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE("(%p)\n", This);
-
-    return IAutoComplete_Init((IAutoComplete*)This, hwndEdit, punkACL, pwzsRegKeyPath, pwszQuickComplete);
-}
-
-/**************************************************************************
- *  IAutoComplete_fnGetOptions
- */
-static HRESULT WINAPI IAutoComplete2_fnGetOptions(
-    IAutoComplete2 * iface,
-    DWORD *pdwFlag)
-{
-    HRESULT hr = S_OK;
-
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE("(%p) -> (%p)\n", This, pdwFlag);
-
-    *pdwFlag = This->options;
-
-    return hr;
-}
-
-/**************************************************************************
- *  IAutoComplete_fnSetOptions
- */
-static HRESULT WINAPI IAutoComplete2_fnSetOptions(
-    IAutoComplete2 * iface,
-    DWORD dwFlag)
-{
-    HRESULT hr = S_OK;
-
-    IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
-
-    TRACE("(%p) -> (0x%x)\n", This, dwFlag);
-
-    This->options = dwFlag;
-
-    return hr;
-}
-
-/**************************************************************************
- *  IAutoComplete2_fnVTable
- */
-static const IAutoComplete2Vtbl ac2vt =
-{
-    IAutoComplete2_fnQueryInterface,
-    IAutoComplete2_fnAddRef,
-    IAutoComplete2_fnRelease,
-    IAutoComplete2_fnInit,
-    IAutoComplete2_fnEnable,
-    /* IAutoComplete2 */
-    IAutoComplete2_fnSetOptions,
-    IAutoComplete2_fnGetOptions,
-};
-
-/*
-  Window procedure for autocompletion
- */
-static LRESULT APIENTRY ACEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)GetWindowLongPtrW(hwnd, GWLP_USERDATA);
-    LPOLESTR strs;
-    HRESULT hr;
-    WCHAR hwndText[255];
-    WCHAR *hwndQCText;
-    RECT r;
-    BOOL control, filled, displayall = FALSE;
-    int cpt, height, sel;
-
-    if (!This->enabled) return CallWindowProcW(This->wpOrigEditProc, hwnd, uMsg, wParam, lParam);
-
-    switch (uMsg)
-    {
-       case CB_SHOWDROPDOWN:
-           ShowWindow(This->hwndListBox, SW_HIDE);
-           break;
-       case WM_KILLFOCUS:
-           if ((This->options & ACO_AUTOSUGGEST) &&
-               ((HWND)wParam != This->hwndListBox))
-           {
-               ShowWindow(This->hwndListBox, SW_HIDE);
-           }
-           break;
-       case WM_KEYUP:
-
-           GetWindowTextW( hwnd, (LPWSTR)hwndText, 255);
-
-           switch(wParam) {
-               case VK_RETURN:
-                   /* If quickComplete is set and control is pressed, replace the string */
-                   control = GetKeyState(VK_CONTROL) & 0x8000;
-                   if (control && This->quickComplete) {
-                       hwndQCText = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
-                                                      (wcslen(This->quickComplete)+wcslen(hwndText))*sizeof(WCHAR));
-                       sel = swprintf(hwndQCText, This->quickComplete, hwndText);
-                       SendMessageW(hwnd, WM_SETTEXT, 0, (LPARAM)hwndQCText);
-                       SendMessageW(hwnd, EM_SETSEL, 0, sel);
-                       HeapFree(GetProcessHeap(), 0, hwndQCText);
-                   }
-
-                   ShowWindow(This->hwndListBox, SW_HIDE);
-                   return 0;
-               case VK_LEFT:
-               case VK_RIGHT:
-                   return 0;
-               case VK_UP:
-               case VK_DOWN:
-                   /* Two cases here :
-                      - if the listbox is not visible, displays it
-                      with all the entries if the style ACO_UPDOWNKEYDROPSLIST
-                      is present but does not select anything.
-                      - if the listbox is visible, change the selection
-                   */
-                   if ( (This->options & (ACO_AUTOSUGGEST | ACO_UPDOWNKEYDROPSLIST))
-                        && (!IsWindowVisible(This->hwndListBox) && (! *hwndText)) )
-                   {
-                        /* We must display all the entries */
-                        displayall = TRUE;
-                   } else {
-                       if (IsWindowVisible(This->hwndListBox)) {
-                           int count;
-
-                           count = SendMessageW(This->hwndListBox, LB_GETCOUNT, 0, 0);
-                           /* Change the selection */
-                           sel = SendMessageW(This->hwndListBox, LB_GETCURSEL, 0, 0);
-                           if (wParam == VK_UP)
-                               sel = ((sel-1)<0)?count-1:sel-1;
-                           else
-                               sel = ((sel+1)>= count)?-1:sel+1;
-                           SendMessageW(This->hwndListBox, LB_SETCURSEL, sel, 0);
-                           if (sel != -1) {
-                               WCHAR *msg;
-                               int len;
-
-                               len = SendMessageW(This->hwndListBox, LB_GETTEXTLEN, sel, (LPARAM)NULL);
-                               msg = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (len+1)*sizeof(WCHAR));
-                               SendMessageW(This->hwndListBox, LB_GETTEXT, sel, (LPARAM)msg);
-                               SendMessageW(hwnd, WM_SETTEXT, 0, (LPARAM)msg);
-                               SendMessageW(hwnd, EM_SETSEL, wcslen(msg), wcslen(msg));
-                               HeapFree(GetProcessHeap(), 0, msg);
-                           } else {
-                               SendMessageW(hwnd, WM_SETTEXT, 0, (LPARAM)This->txtbackup);
-                               SendMessageW(hwnd, EM_SETSEL, wcslen(This->txtbackup), wcslen(This->txtbackup));
-                           }
-                       }
-                       return 0;
-                   }
-                   break;
-               case VK_BACK:
-               case VK_DELETE:
-                   if ((! *hwndText) && (This->options & ACO_AUTOSUGGEST)) {
-                       ShowWindow(This->hwndListBox, SW_HIDE);
-                       return CallWindowProcW(This->wpOrigEditProc, hwnd, uMsg, wParam, lParam);
-                   }
-                   if (This->options & ACO_AUTOAPPEND) {
-                       DWORD b;
-                       SendMessageW(hwnd, EM_GETSEL, (WPARAM)&b, (LPARAM)NULL);
-                       if (b>1) {
-                           hwndText[b-1] = '\0';
-                       } else {
-                           hwndText[0] = '\0';
-                           SetWindowTextW(hwnd, hwndText);
-                       }
-                   }
-                   break;
-               default:
-                   ;
-           }
-
-           SendMessageW(This->hwndListBox, LB_RESETCONTENT, 0, 0);
-
-           HeapFree(GetProcessHeap(), 0, This->txtbackup);
-           This->txtbackup = HeapAlloc(GetProcessHeap(),
-                                                HEAP_ZERO_MEMORY, (wcslen(hwndText)+1)*sizeof(WCHAR));
-           wcscpy(This->txtbackup, hwndText);
-
-           /* Returns if there is no text to search and we doesn't want to display all the entries */
-           if ((!displayall) && (! *hwndText) )
-               break;
-
-           IEnumString_Reset(This->enumstr);
-           filled = FALSE;
-           for(cpt = 0;;) {
-               hr = IEnumString_Next(This->enumstr, 1, &strs, NULL);
-               if (hr != S_OK)
-                   break;
-
-               if ((LPWSTR)strstrW(strs, hwndText) == strs) {
-
-                   if (This->options & ACO_AUTOAPPEND) {
-                       SetWindowTextW(hwnd, strs);
-                       SendMessageW(hwnd, EM_SETSEL, wcslen(hwndText), wcslen(strs));
-                       break;
-                   }
-
-                   if (This->options & ACO_AUTOSUGGEST) {
-                       SendMessageW(This->hwndListBox, LB_ADDSTRING, 0, (LPARAM)strs);
-                       filled = TRUE;
-                       cpt++;
-                   }
-               }
-           }
-
-           if (This->options & ACO_AUTOSUGGEST) {
-               if (filled) {
-                   height = SendMessageW(This->hwndListBox, LB_GETITEMHEIGHT, 0, 0);
-                   SendMessageW(This->hwndListBox, LB_CARETOFF, 0, 0);
-                   GetWindowRect(hwnd, &r);
-                   SetParent(This->hwndListBox, HWND_DESKTOP);
-                   /* It seems that Windows XP displays 7 lines at most
-                      and otherwise displays a vertical scroll bar */
-                   SetWindowPos(This->hwndListBox, HWND_TOP,
-                                r.left, r.bottom + 1, r.right - r.left, min(height * 7, height*(cpt+1)),
-                                SWP_SHOWWINDOW );
-               } else {
-                   ShowWindow(This->hwndListBox, SW_HIDE);
-               }
-           }
-
-           break;
-       default:
-           return CallWindowProcW(This->wpOrigEditProc, hwnd, uMsg, wParam, lParam);
-
-    }
-
-    return 0;
-}
-
-static LRESULT APIENTRY ACLBoxSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
-    IAutoCompleteImpl *This = (IAutoCompleteImpl *)GetWindowLongPtrW(hwnd, GWLP_USERDATA);
-    WCHAR *msg;
-    int sel, len;
-
-    switch (uMsg) {
-       case WM_MOUSEMOVE:
-           sel = SendMessageW(hwnd, LB_ITEMFROMPOINT, 0, lParam);
-           SendMessageW(hwnd, LB_SETCURSEL, (WPARAM)sel, (LPARAM)0);
-           break;
-       case WM_LBUTTONDOWN:
-           sel = SendMessageW(hwnd, LB_GETCURSEL, 0, 0);
-           if (sel < 0)
-               break;
-           len = SendMessageW(This->hwndListBox, LB_GETTEXTLEN, sel, 0);
-           msg = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (len+1)*sizeof(WCHAR));
-           SendMessageW(hwnd, LB_GETTEXT, sel, (LPARAM)msg);
-           SendMessageW(This->hwndEdit, WM_SETTEXT, 0, (LPARAM)msg);
-           SendMessageW(This->hwndEdit, EM_SETSEL, 0, wcslen(msg));
-           ShowWindow(hwnd, SW_HIDE);
-           HeapFree(GetProcessHeap(), 0, msg);
-           break;
-       default:
-           return CallWindowProcW(This->wpOrigLBoxProc, hwnd, uMsg, wParam, lParam);
-    }
-    return 0;
-}
diff --git a/reactos/dll/win32/shell32/brsfolder.c b/reactos/dll/win32/shell32/brsfolder.c
deleted file mode 100644 (file)
index 8409a3e..0000000
+++ /dev/null
@@ -1,816 +0,0 @@
-/*
- * Copyright 1999 Juergen Schmied
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- *
- * FIXME:
- *  - many memory leaks
- *  - many flags unimplemented
- *    - implement new dialog style "make new folder" button
- *    - implement editbox
- *    - implement new dialog style resizing
- */
-
-#include <precomp.h>
-
-
-WINE_DEFAULT_DEBUG_CHANNEL(shell);
-
-typedef struct tagbrowse_info
-{
-    HWND          hWnd;
-    HWND          hwndTreeView;
-    LPBROWSEINFOW lpBrowseInfo;
-    LPITEMIDLIST  pidlRet;
-} browse_info;
-
-typedef struct tagTV_ITEMDATA
-{
-   LPSHELLFOLDER lpsfParent; /* IShellFolder of the parent */
-   LPITEMIDLIST  lpi;        /* PIDL relative to parent */
-   LPITEMIDLIST  lpifq;      /* Fully qualified PIDL */
-   IEnumIDList*  pEnumIL;    /* Children iterator */
-} TV_ITEMDATA, *LPTV_ITEMDATA;
-
-#define SUPPORTEDFLAGS (BIF_STATUSTEXT | \
-                        BIF_BROWSEFORCOMPUTER | \
-                        BIF_RETURNFSANCESTORS | \
-                        BIF_RETURNONLYFSDIRS | \
-                        BIF_NONEWFOLDERBUTTON | \
-                        BIF_NEWDIALOGSTYLE | \
-                        BIF_BROWSEINCLUDEFILES)
-
-static void FillTreeView(browse_info*, LPSHELLFOLDER,
-               LPITEMIDLIST, HTREEITEM, IEnumIDList*);
-static HTREEITEM InsertTreeViewItem( browse_info*, IShellFolder *,
-               LPCITEMIDLIST, LPCITEMIDLIST, IEnumIDList*, HTREEITEM);
-
-static const WCHAR szBrowseFolderInfo[] = {
-    '_','_','W','I','N','E','_',
-    'B','R','S','F','O','L','D','E','R','D','L','G','_',
-    'I','N','F','O',0
-};
-
-static DWORD __inline BrowseFlagsToSHCONTF(UINT ulFlags)
-{
-    return SHCONTF_FOLDERS | (ulFlags & BIF_BROWSEINCLUDEFILES ? SHCONTF_NONFOLDERS : 0);
-}
-
-static void browsefolder_callback( LPBROWSEINFOW lpBrowseInfo, HWND hWnd,
-                                   UINT msg, LPARAM param )
-{
-    if (!lpBrowseInfo->lpfn)
-        return;
-    lpBrowseInfo->lpfn( hWnd, msg, param, lpBrowseInfo->lParam );
-}
-
-/******************************************************************************
- * InitializeTreeView [Internal]
- *
- * Called from WM_INITDIALOG handler.
- *
- * PARAMS
- *  hwndParent [I] The BrowseForFolder dialog
- *  root       [I] ITEMIDLIST of the root shell folder
- */
-static void InitializeTreeView( browse_info *info )
-{
-    LPITEMIDLIST pidlParent, pidlChild;
-    HIMAGELIST hImageList;
-    HRESULT hr;
-    IShellFolder *lpsfParent, *lpsfRoot;
-    IEnumIDList * pEnumChildren = NULL;
-    HTREEITEM item;
-    DWORD flags;
-    LPCITEMIDLIST root = info->lpBrowseInfo->pidlRoot;
-
-    TRACE("%p\n", info );
-
-    Shell_GetImageLists(NULL, &hImageList);
-
-    if (hImageList)
-        SendMessageW( info->hwndTreeView, TVM_SETIMAGELIST, 0, (LPARAM)hImageList );
-
-    /* We want to call InsertTreeViewItem down the code, in order to insert
-     * the root item of the treeview. Due to InsertTreeViewItem's signature,
-     * we need the following to do this:
-     *
-     * + An ITEMIDLIST corresponding to _the parent_ of root.
-     * + An ITEMIDLIST, which is a relative path from root's parent to root
-     *   (containing a single SHITEMID).
-     * + An IShellFolder interface pointer of root's parent folder.
-     *
-     * If root is 'Desktop', then root's parent is also 'Desktop'.
-     */
-
-    pidlParent = ILClone(root);
-    ILRemoveLastID(pidlParent);
-    pidlChild = ILClone(ILFindLastID(root));
-
-    if (_ILIsDesktop(pidlParent)) {
-        hr = SHGetDesktopFolder(&lpsfParent);
-    } else {
-        IShellFolder *lpsfDesktop;
-        hr = SHGetDesktopFolder(&lpsfDesktop);
-        if (!SUCCEEDED(hr)) {
-            WARN("SHGetDesktopFolder failed! hr = %08x\n", hr);
-            return;
-        }
-        hr = IShellFolder_BindToObject(lpsfDesktop, pidlParent, 0, &IID_IShellFolder, (LPVOID*)&lpsfParent);
-        IShellFolder_Release(lpsfDesktop);
-    }
-
-    if (!SUCCEEDED(hr)) {
-        WARN("Could not bind to parent shell folder! hr = %08x\n", hr);
-        return;
-    }
-
-    if (pidlChild && pidlChild->mkid.cb) {
-        hr = IShellFolder_BindToObject(lpsfParent, pidlChild, 0, &IID_IShellFolder, (LPVOID*)&lpsfRoot);
-    } else {
-        lpsfRoot = lpsfParent;
-        hr = IShellFolder_AddRef(lpsfParent);
-    }
-
-    if (!SUCCEEDED(hr)) {
-        WARN("Could not bind to root shell folder! hr = %08x\n", hr);
-        IShellFolder_Release(lpsfParent);
-        return;
-    }
-
-    flags = BrowseFlagsToSHCONTF( info->lpBrowseInfo->ulFlags );
-    hr = IShellFolder_EnumObjects( lpsfRoot, info->hWnd, flags, &pEnumChildren );
-    if (!SUCCEEDED(hr)) {
-        WARN("Could not get child iterator! hr = %08x\n", hr);
-        IShellFolder_Release(lpsfParent);
-        IShellFolder_Release(lpsfRoot);
-        return;
-    }
-
-    SendMessageW( info->hwndTreeView, TVM_DELETEITEM, 0, (LPARAM)TVI_ROOT );
-    item = InsertTreeViewItem( info, lpsfParent, pidlChild,
-                               pidlParent, pEnumChildren, TVI_ROOT );
-    SendMessageW( info->hwndTreeView, TVM_EXPAND, TVE_EXPAND, (LPARAM)item );
-
-    IShellFolder_Release(lpsfRoot);
-    IShellFolder_Release(lpsfParent);
-}
-
-static int GetIcon(LPCITEMIDLIST lpi, UINT uFlags)
-{
-    SHFILEINFOW sfi;
-    SHGetFileInfoW((LPCWSTR)lpi, 0 ,&sfi, sizeof(SHFILEINFOW), uFlags);
-    return sfi.iIcon;
-}
-
-static void GetNormalAndSelectedIcons(LPITEMIDLIST lpifq, LPTVITEMW lpTV_ITEM)
-{
-    LPITEMIDLIST pidlDesktop = NULL;
-    DWORD flags;
-
-    TRACE("%p %p\n",lpifq, lpTV_ITEM);
-
-    if (!lpifq)
-    {
-        pidlDesktop = _ILCreateDesktop();
-        lpifq = pidlDesktop;
-    }
-
-    flags = SHGFI_PIDL | SHGFI_SYSICONINDEX | SHGFI_SMALLICON;
-    lpTV_ITEM->iImage = GetIcon( lpifq, flags );
-
-    flags = SHGFI_PIDL | SHGFI_SYSICONINDEX | SHGFI_SMALLICON | SHGFI_OPENICON;
-    lpTV_ITEM->iSelectedImage = GetIcon( lpifq, flags );
-
-    if (pidlDesktop)
-        ILFree( pidlDesktop );
-}
-
-/******************************************************************************
- * GetName [Internal]
- *
- * Query a shell folder for the display name of one of it's children
- *
- * PARAMS
- *  lpsf           [I] IShellFolder interface of the folder to be queried.
- *  lpi            [I] ITEMIDLIST of the child, relative to parent
- *  dwFlags        [I] as in IShellFolder::GetDisplayNameOf
- *  lpFriendlyName [O] The desired display name in unicode
- *
- * RETURNS
- *  Success: TRUE
- *  Failure: FALSE
- */
-static BOOL GetName(LPSHELLFOLDER lpsf, LPCITEMIDLIST lpi, DWORD dwFlags, LPWSTR lpFriendlyName)
-{
-       BOOL   bSuccess=TRUE;
-       STRRET str;
-
-       TRACE("%p %p %x %p\n", lpsf, lpi, dwFlags, lpFriendlyName);
-       if (SUCCEEDED(IShellFolder_GetDisplayNameOf(lpsf, lpi, dwFlags, &str)))
-          bSuccess = StrRetToStrNW(lpFriendlyName, MAX_PATH, &str, lpi);
-       else
-         bSuccess = FALSE;
-
-       TRACE("-- %s\n", debugstr_w(lpFriendlyName));
-       return bSuccess;
-}
-
-/******************************************************************************
- * InsertTreeViewItem [Internal]
- *
- * PARAMS
- *  info       [I] data for the dialog
- *  lpsf       [I] IShellFolder interface of the item's parent shell folder
- *  pidl       [I] ITEMIDLIST of the child to insert, relative to parent
- *  pidlParent [I] ITEMIDLIST of the parent shell folder
- *  pEnumIL    [I] Iterator for the children of the item to be inserted
- *  hParent    [I] The treeview-item that represents the parent shell folder
- *
- * RETURNS
- *  Success: Handle to the created and inserted treeview-item
- *  Failure: NULL
- */
-static HTREEITEM InsertTreeViewItem( browse_info *info, IShellFolder * lpsf,
-    LPCITEMIDLIST pidl, LPCITEMIDLIST pidlParent, IEnumIDList* pEnumIL,
-    HTREEITEM hParent)
-{
-       TVITEMW         tvi;
-       TVINSERTSTRUCTW tvins;
-       WCHAR           szBuff[MAX_PATH];
-       LPTV_ITEMDATA   lptvid=0;
-
-       tvi.mask  = TVIF_TEXT | TVIF_IMAGE | TVIF_SELECTEDIMAGE | TVIF_PARAM;
-
-       tvi.cChildren= pEnumIL ? 1 : 0;
-       tvi.mask |= TVIF_CHILDREN;
-
-       lptvid = SHAlloc( sizeof(TV_ITEMDATA) );
-       if (!lptvid)
-           return NULL;
-
-       if (!GetName(lpsf, pidl, SHGDN_NORMAL, szBuff))
-           return NULL;
-
-       tvi.pszText    = szBuff;
-       tvi.cchTextMax = MAX_PATH;
-       tvi.lParam = (LPARAM)lptvid;
-
-       IShellFolder_AddRef(lpsf);
-       lptvid->lpsfParent = lpsf;
-       lptvid->lpi     = ILClone(pidl);
-       lptvid->lpifq   = pidlParent ? ILCombine(pidlParent, pidl) : ILClone(pidl);
-       lptvid->pEnumIL = pEnumIL;
-       GetNormalAndSelectedIcons(lptvid->lpifq, &tvi);
-
-       tvins.u.item       = tvi;
-       tvins.hInsertAfter = NULL;
-       tvins.hParent      = hParent;
-
-       return (HTREEITEM)SendMessageW(info->hwndTreeView, TVM_INSERTITEM, 0, (LPARAM)&tvins );
-}
-
-/******************************************************************************
- * FillTreeView [Internal]
- *
- * For each child (given by lpe) of the parent shell folder, which is given by
- * lpsf and whose PIDL is pidl, insert a treeview-item right under hParent
- *
- * PARAMS
- *  info    [I] data for the dialog
- *  lpsf    [I] IShellFolder interface of the parent shell folder
- *  pidl    [I] ITEMIDLIST of the parent shell folder
- *  hParent [I] The treeview item that represents the parent shell folder
- *  lpe     [I] An iterator for the children of the parent shell folder
- */
-static void FillTreeView( browse_info *info, IShellFolder * lpsf,
-                 LPITEMIDLIST  pidl, HTREEITEM hParent, IEnumIDList* lpe)
-{
-       HTREEITEM       hPrev = 0;
-       LPITEMIDLIST    pidlTemp = 0;
-       ULONG           ulFetched;
-       HRESULT         hr;
-       HWND            hwnd = GetParent( info->hwndTreeView );
-
-       TRACE("%p %p %p %p\n",lpsf, pidl, hParent, lpe);
-
-       /* No IEnumIDList -> No children */
-       if (!lpe) return;
-
-       SetCapture( hwnd );
-       SetCursor( LoadCursorA( 0, (LPSTR)IDC_WAIT ) );
-
-       while (NOERROR == IEnumIDList_Next(lpe,1,&pidlTemp,&ulFetched))
-       {
-           ULONG ulAttrs = SFGAO_HASSUBFOLDER | SFGAO_FOLDER;
-           IEnumIDList* pEnumIL = NULL;
-           IShellFolder* pSFChild = NULL;
-           IShellFolder_GetAttributesOf(lpsf, 1, (LPCITEMIDLIST*)&pidlTemp, &ulAttrs);
-           if (ulAttrs & SFGAO_FOLDER)
-           {
-               hr = IShellFolder_BindToObject(lpsf,pidlTemp,NULL,&IID_IShellFolder,(LPVOID*)&pSFChild);
-               if (SUCCEEDED(hr))
-                {
-                   DWORD flags = BrowseFlagsToSHCONTF(info->lpBrowseInfo->ulFlags);
-                   hr = IShellFolder_EnumObjects(pSFChild, hwnd, flags, &pEnumIL);
-                    if (hr == S_OK)
-                    {
-                        if ((IEnumIDList_Skip(pEnumIL, 1) != S_OK) ||
-                             FAILED(IEnumIDList_Reset(pEnumIL)))
-                        {
-                            IEnumIDList_Release(pEnumIL);
-                            pEnumIL = NULL;
-                        }
-                    }
-                    IShellFolder_Release(pSFChild);
-                }
-           }
-
-           if (!(hPrev = InsertTreeViewItem(info, lpsf, pidlTemp, pidl, pEnumIL, hParent)))
-               goto done;
-           SHFree(pidlTemp);  /* Finally, free the pidl that the shell gave us... */
-           pidlTemp=NULL;
-       }
-
-done:
-       ReleaseCapture();
-       SetCursor(LoadCursorW(0, (LPWSTR)IDC_ARROW));
-    SHFree(pidlTemp);
-}
-
-static BOOL __inline PIDLIsType(LPCITEMIDLIST pidl, PIDLTYPE type)
-{
-    LPPIDLDATA data = _ILGetDataPointer(pidl);
-    if (!data)
-        return FALSE;
-    return (data->type == type);
-}
-
-static void BrsFolder_CheckValidSelection( browse_info *info, LPTV_ITEMDATA lptvid )
-{
-    LPBROWSEINFOW lpBrowseInfo = info->lpBrowseInfo;
-    LPCITEMIDLIST pidl = lptvid->lpi;
-    BOOL bEnabled = TRUE;
-    DWORD dwAttributes;
-    HRESULT r;
-
-    if ((lpBrowseInfo->ulFlags & BIF_BROWSEFORCOMPUTER) &&
-        !PIDLIsType(pidl, PT_COMP))
-        bEnabled = FALSE;
-    if (lpBrowseInfo->ulFlags & BIF_RETURNFSANCESTORS)
-    {
-        dwAttributes = SFGAO_FILESYSANCESTOR | SFGAO_FILESYSTEM;
-        r = IShellFolder_GetAttributesOf(lptvid->lpsfParent, 1,
-                                (LPCITEMIDLIST*)&lptvid->lpi, &dwAttributes);
-        if (FAILED(r) || !(dwAttributes & (SFGAO_FILESYSANCESTOR|SFGAO_FILESYSTEM)))
-            bEnabled = FALSE;
-    }
-    if (lpBrowseInfo->ulFlags & BIF_RETURNONLYFSDIRS)
-    {
-        dwAttributes = SFGAO_FOLDER | SFGAO_FILESYSTEM;
-        r = IShellFolder_GetAttributesOf(lptvid->lpsfParent, 1,
-                                (LPCITEMIDLIST*)&lptvid->lpi, &dwAttributes);
-        if (FAILED(r) ||
-            ((dwAttributes & (SFGAO_FOLDER|SFGAO_FILESYSTEM)) != (SFGAO_FOLDER|SFGAO_FILESYSTEM)))
-        {
-            bEnabled = FALSE;
-        }
-    }
-    SendMessageW(info->hWnd, BFFM_ENABLEOK, 0, (LPARAM)bEnabled);
-}
-
-static LRESULT BrsFolder_Treeview_Delete( browse_info *info, NMTREEVIEWW *pnmtv )
-{
-    LPTV_ITEMDATA lptvid = (LPTV_ITEMDATA)pnmtv->itemOld.lParam;
-
-    TRACE("TVN_DELETEITEMA/W %p\n", lptvid);
-
-    IShellFolder_Release(lptvid->lpsfParent);
-    if (lptvid->pEnumIL)
-        IEnumIDList_Release(lptvid->pEnumIL);
-    SHFree(lptvid->lpi);
-    SHFree(lptvid->lpifq);
-    SHFree(lptvid);
-    return 0;
-}
-
-static LRESULT BrsFolder_Treeview_Expand( browse_info *info, NMTREEVIEWW *pnmtv )
-{
-    IShellFolder *lpsf2 = NULL;
-    LPTV_ITEMDATA lptvid = (LPTV_ITEMDATA) pnmtv->itemNew.lParam;
-    HRESULT r;
-
-    TRACE("TVN_ITEMEXPANDINGA/W\n");
-
-    if ((pnmtv->itemNew.state & TVIS_EXPANDEDONCE))
-        return 0;
-
-    if (lptvid->lpi && lptvid->lpi->mkid.cb) {
-        r = IShellFolder_BindToObject( lptvid->lpsfParent, lptvid->lpi, 0,
-                                      (REFIID)&IID_IShellFolder, (LPVOID *)&lpsf2 );
-    } else {
-        lpsf2 = lptvid->lpsfParent;
-        r = IShellFolder_AddRef(lpsf2);
-    }
-
-    if (SUCCEEDED(r))
-        FillTreeView( info, lpsf2, lptvid->lpifq, pnmtv->itemNew.hItem, lptvid->pEnumIL);
-
-    /* My Computer is already sorted and trying to do a simple text
-     * sort will only mess things up */
-    if (!_ILIsMyComputer(lptvid->lpi))
-        SendMessageW( info->hwndTreeView, TVM_SORTCHILDREN,
-                      FALSE, (LPARAM)pnmtv->itemNew.hItem );
-
-    return 0;
-}
-
-static HRESULT BrsFolder_Treeview_Changed( browse_info *info, NMTREEVIEWW *pnmtv )
-{
-    LPTV_ITEMDATA lptvid = (LPTV_ITEMDATA) pnmtv->itemNew.lParam;
-
-    lptvid = (LPTV_ITEMDATA) pnmtv->itemNew.lParam;
-    info->pidlRet = lptvid->lpifq;
-    browsefolder_callback( info->lpBrowseInfo, info->hWnd, BFFM_SELCHANGED,
-                           (LPARAM)info->pidlRet );
-    BrsFolder_CheckValidSelection( info, lptvid );
-    return 0;
-}
-
-static LRESULT BrsFolder_OnNotify( browse_info *info, UINT CtlID, LPNMHDR lpnmh )
-{
-    NMTREEVIEWW *pnmtv = (NMTREEVIEWW *)lpnmh;
-
-    TRACE("%p %x %p msg=%x\n", info, CtlID, lpnmh, pnmtv->hdr.code);
-
-    if (pnmtv->hdr.idFrom != IDD_TREEVIEW)
-        return 0;
-
-    switch (pnmtv->hdr.code)
-    {
-    case TVN_DELETEITEMA:
-    case TVN_DELETEITEMW:
-        return BrsFolder_Treeview_Delete( info, pnmtv );
-
-    case TVN_ITEMEXPANDINGA:
-    case TVN_ITEMEXPANDINGW:
-        return BrsFolder_Treeview_Expand( info, pnmtv );
-
-    case TVN_SELCHANGEDA:
-    case TVN_SELCHANGEDW:
-        return BrsFolder_Treeview_Changed( info, pnmtv );
-
-    default:
-        WARN("unhandled (%d)\n", pnmtv->hdr.code);
-        break;
-    }
-
-    return 0;
-}
-
-
-static BOOL BrsFolder_OnCreate( HWND hWnd, browse_info *info )
-{
-    LPBROWSEINFOW lpBrowseInfo = info->lpBrowseInfo;
-
-    info->hWnd = hWnd;
-    SetPropW( hWnd, szBrowseFolderInfo, info );
-
-    if (lpBrowseInfo->ulFlags & BIF_NEWDIALOGSTYLE)
-        FIXME("flags BIF_NEWDIALOGSTYLE partially implemented\n");
-    if (lpBrowseInfo->ulFlags & ~SUPPORTEDFLAGS)
-       FIXME("flags %x not implemented\n", lpBrowseInfo->ulFlags & ~SUPPORTEDFLAGS);
-
-    if (lpBrowseInfo->lpszTitle)
-       SetWindowTextW( GetDlgItem(hWnd, IDD_TITLE), lpBrowseInfo->lpszTitle );
-    else
-       ShowWindow( GetDlgItem(hWnd, IDD_TITLE), SW_HIDE );
-
-    if (!(lpBrowseInfo->ulFlags & BIF_STATUSTEXT)
-        || (lpBrowseInfo->ulFlags & BIF_NEWDIALOGSTYLE))
-       ShowWindow( GetDlgItem(hWnd, IDD_STATUS), SW_HIDE );
-
-    /* Hide "Make New Folder" Button? */
-    if ((lpBrowseInfo->ulFlags & BIF_NONEWFOLDERBUTTON)
-        || !(lpBrowseInfo->ulFlags & BIF_NEWDIALOGSTYLE))
-        ShowWindow( GetDlgItem(hWnd, IDD_MAKENEWFOLDER), SW_HIDE );
-
-    /* Hide the editbox? */
-    if (!(lpBrowseInfo->ulFlags & BIF_EDITBOX))
-    {
-        ShowWindow( GetDlgItem(hWnd, IDD_FOLDER), SW_HIDE );
-        ShowWindow( GetDlgItem(hWnd, IDD_FOLDERTEXT), SW_HIDE );
-    }
-
-    info->hwndTreeView = GetDlgItem( hWnd, IDD_TREEVIEW );
-    if (info->hwndTreeView)
-    {
-        InitializeTreeView( info );
-
-        /* Resize the treeview if there's not editbox */
-        if ((lpBrowseInfo->ulFlags & BIF_NEWDIALOGSTYLE)
-            && !(lpBrowseInfo->ulFlags & BIF_EDITBOX))
-        {
-            RECT rc;
-            GetClientRect(info->hwndTreeView, &rc);
-            SetWindowPos(info->hwndTreeView, HWND_TOP, 0, 0,
-                         rc.right, rc.bottom + 40, SWP_NOMOVE);
-        }
-    }
-    else
-        ERR("treeview control missing!\n");
-
-    browsefolder_callback( info->lpBrowseInfo, hWnd, BFFM_INITIALIZED, 0 );
-
-    return TRUE;
-}
-
-static BOOL BrsFolder_OnCommand( browse_info *info, UINT id )
-{
-    LPBROWSEINFOW lpBrowseInfo = info->lpBrowseInfo;
-
-    switch (id)
-    {
-    case IDOK:
-        /* The original pidl is owned by the treeview and will be free'd. */
-        info->pidlRet = ILClone(info->pidlRet);
-        if (info->pidlRet == NULL) /* A null pidl would mean a cancel */
-            info->pidlRet = _ILCreateDesktop();
-        pdump( info->pidlRet );
-        if (lpBrowseInfo->pszDisplayName)
-            SHGetPathFromIDListW( info->pidlRet, lpBrowseInfo->pszDisplayName );
-        EndDialog( info->hWnd, 1 );
-        return TRUE;
-
-    case IDCANCEL:
-        EndDialog( info->hWnd, 0 );
-        return TRUE;
-
-    case IDD_MAKENEWFOLDER:
-        FIXME("make new folder not implemented\n");
-        return TRUE;
-    }
-    return FALSE;
-}
-
-static BOOL BrsFolder_OnSetExpanded(browse_info *info, LPVOID selection,
-    BOOL is_str, HTREEITEM *pItem)
-{
-    LPITEMIDLIST pidlSelection = (LPITEMIDLIST)selection;
-    LPCITEMIDLIST pidlCurrent, pidlRoot;
-    TVITEMEXW item;
-    BOOL bResult = FALSE;
-
-    /* If 'selection' is a string, convert to a Shell ID List. */
-    if (is_str) {
-        IShellFolder *psfDesktop;
-        HRESULT hr;
-
-        hr = SHGetDesktopFolder(&psfDesktop);
-        if (FAILED(hr))
-            goto done;
-
-        hr = IShellFolder_ParseDisplayName(psfDesktop, NULL, NULL,
-                     (LPOLESTR)selection, NULL, &pidlSelection, NULL);
-        IShellFolder_Release(psfDesktop);
-        if (FAILED(hr))
-            goto done;
-    }
-
-    /* Move pidlCurrent behind the SHITEMIDs in pidlSelection, which are the root of
-     * the sub-tree currently displayed. */
-    pidlRoot = info->lpBrowseInfo->pidlRoot;
-    pidlCurrent = pidlSelection;
-    while (!_ILIsEmpty(pidlRoot) && _ILIsEqualSimple(pidlRoot, pidlCurrent)) {
-        pidlRoot = ILGetNext(pidlRoot);
-        pidlCurrent = ILGetNext(pidlCurrent);
-    }
-
-    /* The given ID List is not part of the SHBrowseForFolder's current sub-tree. */
-    if (!_ILIsEmpty(pidlRoot))
-        goto done;
-
-    /* Initialize item to point to the first child of the root folder. */
-    memset(&item, 0, sizeof(item));
-    item.mask = TVIF_PARAM;
-    item.hItem = TreeView_GetRoot(info->hwndTreeView);
-    if (item.hItem)
-        item.hItem = TreeView_GetChild(info->hwndTreeView, item.hItem);
-
-    /* Walk the tree along the nodes corresponding to the remaining ITEMIDLIST */
-    while (item.hItem && !_ILIsEmpty(pidlCurrent)) {
-        LPTV_ITEMDATA pItemData;
-
-        SendMessageW(info->hwndTreeView, TVM_GETITEMW, 0, (LPARAM)&item);
-        pItemData = (LPTV_ITEMDATA)item.lParam;
-
-        if (_ILIsEqualSimple(pItemData->lpi, pidlCurrent)) {
-            pidlCurrent = ILGetNext(pidlCurrent);
-            if (!_ILIsEmpty(pidlCurrent)) {
-                /* Only expand current node and move on to it's first child,
-                 * if we didn't already reach the last SHITEMID */
-                SendMessageW(info->hwndTreeView, TVM_EXPAND, TVE_EXPAND, (LPARAM)item.hItem);
-                item.hItem = TreeView_GetChild(info->hwndTreeView, item.hItem);
-            }
-        } else {
-            item.hItem = TreeView_GetNextSibling(info->hwndTreeView, item.hItem);
-        }
-    }
-
-    if (_ILIsEmpty(pidlCurrent) && item.hItem)
-        bResult = TRUE;
-
-done:
-    if (pidlSelection && pidlSelection != (LPITEMIDLIST)selection)
-        ILFree(pidlSelection);
-
-    if (pItem)
-        *pItem = item.hItem;
-
-    return bResult;
-}
-
-static BOOL BrsFolder_OnSetSelectionW(browse_info *info, LPVOID selection, BOOL is_str) {
-    HTREEITEM hItem;
-    BOOL bResult;
-
-    bResult = BrsFolder_OnSetExpanded(info, selection, is_str, &hItem);
-    if (bResult)
-        SendMessageW(info->hwndTreeView, TVM_SELECTITEM, TVGN_CARET, (LPARAM)hItem );
-    return bResult;
-}
-
-static BOOL BrsFolder_OnSetSelectionA(browse_info *info, LPVOID selection, BOOL is_str) {
-    LPWSTR selectionW = NULL;
-    BOOL result = FALSE;
-    int length;
-
-    if (!is_str)
-        return BrsFolder_OnSetSelectionW(info, selection, is_str);
-
-    if ((length = MultiByteToWideChar(CP_ACP, 0, (LPCSTR)selection, -1, NULL, 0)) &&
-        (selectionW = HeapAlloc(GetProcessHeap(), 0, length * sizeof(WCHAR))) &&
-        MultiByteToWideChar(CP_ACP, 0, (LPCSTR)selection, -1, selectionW, length))
-    {
-        result = BrsFolder_OnSetSelectionW(info, selectionW, is_str);
-    }
-
-    HeapFree(GetProcessHeap(), 0, selectionW);
-    return result;
-}
-
-/*************************************************************************
- *             BrsFolderDlgProc32  (not an exported API function)
- */
-static INT_PTR CALLBACK BrsFolderDlgProc( HWND hWnd, UINT msg, WPARAM wParam,
-                                         LPARAM lParam )
-{
-    browse_info *info;
-
-    TRACE("hwnd=%p msg=%04x 0x%08lx 0x%08lx\n", hWnd, msg, wParam, lParam );
-
-    if (msg == WM_INITDIALOG)
-        return BrsFolder_OnCreate( hWnd, (browse_info*) lParam );
-
-    info = (browse_info*) GetPropW( hWnd, szBrowseFolderInfo );
-
-    switch (msg)
-    {
-    case WM_NOTIFY:
-        return BrsFolder_OnNotify( info, (UINT)wParam, (LPNMHDR)lParam);
-
-    case WM_COMMAND:
-        return BrsFolder_OnCommand( info, wParam );
-
-    case BFFM_SETSTATUSTEXTA:
-        TRACE("Set status %s\n", debugstr_a((LPSTR)lParam));
-        SetWindowTextA(GetDlgItem(hWnd, IDD_STATUS), (LPSTR)lParam);
-        break;
-
-    case BFFM_SETSTATUSTEXTW:
-        TRACE("Set status %s\n", debugstr_w((LPWSTR)lParam));
-        SetWindowTextW(GetDlgItem(hWnd, IDD_STATUS), (LPWSTR)lParam);
-        break;
-
-    case BFFM_ENABLEOK:
-        TRACE("Enable %ld\n", lParam);
-        EnableWindow(GetDlgItem(hWnd, 1), (lParam)?TRUE:FALSE);
-        break;
-
-    case BFFM_SETOKTEXT: /* unicode only */
-        TRACE("Set OK text %s\n", debugstr_w((LPWSTR)wParam));
-        SetWindowTextW(GetDlgItem(hWnd, 1), (LPWSTR)wParam);
-        break;
-
-    case BFFM_SETSELECTIONA:
-        return BrsFolder_OnSetSelectionA(info, (LPVOID)lParam, (BOOL)wParam);
-
-    case BFFM_SETSELECTIONW:
-        return BrsFolder_OnSetSelectionW(info, (LPVOID)lParam, (BOOL)wParam);
-
-    case BFFM_SETEXPANDED: /* unicode only */
-        return BrsFolder_OnSetExpanded(info, (LPVOID)lParam, (BOOL)wParam, NULL);
-    }
-    return FALSE;
-}
-
-static const WCHAR swBrowseTemplateName[] = {
-    'S','H','B','R','S','F','O','R','F','O','L','D','E','R','_','M','S','G','B','O','X',0};
-static const WCHAR swNewBrowseTemplateName[] = {
-    'S','H','N','E','W','B','R','S','F','O','R','F','O','L','D','E','R','_','M','S','G','B','O','X',0};
-
-/*************************************************************************
- * SHBrowseForFolderA [SHELL32.@]
- * SHBrowseForFolder  [SHELL32.@]
- */
-LPITEMIDLIST WINAPI SHBrowseForFolderA (LPBROWSEINFOA lpbi)
-{
-    BROWSEINFOW bi;
-    LPITEMIDLIST lpid;
-    INT len;
-    LPWSTR title;
-
-    TRACE("%p\n", lpbi);
-
-    bi.hwndOwner = lpbi->hwndOwner;
-    bi.pidlRoot = lpbi->pidlRoot;
-    if (lpbi->pszDisplayName)
-    {
-        bi.pszDisplayName = HeapAlloc( GetProcessHeap(), 0, MAX_PATH * sizeof(WCHAR) );
-        MultiByteToWideChar( CP_ACP, 0, lpbi->pszDisplayName, -1, bi.pszDisplayName, MAX_PATH );
-    }
-    else
-        bi.pszDisplayName = NULL;
-
-    if (lpbi->lpszTitle)
-    {
-        len = MultiByteToWideChar( CP_ACP, 0, lpbi->lpszTitle, -1, NULL, 0 );
-        title = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) );
-        MultiByteToWideChar( CP_ACP, 0, lpbi->lpszTitle, -1, title, len );
-    }
-    else
-        title = NULL;
-
-    bi.lpszTitle = title;
-    bi.ulFlags = lpbi->ulFlags;
-    bi.lpfn = lpbi->lpfn;
-    bi.lParam = lpbi->lParam;
-    bi.iImage = lpbi->iImage;
-    lpid = SHBrowseForFolderW( &bi );
-    if (bi.pszDisplayName)
-    {
-        WideCharToMultiByte( CP_ACP, 0, bi.pszDisplayName, -1,
-                             lpbi->pszDisplayName, MAX_PATH, 0, NULL);
-        HeapFree( GetProcessHeap(), 0, bi.pszDisplayName );
-    }
-    HeapFree(GetProcessHeap(), 0, title);
-    lpbi->iImage = bi.iImage;
-    return lpid;
-}
-
-
-/*************************************************************************
- * SHBrowseForFolderW [SHELL32.@]
- *
- * NOTES
- *  crashes when passed a null pointer
- */
-LPITEMIDLIST WINAPI SHBrowseForFolderW (LPBROWSEINFOW lpbi)
-{
-    browse_info info;
-    DWORD r;
-    HRESULT hr;
-    const WCHAR * templateName;
-
-    info.hWnd = 0;
-    info.pidlRet = NULL;
-    info.lpBrowseInfo = lpbi;
-    info.hwndTreeView = NULL;
-
-    hr = OleInitialize(NULL);
-
-    if (lpbi->ulFlags & BIF_NEWDIALOGSTYLE)
-        templateName = swNewBrowseTemplateName;
-    else
-        templateName = swBrowseTemplateName;
-    r = DialogBoxParamW( shell32_hInstance, templateName, lpbi->hwndOwner,
-                        BrsFolderDlgProc, (LPARAM)&info );
-    if (SUCCEEDED(hr))
-        OleUninitialize();
-    if (!r)
-        return NULL;
-
-    return info.pidlRet;
-}
diff --git a/reactos/dll/win32/shell32/changenotify.c b/reactos/dll/win32/shell32/changenotify.c
deleted file mode 100644 (file)
index 08a4637..0000000
+++ /dev/null
@@ -1,473 +0,0 @@
-/*
- *     shell change notification
- *
- * Copyright 2000 Juergen Schmied
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <precomp.h>
-
-
-WINE_DEFAULT_DEBUG_CHANNEL(shell);
-
-static CRITICAL_SECTION SHELL32_ChangenotifyCS;
-static CRITICAL_SECTION_DEBUG critsect_debug =
-{
-    0, 0, &SHELL32_ChangenotifyCS,
-    { &critsect_debug.ProcessLocksList, &critsect_debug.ProcessLocksList },
-      0, 0, { (DWORD_PTR)(__FILE__ ": SHELL32_ChangenotifyCS") }
-};
-static CRITICAL_SECTION SHELL32_ChangenotifyCS = { &critsect_debug, -1, 0, 0, 0, 0 };
-
-typedef SHChangeNotifyEntry *LPNOTIFYREGISTER;
-
-/* internal list of notification clients (internal) */
-typedef struct _NOTIFICATIONLIST
-{
-       struct _NOTIFICATIONLIST *next;
-       struct _NOTIFICATIONLIST *prev;
-       HWND hwnd;              /* window to notify */
-       DWORD uMsg;             /* message to send */
-       LPNOTIFYREGISTER apidl; /* array of entries to watch*/
-       UINT cidl;              /* number of pidls in array */
-       LONG wEventMask;        /* subscribed events */
-       LONG wSignalledEvent;   /* event that occurred */
-       DWORD dwFlags;          /* client flags */
-       LPCITEMIDLIST pidlSignaled; /*pidl of the path that caused the signal*/
-
-} NOTIFICATIONLIST, *LPNOTIFICATIONLIST;
-
-static NOTIFICATIONLIST *head, *tail;
-
-#define SHCNE_NOITEMEVENTS ( \
-   SHCNE_ASSOCCHANGED )
-
-#define SHCNE_ONEITEMEVENTS ( \
-   SHCNE_ATTRIBUTES | SHCNE_CREATE | SHCNE_DELETE | SHCNE_DRIVEADD | \
-   SHCNE_DRIVEADDGUI | SHCNE_DRIVEREMOVED | SHCNE_FREESPACE | \
-   SHCNE_MEDIAINSERTED | SHCNE_MEDIAREMOVED | SHCNE_MKDIR | \
-   SHCNE_NETSHARE | SHCNE_NETUNSHARE | SHCNE_RMDIR | \
-   SHCNE_SERVERDISCONNECT | SHCNE_UPDATEDIR | SHCNE_UPDATEIMAGE )
-
-#define SHCNE_TWOITEMEVENTS ( \
-   SHCNE_RENAMEFOLDER | SHCNE_RENAMEITEM | SHCNE_UPDATEITEM )
-
-/* for dumping events */
-static const char * DumpEvent( LONG event )
-{
-    if( event == SHCNE_ALLEVENTS )
-        return "SHCNE_ALLEVENTS";
-#define DUMPEV(x)  ,( event & SHCNE_##x )? #x " " : ""
-    return wine_dbg_sprintf( "%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s"
-    DUMPEV(RENAMEITEM)
-    DUMPEV(CREATE)
-    DUMPEV(DELETE)
-    DUMPEV(MKDIR)
-    DUMPEV(RMDIR)
-    DUMPEV(MEDIAINSERTED)
-    DUMPEV(MEDIAREMOVED)
-    DUMPEV(DRIVEREMOVED)
-    DUMPEV(DRIVEADD)
-    DUMPEV(NETSHARE)
-    DUMPEV(NETUNSHARE)
-    DUMPEV(ATTRIBUTES)
-    DUMPEV(UPDATEDIR)
-    DUMPEV(UPDATEITEM)
-    DUMPEV(SERVERDISCONNECT)
-    DUMPEV(UPDATEIMAGE)
-    DUMPEV(DRIVEADDGUI)
-    DUMPEV(RENAMEFOLDER)
-    DUMPEV(FREESPACE)
-    DUMPEV(EXTENDED_EVENT)
-    DUMPEV(ASSOCCHANGED)
-    DUMPEV(INTERRUPT)
-    );
-#undef DUMPEV
-}
-
-static const char * NodeName(const NOTIFICATIONLIST *item)
-{
-    const char *str;
-    WCHAR path[MAX_PATH];
-
-    if(SHGetPathFromIDListW(item->apidl[0].pidl, path ))
-        str = wine_dbg_sprintf("%s", debugstr_w(path));
-    else
-        str = wine_dbg_sprintf("<not a disk file>" );
-    return str;
-}
-
-static void AddNode(LPNOTIFICATIONLIST item)
-{
-    TRACE("item %p\n", item );
-
-    /* link items */
-    item->prev = tail;
-    item->next = NULL;
-    if( tail )
-        tail->next = item;
-    else
-        head = item;
-    tail = item;
-}
-
-static LPNOTIFICATIONLIST FindNode( HANDLE hitem )
-{
-    LPNOTIFICATIONLIST ptr;
-    for( ptr = head; ptr; ptr = ptr->next )
-        if( ptr == (LPNOTIFICATIONLIST) hitem )
-            return ptr;
-    return NULL;
-}
-
-static void DeleteNode(LPNOTIFICATIONLIST item)
-{
-    UINT i;
-
-    TRACE("item=%p prev=%p next=%p\n", item, item->prev, item->next);
-
-    /* remove item from list */
-    if( item->prev )
-        item->prev->next = item->next;
-    else
-        head = item->next;
-    if( item->next )
-        item->next->prev = item->prev;
-    else
-        tail = item->prev;
-
-    /* free the item */
-    for (i=0; i<item->cidl; i++)
-        SHFree((LPITEMIDLIST)item->apidl[i].pidl);
-    SHFree(item->apidl);
-    SHFree(item);
-}
-
-void InitChangeNotifications(void)
-{
-}
-
-void FreeChangeNotifications(void)
-{
-    TRACE("\n");
-
-    EnterCriticalSection(&SHELL32_ChangenotifyCS);
-
-    while( head )
-        DeleteNode( head );
-
-    LeaveCriticalSection(&SHELL32_ChangenotifyCS);
-
-    // DeleteCriticalSection(&SHELL32_ChangenotifyCS); // static
-}
-
-/*************************************************************************
- * SHChangeNotifyRegister                      [SHELL32.2]
- *
- */
-ULONG WINAPI
-SHChangeNotifyRegister(
-    HWND hwnd,
-    int fSources,
-    LONG wEventMask,
-    UINT uMsg,
-    int cItems,
-    const SHChangeNotifyEntry *lpItems)
-{
-    LPNOTIFICATIONLIST item;
-    int i;
-
-    item = SHAlloc(sizeof(NOTIFICATIONLIST));
-
-    TRACE("(%p,0x%08x,0x%08x,0x%08x,%d,%p) item=%p\n",
-       hwnd, fSources, wEventMask, uMsg, cItems, lpItems, item);
-
-    item->next = NULL;
-    item->prev = NULL;
-    item->cidl = cItems;
-    item->apidl = SHAlloc(sizeof(SHChangeNotifyEntry) * cItems);
-    for(i=0;i<cItems;i++)
-    {
-        item->apidl[i].pidl = ILClone(lpItems[i].pidl);
-        item->apidl[i].fRecursive = lpItems[i].fRecursive;
-    }
-    item->hwnd = hwnd;
-    item->uMsg = uMsg;
-    item->wEventMask = wEventMask;
-    item->wSignalledEvent = 0;
-    item->dwFlags = fSources;
-
-    TRACE("new node: %s\n", NodeName( item ));
-
-    EnterCriticalSection(&SHELL32_ChangenotifyCS);
-
-    AddNode(item);
-
-    LeaveCriticalSection(&SHELL32_ChangenotifyCS);
-
-    return (ULONG)item;
-}
-
-/*************************************************************************
- * SHChangeNotifyDeregister                    [SHELL32.4]
- */
-BOOL WINAPI SHChangeNotifyDeregister(ULONG hNotify)
-{
-    LPNOTIFICATIONLIST node;
-
-    TRACE("(0x%08x)\n", hNotify);
-
-    EnterCriticalSection(&SHELL32_ChangenotifyCS);
-
-    node = FindNode((HANDLE)hNotify);
-    if( node )
-        DeleteNode(node);
-
-    LeaveCriticalSection(&SHELL32_ChangenotifyCS);
-
-    return node?TRUE:FALSE;
-}
-
-/*************************************************************************
- * SHChangeNotifyUpdateEntryList                       [SHELL32.5]
- */
-BOOL WINAPI SHChangeNotifyUpdateEntryList(DWORD unknown1, DWORD unknown2,
-                             DWORD unknown3, DWORD unknown4)
-{
-    FIXME("(0x%08x, 0x%08x, 0x%08x, 0x%08x)\n",
-          unknown1, unknown2, unknown3, unknown4);
-
-    return -1;
-}
-
-static BOOL should_notify( LPCITEMIDLIST changed, LPCITEMIDLIST watched, BOOL sub )
-{
-    TRACE("%p %p %d\n", changed, watched, sub );
-    if ( !watched )
-        return FALSE;
-    if (ILIsEqual( watched, changed ) )
-        return TRUE;
-    if( sub && ILIsParent( watched, changed, TRUE ) )
-        return TRUE;
-    return FALSE;
-}
-
-/*************************************************************************
- * SHChangeNotify                              [SHELL32.@]
- */
-void WINAPI SHChangeNotify(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2)
-{
-    LPCITEMIDLIST Pidls[2];
-    LPNOTIFICATIONLIST ptr;
-    UINT typeFlag = uFlags & SHCNF_TYPE;
-
-    Pidls[0] = NULL;
-    Pidls[1] = NULL;
-
-    TRACE("(0x%08x,0x%08x,%p,%p):stub.\n", wEventId, uFlags, dwItem1, dwItem2);
-
-    if( ( wEventId & SHCNE_NOITEMEVENTS ) && ( dwItem1 || dwItem2 ) )
-    {
-        TRACE("dwItem1 and dwItem2 are not zero, but should be\n");
-        dwItem1 = 0;
-        dwItem2 = 0;
-        return;
-    }
-    else if( ( wEventId & SHCNE_ONEITEMEVENTS ) && dwItem2 )
-    {
-        TRACE("dwItem2 is not zero, but should be\n");
-        dwItem2 = 0;
-        return;
-    }
-
-    if( ( ( wEventId & SHCNE_NOITEMEVENTS ) &&
-          ( wEventId & ~SHCNE_NOITEMEVENTS ) ) ||
-        ( ( wEventId & SHCNE_ONEITEMEVENTS ) &&
-          ( wEventId & ~SHCNE_ONEITEMEVENTS ) ) ||
-        ( ( wEventId & SHCNE_TWOITEMEVENTS ) &&
-          ( wEventId & ~SHCNE_TWOITEMEVENTS ) ) )
-    {
-        WARN("mutually incompatible events listed\n");
-        return;
-    }
-
-    /* convert paths in IDLists*/
-    switch (typeFlag)
-    {
-    case SHCNF_PATHA:
-        if (dwItem1) Pidls[0] = SHSimpleIDListFromPathA((LPCSTR)dwItem1); //FIXME
-        if (dwItem2) Pidls[1] = SHSimpleIDListFromPathA((LPCSTR)dwItem2); //FIXME
-        break;
-    case SHCNF_PATHW:
-        if (dwItem1) Pidls[0] = SHSimpleIDListFromPathW((LPCWSTR)dwItem1);
-        if (dwItem2) Pidls[1] = SHSimpleIDListFromPathW((LPCWSTR)dwItem2);
-        break;
-    case SHCNF_IDLIST:
-        Pidls[0] = (LPCITEMIDLIST)dwItem1;
-        Pidls[1] = (LPCITEMIDLIST)dwItem2;
-        break;
-    case SHCNF_PRINTERA:
-    case SHCNF_PRINTERW:
-        FIXME("SHChangeNotify with (uFlags & SHCNF_PRINTER)\n");
-        return;
-    case SHCNF_DWORD:
-    default:
-        FIXME("unknown type %08x\n",typeFlag);
-        return;
-    }
-
-    {
-        WCHAR path[MAX_PATH];
-
-        if( Pidls[0] && SHGetPathFromIDListW(Pidls[0], path ))
-            TRACE("notify %08x on item1 = %s\n", wEventId, debugstr_w(path));
-
-        if( Pidls[1] && SHGetPathFromIDListW(Pidls[1], path ))
-            TRACE("notify %08x on item2 = %s\n", wEventId, debugstr_w(path));
-    }
-
-    EnterCriticalSection(&SHELL32_ChangenotifyCS);
-
-    /* loop through the list */
-    for( ptr = head; ptr; ptr = ptr->next )
-    {
-        BOOL notify;
-        DWORD i;
-
-        notify = FALSE;
-
-        TRACE("trying %p\n", ptr);
-
-        for( i=0; (i<ptr->cidl) && !notify ; i++ )
-        {
-            LPCITEMIDLIST pidl = ptr->apidl[i].pidl;
-            BOOL subtree = ptr->apidl[i].fRecursive;
-
-            if (wEventId & ptr->wEventMask)
-            {
-                if( !pidl )          /* all ? */
-                    notify = TRUE;
-                else if( wEventId & SHCNE_NOITEMEVENTS )
-                    notify = TRUE;
-                else if( wEventId & ( SHCNE_ONEITEMEVENTS | SHCNE_TWOITEMEVENTS ) )
-                    notify = should_notify( Pidls[0], pidl, subtree );
-                else if( wEventId & SHCNE_TWOITEMEVENTS )
-                    notify = should_notify( Pidls[1], pidl, subtree );
-            }
-        }
-
-        if( !notify )
-            continue;
-
-        ptr->pidlSignaled = ILClone(Pidls[0]);
-
-        TRACE("notifying %s, event %s(%x) before\n", NodeName( ptr ), DumpEvent(
-               wEventId ),wEventId );
-
-        ptr->wSignalledEvent |= wEventId;
-
-        if (ptr->dwFlags  & SHCNRF_NewDelivery)
-            SendMessageW(ptr->hwnd, ptr->uMsg, (WPARAM) ptr, (LPARAM) GetCurrentProcessId());
-        else
-            SendMessageW(ptr->hwnd, ptr->uMsg, (WPARAM)Pidls, wEventId);
-
-        TRACE("notifying %s, event %s(%x) after\n", NodeName( ptr ), DumpEvent(
-                wEventId ),wEventId );
-
-    }
-    TRACE("notify Done\n");
-    LeaveCriticalSection(&SHELL32_ChangenotifyCS);
-
-    /* if we allocated it, free it. The ANSI flag is also set in its Unicode sibling. */
-    if ((typeFlag & SHCNF_PATHA) || (typeFlag & SHCNF_PRINTERA))
-    {
-        SHFree((LPITEMIDLIST)Pidls[0]);
-        SHFree((LPITEMIDLIST)Pidls[1]);
-    }
-}
-
-/*************************************************************************
- * NTSHChangeNotifyRegister                    [SHELL32.640]
- * NOTES
- *   Idlist is an array of structures and Count specifies how many items in the array.
- *   count should always be one when calling SHChangeNotifyRegister, or
- *   SHChangeNotifyDeregister will not work properly.
- */
-ULONG WINAPI NTSHChangeNotifyRegister(
-    HWND hwnd,
-    int fSources,
-    LONG fEvents,
-    UINT msg,
-    int count,
-    SHChangeNotifyEntry *idlist)
-{
-    return SHChangeNotifyRegister(hwnd, fSources | SHCNRF_NewDelivery,
-                                  fEvents, msg, count, idlist);
-}
-
-/*************************************************************************
- * SHChangeNotification_Lock                   [SHELL32.644]
- */
-HANDLE WINAPI SHChangeNotification_Lock(
-       HANDLE hChange,
-       DWORD dwProcessId,
-       LPITEMIDLIST **lppidls,
-       LPLONG lpwEventId)
-{
-    DWORD i;
-    LPNOTIFICATIONLIST node;
-    LPCITEMIDLIST *idlist;
-
-    TRACE("%p %08x %p %p\n", hChange, dwProcessId, lppidls, lpwEventId);
-
-    /* EnterCriticalSection(&SHELL32_ChangenotifyCS); */
-
-    node = FindNode( hChange );
-    if( node )
-    {
-        idlist = SHAlloc( sizeof(LPCITEMIDLIST *) * node->cidl );
-        for(i=0; i<node->cidl; i++)
-            idlist[i] = (LPCITEMIDLIST)node->pidlSignaled;
-        *lpwEventId = node->wSignalledEvent;
-        *lppidls = (LPITEMIDLIST*)idlist;
-        node->wSignalledEvent = 0;
-    }
-    else
-        ERR("Couldn't find %p\n", hChange );
-
-    /* LeaveCriticalSection(&SHELL32_ChangenotifyCS); */
-
-    return (HANDLE) node;
-}
-
-/*************************************************************************
- * SHChangeNotification_Unlock                 [SHELL32.645]
- */
-BOOL WINAPI SHChangeNotification_Unlock ( HANDLE hLock)
-{
-    TRACE("\n");
-    return 1;
-}
-
-/*************************************************************************
- * NTSHChangeNotifyDeregister                  [SHELL32.641]