mirror of
https://github.com/cookiengineer/audacity
synced 2025-11-22 00:47:13 +01:00
New class ProjectHistory split from ProjectManager for undo, etc...
... And yet fewer inclusions of Projectmanager.h, though it's still not yet free of cycles
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
#include "../Menus.h"
|
||||
#include "../Prefs.h"
|
||||
#include "../Project.h"
|
||||
#include "../ProjectManager.h"
|
||||
#include "../ProjectHistory.h"
|
||||
#include "../ProjectWindow.h"
|
||||
#include "../Track.h"
|
||||
#include "../SelectionState.h"
|
||||
@@ -86,7 +86,7 @@ void NextOrPrevFrame(AudacityProject &project, bool forward)
|
||||
void DoPrevTrack(
|
||||
AudacityProject &project, bool shift, bool circularTrackNavigation )
|
||||
{
|
||||
auto &projectManager = ProjectManager::Get( project );
|
||||
auto &projectHistory = ProjectHistory::Get( project );
|
||||
auto &trackPanel = TrackPanel::Get( project );
|
||||
auto &tracks = TrackList::Get( project );
|
||||
auto &selectionState = SelectionState::Get( project );
|
||||
@@ -97,7 +97,7 @@ void DoPrevTrack(
|
||||
t = *tracks.Any().rbegin();
|
||||
trackPanel.SetFocusedTrack( t );
|
||||
trackPanel.EnsureVisible( t );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ void DoPrevTrack(
|
||||
( *t, false, false );
|
||||
trackPanel.SetFocusedTrack( p ); // move focus to next track up
|
||||
trackPanel.EnsureVisible( p );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
if( tSelected && !pSelected )
|
||||
@@ -138,7 +138,7 @@ void DoPrevTrack(
|
||||
( *p, true, false );
|
||||
trackPanel.SetFocusedTrack( p ); // move focus to next track up
|
||||
trackPanel.EnsureVisible( p );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
if( !tSelected && pSelected )
|
||||
@@ -147,7 +147,7 @@ void DoPrevTrack(
|
||||
( *p, false, false );
|
||||
trackPanel.SetFocusedTrack( p ); // move focus to next track up
|
||||
trackPanel.EnsureVisible( p );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
if( !tSelected && !pSelected )
|
||||
@@ -156,7 +156,7 @@ void DoPrevTrack(
|
||||
( *t, true, false );
|
||||
trackPanel.SetFocusedTrack( p ); // move focus to next track up
|
||||
trackPanel.EnsureVisible( p );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -172,7 +172,7 @@ void DoPrevTrack(
|
||||
p = * range.rbegin(); // null if range is empty
|
||||
trackPanel.SetFocusedTrack( p ); // Wrap to the last track
|
||||
trackPanel.EnsureVisible( p );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
else
|
||||
@@ -185,7 +185,7 @@ void DoPrevTrack(
|
||||
{
|
||||
trackPanel.SetFocusedTrack( p ); // move focus to next track up
|
||||
trackPanel.EnsureVisible( p );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -197,7 +197,7 @@ void DoPrevTrack(
|
||||
void DoNextTrack(
|
||||
AudacityProject &project, bool shift, bool circularTrackNavigation )
|
||||
{
|
||||
auto &projectManager = ProjectManager::Get( project );
|
||||
auto &projectHistory = ProjectHistory::Get( project );
|
||||
auto &trackPanel = TrackPanel::Get( project );
|
||||
auto &tracks = TrackList::Get( project );
|
||||
auto &selectionState = SelectionState::Get( project );
|
||||
@@ -208,7 +208,7 @@ void DoNextTrack(
|
||||
t = *tracks.Any().begin();
|
||||
trackPanel.SetFocusedTrack( t );
|
||||
trackPanel.EnsureVisible( t );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -234,7 +234,7 @@ void DoNextTrack(
|
||||
( *t, false, false );
|
||||
trackPanel.SetFocusedTrack( n ); // move focus to next track down
|
||||
trackPanel.EnsureVisible( n );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
if( tSelected && !nSelected )
|
||||
@@ -243,7 +243,7 @@ void DoNextTrack(
|
||||
( *n, true, false );
|
||||
trackPanel.SetFocusedTrack( n ); // move focus to next track down
|
||||
trackPanel.EnsureVisible( n );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
if( !tSelected && nSelected )
|
||||
@@ -252,7 +252,7 @@ void DoNextTrack(
|
||||
( *n, false, false );
|
||||
trackPanel.SetFocusedTrack( n ); // move focus to next track down
|
||||
trackPanel.EnsureVisible( n );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
if( !tSelected && !nSelected )
|
||||
@@ -261,7 +261,7 @@ void DoNextTrack(
|
||||
( *t, true, false );
|
||||
trackPanel.SetFocusedTrack( n ); // move focus to next track down
|
||||
trackPanel.EnsureVisible( n );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -276,7 +276,7 @@ void DoNextTrack(
|
||||
n = *tracks.Any().begin();
|
||||
trackPanel.SetFocusedTrack( n ); // Wrap to the first track
|
||||
trackPanel.EnsureVisible( n );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
else
|
||||
@@ -289,7 +289,7 @@ void DoNextTrack(
|
||||
{
|
||||
trackPanel.SetFocusedTrack( n ); // move focus to next track down
|
||||
trackPanel.EnsureVisible( n );
|
||||
projectManager.ModifyState(false);
|
||||
projectHistory.ModifyState(false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -474,7 +474,7 @@ void OnFirstTrack(const CommandContext &context)
|
||||
if (t != f)
|
||||
{
|
||||
trackPanel.SetFocusedTrack(f);
|
||||
ProjectManager::Get( project ).ModifyState(false);
|
||||
ProjectHistory::Get( project ).ModifyState(false);
|
||||
}
|
||||
trackPanel.EnsureVisible(f);
|
||||
}
|
||||
@@ -493,7 +493,7 @@ void OnLastTrack(const CommandContext &context)
|
||||
if (t != l)
|
||||
{
|
||||
trackPanel.SetFocusedTrack(l);
|
||||
ProjectManager::Get( project ).ModifyState(false);
|
||||
ProjectHistory::Get( project ).ModifyState(false);
|
||||
}
|
||||
trackPanel.EnsureVisible(l);
|
||||
}
|
||||
@@ -525,7 +525,7 @@ void OnToggle(const CommandContext &context)
|
||||
selectionState.SelectTrack
|
||||
( *t, !t->GetSelected(), true );
|
||||
trackPanel.EnsureVisible( t );
|
||||
ProjectManager::Get( project ).ModifyState(false);
|
||||
ProjectHistory::Get( project ).ModifyState(false);
|
||||
|
||||
trackPanel.GetAx().Updated();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user