1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-03 06:03:13 +02:00

All Toolbars define RegenerateTooltips; invoke during project init...

... and UpdatePrefs
This commit is contained in:
Paul Licameli 2016-06-11 23:28:01 -04:00
parent 16933363fe
commit e844b07a46
18 changed files with 37 additions and 16 deletions

View File

@ -545,7 +545,7 @@ AudacityProject *CreateNewAudacityProject()
// Okay, GetActiveProject() is ready. Now we can get its CommandManager,
// and add the shortcut keys to the tooltips.
p->GetControlToolBar()->RegenerateToolsTooltips();
p->GetToolManager()->RegenerateTooltips();
ModuleManager::Get().Dispatch(ProjectInitialized);

View File

@ -188,7 +188,7 @@ void ControlToolBar::Populate()
mRecord->FollowModifierKeys();
#if wxUSE_TOOLTIPS
RegenerateToolsTooltips();
RegenerateTooltips();
wxToolTip::Enable(true);
wxToolTip::SetDelay(1000);
#endif
@ -197,7 +197,7 @@ void ControlToolBar::Populate()
ArrangeButtons();
}
void ControlToolBar::RegenerateToolsTooltips()
void ControlToolBar::RegenerateTooltips()
{
#if wxUSE_TOOLTIPS
std::vector<wxString> commands;
@ -256,14 +256,14 @@ void ControlToolBar::UpdatePrefs()
if( updated )
{
ReCreateButtons(); // side effect: calls RegenerateToolsTooltips()
ReCreateButtons(); // side effect: calls RegenerateTooltips()
Updated();
}
else
// The other reason to regenerate tooltips is if keyboard shortcuts for
// transport buttons changed, but that's too much work to check for, so just
// always do it. (Much cheaper than calling ReCreateButtons() in all cases.
RegenerateToolsTooltips();
RegenerateTooltips();
// Set label to pull in language change
@ -377,7 +377,7 @@ void ControlToolBar::ReCreateButtons()
EnableDisableButtons();
RegenerateToolsTooltips();
RegenerateTooltips();
}
void ControlToolBar::Repaint( wxDC *dc )

View File

@ -101,7 +101,7 @@ class ControlToolBar final : public ToolBar {
void EnableDisableButtons() override;
void ReCreateButtons() override;
void RegenerateToolsTooltips();
void RegenerateTooltips() override;
int WidthForStatusBar(wxStatusBar* const);
void UpdateStatusBar(AudacityProject *pProject);

View File

@ -63,7 +63,7 @@ class DeviceToolBar final : public ToolBar {
void SetDevices(const DeviceSourceMap *in, const DeviceSourceMap *out);
void RepositionCombos();
void SetNames();
void RegenerateTooltips();
void RegenerateTooltips() override;
void ShowComboDialog(wxChoice *combo, const wxString &title);

View File

@ -83,7 +83,7 @@ class EditToolBar final : public ToolBar {
void MakeButtons();
void RegenerateTooltips();
void RegenerateTooltips() override;
AButton *mButtons[ETBNumButtons];
@ -136,7 +136,7 @@ public:
void EnableDisableButtons();
void UpdatePrefs();
void RegenerateTooltips();
void RegenerateTooltips() override;
private:

View File

@ -53,7 +53,7 @@ class MeterToolBar final : public ToolBar {
wxSize GetDockedSize();
private:
void RegenerateTooltips();
void RegenerateTooltips() override;
AudacityProject *mProject;
int mWhichMeters;

View File

@ -196,6 +196,8 @@ void MixerToolBar::UpdatePrefs()
// Set label to pull in language change
SetLabel(_("Mixer"));
RegenerateTooltips();
// Give base class a chance
ToolBar::UpdatePrefs();
}

View File

@ -49,6 +49,8 @@ class MixerToolBar final : public ToolBar {
void AdjustOutputGain(int adj);
void AdjustInputGain(int adj);
void RegenerateTooltips() override {};
protected:
float mInputSliderVolume;
float mOutputSliderVolume;

View File

@ -296,6 +296,8 @@ void SelectionBar::UpdatePrefs()
// Set label to pull in language change
SetLabel(_("Selection"));
RegenerateTooltips();
// Give base class a chance
ToolBar::UpdatePrefs();
}

View File

@ -49,6 +49,7 @@ class SelectionBar final : public ToolBar {
void SetSelectionFormat(const wxString & format);
void SetRate(double rate);
void SetListener(SelectionBarListener *l);
void RegenerateTooltips() override {};
private:

View File

@ -209,6 +209,8 @@ void SpectralSelectionBar::UpdatePrefs()
// Set label to pull in language change
SetLabel(_("Spectral Selection"));
RegenerateTooltips();
// Give base class a chance
ToolBar::UpdatePrefs();
}

View File

@ -46,6 +46,8 @@ public:
void SetBandwidthSelectionFormatName(const wxString & formatName);
void SetListener(SpectralSelectionBarListener *l);
void RegenerateTooltips() override {};
private:
void ValuesToControls();

View File

@ -99,6 +99,7 @@ class ToolBar /* not final */ : public wxPanel
virtual void EnableDisableButtons() = 0;
virtual void ReCreateButtons();
virtual void UpdatePrefs();
virtual void RegenerateTooltips() = 0;
int GetType();
wxString GetTitle();

View File

@ -598,6 +598,14 @@ void ToolManager::Reset()
Updated();
}
void ToolManager::RegenerateTooltips()
{
for (auto bar : mBars) {
if (bar)
bar->RegenerateTooltips();
}
}
//
// Read the toolbar states
//

View File

@ -65,6 +65,7 @@ class ToolManager final : public wxEvtHandler
ToolDock *GetBotDock();
void Reset();
void RegenerateTooltips();
private:

View File

@ -111,7 +111,7 @@ ToolsToolBar::~ToolsToolBar()
{
}
void ToolsToolBar::RegenerateToolsTooltips()
void ToolsToolBar::RegenerateTooltips()
{
// JKC:
@ -150,7 +150,7 @@ void ToolsToolBar::RegenerateToolsTooltips()
void ToolsToolBar::UpdatePrefs()
{
RegenerateToolsTooltips();
RegenerateTooltips();
}
AButton * ToolsToolBar::MakeTool( teBmps eTool,
@ -183,7 +183,7 @@ void ToolsToolBar::Populate()
mTool[mCurrentTool]->PushDown();
RegenerateToolsTooltips();
RegenerateTooltips();
}
/// Gets the currently active tool

View File

@ -70,7 +70,7 @@ class ToolsToolBar final : public ToolBar {
private:
void RegenerateToolsTooltips();
void RegenerateTooltips() override;
wxImage *MakeToolImage(wxImage *tool, wxImage *mask, int style);
AButton *MakeTool(teBmps eTool, int id, const wxChar *label);

View File

@ -131,7 +131,7 @@ class TranscriptionToolBar final : public ToolBar {
int id, unsigned altIdx);
void GetSamples(WaveTrack *t, sampleCount *s0, sampleCount *slen);
void SetButton(bool newstate, AButton *button);
void RegenerateTooltips();
void RegenerateTooltips() override;
AButton *mButtons[TTBNumButtons];
wxImage *upImage;