Audacity  3.0.3
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 "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

 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".
 
 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 99 of file TrackInfo.cpp.

Typedef Documentation

◆ TCPLine

Definition at line 100 of file TrackInfo.cpp.

◆ TCPLines

Definition at line 101 of file TrackInfo.cpp.

Function Documentation

◆ commonTrackTCPLines()

static const TCPLines& commonTrackTCPLines ( )
static

Definition at line 103 of file TrackInfo.cpp.

104 {
105  static const TCPLines theLines{
106 #ifdef EXPERIMENTAL_DA
107 
110 
111 #else
112 
115 
116 #endif
117  };
118  return theLines;
119 }

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 86 of file TrackInfo.cpp.

87 {
88  static Settings theSettings;
89  if ( !theSettings.mInitialized )
90  theSettings.UpdatePrefs();
91  return theSettings;
92 }

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

Referenced by MacroCommands::ApplyCommandInBatchMode(), ProjectSelectionManager::AS_GetSelectionFormat(), ProjectSelectionManager::AS_GetSnapTo(), ProjectSelectionManager::AS_SetSelectionFormat(), ProjectSelectionManager::AS_SetSnapTo(), SpecCache::CalculateOneSpectrum(), SelectHandle::Click(), WaveformPrefs::Commit(), anonymous_namespace{ClipMenus.cpp}::DoClipLeftOrRight(), LabelTrackView::DoEditLabels(), Exporter::DoEditMetadata(), WaveformVRulerControls::DoHandleWheelRotation(), SpectrumVRulerControls::DoHandleWheelRotation(), SelectUtilities::DoListSelection(), ProjectFileManager::DoSave(), TrackUtilities::DoTrackMute(), TrackUtilities::DoTrackSolo(), SpectrumVRulerControls::DoUpdateVRuler(), anonymous_namespace{SpectrumView.cpp}::DrawClipSpectrum(), TrackPanel::DrawTracks(), ExportMultipleDialog::ExportMultipleByLabel(), ExportMultipleDialog::ExportMultipleByTrack(), anonymous_namespace{BrushHandle.cpp}::FrequencyToPosition(), anonymous_namespace{SelectHandle.cpp}::FrequencyToPosition(), WaveClip::GetSpectrogram(), WaveTrack::GetSpectrumBounds(), anonymous_namespace{SelectMenus.cpp}::GridMove(), SpecCache::Grow(), PluginManager::HasGroup(), TrackInfo::HasSoloButton(), CommonTrackView::HitTest(), NoteTrackAffordanceControls::HitTest(), WaveTrackAffordanceControls::HitTest(), AUPImportFileHandle::Import(), ExportFFmpeg::InitCodecs(), anonymous_namespace{BrushHandle.cpp}::isSpectralSelectionView(), anonymous_namespace{SelectHandle.cpp}::isSpectralSelectionView(), SpecCache::Matches(), MenuManager::ModifyToolbarMenus(), anonymous_namespace{SelectMenus.cpp}::MoveWhenAudioInactive(), TrackActions::Handler::MuteTracks(), ProjectManager::OnCloseWindow(), EditActions::Handler::OnPaste(), SelectActions::Handler::OnSetLeftSelection(), SelectActions::Handler::OnSetRightSelection(), TransportActions::Handler::OnTimerRecord(), ViewActions::Handler::OnUndoPushed(), ProjectFileManager::OpenProjectFile(), TimeToolBar::Populate(), SpecCache::Populate(), anonymous_namespace{BrushHandle.cpp}::PositionToFrequency(), anonymous_namespace{SelectHandle.cpp}::PositionToFrequency(), SpectrumPrefs::Preview(), EffectTruncSilence::ProcessIndependently(), SnapManager::Reinit(), WaveTrack::Reinit(), StretchHandle::Release(), SpectrumPrefs::Rollback(), anonymous_namespace{SelectMenus.cpp}::SeekWhenAudioInactive(), NoteTrackAffordanceHandle::SelectAt(), TrackInfo::SetTrackInfoFont(), SelectHandle::SnapCenterOnce(), ProjectSelectionManager::SnapSelection(), ProjectSelectionManager::SSBL_GetBandwidthSelectionFormatName(), ProjectSelectionManager::SSBL_GetFrequencySelectionFormatName(), ProjectSelectionManager::SSBL_SetBandwidthSelectionFormatName(), ProjectSelectionManager::SSBL_SetFrequencySelectionFormatName(), SelectHandle::StartSnappingFreqSelection(), ProjectSelectionManager::TT_GetAudioTimeFormat(), ProjectSelectionManager::TT_SetAudioTimeFormat(), and EffectNoiseReduction::Worker::Worker().

Here is the call graph for this function:
TrackInfo::CloseTitleDrawFunction
AUDACITY_DLL_API void CloseTitleDrawFunction(TrackPanelDrawingContext &context, const wxRect &rect, const Track *pTrack)
Definition: TrackInfo.cpp:300
TCPLines
TrackInfo::TCPLines TCPLines
Definition: TrackInfo.cpp:101
TrackInfo::TCPLine::kItemBarButtons
@ kItemBarButtons
Definition: TrackInfo.h:39
Settings
Definition: TrackInfo.cpp:47
kTrackInfoBtnSize
@ kTrackInfoBtnSize
Definition: ViewInfo.h:108
Settings::UpdatePrefs
void UpdatePrefs() override
Definition: TrackInfo.cpp:53
Settings::mInitialized
bool mInitialized
Definition: TrackInfo.cpp:51