From 32efcd43c49ce6f4bd5b4055d2a81a4ef0f9db07 Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Thu, 18 Oct 2018 19:44:28 -0400 Subject: [PATCH] Simplify populating of Scrub menu --- src/tracks/ui/Scrubbing.cpp | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/src/tracks/ui/Scrubbing.cpp b/src/tracks/ui/Scrubbing.cpp index 847e4eb11..99d9533ce 100644 --- a/src/tracks/ui/Scrubbing.cpp +++ b/src/tracks/ui/Scrubbing.cpp @@ -1159,26 +1159,22 @@ static CommandHandlerObject &findme(AudacityProject &project) void Scrubber::AddMenuItems() { auto cm = mProject->GetCommandManager(); + using Options = CommandManager::Options; cm->BeginSubMenu(_("Scru&bbing")); for (const auto &item : menuItems) { - if (item.StatusTest) - cm->AddItem( item.name, wxGetTranslation(item.label), - // No menu items yet have dialogs - false, - findme, static_cast(item.memFn), - item.flags, - CommandManager::Options{}.CheckState( false ) ); - else - // The start item - cm->AddItem( item.name, wxGetTranslation(item.label), - // No menu items yet have dialogs - false, - findme, static_cast(item.memFn), - item.flags ); + cm->AddItem( item.name, wxGetTranslation(item.label), + // No menu items yet have dialogs + false, + findme, static_cast(item.memFn), + item.flags, + item.StatusTest + ? // a checkmark item + Options{}.CheckState( (this->*item.StatusTest)() ) + : // not a checkmark item + Options{} ); } cm->EndSubMenu(); - CheckMenuItems(); } void Scrubber::PopulatePopupMenu(wxMenu &menu)