diff options
author | David Robillard <d@drobilla.net> | 2008-02-10 18:16:25 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-02-10 18:16:25 +0000 |
commit | 1b657585572298d1a69a7b43e611f59b7e185df3 (patch) | |
tree | 5b0ca4e1f222357499f97165a13308ac070c5ddc /gtk2_ardour/midi_time_axis.cc | |
parent | e76b028ffdf054775cb697174d00cd0222d675c6 (diff) |
Committed underlay support (from Audun).
git-svn-id: svn://localhost/ardour2/branches/3.0@3037 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/midi_time_axis.cc')
-rw-r--r-- | gtk2_ardour/midi_time_axis.cc | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc index 534305eaa6..cb72363f88 100644 --- a/gtk2_ardour/midi_time_axis.cc +++ b/gtk2_ardour/midi_time_axis.cc @@ -69,6 +69,7 @@ #include "utils.h" #include "midi_scroomer.h" #include "piano_roll_header.h" +#include "ghostregion.h" #include <ardour/midi_track.h> @@ -126,13 +127,25 @@ MidiTimeAxisView::MidiTimeAxisView (PublicEditor& ed, Session& sess, boost::shar controls_base_selected_name = "MidiTrackControlsBaseSelected"; controls_base_unselected_name = "MidiTrackControlsBaseUnselected"; + midi_view()->NoteRangeChanged.connect (mem_fun(*this, &MidiTimeAxisView::update_range)); + /* ask for notifications of any new RegionViews */ + _view->RegionViewAdded.connect (mem_fun(*this, &MidiTimeAxisView::region_view_added)); _view->attach (); } } MidiTimeAxisView::~MidiTimeAxisView () { + if(_piano_roll_header) { + delete _piano_roll_header; + _piano_roll_header = 0; + } + + if(_range_scroomer) { + delete _range_scroomer; + _range_scroomer = 0; + } } MidiStreamView* @@ -248,6 +261,17 @@ MidiTimeAxisView::set_note_range(MidiStreamView::VisibleNoteRange range) } +void +MidiTimeAxisView::update_range() { + MidiGhostRegion* mgr; + + for(list<GhostRegion*>::iterator i = ghosts.begin(); i != ghosts.end(); ++i) { + if((mgr = dynamic_cast<MidiGhostRegion*>(*i)) != 0) { + mgr->update_range(); + } + } +} + /** Prompt for a controller with a dialog and add an automation track for it */ void |