1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-23 17:30:17 +01:00

Move responsibilities from Track to TrackView classes...

... And Track no longer inherits TrackPanelCell, so be careful to rewrite
some dynamic_casts too to check instead for TrackView.  Those casts won't fail
to recompile if not rewritten.
This commit is contained in:
Paul Licameli
2019-06-18 00:00:35 -04:00
parent e0b8bd78eb
commit e581fa60d9
26 changed files with 190 additions and 186 deletions

View File

@@ -1804,13 +1804,14 @@ bool LabelTrackView::DoCaptureKey(wxKeyEvent & event)
return false;
}
unsigned LabelTrack::CaptureKey(wxKeyEvent & event, ViewInfo &, wxWindow *)
unsigned LabelTrackView::CaptureKey(wxKeyEvent & event, ViewInfo &, wxWindow *)
{
event.Skip(!LabelTrackView::Get( *this ).DoCaptureKey(event));
event.Skip(!DoCaptureKey(event));
return RefreshCode::RefreshNone;
}
unsigned LabelTrack::KeyDown(wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *WXUNUSED(pParent))
unsigned LabelTrackView::KeyDown(
wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *WXUNUSED(pParent))
{
double bkpSel0 = viewInfo.selectedRegion.t0(),
bkpSel1 = viewInfo.selectedRegion.t1();
@@ -1819,8 +1820,7 @@ unsigned LabelTrack::KeyDown(wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *W
// Pass keystroke to labeltrack's handler and add to history if any
// updates were done
auto &view = LabelTrackView::Get( *this );
if (view.DoKeyDown(viewInfo.selectedRegion, event)) {
if (DoKeyDown(viewInfo.selectedRegion, event)) {
ProjectHistory::Get( *pProj ).PushState(_("Modified Label"),
_("Label Edit"),
UndoPush::CONSOLIDATE);
@@ -1828,7 +1828,8 @@ unsigned LabelTrack::KeyDown(wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *W
// Make sure caret is in view
int x;
if (CalcCursorX(&x)) {
const auto pTrack = FindLabelTrack();
if (pTrack->CalcCursorX(&x)) {
TrackPanel::Get( *pProj ).ScrollIntoView(x);
}
@@ -1843,7 +1844,8 @@ unsigned LabelTrack::KeyDown(wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *W
return RefreshCode::RefreshNone;
}
unsigned LabelTrack::Char(wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *)
unsigned LabelTrackView::Char(
wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *)
{
double bkpSel0 = viewInfo.selectedRegion.t0(),
bkpSel1 = viewInfo.selectedRegion.t1();
@@ -1852,7 +1854,7 @@ unsigned LabelTrack::Char(wxKeyEvent & event, ViewInfo &viewInfo, wxWindow *)
AudacityProject *const pProj = GetActiveProject();
if (LabelTrackView::Get( *this ).DoChar(viewInfo.selectedRegion, event))
if (DoChar(viewInfo.selectedRegion, event))
ProjectHistory::Get( *pProj ).PushState(_("Modified Label"),
_("Label Edit"),
UndoPush::CONSOLIDATE);