summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-05-30 11:57:12 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-05-30 11:57:12 +0000
commitc937a67f6ee7e9f280a097683528201489ae6930 (patch)
tree76a01b4fa68cbd18f5aa3fc9a0d3fec44b6d88cf /gtk2_ardour
parent0a9f5423f5b3faede68fe7c384c5fe32db2e23bf (diff)
do not offer combine operation for MIDI (see comment in libs/ardour/midi_playlist_source.cc for an explanation)
git-svn-id: svn://localhost/ardour2/branches/3.0@9630 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/editor_selection.cc6
-rw-r--r--gtk2_ardour/midi_list_editor.cc6
-rw-r--r--gtk2_ardour/route_time_axis.cc13
3 files changed, 22 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc
index 6e81801096..d81b8a4351 100644
--- a/gtk2_ardour/editor_selection.cc
+++ b/gtk2_ardour/editor_selection.cc
@@ -1067,7 +1067,11 @@ Editor::sensitize_the_right_region_actions ()
_region_actions->get_action("show-region-list-editor")->set_sensitive (false);
_region_actions->get_action("show-region-properties")->set_sensitive (false);
_region_actions->get_action("rename-region")->set_sensitive (false);
- _region_actions->get_action("combine-regions")->set_sensitive (true);
+ if (have_audio) {
+ _region_actions->get_action("combine-regions")->set_sensitive (true);
+ } else {
+ _region_actions->get_action("combine-regions")->set_sensitive (false);
+ }
} else if (rs.size() == 1) {
_region_actions->get_action("add-range-markers-from-region")->set_sensitive (false);
_region_actions->get_action("close-region-gaps")->set_sensitive (false);
diff --git a/gtk2_ardour/midi_list_editor.cc b/gtk2_ardour/midi_list_editor.cc
index de1331674e..c8c016d9a8 100644
--- a/gtk2_ardour/midi_list_editor.cc
+++ b/gtk2_ardour/midi_list_editor.cc
@@ -38,6 +38,12 @@ MidiListEditor::MidiListEditor (Session* s, boost::shared_ptr<MidiRegion> r)
: ArdourDialog (r->name(), false, false)
, region (r)
{
+ /* We do not handle nested sources/regions. Caller should have tackled this */
+
+ if (r->max_source_level() > 0) {
+ throw failed_constructor();
+ }
+
set_session (s);
model = ListStore::create (columns);
diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc
index 86832de764..1c9b02ba95 100644
--- a/gtk2_ardour/route_time_axis.cc
+++ b/gtk2_ardour/route_time_axis.cc
@@ -2488,7 +2488,12 @@ void add_region_to_list (RegionView* rv, Playlist::RegionList* l)
RegionView*
RouteTimeAxisView::combine_regions ()
{
- assert (is_track());
+ /* as of may 2011, we do not offer uncombine for MIDI tracks
+ */
+
+ if (!is_audio_track()) {
+ return 0;
+ }
if (!_view) {
return 0;
@@ -2515,7 +2520,11 @@ RouteTimeAxisView::combine_regions ()
void
RouteTimeAxisView::uncombine_regions ()
{
- assert (is_track());
+ /* as of may 2011, we do not offer uncombine for MIDI tracks
+ */
+ if (!is_audio_track()) {
+ return;
+ }
if (!_view) {
return;