1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-16 16:10:06 +02:00
audacity/src/TrackUtilities.h
Paul Licameli 406b23cae7 More uses of AUDACITY_DLL_API...
... in many places where the function call will later need to be between
modules (or libraries, or the executable) and the annotation will be a necessity
to keep the linkage working on Windows.

That's all that this sweeping commit does.
2021-05-10 10:46:55 -04:00

40 lines
1.2 KiB
C++

/**********************************************************************
Audacity: A Digital Audio Editor
TrackUtilities.h
Paul Licameli split from TrackMenus.h
**********************************************************************/
#ifndef __AUDACITY_TRACK_UTILITIES__
#define __AUDACITY_TRACK_UTILITIES__
class AudacityProject;
class Track;
namespace TrackUtilities {
enum MoveChoice {
OnMoveUpID, OnMoveDownID, OnMoveTopID, OnMoveBottomID
};
/// Move a track up, down, to top or to bottom.
AUDACITY_DLL_API void DoMoveTrack(
AudacityProject &project, Track* target, MoveChoice choice );
// "exclusive" mute means mute the chosen track and unmute all others.
AUDACITY_DLL_API
void DoTrackMute( AudacityProject &project, Track *pTrack, bool exclusive );
// Type of solo (standard or simple) follows the set preference, unless
// exclusive == true, which causes the opposite behavior.
AUDACITY_DLL_API
void DoTrackSolo( AudacityProject &project, Track *pTrack, bool exclusive );
AUDACITY_DLL_API
void DoRemoveTrack( AudacityProject &project, Track * toRemove );
AUDACITY_DLL_API
void DoRemoveTracks( AudacityProject & );
}
#endif