summaryrefslogtreecommitdiff
path: root/muse2/muse/ctrl
diff options
context:
space:
mode:
authorTim E. Real <termtech@rogers.com>2011-01-09 21:32:13 +0000
committerTim E. Real <termtech@rogers.com>2011-01-09 21:32:13 +0000
commit5fa5f8210b4924a1f2ae0100dfb6c0b50c85db81 (patch)
tree23f4c7ebe7fe8f506aa5d09bce4262b0040453f2 /muse2/muse/ctrl
parent0e39cb75d7a659322b282a79ca63f10d48fa277a (diff)
Completed soloing system. Other fixes - see ChangeLog.
Diffstat (limited to 'muse2/muse/ctrl')
-rw-r--r--muse2/muse/ctrl/ctrledit.cpp22
-rw-r--r--muse2/muse/ctrl/ctrledit.h3
2 files changed, 25 insertions, 0 deletions
diff --git a/muse2/muse/ctrl/ctrledit.cpp b/muse2/muse/ctrl/ctrledit.cpp
index fe04844d..8842ba97 100644
--- a/muse2/muse/ctrl/ctrledit.cpp
+++ b/muse2/muse/ctrl/ctrledit.cpp
@@ -132,3 +132,25 @@ void CtrlEdit::setCanvasWidth(int w)
{
canvas->setFixedWidth(w);
}
+
+void CtrlEdit::setController(int n)
+{
+ canvas->setController(n);
+}
+
+void CtrlEdit::setController(const QString& name)
+{
+ int portno = canvas->track()->outPort();
+ MidiPort* port = &midiPorts[portno];
+ MidiInstrument* instr = port->instrument();
+ MidiControllerList* mcl = instr->controller();
+
+ for (iMidiController ci = mcl->begin(); ci != mcl->end(); ++ci)
+ {
+ if (ci->second->name() == name)
+ {
+ canvas->setController(ci->second->num());
+ break;
+ }
+ }
+}
diff --git a/muse2/muse/ctrl/ctrledit.h b/muse2/muse/ctrl/ctrledit.h
index 61bf9b46..eec235b1 100644
--- a/muse2/muse/ctrl/ctrledit.h
+++ b/muse2/muse/ctrl/ctrledit.h
@@ -37,6 +37,8 @@ class CtrlEdit : public QWidget {
void setXPos(int val) { canvas->setXPos(val); }
void setXMag(int val) { canvas->setXMag(val); }
void setCanvasWidth(int w);
+ void setController(int /*n*/);
+
signals:
void timeChanged(unsigned);
void destroyedCtrl(CtrlEdit*);
@@ -48,6 +50,7 @@ class CtrlEdit : public QWidget {
bool expand = false, const char* name = 0);
void readStatus(Xml&);
void writeStatus(int, Xml&);
+ void setController(const QString& name);
};
#endif