mirror of
https://github.com/cookiengineer/audacity
synced 2026-04-01 20:14:49 +02:00
AdornedRulerPanel updates its play region in idle time...
... Eliminating TP_DisplaySelection and making ProjectWindow independent of AdornedRulerPanel
This commit is contained in:
@@ -380,6 +380,7 @@ enum {
|
||||
};
|
||||
|
||||
BEGIN_EVENT_TABLE(AdornedRulerPanel, CellularPanel)
|
||||
EVT_IDLE( AdornedRulerPanel::OnIdle )
|
||||
EVT_PAINT(AdornedRulerPanel::OnPaint)
|
||||
EVT_SIZE(AdornedRulerPanel::OnSize)
|
||||
|
||||
@@ -1129,6 +1130,23 @@ namespace {
|
||||
}
|
||||
}
|
||||
|
||||
void AdornedRulerPanel::OnIdle( wxIdleEvent &evt )
|
||||
{
|
||||
evt.Skip();
|
||||
|
||||
auto &project = *mProject;
|
||||
auto &viewInfo = ViewInfo::Get( project );
|
||||
const auto &selectedRegion = viewInfo.selectedRegion;
|
||||
auto &playRegion = ViewInfo::Get( project ).playRegion;
|
||||
|
||||
auto gAudioIO = AudioIOBase::Get();
|
||||
if (!gAudioIO->IsBusy() && !playRegion.Locked())
|
||||
SetPlayRegion( selectedRegion.t0(), selectedRegion.t1() );
|
||||
else
|
||||
// Cause ruler redraw anyway, because we may be zooming or scrolling
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void AdornedRulerPanel::OnRecordStartStop(wxCommandEvent & evt)
|
||||
{
|
||||
evt.Skip();
|
||||
|
||||
Reference in New Issue
Block a user