diff options
author | Tim E. Real <termtech@rogers.com> | 2012-11-12 04:49:31 +0000 |
---|---|---|
committer | Tim E. Real <termtech@rogers.com> | 2012-11-12 04:49:31 +0000 |
commit | be1005a6031861b91e1a2df33f62e1c5a0a2aeb6 (patch) | |
tree | 89152909549c7dd624f4748f394c3adbcbf65b86 /muse2/muse/arranger/pcanvas.cpp | |
parent | 31f618e5461553bd7836677f944acfa233e5ae3c (diff) |
Finished Aftertouch controllers
Feature: Piano KB / drum list show coloured dots when per-pitch controllers exist / have data.
Diffstat (limited to 'muse2/muse/arranger/pcanvas.cpp')
-rw-r--r-- | muse2/muse/arranger/pcanvas.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/muse2/muse/arranger/pcanvas.cpp b/muse2/muse/arranger/pcanvas.cpp index 3c3e6116..ccd727aa 100644 --- a/muse2/muse/arranger/pcanvas.cpp +++ b/muse2/muse/arranger/pcanvas.cpp @@ -2333,12 +2333,17 @@ void PartCanvas::drawMidiPart(QPainter& p, const QRect&, MusECore::EventList* ev for (MusECore::iEvent i = events->lower_bound(from); i != ito; ++i) { MusECore::EventType type = i->second.type(); + int a = i->second.dataA() | 0xff; if ( ((MusEGlobal::config.canvasShowPartEvent & 1) && (type == MusECore::Note)) - || ((MusEGlobal::config.canvasShowPartEvent & 2) && (type == MusECore::PAfter)) - || ((MusEGlobal::config.canvasShowPartEvent & 4) && (type == MusECore::Controller)) - || ((MusEGlobal::config.canvasShowPartEvent &16) && (type == MusECore::CAfter)) - || ((MusEGlobal::config.canvasShowPartEvent &64) && (type == MusECore::Sysex || type == MusECore::Meta)) + || ((MusEGlobal::config.canvasShowPartEvent & (2 | 4)) == (2 | 4) && + type == MusECore::Controller && a == MusECore::CTRL_POLYAFTER) + || ((MusEGlobal::config.canvasShowPartEvent & 4) && (type == MusECore::Controller) && + (a != MusECore::CTRL_POLYAFTER || (MusEGlobal::config.canvasShowPartEvent & 2)) && + (a != MusECore::CTRL_AFTERTOUCH || (MusEGlobal::config.canvasShowPartEvent & 16))) + || ((MusEGlobal::config.canvasShowPartEvent & (16 | 4)) == (16 | 4) && + type == MusECore::Controller && a == MusECore::CTRL_AFTERTOUCH) + || ((MusEGlobal::config.canvasShowPartEvent & 64) && (type == MusECore::Sysex || type == MusECore::Meta)) ) { int t = i->first + pTick; int th = mt->height(); |