mirror of
https://github.com/cookiengineer/audacity
synced 2025-11-21 08:27:13 +01:00
Delay evaluation of checkmark states...
... so that more menu item descriptions can be statically constructed once only
This commit is contained in:
@@ -842,7 +842,6 @@ MenuTable::BaseItemPtr ToolsMenu( AudacityProject & )
|
||||
{
|
||||
using namespace MenuTable;
|
||||
using Options = CommandManager::Options;
|
||||
auto gAudioIO = AudioIO::Get();
|
||||
|
||||
return FinderScope( findCommandHandler ).Eval(
|
||||
Menu( XO("T&ools"),
|
||||
@@ -899,12 +898,16 @@ MenuTable::BaseItemPtr ToolsMenu( AudacityProject & )
|
||||
XXO("Simulate Recording Errors"),
|
||||
FN(OnSimulateRecordingErrors),
|
||||
AudioIONotBusyFlag,
|
||||
Options{}.CheckState( gAudioIO->mSimulateRecordingErrors ) ),
|
||||
Options{}.CheckTest(
|
||||
[](AudacityProject&){
|
||||
return AudioIO::Get()->mSimulateRecordingErrors; } ) ),
|
||||
Command( wxT("DetectUpstreamDropouts"),
|
||||
XXO("Detect Upstream Dropouts"),
|
||||
FN(OnDetectUpstreamDropouts),
|
||||
AudioIONotBusyFlag,
|
||||
Options{}.CheckState( gAudioIO->mDetectUpstreamDropouts ) )
|
||||
Options{}.CheckTest(
|
||||
[](AudacityProject&){
|
||||
return AudioIO::Get()->mDetectUpstreamDropouts; } ) )
|
||||
#endif
|
||||
) );
|
||||
}
|
||||
|
||||
@@ -1384,8 +1384,7 @@ MenuTable::BaseItemPtr TracksMenu( AudacityProject & )
|
||||
XXO("&Move Selection with Tracks (on/off)"),
|
||||
FN(OnMoveSelectionWithTracks),
|
||||
AlwaysEnabledFlag,
|
||||
Options{}.CheckState(
|
||||
gPrefs->Read(wxT("/GUI/MoveSelectionWithTracks"), 0L ) ) )
|
||||
Options{}.CheckTest( wxT("/GUI/MoveSelectionWithTracks"), false ) )
|
||||
),
|
||||
|
||||
#if 0
|
||||
@@ -1425,7 +1424,7 @@ MenuTable::BaseItemPtr TracksMenu( AudacityProject & )
|
||||
|
||||
Command( wxT("SyncLock"), XXO("Sync-&Lock Tracks (on/off)"),
|
||||
FN(OnSyncLock), AlwaysEnabledFlag,
|
||||
Options{}.CheckState( gPrefs->Read(wxT("/GUI/SyncLockTracks"), 0L) ) )
|
||||
Options{}.CheckTest( wxT("/GUI/SyncLockTracks"), false ) )
|
||||
|
||||
#endif
|
||||
) );
|
||||
|
||||
@@ -1032,7 +1032,7 @@ MenuTable::BaseItemPtr TransportMenu( AudacityProject &project )
|
||||
),
|
||||
|
||||
// Scrubbing sub-menu
|
||||
Scrubber::Get( project ).Menu(),
|
||||
Scrubber::Menu(),
|
||||
|
||||
CursorMenu,
|
||||
|
||||
|
||||
@@ -457,7 +457,7 @@ MenuTable::BaseItemPtr ViewMenu( AudacityProject& )
|
||||
Separator(),
|
||||
Command( wxT("AdvancedVZoom"), XXO("Advanced &Vertical Zooming"),
|
||||
FN(OnAdvancedVZoom), AlwaysEnabledFlag,
|
||||
Options{}.CheckState( gPrefs->Read(wxT("/GUI/VerticalZooming"), 0L) ) )
|
||||
Options{}.CheckTest( wxT("/GUI/VerticalZooming"), false ) )
|
||||
),
|
||||
|
||||
Menu( XO("T&rack Size"),
|
||||
@@ -538,10 +538,10 @@ MenuTable::BaseItemPtr ViewMenu( AudacityProject& )
|
||||
|
||||
Command( wxT("ShowExtraMenus"), XXO("&Extra Menus (on/off)"),
|
||||
FN(OnShowExtraMenus), AlwaysEnabledFlag,
|
||||
Options{}.CheckState( gPrefs->Read(wxT("/GUI/ShowExtraMenus"), 0L) ) ),
|
||||
Options{}.CheckTest( wxT("/GUI/ShowExtraMenus"), false ) ),
|
||||
Command( wxT("ShowClipping"), XXO("&Show Clipping (on/off)"),
|
||||
FN(OnShowClipping), AlwaysEnabledFlag,
|
||||
Options{}.CheckState( gPrefs->Read(wxT("/GUI/ShowClipping"), 0L) ) )
|
||||
Options{}.CheckTest( wxT("/GUI/ShowClipping"), false ) )
|
||||
#if defined(EXPERIMENTAL_EFFECTS_RACK)
|
||||
,
|
||||
Command( wxT("ShowEffectsRack"), XXO("Show Effects Rack"),
|
||||
|
||||
Reference in New Issue
Block a user