diff options
author | David Robillard <d@drobilla.net> | 2007-07-15 01:56:11 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-07-15 01:56:11 +0000 |
commit | 332a3d98138e94903ad9c6d35048b0201ff178c8 (patch) | |
tree | 107ac2a68b8c461a534e82d41e47fedfc5ed9178 /gtk2_ardour/route_time_axis.cc | |
parent | 74eded425a5244831c80968c1781c3f81f90e996 (diff) |
Selection of visible note range (full range vs fit contents, selectable from midi track menu).
Added note pencil tool, mock note adding (notes can be added visually but don't yet play).
Reworked MidiModel to be notes w/ duration instead of realtime style MIDI events.
Moved layering (stacked/overlaid) from auto time axis down to route time axis since it applies
to MIDI tracks as well.
git-svn-id: svn://localhost/ardour2/trunk@2128 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/route_time_axis.cc')
-rw-r--r-- | gtk2_ardour/route_time_axis.cc | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc index e0d93bd41a..dbfb8b029b 100644 --- a/gtk2_ardour/route_time_axis.cc +++ b/gtk2_ardour/route_time_axis.cc @@ -500,29 +500,42 @@ RouteTimeAxisView::build_display_menu () if (is_track()) { + Menu *layers_menu = manage(new Menu); + MenuList &layers_items = layers_menu->items(); + layers_menu->set_name("ArdourContextMenu"); + + RadioMenuItem::Group layers_group; + + layers_items.push_back(RadioMenuElem (layers_group, _("Overlaid"), + bind (mem_fun (*this, &RouteTimeAxisView::set_layer_display), Overlaid))); + layers_items.push_back(RadioMenuElem (layers_group, _("Stacked"), + bind (mem_fun (*this, &RouteTimeAxisView::set_layer_display), Stacked))); + + items.push_back (MenuElem (_("Layers"), *layers_menu)); + Menu* alignment_menu = manage (new Menu); MenuList& alignment_items = alignment_menu->items(); alignment_menu->set_name ("ArdourContextMenu"); RadioMenuItem::Group align_group; - + alignment_items.push_back (RadioMenuElem (align_group, _("Align with existing material"), - bind (mem_fun(*this, &RouteTimeAxisView::set_align_style), ExistingMaterial))); + bind (mem_fun(*this, &RouteTimeAxisView::set_align_style), ExistingMaterial))); align_existing_item = dynamic_cast<RadioMenuItem*>(&alignment_items.back()); if (get_diskstream()->alignment_style() == ExistingMaterial) align_existing_item->set_active(); - + alignment_items.push_back (RadioMenuElem (align_group, _("Align with capture time"), - bind (mem_fun(*this, &RouteTimeAxisView::set_align_style), CaptureTime))); + bind (mem_fun(*this, &RouteTimeAxisView::set_align_style), CaptureTime))); align_capture_item = dynamic_cast<RadioMenuItem*>(&alignment_items.back()); if (get_diskstream()->alignment_style() == CaptureTime) align_capture_item->set_active(); - + items.push_back (MenuElem (_("Alignment"), *alignment_menu)); get_diskstream()->AlignmentStyleChanged.connect ( mem_fun(*this, &RouteTimeAxisView::align_style_changed)); - + mode_menu = build_mode_menu(); if (mode_menu) items.push_back (MenuElem (_("Mode"), *mode_menu)); @@ -1980,3 +1993,8 @@ RouteTimeAxisView::update_rec_display () name_entry.set_sensitive (!_route->record_enabled()); } +void +RouteTimeAxisView::set_layer_display (LayerDisplay d) +{ + _view->set_layer_display (d); +} |