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

Eliminate some unnecessary track type tests

This commit is contained in:
Paul Licameli 2017-08-12 01:07:12 -04:00
parent 7d55defde6
commit fbec3efa0c
8 changed files with 15 additions and 29 deletions

View File

@ -57,8 +57,7 @@ UIHandlePtr NoteTrackButtonHandle::HitTest
TrackInfo::GetMidiControlsRect(rect, midiRect);
if ( TrackInfo::HideTopItem( rect, midiRect ) )
return {};
if (pTrack->GetKind() == Track::Note &&
midiRect.Contains(state.m_x, state.m_y)) {
if (midiRect.Contains(state.m_x, state.m_y)) {
auto channel = pTrack->FindChannel(midiRect, state.m_x, state.m_y);
auto result = std::make_shared<NoteTrackButtonHandle>(
pTrack, channel, midiRect );

View File

@ -111,7 +111,6 @@ void NoteTrackMenuTable::OnChangeOctave(wxCommandEvent &event)
wxASSERT(event.GetId() == OnUpOctaveID
|| event.GetId() == OnDownOctaveID);
wxASSERT(pTrack->GetKind() == Track::Note);
const bool bDown = (OnDownOctaveID == event.GetId());
pTrack->SetBottomNote

View File

@ -64,10 +64,10 @@ unsigned NoteTrackVRulerControls::HandleWheelRotation
const auto pTrack = FindTrack();
if (!pTrack)
return RefreshNone;
wxASSERT(pTrack->GetKind() == Track::Note);
auto steps = evt.steps;
auto steps = evt.steps;
const auto nt = static_cast<NoteTrack*>(pTrack.get());
if (event.CmdDown() && !event.ShiftDown()) {
if (steps > 0)
nt->ZoomIn(evt.rect, evt.event.m_y);

View File

@ -76,7 +76,7 @@ UIHandlePtr StretchHandle::HitTest
// within the selection
const ViewInfo &viewInfo = pProject->GetViewInfo();
if (!pTrack || !pTrack->GetSelected() || pTrack->GetKind() != Track::Note)
if (!pTrack || !pTrack->GetSelected())
return {};
const wxRect &rect = st.rect;

View File

@ -104,12 +104,9 @@ UIHandlePtr CutlineHandle::HitTest
const ViewInfo &viewInfo = pProject->GetViewInfo();
/// method that tells us if the mouse event landed on an
/// editable Cutline
if (pTrack->GetKind() != Track::Wave)
return {};
WaveTrack *wavetrack = pTrack.get();
WaveTrackLocation location;
if (!IsOverCutline(viewInfo, wavetrack, rect, state, &location))
if (!IsOverCutline(viewInfo, pTrack.get(), rect, state, &location))
return {};
auto result = std::make_shared<CutlineHandle>( pTrack, location );

View File

@ -115,7 +115,9 @@ UIHandlePtr SampleHandle::HitTest
{
const ViewInfo &viewInfo = pProject->GetViewInfo();
WaveTrack *wavetrack = pTrack.get();
/// method that tells us if the mouse event landed on an
/// editable sample
const auto wavetrack = pTrack.get();
const int displayType = wavetrack->GetDisplay();
if (WaveTrack::Waveform != displayType)
@ -173,12 +175,8 @@ namespace {
/// @return true if we can edit the samples, false otherwise.
bool IsSampleEditingPossible
(const wxMouseEvent &event,
const wxRect &rect, const ViewInfo &viewInfo, Track *pTrack, int width)
const wxRect &rect, const ViewInfo &viewInfo, WaveTrack *wt, int width)
{
if (pTrack->GetKind() != Track::Wave)
return false;
WaveTrack *wt = static_cast<WaveTrack*>(pTrack);
//Get out of here if we shouldn't be drawing right now:
//If we aren't displaying the waveform, Display a message dialog
const int display = wt->GetDisplay();

View File

@ -207,8 +207,7 @@ void WaveColorMenuTable::OnWaveColorChange(wxCommandEvent & event)
{
int id = event.GetId();
wxASSERT(id >= OnInstrument1ID && id <= OnInstrument4ID);
WaveTrack *const pTrack = static_cast<WaveTrack*>(mpData->pTrack);
wxASSERT(pTrack && pTrack->GetKind() == Track::Wave);
const auto pTrack = static_cast<WaveTrack*>(mpData->pTrack);
int newWaveColor = id - OnInstrument1ID;
@ -307,8 +306,7 @@ void FormatMenuTable::OnFormatChange(wxCommandEvent & event)
{
int id = event.GetId();
wxASSERT(id >= On16BitID && id <= OnFloatID);
WaveTrack *const pTrack = static_cast<WaveTrack*>(mpData->pTrack);
wxASSERT(pTrack && pTrack->GetKind() == Track::Wave);
const auto pTrack = static_cast<WaveTrack*>(mpData->pTrack);
sampleFormat newFormat = int16Sample;
@ -448,8 +446,7 @@ void RateMenuTable::OnRateChange(wxCommandEvent & event)
{
int id = event.GetId();
wxASSERT(id >= OnRate8ID && id <= OnRate384ID);
WaveTrack *const pTrack = static_cast<WaveTrack*>(mpData->pTrack);
wxASSERT(pTrack->GetKind() == Track::Wave);
const auto pTrack = static_cast<WaveTrack*>(mpData->pTrack);
SetRate(pTrack, gRates[id - OnRate8ID]);
@ -459,8 +456,7 @@ void RateMenuTable::OnRateChange(wxCommandEvent & event)
void RateMenuTable::OnRateOther(wxCommandEvent &)
{
WaveTrack *const pTrack = static_cast<WaveTrack*>(mpData->pTrack);
wxASSERT(pTrack && pTrack->GetKind() == Track::Wave);
const auto pTrack = static_cast<WaveTrack*>(mpData->pTrack);
int newRate;
@ -710,8 +706,7 @@ void WaveTrackMenuTable::OnSetDisplay(wxCommandEvent & event)
{
int idInt = event.GetId();
wxASSERT(idInt >= OnWaveformID && idInt <= OnSpectrumID);
WaveTrack *const pTrack = static_cast<WaveTrack*>(mpData->pTrack);
wxASSERT(pTrack && pTrack->GetKind() == Track::Wave);
const auto pTrack = static_cast<WaveTrack*>(mpData->pTrack);
bool linear = false;
WaveTrack::WaveTrackDisplay id;

View File

@ -54,7 +54,6 @@ void WaveTrackVRulerControls::DoZoomPreset( int i)
const auto pTrack = FindTrack();
if (!pTrack)
return;
wxASSERT(pTrack->GetKind() == Track::Wave);
const auto wt = static_cast<WaveTrack*>(pTrack.get());
@ -84,10 +83,9 @@ unsigned WaveTrackVRulerControls::HandleWheelRotation
const auto pTrack = FindTrack();
if (!pTrack)
return RefreshNone;
wxASSERT(pTrack->GetKind() == Track::Wave);
const auto wt = static_cast<WaveTrack*>(pTrack.get());
auto steps = evt.steps;
WaveTrack *const wt = static_cast<WaveTrack*>(pTrack.get());
const bool isDB =
wt->GetDisplay() == WaveTrack::Waveform &&
wt->GetWaveformSettings().scaleType == WaveformSettings::stLogarithmic;