diff options
author | Florian Jung <flo@windfisch.org> | 2011-05-25 15:38:43 +0000 |
---|---|---|
committer | Florian Jung <flo@windfisch.org> | 2011-05-25 15:38:43 +0000 |
commit | 5e47397a7d496b8dcc93e11b89cb0f9159f291e0 (patch) | |
tree | 2bb5b0b4c41f78acdc36813b10d7ed232a689981 /muse2/muse/midiedit/pianoroll.cpp | |
parent | ccef6200fac0de84de65bb0d3eda223acc6b03c6 (diff) |
undone commit 954: reintroduced midi-in buttons and the step-rec
button for the drum editor.
however, i disabled these buttons in the drum editor, because they
have no function right now, and muse should not pretend there is
some function.
Diffstat (limited to 'muse2/muse/midiedit/pianoroll.cpp')
-rw-r--r-- | muse2/muse/midiedit/pianoroll.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/muse2/muse/midiedit/pianoroll.cpp b/muse2/muse/midiedit/pianoroll.cpp index 89f5ad6a..ab83e85f 100644 --- a/muse2/muse/midiedit/pianoroll.cpp +++ b/muse2/muse/midiedit/pianoroll.cpp @@ -236,6 +236,12 @@ PianoRoll::PianoRoll(PartList* pl, QWidget* parent, const char* name, unsigned i srec->setCheckable(true); tools->addWidget(srec); + midiin = new QToolButton(); + midiin->setToolTip(tr("Midi Input")); + midiin->setIcon(*midiinIcon); + midiin->setCheckable(true); + tools->addWidget(midiin); + speaker = new QToolButton(); speaker->setToolTip(tr("Play Events")); speaker->setIcon(*speakerIcon); @@ -435,6 +441,7 @@ PianoRoll::PianoRoll(PartList* pl, QWidget* parent, const char* name, unsigned i connect(piano, SIGNAL(keyPressed(int, int, bool)), canvas, SLOT(pianoPressed(int, int, bool))); connect(piano, SIGNAL(keyReleased(int, bool)), canvas, SLOT(pianoReleased(int, bool))); connect(srec, SIGNAL(toggled(bool)), SLOT(setSteprec(bool))); + connect(midiin, SIGNAL(toggled(bool)), canvas, SLOT(setMidiin(bool))); connect(speaker, SIGNAL(toggled(bool)), SLOT(setSpeaker(bool))); connect(canvas, SIGNAL(followEvent(int)), SLOT(follow(int))); @@ -866,7 +873,8 @@ void PianoRoll::writeStatus(int level, Xml& xml) const (*i)->writeStatus(level, xml); } - xml.intTag(level, "steprec", ((PianoCanvas*)canvas)->steprec()); + xml.intTag(level, "steprec", canvas->steprec()); + xml.intTag(level, "midiin", canvas->midiin()); xml.intTag(level, "tool", int(canvas->tool())); xml.intTag(level, "playEvents", _playEvents); xml.intTag(level, "xpos", hscroll->pos()); @@ -891,9 +899,14 @@ void PianoRoll::readStatus(Xml& xml) case Xml::TagStart: if (tag == "steprec") { int val = xml.parseInt(); - ((PianoCanvas*)canvas)->setSteprec(val); + canvas->setSteprec(val); srec->setChecked(val); } + else if (tag == "midiin") { + int val = xml.parseInt(); + canvas->setMidiin(val); + midiin->setChecked(val); + } else if (tag == "tool") { int tool = xml.parseInt(); canvas->setTool(tool); @@ -1117,7 +1130,9 @@ void PianoRoll::keyPressEvent(QKeyEvent* event) void PianoRoll::setSteprec(bool flag) { - ((PianoCanvas*)canvas)->setSteprec(flag); + canvas->setSteprec(flag); + if (flag == false) + midiin->setChecked(flag); } //--------------------------------------------------------- |