diff options
author | Florian Jung <flo@windfisch.org> | 2013-09-01 11:55:38 +0200 |
---|---|---|
committer | Florian Jung <flo@windfisch.org> | 2013-09-01 13:29:11 +0200 |
commit | 2f26bcd6a94124721d8c946f55d3f360147f1f58 (patch) | |
tree | 5b218108bbe1c8676e433fb3a27f2f5ee97e7bd0 /muse2/muse/audio.h | |
parent | c5e6fd0f6dfbf18847b601668ba8c657d776da31 (diff) |
applyOperationGroup is no more a hack :)
Diffstat (limited to 'muse2/muse/audio.h')
-rw-r--r-- | muse2/muse/audio.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/muse2/muse/audio.h b/muse2/muse/audio.h index 4b81bb2a..044760ac 100644 --- a/muse2/muse/audio.h +++ b/muse2/muse/audio.h @@ -52,6 +52,7 @@ class Part; class PluginI; class SynthI; class Track; +class Undo; //--------------------------------------------------------- // AudioMsgId @@ -67,7 +68,7 @@ enum { SEQM_ADD_TEMPO, SEQM_SET_TEMPO, SEQM_REMOVE_TEMPO, SEQM_ADD_SIG, SEQM_REMOVE_SIG, SEQM_ADD_KEY, SEQM_REMOVE_KEY, SEQM_SET_GLOBAL_TEMPO, - SEQM_UNDO, SEQM_REDO, + SEQM_REVERT_OPERATION_GROUP, SEQM_EXECUTE_OPERATION_GROUP, SEQM_RESET_DEVICES, SEQM_INIT_DEVICES, SEQM_PANIC, SEQM_MIDI_LOCAL_OFF, SEQM_PLAY_MIDI_EVENT, @@ -121,6 +122,7 @@ struct AudioMsg : public ThreadMsg { // this should be an union char port, channel, ctrl; int a, b, c; Pos pos; + Undo* operations; }; class AudioOutput; @@ -221,6 +223,9 @@ class Audio { void msgSeek(const Pos&); void msgPlay(bool val); + void msgExecuteOperationGroup(Undo&); // calls exe1, then calls exe2 in audio context, then calls exe3 + void msgRevertOperationGroup(Undo&); // similar. + void msgRemoveTrack(Track*, bool u = true); void msgRemoveTracks(); void msgMoveTrack(int idx1, int dx2, bool u = true); @@ -252,8 +257,6 @@ class Audio { void msgSetPrefader(AudioTrack*, int); void msgSetChannels(AudioTrack*, int); void msgSetRecord(AudioTrack*, bool); - void msgUndo(); - void msgRedo(); void msgLocalOff(); void msgInitMidiDevices(bool force = true); void msgResetMidiDevices(); |