1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-19 09:01:15 +02:00

MixerBoard listens to TrackList for selection changes

This commit is contained in:
Paul Licameli
2018-02-05 18:30:18 -05:00
parent 96d104cb38
commit 7150d43083
10 changed files with 61 additions and 95 deletions

View File

@@ -84,7 +84,6 @@ void DoPrevTrack(
auto trackPanel = project.GetTrackPanel();
auto tracks = project.GetTracks();
auto &selectionState = project.GetSelectionState();
auto mixerBoard = project.GetMixerBoard();
Track* t = trackPanel->GetFocusedTrack();
if( t == NULL ) // if there isn't one, focus on last
@@ -121,7 +120,7 @@ void DoPrevTrack(
if( tSelected && pSelected )
{
selectionState.SelectTrack
( *t, false, false, mixerBoard );
( *t, false, false );
trackPanel->SetFocusedTrack( p ); // move focus to next track up
trackPanel->EnsureVisible( p );
project.ModifyState(false);
@@ -130,7 +129,7 @@ void DoPrevTrack(
if( tSelected && !pSelected )
{
selectionState.SelectTrack
( *p, true, false, mixerBoard );
( *p, true, false );
trackPanel->SetFocusedTrack( p ); // move focus to next track up
trackPanel->EnsureVisible( p );
project.ModifyState(false);
@@ -139,7 +138,7 @@ void DoPrevTrack(
if( !tSelected && pSelected )
{
selectionState.SelectTrack
( *p, false, false, mixerBoard );
( *p, false, false );
trackPanel->SetFocusedTrack( p ); // move focus to next track up
trackPanel->EnsureVisible( p );
project.ModifyState(false);
@@ -148,7 +147,7 @@ void DoPrevTrack(
if( !tSelected && !pSelected )
{
selectionState.SelectTrack
( *t, true, false, mixerBoard );
( *t, true, false );
trackPanel->SetFocusedTrack( p ); // move focus to next track up
trackPanel->EnsureVisible( p );
project.ModifyState(false);
@@ -195,7 +194,6 @@ void DoNextTrack(
auto trackPanel = project.GetTrackPanel();
auto tracks = project.GetTracks();
auto &selectionState = project.GetSelectionState();
auto mixerBoard = project.GetMixerBoard();
auto t = trackPanel->GetFocusedTrack(); // Get currently focused track
if( t == NULL ) // if there isn't one, focus on first
@@ -226,7 +224,7 @@ void DoNextTrack(
if( tSelected && nSelected )
{
selectionState.SelectTrack
( *t, false, false, mixerBoard );
( *t, false, false );
trackPanel->SetFocusedTrack( n ); // move focus to next track down
trackPanel->EnsureVisible( n );
project.ModifyState(false);
@@ -235,7 +233,7 @@ void DoNextTrack(
if( tSelected && !nSelected )
{
selectionState.SelectTrack
( *n, true, false, mixerBoard );
( *n, true, false );
trackPanel->SetFocusedTrack( n ); // move focus to next track down
trackPanel->EnsureVisible( n );
project.ModifyState(false);
@@ -244,7 +242,7 @@ void DoNextTrack(
if( !tSelected && nSelected )
{
selectionState.SelectTrack
( *n, false, false, mixerBoard );
( *n, false, false );
trackPanel->SetFocusedTrack( n ); // move focus to next track down
trackPanel->EnsureVisible( n );
project.ModifyState(false);
@@ -253,7 +251,7 @@ void DoNextTrack(
if( !tSelected && !nSelected )
{
selectionState.SelectTrack
( *t, true, false, mixerBoard );
( *t, true, false );
trackPanel->SetFocusedTrack( n ); // move focus to next track down
trackPanel->EnsureVisible( n );
project.ModifyState(false);
@@ -506,7 +504,6 @@ void OnToggle(const CommandContext &context)
auto &project = context.project;
auto trackPanel = project.GetTrackPanel();
auto &selectionState = project.GetSelectionState();
auto mixerBoard = project.GetMixerBoard();
Track *t;
@@ -515,7 +512,7 @@ void OnToggle(const CommandContext &context)
return;
selectionState.SelectTrack
( *t, !t->GetSelected(), true, mixerBoard );
( *t, !t->GetSelected(), true );
trackPanel->EnsureVisible( t );
project.ModifyState(false);

View File

@@ -3,7 +3,6 @@
#include "../Experimental.h"
#include "../FreqWindow.h"
#include "../Menus.h" // for PrefsListener
#include "../MixerBoard.h"
#include "../Prefs.h"
#include "../Project.h"
#include "../TimeDialog.h"
@@ -23,7 +22,6 @@ void DoSelectTimeAndTracks
auto tracks = project.GetTracks();
auto trackPanel = project.GetTrackPanel();
auto &selectedRegion = project.GetViewInfo().selectedRegion;
auto mixerBoard = project.GetMixerBoard();
if( bAllTime )
selectedRegion.setTimes(
@@ -35,8 +33,6 @@ void DoSelectTimeAndTracks
project.ModifyState(false);
trackPanel->Refresh(false);
if (mixerBoard)
mixerBoard->Refresh(false);
}
}
@@ -467,11 +463,10 @@ void DoListSelection
auto &selectionState = project.GetSelectionState();
auto &viewInfo = project.GetViewInfo();
auto isSyncLocked = project.IsSyncLocked();
auto mixerBoard = project.GetMixerBoard();
selectionState.HandleListSelection
( *tracks, viewInfo, *t,
shift, ctrl, isSyncLocked, mixerBoard );
shift, ctrl, isSyncLocked );
if (! ctrl )
trackPanel->SetFocusedTrack(t);
@@ -535,7 +530,6 @@ void OnSelectSyncLockSel(const CommandContext &context)
auto &project = context.project;
auto tracks = project.GetTracks();
auto trackPanel = project.GetTrackPanel();
auto mixerBoard = project.GetMixerBoard();
bool selected = false;
for (auto t : tracks->Any()
@@ -548,8 +542,6 @@ void OnSelectSyncLockSel(const CommandContext &context)
project.ModifyState(false);
trackPanel->Refresh(false);
if (mixerBoard)
mixerBoard->Refresh(false);
}
//this pops up a dialog which allows the left selection to be set.