diff options
author | Robin Gareus <robin@gareus.org> | 2014-01-13 11:08:37 +0100 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2014-01-13 09:39:50 -0500 |
commit | 2edc3d1b74c14bf4c704f564f80d75a5ef3d5dca (patch) | |
tree | 9444bff3afd2beaaba1e4067e728a370ba5a4973 /gtk2_ardour | |
parent | 113f28b6fe459689f904c8acbc084e4d2a57ce63 (diff) |
misc panning related UI tweaks:
* connect 2D panner "edit" to big window
* disconnect 2D-panner GUI when it's visible but panner-type changes
* ignore mixer-strip level-meter context-menu for Aux-sends
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/mixer_strip.cc | 3 | ||||
-rw-r--r-- | gtk2_ardour/panner2d.cc | 8 | ||||
-rw-r--r-- | gtk2_ardour/panner_ui.cc | 5 |
3 files changed, 16 insertions, 0 deletions
diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc index 8c8f675cf4..28c4e07452 100644 --- a/gtk2_ardour/mixer_strip.cc +++ b/gtk2_ardour/mixer_strip.cc @@ -2149,6 +2149,9 @@ MixerStrip::ab_plugins () bool MixerStrip::level_meter_button_press (GdkEventButton* ev) { + if (_current_delivery && boost::dynamic_pointer_cast<Send>(_current_delivery)) { + return false; + } if (ev->button == 3) { popup_level_meter_menu (ev); return true; diff --git a/gtk2_ardour/panner2d.cc b/gtk2_ardour/panner2d.cc index 46b7c6c6d2..552ddae651 100644 --- a/gtk2_ardour/panner2d.cc +++ b/gtk2_ardour/panner2d.cc @@ -201,6 +201,14 @@ void Panner2d::handle_state_change () { panconnect.drop_connections(); + if (!panner_shell->panner()) { + /* we should really self-destruct the UI here + * -> * PannerUI::set_panner() -> delete + */ + queue_draw (); + return; + } + panner_shell->panner()->SignalPositionChanged.connect (panconnect, invalidator(*this), boost::bind (&Panner2d::handle_position_change, this), gui_context()); set<Evoral::Parameter> params = panner_shell->panner()->what_can_be_automated(); diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc index ce2f0aec83..53ec589d70 100644 --- a/gtk2_ardour/panner_ui.cc +++ b/gtk2_ardour/panner_ui.cc @@ -417,6 +417,11 @@ PannerUI::pan_edit () _mono_panner->edit (); } else if (_stereo_panner) { _stereo_panner->edit (); + } else if (twod_panner) { + if (!big_window) { + big_window = new Panner2dWindow (_panshell, 400, _panner->in().n_audio()); + } + big_window->show (); } } |