1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-16 08:09:32 +02:00

Bug 2671 - ENH: "Show track name as overlay" cannot be turned on from main menus

This commit is contained in:
James Crook 2021-04-24 12:20:18 +01:00
parent 91be0e6969
commit 28a634c5e2
4 changed files with 30 additions and 3 deletions

View File

@ -245,6 +245,8 @@ void TrackArtist::UpdateSelectedPrefs( int id )
{
if( id == ShowClippingPrefsID())
mShowClipping = gPrefs->Read(wxT("/GUI/ShowClipping"), mShowClipping);
if( id == ShowTrackNameInWaveformPrefsID())
mbShowTrackNameInTrack = gPrefs->ReadBool(wxT("/GUI/ShowTrackNameInWaveform"), false);
}
void TrackArtist::UpdatePrefs()
@ -252,10 +254,8 @@ void TrackArtist::UpdatePrefs()
mdBrange = gPrefs->Read(ENV_DB_KEY, mdBrange);
mSampleDisplay = TracksPrefs::SampleViewChoice();
mbShowTrackNameInTrack =
gPrefs->ReadBool(wxT("/GUI/ShowTrackNameInWaveform"), false);
UpdateSelectedPrefs( ShowClippingPrefsID() );
UpdateSelectedPrefs( ShowTrackNameInWaveformPrefsID() );
SetColours(0);
}

View File

@ -334,6 +334,23 @@ void OnShowClipping(const CommandContext &context)
trackPanel.Refresh(false);
}
void OnShowNameOverlay(const CommandContext &context)
{
auto &project = context.project;
auto &commandManager = CommandManager::Get( project );
auto &trackPanel = TrackPanel::Get( project );
bool checked = !gPrefs->Read(wxT("/GUI/ShowTrackNameInWaveform"), 0L);
gPrefs->Write(wxT("/GUI/ShowTrackNameInWaveform"), checked);
gPrefs->Flush();
commandManager.Check(wxT("ShowTrackNameInWaveform"), checked);
wxTheApp->AddPendingEvent(wxCommandEvent{
EVT_PREFS_UPDATE, ShowTrackNameInWaveformPrefsID() });
trackPanel.Refresh(false);
}
#if defined(EXPERIMENTAL_EFFECTS_RACK)
void OnShowEffectsRack(const CommandContext &context )
{
@ -442,6 +459,9 @@ BaseItemSharedPtr ViewMenu()
Command( wxT("ShowExtraMenus"), XXO("&Extra Menus (on/off)"),
FN(OnShowExtraMenus), AlwaysEnabledFlag,
Options{}.CheckTest( wxT("/GUI/ShowExtraMenus"), false ) ),
Command( wxT("ShowTrackNameInWaveform"), XXO("Track &Name (on/off)"),
FN(OnShowNameOverlay), AlwaysEnabledFlag,
Options{}.CheckTest( wxT("/GUI/ShowTrackNameInWaveform"), false ) ),
Command( wxT("ShowClipping"), XXO("&Show Clipping (on/off)"),
FN(OnShowClipping), AlwaysEnabledFlag,
Options{}.CheckTest( wxT("/GUI/ShowClipping"), false ) )

View File

@ -371,6 +371,12 @@ int ShowClippingPrefsID()
return value;
}
int ShowTrackNameInWaveformPrefsID()
{
static int value = wxNewId();
return value;
}
namespace{
PrefsPanel::Registration sAttachment{ "GUI",
[](wxWindow *parent, wxWindowID winid, AudacityProject *)

View File

@ -69,6 +69,7 @@ class GUIPrefs final : public PrefsPanel
};
int ShowClippingPrefsID();
int ShowTrackNameInWaveformPrefsID();
extern ChoiceSetting
GUIManualLocation