CairoWidget::set_dirty ();
}
+ boost::shared_ptr<PBD::Controllable> c (binding_proxy.get_controllable ());
+ if (c) {
+ PBD::Controllable::GUIFocusChanged (boost::weak_ptr<PBD::Controllable> (c));
+ }
+
return CairoWidget::on_enter_notify_event (ev);
}
CairoWidget::set_dirty ();
}
+ if (binding_proxy.get_controllable()) {
+ PBD::Controllable::GUIFocusChanged (boost::weak_ptr<PBD::Controllable> ());
+ }
+
return CairoWidget::on_leave_notify_event (ev);
}
set_dirty ();
+ boost::shared_ptr<PBD::Controllable> c (binding_proxy.get_controllable ());
+ if (c) {
+ PBD::Controllable::GUIFocusChanged (boost::weak_ptr<PBD::Controllable> (c));
+ }
+
return CairoWidget::on_enter_notify_event (ev);
}
set_dirty ();
+ if (binding_proxy.get_controllable()) {
+ PBD::Controllable::GUIFocusChanged (boost::weak_ptr<PBD::Controllable> ());
+ }
+
return CairoWidget::on_leave_notify_event (ev);
}
#include <gtkmm/window.h>
#include <pangomm/layout.h>
-#include "pbd/controllable.h"
#include "pbd/compose.h"
#include "gtkmm2ext/gui_thread.h"
bool on_scroll_event (GdkEventScroll*);
bool on_key_press_event (GdkEventKey*);
+ boost::weak_ptr<PBD::Controllable> proxy_controllable () const
+ {
+ return boost::weak_ptr<PBD::Controllable> (position_binder.get_controllable());
+ }
+
private:
PannerEditor* editor ();
boost::shared_ptr<ARDOUR::PannerShell> _panner_shell;
#include <gtkmm.h>
#include "gtkmm2ext/keyboard.h"
#include "gtkmm2ext/persistent_tooltip.h"
+
+#include "pbd/controllable.h"
+
#include "panner_interface.h"
#include "panner_editor.h"
{
grab_focus ();
Keyboard::magic_widget_grab_focus ();
+
+ if (!proxy_controllable ().expired ()) {
+ PBD::Controllable::GUIFocusChanged (proxy_controllable ());
+ }
return false;
}
PannerInterface::on_leave_notify_event (GdkEventCrossing *)
{
Keyboard::magic_widget_drop_focus ();
+ if (!proxy_controllable ().expired ()) {
+ PBD::Controllable::GUIFocusChanged (boost::weak_ptr<PBD::Controllable> ());
+ }
return false;
}
#include <gtkmm/drawingarea.h>
#include <gtkmm/label.h>
#include "gtkmm2ext/persistent_tooltip.h"
+
#include "pbd/destructible.h"
+namespace PBD {
+ class Controllable;
+}
+
namespace ARDOUR {
class Panner;
}
protected:
virtual void set_tooltip () = 0;
+ virtual boost::weak_ptr<PBD::Controllable> proxy_controllable () const = 0;
void value_change ();
#include <gtkmm/window.h>
#include <pangomm/layout.h>
-#include "pbd/controllable.h"
#include "pbd/compose.h"
#include "gtkmm2ext/gui_thread.h"
bool on_scroll_event (GdkEventScroll*);
bool on_key_press_event (GdkEventKey*);
+ boost::weak_ptr<PBD::Controllable> proxy_controllable () const
+ {
+ return boost::weak_ptr<PBD::Controllable> (position_binder.get_controllable());
+ }
+
private:
PannerEditor* editor ();
boost::shared_ptr<ARDOUR::PannerShell> _panner_shell;