From 04c5cece95672044388052de186b21674f4bb0dc Mon Sep 17 00:00:00 2001 From: David Kastrup Date: Mon, 18 May 2015 19:33:06 +0200 Subject: [PATCH] Issue 4404: Add ly:disconnect-dispatchers function --- lily/dispatcher-scheme.cc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lily/dispatcher-scheme.cc b/lily/dispatcher-scheme.cc index 44d9b792a3..3fd4decc42 100644 --- a/lily/dispatcher-scheme.cc +++ b/lily/dispatcher-scheme.cc @@ -41,6 +41,21 @@ LY_DEFINE (ly_connect_dispatchers, "ly:connect-dispatchers", return SCM_UNSPECIFIED; } +LY_DEFINE (ly_disconnect_dispatchers, "ly:disconnect-dispatchers", + 2, 0, 0, (SCM to, SCM from), + "Stop the dispatcher @var{to} listening to events from @var{from}.") +{ + Dispatcher *t = unsmob (to); + Dispatcher *f = unsmob (from); + + LY_ASSERT_SMOB (Dispatcher, to, 1); + LY_ASSERT_SMOB (Dispatcher, from, 2); + + t->unregister_as_listener (f); + + return SCM_UNSPECIFIED; +} + LY_DEFINE (ly_add_listener, "ly:add-listener", 2, 0, 1, (SCM callback, SCM disp, SCM cl), "Add the single-argument procedure @var{callback} as listener" -- 2.39.5