diff options
author | Tim E. Real <termtech@rogers.com> | 2012-10-09 20:04:43 +0000 |
---|---|---|
committer | Tim E. Real <termtech@rogers.com> | 2012-10-09 20:04:43 +0000 |
commit | 0368494d2ba85b24da193512972ccfeada99cf52 (patch) | |
tree | fff25f5a6aecdd722c98a938fa9b03f1fec9febc /muse2/muse/ctrl/ctrlcanvas.cpp | |
parent | c5e6b8cfa9d8615a32ce2aad28f4d091482be91d (diff) |
!!! Song type is now removed !!! : See ChangeLog
Diffstat (limited to 'muse2/muse/ctrl/ctrlcanvas.cpp')
-rw-r--r-- | muse2/muse/ctrl/ctrlcanvas.cpp | 40 |
1 files changed, 9 insertions, 31 deletions
diff --git a/muse2/muse/ctrl/ctrlcanvas.cpp b/muse2/muse/ctrl/ctrlcanvas.cpp index 8d4bc8a3..1b243204 100644 --- a/muse2/muse/ctrl/ctrlcanvas.cpp +++ b/muse2/muse/ctrl/ctrlcanvas.cpp @@ -943,12 +943,7 @@ void CtrlCanvas::newValRamp(int x1, int y1, int x2, int y2) if (type == MusECore::CTRL_PROGRAM) { if (lastpv == MusECore::CTRL_VAL_UNKNOWN) - { - if (MusEGlobal::song->mtype() == MT_GM) - event.setB(0xffff00 | (nval - 1)); - else - event.setB(nval - 1); - } + event.setB(nval - 1); else event.setB((lastpv & 0xffff00) | (nval - 1)); } @@ -991,11 +986,7 @@ void CtrlCanvas::changeValRamp(int x1, int y1, int x2, int y2) if (type == MusECore::CTRL_PROGRAM) { if (event.dataB() == MusECore::CTRL_VAL_UNKNOWN) - { --nval; - if(MusEGlobal::song->mtype() == MT_GM) - nval |= 0xffff00; - } else nval = (event.dataB() & 0xffff00) | (nval - 1); } @@ -1066,11 +1057,7 @@ void CtrlCanvas::changeVal(int x1, int x2, int y) if(type == MusECore::CTRL_PROGRAM) { if(event.dataB() == MusECore::CTRL_VAL_UNKNOWN) - { --nval; - if(MusEGlobal::song->mtype() == MT_GM) - nval |= 0xffff00; - } else nval = (event.dataB() & 0xffff00) | (nval - 1); } @@ -1167,11 +1154,7 @@ void CtrlCanvas::newVal(int x1, int y) if(event.dataB() == MusECore::CTRL_VAL_UNKNOWN) { if(lastpv == MusECore::CTRL_VAL_UNKNOWN) - { --nval; - if(MusEGlobal::song->mtype() == MT_GM) - nval |= 0xffff00; - } else nval = (lastpv & 0xffff00) | (nval - 1); } @@ -1238,12 +1221,7 @@ void CtrlCanvas::newVal(int x1, int y) if(type == MusECore::CTRL_PROGRAM) { if(lastpv == MusECore::CTRL_VAL_UNKNOWN) - { - if(MusEGlobal::song->mtype() == MT_GM) - event.setB(0xffff00 | (newval - 1)); - else - event.setB(newval - 1); - } + event.setB(newval - 1); else event.setB((lastpv & 0xffff00) | (newval - 1)); } @@ -1411,12 +1389,7 @@ void CtrlCanvas::newVal(int x1, int y1, int x2, int y2) if(type == MusECore::CTRL_PROGRAM) { if(lastpv == MusECore::CTRL_VAL_UNKNOWN) - { - if(MusEGlobal::song->mtype() == MT_GM) - event.setB(0xffff00 | (nval - 1)); - else - event.setB(nval - 1); - } + event.setB(nval - 1); else event.setB((lastpv & 0xffff00) | (nval - 1)); } @@ -1900,7 +1873,12 @@ void CtrlCanvas::setCurDrumPitch(int instrument) curDrumPitch = instrument; else // new style drummap mode { - if (drumedit->get_instrument_map()[instrument].tracks.contains(curTrack)) + // Crash protection by Tim. + // FIXME: Still, drum list is blank, editor can't edit. Other values of instrument or curDrumPitch just crash too. + // Seems only with drum tracks that were created by importing a midi file (then changed to use fluidsynth device?). + if(instrument == -1) curDrumPitch = -1; + + else if (drumedit->get_instrument_map()[instrument].tracks.contains(curTrack)) curDrumPitch = drumedit->get_instrument_map()[instrument].pitch; else curDrumPitch = -2; // this means "invalid", but not "unused" |