summaryrefslogtreecommitdiff
path: root/muse2
diff options
context:
space:
mode:
authorTim E. Real <termtech@rogers.com>2010-12-28 02:42:54 +0000
committerTim E. Real <termtech@rogers.com>2010-12-28 02:42:54 +0000
commitcad5278e0da866c305db17683918d42d0c10717c (patch)
treec7786fa5fe80543ffe94e7c13b6db64ccbac9dde /muse2
parentf82d146d6f3917220d49cf61a0a23a491ae57c5a (diff)
Fix arranger trackinfo not updating (again).
Diffstat (limited to 'muse2')
-rw-r--r--muse2/muse/arranger/arranger.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/muse2/muse/arranger/arranger.cpp b/muse2/muse/arranger/arranger.cpp
index 6af69f8d..26809bbd 100644
--- a/muse2/muse/arranger/arranger.cpp
+++ b/muse2/muse/arranger/arranger.cpp
@@ -984,9 +984,13 @@ void Arranger::updateTrackInfo(int flags)
}
if (selected->isMidiTrack()) {
switchInfo(1);
- ///updateMidiTrackInfo(flags);
- //midiTrackInfo->setTrack(selected);
- midiTrackInfo->updateTrackInfo(flags);
+ // If a new part was selected, and only if it's different.
+ if((flags & SC_SELECTION) && midiTrackInfo->track() != selected)
+ // Set a new track and do a complete update.
+ midiTrackInfo->setTrack(selected);
+ else
+ // Otherwise just regular update with specific flags.
+ midiTrackInfo->updateTrackInfo(flags);
}
else {
switchInfo(2);