stumpwm-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[STUMP] [PATCH] Make event handlers named functions.


From: Ben Spencer
Subject: [STUMP] [PATCH] Make event handlers named functions.
Date: Sat, 12 Mar 2011 20:05:38 +0000
User-agent: Mutt/1.5.20 (2009-06-14)

This is a hack to make slime's cross-reference commands aware of stuff
that happens in event handlers.
---
 events.lisp |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/events.lisp b/events.lisp
index e23ad50..cc9d1c7 100644
--- a/events.lisp
+++ b/events.lisp
@@ -31,12 +31,14 @@
   "A hash of event types to functions")
 
 (defmacro define-stump-event-handler (event keys &body body)
-  (let ((fn-name (gensym))
+  (let ((fn-name
+         (intern (concatenate 'string "EVENT-HANDLER-" (symbol-name event))))
         (event-slots (gensym)))
-    `(labels ((,fn-name (&rest ,event-slots &key ,@keys &allow-other-keys)
-               (declare (ignore ,event-slots))
-               ,@body))
-      (setf (gethash ,event *event-fn-table*) #',fn-name))))
+    `(progn
+       (defun ,fn-name (&rest ,event-slots &key ,@keys &allow-other-keys)
+         (declare (ignore ,event-slots))
+         ,@body)
+       (setf (gethash ,event *event-fn-table*) #',fn-name))))
 
                                         ;(define-stump-event-handler 
:map-notify (event-window window override-redirect-p)
                                         ;  )
-- 
1.7.2.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]