code formatting

This commit is contained in:
David Botton 2022-06-22 18:54:32 -04:00
parent 8d59b0022c
commit 465a6efba4
4 changed files with 106 additions and 75 deletions

View file

@ -130,7 +130,8 @@ flushed with FLUSH-CONNECTION-CACHE or a query is made."
(defmethod js-query ((obj clog-obj) script &key (default-answer nil))
(flush-connection-cache obj)
(clog-connection:query (connection-id obj) script :default-answer default-answer))
(clog-connection:query (connection-id obj) script
:default-answer default-answer))
;;;;;;;;;;;;;
;; execute ;;
@ -381,7 +382,9 @@ result or if time out DEFAULT-ANSWER. see JQUERY-QUERY (Internal)"))
(:documentation "Set html property."))
(defmethod set-property ((obj clog-obj) property-name value)
(jquery-execute obj (format nil "prop('~A','~A')" property-name (escape-string value)))
(jquery-execute obj (format nil "prop('~A','~A')"
property-name
(escape-string value)))
value)
(defsetf property set-property)
@ -528,21 +531,22 @@ an application share per connection the same queue of serialized events."
;; set-on-event ;;
;;;;;;;;;;;;;;;;;;
(defgeneric set-on-event (clog-obj event-name handler &key cancel-event one-time)
(defgeneric set-on-event (clog-obj event-name handler
&key cancel-event one-time)
(:documentation "Set a HANDLER for EVENT-NAME on CLOG-OBJ. If handler is
nil unbind all event handlers. (Internal)"))
(defmethod set-on-event ((obj clog-obj) event-name handler
&key
(cancel-event nil)
(one-time nil))
&key
(cancel-event nil)
(one-time nil))
(set-event obj event-name
(when handler
(lambda (data)
(declare (ignore data))
(funcall handler obj)))
:cancel-event cancel-event
:one-time one-time))
:cancel-event cancel-event
:one-time one-time))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -550,22 +554,23 @@ nil unbind all event handlers. (Internal)"))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-event-with-data (clog-obj event-name handler
&key cancel-event one-time)
(:documentation "Set a HANDLER for EVENT-NAME on CLOG-OBJ. If handler is nil unbind
all event handlers. Handler is called with a data option passed from javascript
calling the jQuery custom event mechanism .trigger('event_name', data) (Internal)"))
&key cancel-event one-time)
(:documentation "Set a HANDLER for EVENT-NAME on CLOG-OBJ.
If handler is nil unbind all event handlers. Handler is called with a data
option passed from javascript calling the jQuery custom event mechanism
.trigger('event_name', data) (Internal)"))
(defmethod set-on-event-with-data ((obj clog-obj) event-name handler
&key
(cancel-event nil)
(one-time nil))
&key
(cancel-event nil)
(one-time nil))
(set-event obj event-name
(when handler
(lambda (data)
(funcall handler obj data)))
:call-back-script "+data"
:cancel-event cancel-event
:one-time one-time))
:call-back-script "+data"
:cancel-event cancel-event
:one-time one-time))
;;;;;;;;;;;;;;;;;;;
;; set-on-resize ;;
@ -649,8 +654,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-drag-end (clog-obj on-drag-end-handler)
(:documentation "Set the ON-DRAG-END-HANDLER for CLOG-OBJ. If ON-DRAG-END-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-DRAG-END-HANDLER for CLOG-OBJ.
If ON-DRAG-END-HANDLER is nil unbind the event."))
(defmethod set-on-drag-end ((obj clog-obj) handler)
(set-on-event obj "dragend" handler))
@ -660,8 +665,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-drag-enter (clog-obj on-drag-enter-handler)
(:documentation "Set the ON-DRAG-ENTER-HANDLER for CLOG-OBJ. If ON-DRAG-ENTER-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-DRAG-ENTER-HANDLER for CLOG-OBJ.
If ON-DRAG-ENTER-HANDLER is nil unbind the event."))
(defmethod set-on-drag-enter ((obj clog-obj) handler)
(set-on-event obj "dragenter" handler))
@ -672,8 +677,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-drag-leave (clog-obj on-drag-leave-handler)
(:documentation "Set the ON-DRAG-LEAVE-HANDLER for CLOG-OBJ. If ON-DRAG-LEAVE-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-DRAG-LEAVE-HANDLER for CLOG-OBJ.
If ON-DRAG-LEAVE-HANDLER is nil unbind the event."))
(defmethod set-on-drag-leave ((obj clog-obj) handler)
(set-on-event obj "dragleave" handler))
@ -683,8 +688,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-drag-over (clog-obj on-drag-over-handler)
(:documentation "Set the ON-DRAG-OVER-HANDLER for CLOG-OBJ. If ON-DRAG-OVER-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-DRAG-OVER-HANDLER for CLOG-OBJ.
If ON-DRAG-OVER-HANDLER is nil unbind the event."))
(defmethod set-on-drag-over ((obj clog-obj) handler)
(set-event obj "dragover"
@ -906,8 +911,8 @@ replace on an on-context-menu event."))
;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-mouse-enter (clog-obj on-mouse-enter-handler)
(:documentation "Set the ON-MOUSE-ENTER-HANDLER for CLOG-OBJ. If ON-MOUSE-ENTER-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-MOUSE-ENTER-HANDLER for CLOG-OBJ.
If ON-MOUSE-ENTER-HANDLER is nil unbind the event."))
(defmethod set-on-mouse-enter ((obj clog-obj) handler)
(set-on-event obj "mouseenter" handler))
@ -917,8 +922,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-mouse-leave (clog-obj on-mouse-leave-handler)
(:documentation "Set the ON-MOUSE-LEAVE-HANDLER for CLOG-OBJ. If ON-MOUSE-LEAVE-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-MOUSE-LEAVE-HANDLER for CLOG-OBJ.
If ON-MOUSE-LEAVE-HANDLER is nil unbind the event."))
(defmethod set-on-mouse-leave ((obj clog-obj) handler)
(set-on-event obj "mouseleave" handler))
@ -928,8 +933,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-mouse-over (clog-obj on-mouse-over-handler)
(:documentation "Set the ON-MOUSE-OVER-HANDLER for CLOG-OBJ. If ON-MOUSE-OVER-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-MOUSE-OVER-HANDLER for CLOG-OBJ.
If ON-MOUSE-OVER-HANDLER is nil unbind the event."))
(defmethod set-on-mouse-over ((obj clog-obj) handler)
(set-on-event obj "mouseover" handler))
@ -939,8 +944,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-mouse-out (clog-obj on-mouse-out-handler)
(:documentation "Set the ON-MOUSE-OUT-HANDLER for CLOG-OBJ. If ON-MOUSE-OUT-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-MOUSE-OUT-HANDLER for CLOG-OBJ.
If ON-MOUSE-OUT-HANDLER is nil unbind the event."))
(defmethod set-on-mouse-out ((obj clog-obj) handler)
(set-on-event obj "mouseout" handler))
@ -949,12 +954,14 @@ is nil unbind the event."))
;; set-on-mouse-down ;;
;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-mouse-down (clog-obj on-mouse-down-handler &key one-time cancel-event)
(defgeneric set-on-mouse-down (clog-obj on-mouse-down-handler
&key one-time cancel-event)
(:documentation "Set the ON-MOUSE-DOWN-HANDLER for CLOG-OBJ. If
ON-MOUSE-DOWN-HANDLER is nil unbind the event. If cancel-event is true event
does not bubble."))
(defmethod set-on-mouse-down ((obj clog-obj) handler &key (one-time nil) (cancel-event nil))
(defmethod set-on-mouse-down ((obj clog-obj) handler
&key (one-time nil) (cancel-event nil))
(set-event obj "mousedown"
(when handler
(lambda (data)
@ -998,8 +1005,8 @@ ON-MOUSE-MOVE-HANDLER is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-pointer-enter (clog-obj on-pointer-enter-handler)
(:documentation "Set the ON-POINTER-ENTER-HANDLER for CLOG-OBJ. If ON-POINTER-ENTER-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-POINTER-ENTER-HANDLER for CLOG-OBJ.
If ON-POINTER-ENTER-HANDLER is nil unbind the event."))
(defmethod set-on-pointer-enter ((obj clog-obj) handler)
(set-on-event obj "pointerenter" handler))
@ -1009,8 +1016,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-pointer-leave (clog-obj on-pointer-leave-handler)
(:documentation "Set the ON-POINTER-LEAVE-HANDLER for CLOG-OBJ. If ON-POINTER-LEAVE-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-POINTER-LEAVE-HANDLER for CLOG-OBJ.
If ON-POINTER-LEAVE-HANDLER is nil unbind the event."))
(defmethod set-on-pointer-leave ((obj clog-obj) handler)
(set-on-event obj "pointerleave" handler))
@ -1020,8 +1027,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-pointer-over (clog-obj on-pointer-over-handler)
(:documentation "Set the ON-POINTER-OVER-HANDLER for CLOG-OBJ. If ON-POINTER-OVER-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-POINTER-OVER-HANDLER for CLOG-OBJ.
If ON-POINTER-OVER-HANDLER is nil unbind the event."))
(defmethod set-on-pointer-over ((obj clog-obj) handler)
(set-on-event obj "pointerover" handler))
@ -1031,8 +1038,8 @@ is nil unbind the event."))
;;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-on-pointer-out (clog-obj on-pointer-out-handler)
(:documentation "Set the ON-POINTER-OUT-HANDLER for CLOG-OBJ. If ON-POINTER-OUT-HANDLER
is nil unbind the event."))
(:documentation "Set the ON-POINTER-OUT-HANDLER for CLOG-OBJ.
If ON-POINTER-OUT-HANDLER is nil unbind the event."))
(defmethod set-on-pointer-out ((obj clog-obj) handler)
(set-on-event obj "pointerout" handler))
@ -1048,7 +1055,9 @@ ON-POINTER-DOWN-HANDLER is nil unbind the event. If cancel event is t the
even does not bubble."))
(defmethod set-on-pointer-down ((obj clog-obj) handler
&key (capture-pointer nil) (one-time nil) (cancel-event nil))
&key (capture-pointer nil)
(one-time nil)
(cancel-event nil))
(set-event obj "pointerdown"
(when handler
(lambda (data)

View file

@ -60,8 +60,8 @@ user close of connection / browser."))
;;;;;;;;;;;;;;;;;;;;;;;
(defgeneric set-html-on-close (clog-body html)
(:documentation "In case of connection loss to this CLOG-BODY, replace the browser contents
with HTML."))
(:documentation "In case of connection loss to this CLOG-BODY,
replace the browser contents with HTML."))
(defmethod set-html-on-close ((obj clog-body) html)
(clog-connection:set-html-on-close (connection-id obj) html))

View file

@ -156,7 +156,8 @@ with DEFAULT-ANSWER in case of a time out. (Private)"
the default answer. (Private)"
(handler-case
(progn
(bordeaux-threads:wait-on-semaphore (gethash id *queries-sems*) :timeout timeout)
(bordeaux-threads:wait-on-semaphore (gethash id *queries-sems*)
:timeout timeout)
(let ((answer (gethash id *queries*)))
(remhash id *queries*)
(remhash id *queries-sems*)
@ -180,7 +181,8 @@ the default answer. (Private)"
(setf id (generate-id))
(setf (gethash connection *connections*) id)
(setf (gethash id *connection-ids*) connection)
(setf (gethash id *connection-data*) (make-hash-table* :test #'equal))
(setf (gethash id *connection-data*)
(make-hash-table* :test #'equal))
(setf (gethash "connection-id" (get-connection-data id)) id)
(format t "New connection id - ~A - ~A~%" id connection)
(websocket-driver:send connection
@ -230,7 +232,8 @@ the default answer. (Private)"
(handler-case
(let* ((event-hash (get-connection-data id))
(event (when event-hash
(gethash event-id event-hash))))
(gethash event-id
event-hash))))
(when event
(funcall event data)))
(t (c)

View file

@ -481,14 +481,16 @@ Unlike TEXT this is only the text associated with this <tag>
Additionally for forms get/setf the value."))
(defmethod text-value ((obj clog-element))
(jquery-query obj (format nil "contents().not(~A.children()).text()" (jquery obj))))
(jquery-query obj (format nil "contents().not(~A.children()).text()"
(jquery obj))))
(defgeneric set-text-value (clog-element value)
(:documentation "Set text-value to VALUE for CLOG-ELEMENT"))
(defmethod set-text-value ((obj clog-element) value)
(jquery-execute obj (format nil "contents().not(~A.children()).get(0).nodeValue='~A'"
(jquery obj) value)))
(jquery-execute obj
(format nil "contents().not(~A.children()).get(0).nodeValue='~A'"
(jquery obj) value)))
(defsetf text-value set-text-value)
@ -537,7 +539,8 @@ Additionally for forms get/setf the value."))
in pixels (css left in pixels)."))
(defmethod position-left ((obj clog-element))
(parse-integer (jquery-query obj "position().left" :default-answer 0) :junk-allowed t))
(parse-integer (jquery-query obj "position().left" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;;
;; position-top ;;
@ -548,7 +551,8 @@ in pixels (css left in pixels)."))
in pixels (css top in pixels)."))
(defmethod position-top ((obj clog-element))
(parse-integer (jquery-query obj "position().top" :default-answer 0) :junk-allowed t))
(parse-integer (jquery-query obj "position().top" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;
;; client-left ;;
@ -559,7 +563,8 @@ in pixels (css top in pixels)."))
in pixels. It does not include the margin or padding."))
(defmethod client-left ((obj clog-element))
(parse-integer (property obj "clientLeft" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "clientLeft" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;
;; client-top ;;
@ -570,7 +575,8 @@ in pixels. It does not include the margin or padding."))
in pixels. It does not include the margin or padding."))
(defmethod client-top ((obj clog-element))
(parse-integer (property obj "clientTop" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "clientTop" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;;
;; client-width ;;
@ -582,7 +588,8 @@ CSS width + CSS padding - width of vertical scrollbar (if present)
Does not include the border or margin."))
(defmethod client-width ((obj clog-element))
(parse-integer (property obj "clientWidth" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "clientWidth" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;;;
;; client-height ;;
@ -594,7 +601,8 @@ CSS height + CSS padding - height of horizontal scrollbar (if present)
Does not include the border or margin."))
(defmethod client-height ((obj clog-element))
(parse-integer (property obj "clientHeight" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "clientHeight" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;
;; offset-left ;;
@ -649,7 +657,8 @@ horizontal scrollbar (if present) + Border"))
content is scrolled to the left. For RTL languages is negative."))
(defmethod scroll-left ((obj clog-element))
(parse-integer (property obj "scrollLeft" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "scrollLeft" :default-answer 0)
:junk-allowed t))
(defgeneric set-scroll-left (clog-element value)
(:documentation "Set scroll-left VALUE for CLOG-ELEMENT"))
@ -667,7 +676,8 @@ content is scrolled to the left. For RTL languages is negative."))
content has been scrolled upward."))
(defmethod scroll-top ((obj clog-element))
(parse-integer (property obj "scrollTop" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "scrollTop" :default-answer 0)
:junk-allowed t))
(defgeneric set-scroll-top (clog-element value)
(:documentation "Set scroll-top VALUE for CLOG-ELEMENT"))
@ -685,7 +695,8 @@ content has been scrolled upward."))
of an element or the width of the element itself, whichever is greater."))
(defmethod scroll-width ((obj clog-element))
(parse-integer (property obj "scrollWidth" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "scrollWidth" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;;;
;; scroll-height ;;
@ -696,7 +707,8 @@ of an element or the width of the element itself, whichever is greater."))
content not visible on the screen due to overflow."))
(defmethod scroll-height ((obj clog-element))
(parse-integer (property obj "scrollHeight" :default-answer 0) :junk-allowed t))
(parse-integer (property obj "scrollHeight" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;
;; html-tag ;;
@ -1409,7 +1421,8 @@ right, top and bottom are interpreted.
parent in the DOM."))
(defmethod position-top ((obj clog-element))
(parse-integer (jquery-query obj "position().top" :default-answer 0) :junk-allowed t))
(parse-integer (jquery-query obj "position().top" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;;;
;; position-left ;;
@ -1420,7 +1433,8 @@ parent in the DOM."))
parent in the DOM."))
(defmethod position-left ((obj clog-element))
(parse-integer (jquery-query obj "position().left" :default-answer 0) :junk-allowed t))
(parse-integer (jquery-query obj "position().left" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;
;; offset-top ;;
@ -1430,7 +1444,8 @@ parent in the DOM."))
(:documentation "Position in pixels from top relative to the document."))
(defmethod offset-top ((obj clog-element))
(parse-integer (jquery-query obj "offset().top" :default-answer 0) :junk-allowed t))
(parse-integer (jquery-query obj "offset().top" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;
;; offset-left ;;
@ -1440,18 +1455,21 @@ parent in the DOM."))
(:documentation "Position in pixels from left relative to the document."))
(defmethod offset-left ((obj clog-element))
(parse-integer (jquery-query obj "offset().left" :default-answer 0) :junk-allowed t))
(parse-integer (jquery-query obj "offset().left" :default-answer 0)
:junk-allowed t))
;;;;;;;;;;;;;;;;;;
;; set-geometry ;;
;;;;;;;;;;;;;;;;;;
(defgeneric set-geometry (clog-element &key left top right bottom width height units)
(:documentation "Change the geometry :LEFT :TOP :RIGHT :BOTTOM :WIDTH :HEIGHT each optional
in UNITS (default :px)"))
(defgeneric set-geometry (clog-element &key left top right bottom
width height units)
(:documentation "Change the geometry :LEFT :TOP :RIGHT :BOTTOM
:WIDTH :HEIGHT each optional in UNITS (default :px)"))
(defmethod set-geometry ((obj clog-element) &key left top right bottom width height (units :px))
(defmethod set-geometry ((obj clog-element) &key left top right bottom
width height (units :px))
(jquery-execute obj (format nil "css({~A~A~A~A~A~A})"
(if left
(format nil "'left':'~A~A'," left units)
@ -1718,7 +1736,8 @@ margin."))
;;;;;;;;;;;;;;;;;
(defgeneric outer-width (clog-element)
(:documentation "Get outer-width. Includes padding and border but not margin."))
(:documentation "Get outer-width. Includes padding and border
but not margin."))
(defmethod outer-width ((obj clog-element))
(jquery-query obj "outerWidth()"))
@ -2316,9 +2335,9 @@ to no actual HTML elemen."))
;;;;;;;;;;;;;;;;;;;;;;
(defgeneric previous-sibling (clog-element)
(:documentation "Traverse to previous sibling element. If Child does not have an
html id than Element_Type will have an ID of undefined and therefore attached
to no actual HTML elemen."))
(:documentation "Traverse to previous sibling element.
If Child does not have an html id than Element_Type will have an ID of
undefined and therefore attached to no actual HTML elemen."))
(defmethod previous-sibling ((obj clog-element))
(attach-as-child obj (jquery-query obj "previous().prop('id')")))