summaryrefslogtreecommitdiff
path: root/muse2/muse/ctrl.h
diff options
context:
space:
mode:
authorFlorian Jung <flo@windfisch.org>2012-01-03 17:26:09 +0000
committerFlorian Jung <flo@windfisch.org>2012-01-03 17:26:09 +0000
commit1bc4ba9dfc00b6e7511fbf4765296a2002f83315 (patch)
treedf6a0d5d9b61d64005dd368afea0aea11ab0a6b3 /muse2/muse/ctrl.h
parentb988a0a27bc175ce10bc8fa53ed131486813f3e7 (diff)
merged with release_2_0
Diffstat (limited to 'muse2/muse/ctrl.h')
-rw-r--r--muse2/muse/ctrl.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/muse2/muse/ctrl.h b/muse2/muse/ctrl.h
index 5e4ee531..83db1063 100644
--- a/muse2/muse/ctrl.h
+++ b/muse2/muse/ctrl.h
@@ -97,7 +97,7 @@ typedef std::map<int, CtrlVal, std::less<int> >::const_iterator ciCtrl;
class CtrlList : public std::map<int, CtrlVal, std::less<int> > {
public:
enum Mode { INTERPOLATE, DISCRETE};
-
+ enum AssignFlags { ASSIGN_PROPERTIES=1, ASSIGN_VALUES=2 }; // Can be or'd together.
private:
Mode _mode;
int _id;
@@ -116,6 +116,7 @@ class CtrlList : public std::map<int, CtrlVal, std::less<int> > {
CtrlList();
CtrlList(int id);
CtrlList(int id, QString name, double min, double max, CtrlValueType v, bool dontShow=false);
+ void assign(const CtrlList& l, int flags);
Mode mode() const { return _mode; }
void setMode(Mode m) { _mode = m; }
@@ -162,6 +163,12 @@ typedef std::map<int, CtrlList*, std::less<int> >::const_iterator ciCtrlList;
class CtrlListList : public std::map<int, CtrlList*, std::less<int> > {
public:
void add(CtrlList* vl);
+ void clearDelete() {
+ for(iCtrlList i = begin(); i != end(); ++i)
+ delete i->second;
+ clear();
+ }
+
iCtrlList find(int id) {
return std::map<int, CtrlList*, std::less<int> >::find(id);
}