summaryrefslogtreecommitdiff
path: root/gtk2_ardour/time_axis_view.cc
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-01-09 23:24:54 +0000
committerDavid Robillard <d@drobilla.net>2007-01-09 23:24:54 +0000
commit532f6aad4ac79ca15d69deccd18fca90e444c437 (patch)
tree0d4ca5449af8eb48ad56e163efcab42c4656e8de /gtk2_ardour/time_axis_view.cc
parentef6b25432d9c46d71b08c0f7d5f2686df428c4e8 (diff)
Merged with trunk R1283.
NOTE: Compiles, but broken (crash on adding MIDI track). git-svn-id: svn://localhost/ardour2/branches/midi@1292 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/time_axis_view.cc')
-rw-r--r--gtk2_ardour/time_axis_view.cc24
1 files changed, 23 insertions, 1 deletions
diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc
index ce0b6a4250..53a0ee4553 100644
--- a/gtk2_ardour/time_axis_view.cc
+++ b/gtk2_ardour/time_axis_view.cc
@@ -761,8 +761,9 @@ TimeAxisView::get_selection_rect (uint32_t id)
for (list<SelectionRect*>::iterator i = free_selection_rects.begin(); i != free_selection_rects.end(); ++i) {
if ((*i)->id == id) {
+ SelectionRect* ret = (*i);
free_selection_rects.erase (i);
- return (*i);
+ return ret;
}
}
@@ -1068,3 +1069,24 @@ TimeAxisView::color_handler (ColorID id, uint32_t val)
}
}
+TimeAxisView*
+TimeAxisView::covers_y_position (double y)
+{
+ if (hidden()) {
+ return 0;
+ }
+
+ if (y_position <= y && y < (y_position + height)) {
+ return this;
+ }
+
+ for (vector<TimeAxisView*>::iterator i = children.begin(); i != children.end(); ++i) {
+ TimeAxisView* tv;
+
+ if ((tv = (*i)->covers_y_position (y)) != 0) {
+ return tv;
+ }
+ }
+
+ return 0;
+}