+void
+MidiGhostRegion::redisplay_model ()
+{
+ /* we rely on the parent MRV having removed notes not in the model */
+ for (EventList::iterator i = events.begin(); i != events.end(); ) {
+
+ boost::shared_ptr<NoteType> note = i->first;
+ GhostEvent* cne = i->second;
+ const bool visible = (note->note() >= parent_mrv._current_range_min) &&
+ (note->note() <= parent_mrv._current_range_max);
+
+ if (visible) {
+ if (cne->is_hit) {
+ update_hit (cne);
+ } else {
+ update_note (cne);
+ }
+ cne->item->show ();
+ } else {
+ cne->item->hide ();
+ }
+
+ ++i;
+ }
+}