From 1a3615279866b201f842ea95addfa0cbb7731d6d Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 5 Dec 2011 21:57:49 +0000 Subject: Move event handling down to C level. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3809 a436a847-0d15-0410-975c-d299462d15a1 --- src/gui/NodeModule.cpp | 13 +++++++++---- src/gui/NodeModule.hpp | 1 + src/gui/PatchView.cpp | 4 ++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/gui/NodeModule.cpp b/src/gui/NodeModule.cpp index 188925c5..8d7dd702 100644 --- a/src/gui/NodeModule.cpp +++ b/src/gui/NodeModule.cpp @@ -360,11 +360,16 @@ NodeModule::show_control_window() app().window_factory()->present_controls(_node); } -void -NodeModule::on_double_click(GdkEventButton* ev) +bool +NodeModule::on_event(GdkEvent* ev) { - if ( ! popup_gui() ) - show_control_window(); + if (ev->type == GDK_2BUTTON_PRESS) { + if (!popup_gui()) { + show_control_window(); + } + return true; + } + return false; } void diff --git a/src/gui/NodeModule.hpp b/src/gui/NodeModule.hpp index 0c579d27..16d777ba 100644 --- a/src/gui/NodeModule.hpp +++ b/src/gui/NodeModule.hpp @@ -69,6 +69,7 @@ public: protected: NodeModule(PatchCanvas& canvas, SharedPtr node); + bool on_event(GdkEvent* ev); bool on_click(GdkEventButton* ev); void on_double_click(GdkEventButton* ev); diff --git a/src/gui/PatchView.cpp b/src/gui/PatchView.cpp index fd9a4867..4b920368 100644 --- a/src/gui/PatchView.cpp +++ b/src/gui/PatchView.cpp @@ -137,7 +137,7 @@ void PatchView::on_editable_sig(bool editable) { _edit_mode_but->set_active(editable); - _canvas->lock(!editable); + _canvas->set_locked(!editable); } void @@ -151,7 +151,7 @@ void PatchView::set_editable(bool editable) { _patch->set_editable(editable); - _canvas->lock(!editable); + _canvas->set_locked(!editable); } #if 0 -- cgit v1.2.1