mirror of
https://github.com/rabbibotton/clog.git
synced 2025-12-06 10:40:45 -08:00
handle mouse events on clog-window
This commit is contained in:
parent
239da8522d
commit
3a3bb015a8
1 changed files with 26 additions and 6 deletions
|
|
@ -219,6 +219,14 @@ result or if time out DEFAULT-ANSWER. see JQUERY-QUERY (Internal)"))
|
||||||
;; The use of offsetLeft and offsetTop is to correct the X and Y
|
;; The use of offsetLeft and offsetTop is to correct the X and Y
|
||||||
;; to the actual X,Y of the target.
|
;; to the actual X,Y of the target.
|
||||||
|
|
||||||
|
(defparameter mouse-event-script-for-window
|
||||||
|
"+ e.clientX + ':' +
|
||||||
|
e.clientY + ':' +
|
||||||
|
e.screenX + ':' + e.screenY + ':' + e.which + ':' + e.altKey + ':' +
|
||||||
|
e.ctrlKey + ':' + e.shiftKey + ':' + e.metaKey + ':' +
|
||||||
|
e.clientX + ':' + e.clientY + ':' + e.pageX + ':' + e.pageY"
|
||||||
|
"JavaScript to collect mouse event data from browser.")
|
||||||
|
|
||||||
(defun parse-mouse-event (data)
|
(defun parse-mouse-event (data)
|
||||||
(let ((f (ppcre:split ":" data)))
|
(let ((f (ppcre:split ":" data)))
|
||||||
(list
|
(list
|
||||||
|
|
@ -943,7 +951,9 @@ on an on-click event."))
|
||||||
(funcall handler obj (parse-mouse-event data))))
|
(funcall handler obj (parse-mouse-event data))))
|
||||||
:one-time one-time
|
:one-time one-time
|
||||||
:cancel-event cancel-event
|
:cancel-event cancel-event
|
||||||
:call-back-script mouse-event-script))
|
:call-back-script (if (typep obj 'clog-window)
|
||||||
|
mouse-event-script-for-window
|
||||||
|
mouse-event-script)))
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
;; set-on-mouse-double-click ;;
|
;; set-on-mouse-double-click ;;
|
||||||
|
|
@ -962,7 +972,9 @@ replace on an on-double-click event."))
|
||||||
(funcall handler obj (parse-mouse-event data))))
|
(funcall handler obj (parse-mouse-event data))))
|
||||||
:one-time one-time
|
:one-time one-time
|
||||||
:cancel-event cancel-event
|
:cancel-event cancel-event
|
||||||
:call-back-script mouse-event-script))
|
:call-back-script (if (typep obj 'clog-window)
|
||||||
|
mouse-event-script-for-window
|
||||||
|
mouse-event-script)))
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
;; set-on-mouse-right-click ;;
|
;; set-on-mouse-right-click ;;
|
||||||
|
|
@ -981,7 +993,9 @@ replace on an on-context-menu event."))
|
||||||
(lambda (data)
|
(lambda (data)
|
||||||
(funcall handler obj (parse-mouse-event data))))
|
(funcall handler obj (parse-mouse-event data))))
|
||||||
:one-time one-time
|
:one-time one-time
|
||||||
:call-back-script mouse-event-script
|
:call-back-script (if (typep obj 'clog-window)
|
||||||
|
mouse-event-script-for-window
|
||||||
|
mouse-event-script)
|
||||||
:cancel-event cancel-event))
|
:cancel-event cancel-event))
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
@ -1046,7 +1060,9 @@ does not bubble."))
|
||||||
(funcall handler obj (parse-mouse-event data))))
|
(funcall handler obj (parse-mouse-event data))))
|
||||||
:one-time one-time
|
:one-time one-time
|
||||||
:cancel-event cancel-event
|
:cancel-event cancel-event
|
||||||
:call-back-script mouse-event-script))
|
:call-back-script (if (typep obj 'clog-window)
|
||||||
|
mouse-event-script-for-window
|
||||||
|
mouse-event-script)))
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;
|
||||||
;; set-on-mouse-up ;;
|
;; set-on-mouse-up ;;
|
||||||
|
|
@ -1065,7 +1081,9 @@ ON-MOUSE-UP-HANDLER is nil unbind the event."))
|
||||||
(funcall handler obj (parse-mouse-event data))))
|
(funcall handler obj (parse-mouse-event data))))
|
||||||
:one-time one-time
|
:one-time one-time
|
||||||
:cancel-event cancel-event
|
:cancel-event cancel-event
|
||||||
:call-back-script mouse-event-script))
|
:call-back-script (if (typep obj 'clog-window)
|
||||||
|
mouse-event-script-for-window
|
||||||
|
mouse-event-script)))
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
;; set-on-mouse-move ;;
|
;; set-on-mouse-move ;;
|
||||||
|
|
@ -1084,7 +1102,9 @@ ON-MOUSE-MOVE-HANDLER is nil unbind the event."))
|
||||||
(funcall handler obj (parse-mouse-event data))))
|
(funcall handler obj (parse-mouse-event data))))
|
||||||
:one-time one-time
|
:one-time one-time
|
||||||
:cancel-event cancel-event
|
:cancel-event cancel-event
|
||||||
:call-back-script mouse-event-script))
|
:call-back-script (if (typep obj 'clog-window)
|
||||||
|
mouse-event-script-for-window
|
||||||
|
mouse-event-script)))
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;
|
||||||
;; set-on-wheel ;;
|
;; set-on-wheel ;;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue