- CDefaultContextMenu: Make it respect the IContextMenu interface and expect menu id offsets instead of real menu ids and actually use the idCmdFirst and idCmdLast parameters in QueryContextMenu. Make the default part use and existed menu from the resources but changed accordingly so the ids of its elements can be adjusted to the next free id of the constructed menu. Rename InsertMenuItemsOfDynamicContextMenuExtension to AddShellExtensionsToMenu, DoDynamicShellExtensions to InvokeShellExt, and DoStaticShellExtensions to InvokeRegVerb. Make AddShellExtensionsToMenu and AddStaticContextMenusToMenu behave like QueryContextMenu to return the number of ids they occupy. Add two helpers SHGetMenuIdFromMenuMsg and SHSetMenuIdInMenuMsg to change the id that is contained in the lparam of WM_DRAWITEM and WM_MEASUREITEM before forwarding them.
- CDefView: When calling QueryContextMenu before using TrackPopupMenu, use 1 as the first id that will filled by the IContextMenu because we want 0 to be used as an indicator that the menu was canceled. Use SHGetMenuIdFromMenuMsg and SHSetMenuIdInMenuMsg to change the lparam of the messages forwarded to the IContextMenu accordingly.
- CDefViewBckgrndMenu: Add a hack so as to keep the code as simple as possible while respecting idCmdFirst and idCmdLast.
- CNewMenu: Remove a hack that was needed because WM_DRAWITEM didn't come with the menu id offset but with the real menu id.
- CDesktopFolder, CFSFolder: Make the callbacks avoid adding an extra separators.
After that shell extensions in menus should work better and callbacks to shell folders should really be able to add several menu items.
svn path=/trunk/; revision=75533
- Rename the resource identifiers for column names to make sense. Get rid of one called File. This was renamed to Name but was the same in other languages, now it is replaced by Name for good. We also had two strings for a column called Comments and I think that in some languages one was singular and the other was plural. We only need the plural one.
Note to translators: Please make sure that everything I changed makes sense. I had to edit all language files and there can be mistakes and typos.
svn path=/trunk/; revision=75011
- Implement View tab in Folder options dialog.
CORE-12540
Patch by Katayama Hirofumi MZ with a tiny improvement by me to refresh explorer in a better way.
svn path=/trunk/; revision=73703
- Split the huge "InitializeProfiles" function into itself and a helper "CreateStandardProfile", the latter is called to set up the "Default User" and "All Users" profile directories & registry settings.
- Use StringSafe functions where needed.
- Some of the shell registry values (the multimedia ones in particular) and the Fonts folder path, are not set by userenv.dll but are set by shell32.dll when it is registered during 2nd stage setup.
[SHELL32]: The above-mentioned shell reg vals are already there, but few have different translations than the ones that were in userenv. Translators, please review & fix if needed!
[SYSSETUP]: It is syssetup.dll which sets up the 'Program Files' & 'Common Files' directories & registry values at 2nd stage setup, as done on Windows' setup. Move the code that did this from our userenv to syssetup.
svn path=/trunk/; revision=73518
- Add a separate string for the unknown file types and rename the first column to Name from File.
- Note to translators: Please update translations based on the changes in the English strings.
Patch by Amber.
CORE-12530
svn path=/trunk/; revision=73444
- CDefViewBckgrndMenu : Add class to handle the background menu of the CDefView and handle stuff that previously were handled by CDefaultContextMenu. Let the shell folders fill their own part of the background context menu.
- CDefView: Create a CDefViewBckgrndMenu instead of a CDefaultContextMenu which was completely wrong.
- CDesktopFolder, CFSFolder: Implement returning the background context menu in CreateViewObject. Note that I am not completely sure that the callback should be adding the Properties item.
- CDefaultContextMenu: Remove code that was moved to CDefViewBckgrndMenu and try to improve the overzealous debug prints regarding the shell extensions.
CORE-12410, CORE-12472
svn path=/trunk/; revision=73405
- CDefView: Overhaul the code that filled the menu bar of explorer. Fill the arrange as menu with the column names from the shell folders instead of hardcoding them. Check the selected arrange mode and view mode in the menu bar and in the context menu. Make the items in the file menu to actually work. It is possible to arrange the icons from the context menu now.
- Note to translators: Please check that the changes that I did in the 31 resource files make sense. Also note that the "Arrange Icons" menu now is called "Arrange Icons As".
svn path=/trunk/; revision=72808
Improvements to the file types property page:
- Always show the selected file type.
- Set the focus to the listview control when the file types page gets activated.
- Enable/disable the Delete button for the initial file type selection too.
svn path=/trunk/; revision=71300
- Add document icon to wordpad.
[SHELL32]
- Add FriendlyTypeName support to HCR_MapTypeToValueW as well.
- Sync HCR_GetClassNameA ReactOS additions into HCR_GetClassNameW.
[NOTEPAD][SHIMGVW]
- Add localized FriendlyTypeName file type strings.
[SHELL32][HIVECLS]
Update the FriendlyTypeName file type strings.
This commit is an addendum to revision range r32966-r32969 and r32973.
svn path=/trunk/; revision=69999
Change Trash to Recycle Bin by Lee Schroeder
CORE-8391 #resolve #comment Committed the big one with changes to all RC files, because it's the right way to do that. All these strings are originated from the english resource and NEVER were translated up to now, so we keep these strings in sync. Second argument. Trash is not the right word here (YES, a non native dares to say this ^^) We use the Windows way here, unless someone gives me a REALLY good reason not to ^^
svn path=/trunk/; revision=68645
- add icons 165, 166 (by Robert Naumann) and 167 (adapted regedit icon by me) and add these to the Drive's properties Tools tab (patch by Robert Naumann)
- use the dialog resource id directly in SH_CreatePropertySheetPage (makes the icons actually draw)
CORE-9382
svn path=/trunk/; revision=66810
- Get rid of IDD_FILE_COPY dialog. It was never used, never completed and windows don't really have such a dialog.
- Remove SHShowFileOperationDialog which was never completed. This will be replaced shortly with a working solution by Huw Davies
svn path=/trunk/; revision=66190
* Implement handling of file associations marked as "NoOpen". Patch by Lee Schroeder, with a few tweaks.
CORE-8855 #resolve #comment Commited in trunk r65697. Thanks.
svn path=/trunk/; revision=65697