diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-06-12 18:02:03 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-06-12 18:02:03 +0000 |
commit | 3b04885cb754a7566b4f03dde042cddddea7a850 (patch) | |
tree | e4c19b6e2dac5980e5ad7800dbd6d0d656eb4321 /gtk2_ardour/midi_region_view.cc | |
parent | 9c986098a2b4492fbe238335f563559166ed765f (diff) |
prevent too-wide program change flags at startup
git-svn-id: svn://localhost/ardour2/branches/3.0@12678 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/midi_region_view.cc')
-rw-r--r-- | gtk2_ardour/midi_region_view.cc | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc index 5d8bca9d77..5ffbc8c277 100644 --- a/gtk2_ardour/midi_region_view.cc +++ b/gtk2_ardour/midi_region_view.cc @@ -265,8 +265,6 @@ MidiRegionView::init (Gdk::Color const & basic_color, bool wfd) region_resized (ARDOUR::bounds_change); region_locked (); - reset_width_dependent_items (_pixel_width); - set_colors (); _enable_display = true; @@ -276,6 +274,8 @@ MidiRegionView::init (Gdk::Color const & basic_color, bool wfd) } } + reset_width_dependent_items (_pixel_width); + group->raise_to_top(); group->signal_event().connect( sigc::mem_fun(this, &MidiRegionView::canvas_event), false); @@ -1807,11 +1807,15 @@ MidiRegionView::add_canvas_patch_change (MidiModel::PatchChangePtr patch, const active_channel) ); - // Show unless patch change is beyond the region bounds - if (region_frames < 0 || region_frames >= _region->length()) { - patch_change->hide(); + if (patch_change->width() < _pixel_width) { + // Show unless patch change is beyond the region bounds + if (region_frames < 0 || region_frames >= _region->length()) { + patch_change->hide(); + } else { + patch_change->show(); + } } else { - patch_change->show(); + patch_change->hide (); } _patch_changes.push_back (patch_change); |