summaryrefslogtreecommitdiff
path: root/muse2/muse/miditransform.h
diff options
context:
space:
mode:
authorFlorian Jung <flo@windfisch.org>2013-09-18 22:40:48 +0200
committerFlorian Jung <flo@windfisch.org>2013-09-18 22:40:48 +0200
commit32589cdd760755d685a76d31469798fde74ad827 (patch)
treed50afd9a2a176846dd6c5b19d734ed9108e44aad /muse2/muse/miditransform.h
parentaf09b4f881888b97903cda57907cda571be83b18 (diff)
parent48a93993cfce160fb7d4cf0b67b4b77e22db19e5 (diff)
Merge branch 'master' into audiomsg_overhaul
Diffstat (limited to 'muse2/muse/miditransform.h')
-rw-r--r--muse2/muse/miditransform.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/muse2/muse/miditransform.h b/muse2/muse/miditransform.h
index 626c83c5..5ff78357 100644
--- a/muse2/muse/miditransform.h
+++ b/muse2/muse/miditransform.h
@@ -50,7 +50,21 @@ enum TransformFunction {
enum TransformOperator {
Keep, Plus, Minus, Multiply, Divide, Fix, Value, Invert,
- ScaleMap, Flip, Dynamic, Random
+ ScaleMap, Flip, Dynamic, Random, Toggle
+ };
+
+class TransformToggleState {
+ private:
+ bool _ctrlStates[128];
+
+ public:
+ TransformToggleState()
+ {
+ for(int i = 0; i < 128; ++i)
+ _ctrlStates[i] = false;
+ }
+ bool ctrlState(int ctl_num) { return _ctrlStates[ctl_num & 0x7f]; }
+ void setCtrlState(int ctl_num, bool state) { _ctrlStates[ctl_num & 0x7f] = state; }
};
extern void writeMidiTransforms(int level, Xml& xml);
@@ -93,6 +107,7 @@ class MidiTransformerDialog : public QDialog, public Ui::MidiTransformDialogBase
void procEventTypeSel(int);
void procVal1OpSel(int);
void procVal2OpSel(int);
+ void procVal2OpUpdate(MusECore::TransformOperator op);
void procLenOpSel(int);
void procPosOpSel(int);
void funcOpSel(int);