Audacity 3.2.0
Classes | Namespaces | Macros | Typedefs | Functions | Variables
TrackInfo.cpp File Reference
#include "TrackInfo.h"
#include <wx/app.h>
#include <wx/dc.h>
#include <wx/frame.h>
#include "AColor.h"
#include "AllThemeResources.h"
#include "Prefs.h"
#include "Project.h"
#include "SyncLock.h"
#include "Theme.h"
#include "Track.h"
#include "TrackPanelDrawingContext.h"
#include "ViewInfo.h"
#include "prefs/TracksBehaviorsPrefs.h"
#include "tracks/ui/TrackView.h"
#include "tracks/ui/CommonTrackControls.h"
#include "tracks/ui/TrackButtonHandles.h"
Include dependency graph for TrackInfo.cpp:

Go to the source code of this file.

Classes

struct  Settings
 

Namespaces

namespace  TrackInfo
 Functions for drawing the track control panel, which is shown to the side of a track It has the menus, pan and gain controls displayed in it. So "Info" is somewhat a misnomer. Should possibly be "TrackControls".
 
namespace  anonymous_namespace{TrackInfo.cpp}
 

Macros

#define RANGE(array)   (array), (array) + sizeof(array)/sizeof(*(array))
 

Typedefs

using TCPLine = TrackInfo::TCPLine
 
using TCPLines = TrackInfo::TCPLines
 

Functions

static Settingssettings ()
 
static const TCPLinescommonTrackTCPLines ()
 
int anonymous_namespace{TrackInfo.cpp}::totalTCPLines (const TCPLines &lines, bool omitLastExtra)
 
std::pair< int, int > anonymous_namespace{TrackInfo.cpp}::CalcBottomItemY (const TCPLines &lines, unsigned iItem, int height)
 

Variables

const TrackInfo::TCPLine anonymous_namespace{TrackInfo.cpp}::defaultCommonTrackTCPBottomLines []
 
TCPLines anonymous_namespace{TrackInfo.cpp}::commonTrackTCPBottomLines { RANGE(defaultCommonTrackTCPBottomLines) }
 

Macro Definition Documentation

◆ RANGE

#define RANGE (   array)    (array), (array) + sizeof(array)/sizeof(*(array))

Definition at line 100 of file TrackInfo.cpp.

Typedef Documentation

◆ TCPLine

Definition at line 101 of file TrackInfo.cpp.

◆ TCPLines

Definition at line 102 of file TrackInfo.cpp.

Function Documentation

◆ commonTrackTCPLines()

static const TCPLines & commonTrackTCPLines ( )
static

Definition at line 104 of file TrackInfo.cpp.

105{
106 static const TCPLines theLines{
107#ifdef EXPERIMENTAL_DA
108
111
112#else
113
116
117#endif
118 };
119 return theLines;
120}
TrackInfo::TCPLines TCPLines
Definition: TrackInfo.cpp:102
@ kTrackInfoBtnSize
Definition: ViewInfo.h:95
AUDACITY_DLL_API void CloseTitleDrawFunction(TrackPanelDrawingContext &context, const wxRect &rect, const Track *pTrack)
Definition: TrackInfo.cpp:301

References TrackInfo::CloseTitleDrawFunction(), TrackInfo::TCPLine::kItemBarButtons, and kTrackInfoBtnSize.

Referenced by TrackInfo::GetCloseBoxRect(), CommonTrackControls::GetTCPLines(), TrackInfo::GetTitleBarRect(), TrackInfo::MinimumTrackHeight(), and CommonTrackControls::StaticTCPLines().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ settings()

static Settings & settings ( )
static

Definition at line 87 of file TrackInfo.cpp.

88{
89 static Settings theSettings;
90 if ( !theSettings.mInitialized )
91 theSettings.UpdatePrefs();
92 return theSettings;
93}
bool mInitialized
Definition: TrackInfo.cpp:52
void UpdatePrefs() override
Definition: TrackInfo.cpp:54

References Settings::mInitialized, and Settings::UpdatePrefs().

Referenced by MacroCommands::ApplyCommandInBatchMode(), ProjectSelectionManager::AS_GetSelectionFormat(), ProjectSelectionManager::AS_GetSnapTo(), ProjectSelectionManager::AS_SetSelectionFormat(), ProjectSelectionManager::AS_SetSnapTo(), EffectTimeScale::CalcPreviewInputLength(), SpecCache::CalculateOneSpectrum(), SelectHandle::Click(), WaveformPrefs::Commit(), Effect::Delegate(), anonymous_namespace{ClipMenus.cpp}::DoClipLeftOrRight(), LabelTrackView::DoEditLabels(), Exporter::DoEditMetadata(), EffectUI::DoEffect(), EffectBase::DoEffect(), EffectManager::DoGetEffect(), WaveformVRulerControls::DoHandleWheelRotation(), SpectrumVRulerControls::DoHandleWheelRotation(), SelectUtilities::DoListSelection(), EffectChangeSpeed::DoLoadFactoryDefaults(), EffectEqualization::DoLoadFactoryDefaults(), LV2Effect::DoLoadUserPreset(), VSTEffect::DoLoadUserPreset(), CapturedParameters< EffectType, Parameters >::DoReset(), ProjectFileManager::DoSave(), CapturedParameters< EffectType, Parameters >::DoSet(), TrackUtilities::DoTrackMute(), TrackUtilities::DoTrackSolo(), SpectrumVRulerControls::DoUpdateVRuler(), anonymous_namespace{SpectrumView.cpp}::DrawClipSpectrum(), TrackPanel::DrawTracks(), AudioUnitEffect::Export(), ExportMultipleDialog::ExportMultipleByLabel(), ExportMultipleDialog::ExportMultipleByTrack(), AudioUnitEffect::ExportPresets(), Effect::ExportPresets(), AudioUnitWrapper::FetchSettings(), AudioUnitValidator::FetchSettingsFromInstance(), anonymous_namespace{BrushHandle.cpp}::FrequencyToPosition(), anonymous_namespace{SelectHandle.cpp}::FrequencyToPosition(), BlockGenerator::GenerateTrack(), EffectSilence::GenerateTrack(), CapturedParameters< EffectType, Parameters >::Get(), EffectManager::GetCommandDefinition(), LadspaEffect::Instance::GetLatency(), EffectWithSettings< Settings, Base >::GetSettings(), WaveClipSpectrumCache::GetSpectrogram(), WaveTrack::GetSpectrumBounds(), anonymous_namespace{SelectMenus.cpp}::GridMove(), SpecCache::Grow(), PluginManager::HasGroup(), TrackInfo::HasSoloButton(), CommonTrackView::HitTest(), NoteTrackAffordanceControls::HitTest(), WaveTrackAffordanceControls::HitTest(), AudioUnitEffect::Import(), AUPImportFileHandle::Import(), AudioUnitEffect::ImportPresets(), Effect::ImportPresets(), ExportFFmpeg::InitCodecs(), RealtimeEffectState::AccessState::Initialize(), LadspaEffect::InitializeControls(), anonymous_namespace{EffectManager.cpp}::InitializePreset(), LadspaEffect::InitInstance(), EffectReverb::Instance::InstanceInit(), EffectWahwah::Instance::InstanceInit(), EffectReverb::Instance::InstanceProcess(), EffectWahwah::Instance::InstanceProcess(), AudioUnitWrapper::InterpretBlob(), anonymous_namespace{BrushHandle.cpp}::isSpectralSelectionView(), anonymous_namespace{SelectHandle.cpp}::isSpectralSelectionView(), anonymous_namespace{EffectManager.cpp}::LoadComponent(), EffectChangeSpeed::LoadFactoryDefaults(), Effect::LoadFactoryDefaults(), EffectEqualization::LoadFactoryDefaults(), AudioUnitEffect::LoadFactoryPreset(), EffectEqualization::LoadFactoryPreset(), EffectReverb::LoadFactoryPreset(), LV2Effect::LoadParameters(), VSTEffect::LoadParameters(), LadspaEffect::LoadParameters(), AudioUnitEffect::LoadPreset(), AudioUnitEffect::LoadSettings(), Effect::LoadSettings(), LadspaEffect::LoadSettings(), NyquistEffect::LoadSettings(), EffectTruncSilence::LoadSettings(), Effect::LoadSettingsFromString(), AudioUnitEffect::LoadUserPreset(), Effect::LoadUserPreset(), LadspaEffect::LoadUserPreset(), LV2Effect::LoadUserPreset(), VSTEffect::LoadUserPreset(), VST3Effect::LoadUserPreset(), RealtimeEffectState::AccessState::MainWrite(), AudioUnitWrapper::MakeBlob(), SpecCache::Matches(), AudioUnitEffect::MigrateOldConfigFile(), EffectSettingsAccess::ModifySettings(), MenuManager::ModifyToolbarMenus(), anonymous_namespace{SelectMenus.cpp}::MoveWhenAudioInactive(), TrackActions::Handler::MuteTracks(), ProjectManager::OnCloseWindow(), EffectUIHost::OnDefaults(), EffectDtmf::Validator::OnDuration(), EffectDtmf::Validator::OnDutyCycle(), EffectUIHost::OnFactoryPreset(), EffectUIHost::OnImport(), ToolActions::Handler::OnNextTool(), EditActions::Handler::OnPaste(), ToolActions::Handler::OnPrevTool(), EffectDtmf::Validator::OnSequence(), SelectUtilities::OnSetRegion(), TransportActions::Handler::OnTimerRecord(), ViewActions::Handler::OnUndoPushed(), EffectUIHost::OnUserPreset(), ProjectFileManager::OpenProjectFile(), RealtimeEffectState::AccessState::FromMainSlot::operator=(), EffectDistortion::Parameters(), TimeToolBar::Populate(), SpecCache::Populate(), EffectDtmf::Validator::PopulateOrExchange(), EffectDtmf::PopulateOrExchange(), EffectEcho::PopulateOrExchange(), EffectEqualization::PopulateOrExchange(), EffectReverb::PopulateOrExchange(), EffectWahwah::PopulateOrExchange(), VST3Effect::PopulateUI(), anonymous_namespace{BrushHandle.cpp}::PositionToFrequency(), anonymous_namespace{SelectHandle.cpp}::PositionToFrequency(), SpectrumPrefs::Preview(), EffectBase::Preview(), PerTrackEffect::Process(), StatefulPerTrackEffect::Process(), Generator::Process(), NyquistEffect::Process(), EffectTimeScale::Process(), EffectTwoPassSimpleMono::Process(), PerTrackEffect::Instance::Process(), StatefulEffect::Instance::Process(), EffectBassTreble::ProcessBlock(), EffectDistortion::ProcessBlock(), EffectDtmf::Instance::ProcessBlock(), EffectEcho::Instance::ProcessBlock(), EffectPhaser::ProcessBlock(), EffectReverb::Instance::ProcessBlock(), StatefulPerTrackEffect::Instance::ProcessBlock(), EffectWahwah::Instance::ProcessBlock(), EffectTruncSilence::ProcessIndependently(), EffectDtmf::Instance::ProcessInitialize(), EffectEcho::Instance::ProcessInitialize(), LadspaEffect::Instance::ProcessInitialize(), EffectReverb::Instance::ProcessInitialize(), StatefulPerTrackEffect::Instance::ProcessInitialize(), VST3Effect::ProcessInitialize(), EffectWahwah::Instance::ProcessInitialize(), PerTrackEffect::ProcessPass(), PerTrackEffect::ProcessTrack(), RealtimeEffectState::AccessState::FromMainSlot::Reader::Reader(), RealtimeEffectState::AccessState::ToMainSlot::Reader::Reader(), AudioUnitEffect::RealtimeAddProcessor(), StatefulEffectBase::Instance::RealtimeAddProcessor(), LadspaEffect::Instance::RealtimeAddProcessor(), EffectReverb::Instance::RealtimeAddProcessor(), VSTEffect::RealtimeAddProcessor(), VST3Effect::RealtimeAddProcessor(), EffectWahwah::Instance::RealtimeAddProcessor(), StatefulEffectBase::Instance::RealtimeFinalize(), AudioUnitEffect::RealtimeInitialize(), StatefulEffectBase::Instance::RealtimeInitialize(), VSTEffect::RealtimeInitialize(), VST3Effect::RealtimeInitialize(), AudioUnitEffect::RealtimeProcess(), EffectBassTreble::RealtimeProcess(), EffectDistortion::RealtimeProcess(), StatefulEffectBase::Instance::RealtimeProcess(), EffectPhaser::RealtimeProcess(), EffectReverb::Instance::RealtimeProcess(), VSTEffect::RealtimeProcess(), EffectWahwah::Instance::RealtimeProcess(), StatefulEffectBase::Instance::RealtimeProcessEnd(), StatefulEffectBase::Instance::RealtimeProcessStart(), DtmfSettings::Recalculate(), SnapManager::Reinit(), WaveTrack::Reinit(), StretchHandle::Release(), SpectrumPrefs::Rollback(), LadspaEffect::SaveParameters(), LV2Effect::SaveParameters(), VSTEffect::SaveParameters(), AudioUnitEffect::SavePreset(), AudioUnitEffect::SaveSettings(), Effect::SaveSettings(), LadspaEffect::SaveSettings(), Effect::SaveSettingsAsString(), AudioUnitEffect::SaveUserPreset(), Effect::SaveUserPreset(), LadspaEffect::SaveUserPreset(), LV2Effect::SaveUserPreset(), VSTEffect::SaveUserPreset(), anonymous_namespace{SelectMenus.cpp}::SeekWhenAudioInactive(), NoteTrackAffordanceHandle::SelectAt(), CapturedParameters< EffectType, Parameters >::Set(), SimpleEffectSettingsAccess::Set(), RealtimeEffectState::Access::Set(), EffectManager::SetEffectParameters(), TrackInfo::SetTrackInfoFont(), NyquistEffect::ShowHostInterface(), SelectHandle::SnapCenterOnce(), ProjectSelectionManager::SnapSelection(), SpectrumPrefs::SpectrumPrefs(), ProjectSelectionManager::SSBL_GetBandwidthSelectionFormatName(), ProjectSelectionManager::SSBL_GetFrequencySelectionFormatName(), ProjectSelectionManager::SSBL_SetBandwidthSelectionFormatName(), ProjectSelectionManager::SSBL_SetFrequencySelectionFormatName(), SelectHandle::StartSnappingFreqSelection(), AudioUnitWrapper::StoreSettings(), AudioUnitValidator::StoreSettingsToInstance(), EffectUIHost::TransferDataFromWindow(), EffectNoise::TransferDataFromWindow(), EffectSilence::TransferDataFromWindow(), EffectToneGen::TransferDataFromWindow(), EffectNoise::TransferDataToWindow(), EffectSilence::TransferDataToWindow(), EffectToneGen::TransferDataToWindow(), ProjectSelectionManager::TT_GetAudioTimeFormat(), ProjectSelectionManager::TT_SetAudioTimeFormat(), EffectDtmf::Validator::UpdateUI(), EffectEcho::Validator::UpdateUI(), EffectWahwah::Validator::UpdateUI(), DefaultEffectUIValidator::ValidateUI(), AudioUnitValidator::ValidateUI(), EffectDtmf::Validator::ValidateUI(), EffectEcho::Validator::ValidateUI(), LadspaEffect::Validator::ValidateUI(), EffectReverb::Validator::ValidateUI(), EffectWahwah::Validator::ValidateUI(), LV2Effect::ValidateUI(), VSTEffect::ValidateUI(), VST3Effect::ValidateUI(), CapturedParameters< EffectType, Parameters >::Visit(), EffectEqualization::VisitSettings(), Effect::VisitSettings(), NyquistEffect::VisitSettings(), WaveformPrefs::WaveformPrefs(), and EffectNoiseReduction::Worker::Worker().

Here is the call graph for this function: