X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Ftime_axis_view.cc;h=29cb3e613bef594fc4e4e4e3b013981c0a124bc7;hb=bb797943ddaae0a904b140fec58f6367fdf87d07;hp=631f6428e5526cdcf2dd822619e541b4be804a46;hpb=c06c6c153db6b33b93515100d839f376dc805d5d;p=ardour.git diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc index 631f6428e5..29cb3e613b 100644 --- a/gtk2_ardour/time_axis_view.cc +++ b/gtk2_ardour/time_axis_view.cc @@ -40,6 +40,7 @@ #include "ardour/location.h" #include "ardour_ui.h" +#include "global_signals.h" #include "gui_thread.h" #include "public_editor.h" #include "time_axis_view.h" @@ -87,6 +88,7 @@ TimeAxisView::TimeAxisView (ARDOUR::Session* sess, PublicEditor& ed, TimeAxisVie _canvas_display->hide(); // reveal as needed selection_group = new Group (*_canvas_display); + selection_group->set_data (X_("timeselection"), (void *) 1); selection_group->hide(); _ghost_group = new Group (*_canvas_display); @@ -426,8 +428,12 @@ TimeAxisView::set_height (Height h) } void -TimeAxisView::set_height(uint32_t h) +TimeAxisView::set_height (uint32_t h) { + if (h < preset_height (HeightSmall)) { + h = preset_height (HeightSmall); + } + time_axis_vbox.property_height_request () = h; height = h; @@ -1225,14 +1231,14 @@ TimeAxisView::resizer_motion (GdkEventMotion* ev) { if (_resize_drag_start >= 0) { /* (ab)use the DragManager to do autoscrolling; adjust the event coordinates - into the trackview space that DragManager::motion_handler is expecting, + into the world coordinate space that DragManager::motion_handler is expecting, and then fake a DragManager motion event so that when maybe_autoscroll asks DragManager for the current pointer position it will get the correct answers. */ int tx, ty; resizer.translate_coordinates (*control_parent, ev->x, ev->y, tx, ty); - ev->y = ty + _editor.get_canvas_timebars_vsize (); + ev->y = ty - _editor.get_trackview_group_vertical_offset(); _editor.drags()->motion_handler ((GdkEvent *) ev, false); _editor.maybe_autoscroll (false, true); @@ -1320,3 +1326,20 @@ TimeAxisView::preset_height (Height h) /* NOTREACHED */ return 0; } + +/** @return Child time axis views that are not hidden */ +TimeAxisView::Children +TimeAxisView::get_child_list () +{ + Children c; + + for (Children::iterator i = children.begin(); i != children.end(); ++i) { + if (!(*i)->hidden()) { + c.push_back(*i); + } + } + + return c; +} + +