+Gtk::Menu*
+MidiTimeAxisView::build_mode_menu()
+{
+ using namespace Menu_Helpers;
+
+ Menu* mode_menu = manage (new Menu);
+ MenuList& items = mode_menu->items();
+ mode_menu->set_name ("ArdourContextMenu");
+
+ RadioMenuItem::Group mode_group;
+ items.push_back (RadioMenuElem (mode_group, _("Sustained"),
+ bind (mem_fun (*this, &MidiTimeAxisView::set_note_mode), Sustained)));
+ _note_mode_item = dynamic_cast<RadioMenuItem*>(&items.back());
+ _note_mode_item->set_active(_note_mode == Sustained);
+
+ items.push_back (RadioMenuElem (mode_group, _("Percussive"),
+ bind (mem_fun (*this, &MidiTimeAxisView::set_note_mode), Percussive)));
+ _percussion_mode_item = dynamic_cast<RadioMenuItem*>(&items.back());
+ _percussion_mode_item->set_active(_note_mode == Percussive);
+
+ return mode_menu;
+}
+
+void
+MidiTimeAxisView::set_note_mode(NoteMode mode)
+{
+ if (_note_mode != mode) {
+ _note_mode = mode;
+ midi_track()->set_note_mode(mode);
+ _view->redisplay_diskstream();
+ }
+}
+
+
+void
+MidiTimeAxisView::set_note_range(MidiStreamView::VisibleNoteRange range)
+{
+ //if (midi_view()->note_range() != range) {
+ midi_view()->set_note_range(range);
+ midi_view()->redisplay_diskstream();
+ //}
+}
+
+