From 6c752aaf8da225365b2bdbbf3c43d41afd4d1344 Mon Sep 17 00:00:00 2001 From: Hugh McMaster Date: Thu, 1 Jun 2017 09:33:29 +0000 Subject: [PATCH] regedit: Update handling of the new subkey and new value menu items. Signed-off-by: Hugh McMaster Signed-off-by: Alexandre Julliard --- programs/regedit/framewnd.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/programs/regedit/framewnd.c b/programs/regedit/framewnd.c index 6930d7afed7..c46dee32cda 100644 --- a/programs/regedit/framewnd.c +++ b/programs/regedit/framewnd.c @@ -154,14 +154,18 @@ static void update_delete_and_rename_items(HMENU hMenu, WCHAR *keyName) EnableMenuItem(hMenu, ID_EDIT_RENAME, state_r | MF_BYCOMMAND); } -static void update_copy_keyname_item(HMENU hMenu, WCHAR *keyName) +static void update_new_items_and_copy_keyname(HMENU hMenu, WCHAR *keyName) { - unsigned int state = MF_ENABLED; + unsigned int state = MF_ENABLED, i; + unsigned int items[] = {ID_EDIT_NEW_KEY, ID_EDIT_NEW_STRINGVALUE, ID_EDIT_NEW_BINARYVALUE, + ID_EDIT_NEW_DWORDVALUE, ID_EDIT_NEW_MULTI_STRINGVALUE, + ID_EDIT_NEW_EXPANDVALUE, ID_EDIT_COPYKEYNAME}; if (!keyName) state = MF_GRAYED; - EnableMenuItem(hMenu, ID_EDIT_COPYKEYNAME, state | MF_BYCOMMAND); + for (i = 0; i < COUNT_OF(items); i++) + EnableMenuItem(hMenu, items[i], state | MF_BYCOMMAND); } static void UpdateMenuItems(HMENU hMenu) { @@ -180,7 +184,7 @@ static void UpdateMenuItems(HMENU hMenu) { update_expand_or_collapse_item(hwndTV, selection, hMenu); EnableMenuItem(hMenu, ID_EDIT_MODIFY, (bAllowEdit ? MF_ENABLED : MF_GRAYED) | MF_BYCOMMAND); update_delete_and_rename_items(hMenu, keyName); - update_copy_keyname_item(hMenu, keyName); + update_new_items_and_copy_keyname(hMenu, keyName); EnableMenuItem(hMenu, ID_FAVORITES_ADDTOFAVORITES, (hRootKey ? MF_ENABLED : MF_GRAYED) | MF_BYCOMMAND); EnableMenuItem(hMenu, ID_FAVORITES_REMOVEFAVORITE, (GetMenuItemCount(hMenu)>2 ? MF_ENABLED : MF_GRAYED) | MF_BYCOMMAND);