defsetf functions now return value

This commit is contained in:
David Botton 2021-12-10 09:34:54 -05:00
parent bc9bda5c74
commit a8d6c7c162
4 changed files with 52 additions and 27 deletions

View file

@ -78,10 +78,12 @@ during attachment. (Private)"))
;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;
(defgeneric js-execute (clog-obj script) (defgeneric js-execute (clog-obj script)
(:documentation "Execure SCRIPT on browser. (Internal)")) (:documentation "Execure SCRIPT on browser. Result is
dicarded, return CLOG-OBJ. (Internal)"))
(defmethod js-execute ((obj clog-obj) script) (defmethod js-execute ((obj clog-obj) script)
(clog-connection:execute (connection-id obj) script)) (clog-connection:execute (connection-id obj) script)
obj)
;;;;;;;;;;;;;; ;;;;;;;;;;;;;;
;; js-query ;; ;; js-query ;;
@ -109,7 +111,7 @@ during attachment. (Private)"))
(defgeneric jquery-execute (clog-obj method) (defgeneric jquery-execute (clog-obj method)
(:documentation "Execute the jquery METHOD on OBJ. Result is (:documentation "Execute the jquery METHOD on OBJ. Result is
dicarded. (Private)")) dicarded, return CLOG-OBJ. (Private)"))
(defmethod jquery-execute ((obj clog-obj) method) (defmethod jquery-execute ((obj clog-obj) method)
(js-execute obj (format nil "~A.~A" (jquery obj) method))) (js-execute obj (format nil "~A.~A" (jquery obj) method)))
@ -369,7 +371,8 @@ result or if time out DEFAULT-ANSWER (Private)"))
(:documentation "Set html property.")) (:documentation "Set html property."))
(defmethod set-property ((obj clog-obj) property-name value) (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) (defsetf property set-property)
;;;;;;;;;;;; ;;;;;;;;;;;;
@ -386,7 +389,8 @@ result or if time out DEFAULT-ANSWER (Private)"))
(:documentation "Set height VALUE for CLOG-OBJ")) (:documentation "Set height VALUE for CLOG-OBJ"))
(defmethod set-height ((obj clog-obj) value) (defmethod set-height ((obj clog-obj) value)
(jquery-execute obj (format nil "height('~A')" (escape-string value)))) (jquery-execute obj (format nil "height('~A')" (escape-string value)))
value)
(defsetf height set-height) (defsetf height set-height)
;;;;;;;;;;; ;;;;;;;;;;;
@ -403,7 +407,8 @@ result or if time out DEFAULT-ANSWER (Private)"))
(:documentation "Set width VALUE for CLOG-OBJ")) (:documentation "Set width VALUE for CLOG-OBJ"))
(defmethod set-width ((obj clog-obj) value) (defmethod set-width ((obj clog-obj) value)
(jquery-execute obj (format nil "width('~A')" (escape-string value)))) (jquery-execute obj (format nil "width('~A')" (escape-string value)))
value)
(defsetf width set-width) (defsetf width set-width)
;;;;;;;;;;; ;;;;;;;;;;;
@ -466,7 +471,8 @@ clog-body of this connection."))
(defmethod set-connection-data-item ((obj clog-obj) item-name value) (defmethod set-connection-data-item ((obj clog-obj) item-name value)
(bordeaux-threads:with-lock-held ((connection-data-mutex obj)) (bordeaux-threads:with-lock-held ((connection-data-mutex obj))
(setf (gethash item-name (connection-data obj)) value))) (setf (gethash item-name (connection-data obj)) value))
value)
(defsetf connection-data-item set-connection-data-item) (defsetf connection-data-item set-connection-data-item)
(defgeneric remove-connection-data-item (clog-obj item-name) (defgeneric remove-connection-data-item (clog-obj item-name)

View file

@ -123,7 +123,8 @@ clog-document object. (Private)"))
(defmethod set-title ((obj clog-document) value) (defmethod set-title ((obj clog-document) value)
(execute obj (execute obj
(format nil "title='~A'" (clog-connection:escape-string value)))) (format nil "title='~A'" (clog-connection:escape-string value)))
value)
(defsetf title set-title) (defsetf title set-title)
;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;

View file

@ -118,7 +118,8 @@ must be in DOM, ie placed or auto-placed."))
(defmethod set-style ((obj clog-element) style-name value) (defmethod set-style ((obj clog-element) style-name value)
(jquery-execute obj (format nil "css('~A','~A')" (jquery-execute obj (format nil "css('~A','~A')"
style-name (escape-string value)))) style-name (escape-string value)))
value)
(defsetf style set-style) (defsetf style set-style)
(defgeneric set-styles (clog-element style-list) (defgeneric set-styles (clog-element style-list)
@ -148,17 +149,19 @@ must be in DOM, ie placed or auto-placed."))
:default-answer default-answer)) :default-answer default-answer))
(defgeneric remove-attribute (clog-element attribute-name) (defgeneric remove-attribute (clog-element attribute-name)
(:documentation "Get/Setf html tag attribute. (eg. src on img tag)")) (:documentation "Remove html tag attribute. (eg. src on img tag)"))
(defmethod remove-attribute ((obj clog-element) attribute-name) (defmethod remove-attribute ((obj clog-element) attribute-name)
(jquery-execute obj (format nil "removeAttr('~A')" attribute-name))) (jquery-execute obj (format nil "removeAttr('~A')" attribute-name))
attribute-name)
(defgeneric set-attribute (clog-element attribute-name value) (defgeneric set-attribute (clog-element attribute-name value)
(:documentation "Set html tag attribute.")) (:documentation "Set html tag attribute."))
(defmethod set-attribute ((obj clog-element) attribute-name value) (defmethod set-attribute ((obj clog-element) attribute-name value)
(jquery-execute obj (format nil "attr('~A','~A')" (jquery-execute obj (format nil "attr('~A','~A')"
attribute-name (escape-string value)))) attribute-name (escape-string value)))
value)
(defsetf attribute set-attribute) (defsetf attribute set-attribute)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -384,7 +387,8 @@ lost forever."))
(:documentation "Set inner-html VALUE for CLOG-ELEMENT")) (:documentation "Set inner-html VALUE for CLOG-ELEMENT"))
(defmethod set-inner-html ((obj clog-element) value) (defmethod set-inner-html ((obj clog-element) value)
(jquery-execute obj (format nil "html('~A')" (escape-string value)))) (jquery-execute obj (format nil "html('~A')" (escape-string value)))
value)
(defsetf inner-html set-inner-html) (defsetf inner-html set-inner-html)
;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;
@ -451,7 +455,8 @@ spell checking if Editable is also true."))
(:documentation "Set text VALUE for CLOG-ELEMENT")) (:documentation "Set text VALUE for CLOG-ELEMENT"))
(defmethod set-text ((obj clog-element) value) (defmethod set-text ((obj clog-element) value)
(jquery-execute obj (format nil "text('~A')" (escape-string value)))) (jquery-execute obj (format nil "text('~A')" (escape-string value)))
value)
(defsetf text set-text) (defsetf text set-text)
;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;
@ -1642,7 +1647,8 @@ in UNITS (default :px)"))
(:documentation "Set inner-height VALUE for CLOG-ELEMENT")) (:documentation "Set inner-height VALUE for CLOG-ELEMENT"))
(defmethod set-inner-height ((obj clog-element) value) (defmethod set-inner-height ((obj clog-element) value)
(jquery-execute obj (format nil "innerHeight('~A')" (escape-string value)))) (jquery-execute obj (format nil "innerHeight('~A')" (escape-string value)))
value)
(defsetf inner-height set-inner-height) (defsetf inner-height set-inner-height)
;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;
@ -1659,7 +1665,8 @@ in UNITS (default :px)"))
(:documentation "Set inner-width VALUE for CLOG-ELEMENT")) (:documentation "Set inner-width VALUE for CLOG-ELEMENT"))
(defmethod set-inner-width ((obj clog-element) value) (defmethod set-inner-width ((obj clog-element) value)
(jquery-execute obj (format nil "innerWidth('~A')" (escape-string value)))) (jquery-execute obj (format nil "innerWidth('~A')" (escape-string value)))
value)
(defsetf inner-width set-inner-width) (defsetf inner-width set-inner-width)
;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;

View file

@ -38,7 +38,8 @@ window."))
(defgeneric set-window-name (clog-window value)) (defgeneric set-window-name (clog-window value))
(defmethod set-window-name ((obj clog-window) value) (defmethod set-window-name ((obj clog-window) value)
(execute obj (format nil "name='~A'" (escape-string value)))) (execute obj (format nil "name='~A'" (escape-string value)))
value)
(defsetf window-name set-window-name) (defsetf window-name set-window-name)
;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;
@ -54,7 +55,8 @@ window."))
(defgeneric set-status-bar (clog-window value)) (defgeneric set-status-bar (clog-window value))
(defmethod set-status-bar ((obj clog-window) value) (defmethod set-status-bar ((obj clog-window) value)
(execute obj (format nil "status='~A'" (escape-string value)))) (execute obj (format nil "status='~A'" (escape-string value)))
value)
(defsetf status-bar set-status-bar) (defsetf status-bar set-status-bar)
;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;
@ -70,7 +72,8 @@ window."))
(defgeneric set-inner-height (clog-window value)) (defgeneric set-inner-height (clog-window value))
(defmethod set-inner-height ((obj clog-window) value) (defmethod set-inner-height ((obj clog-window) value)
(execute obj (format nil "innerHeight='~A'" (escape-string value)))) (execute obj (format nil "innerHeight='~A'" (escape-string value)))
value)
(defsetf inner-height set-inner-height) (defsetf inner-height set-inner-height)
;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;
@ -86,7 +89,8 @@ window."))
(defgeneric set-inner-width (clog-window value)) (defgeneric set-inner-width (clog-window value))
(defmethod set-inner-width ((obj clog-window) value) (defmethod set-inner-width ((obj clog-window) value)
(execute obj (format nil "innerWidth='~A'" (escape-string value)))) (execute obj (format nil "innerWidth='~A'" (escape-string value)))
value)
(defsetf inner-width set-inner-width) (defsetf inner-width set-inner-width)
;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;
@ -102,7 +106,8 @@ window."))
(defgeneric set-outer-height (clog-window value)) (defgeneric set-outer-height (clog-window value))
(defmethod set-outer-height ((obj clog-window) value) (defmethod set-outer-height ((obj clog-window) value)
(execute obj (format nil "outerHeight='~A'" (escape-string value)))) (execute obj (format nil "outerHeight='~A'" (escape-string value)))
value)
(defsetf outer-height set-outer-height) (defsetf outer-height set-outer-height)
;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;
@ -118,7 +123,8 @@ window."))
(defgeneric set-outer-width (clog-window value)) (defgeneric set-outer-width (clog-window value))
(defmethod set-outer-width ((obj clog-window) value) (defmethod set-outer-width ((obj clog-window) value)
(execute obj (format nil "outerWidth='~A'" (escape-string value)))) (execute obj (format nil "outerWidth='~A'" (escape-string value)))
value)
(defsetf outer-width set-outer-width) (defsetf outer-width set-outer-width)
;;;;;;;;;;;;;; ;;;;;;;;;;;;;;
@ -134,7 +140,8 @@ window."))
(defgeneric set-x-offset (clog-window value)) (defgeneric set-x-offset (clog-window value))
(defmethod set-x-offset ((obj clog-window) value) (defmethod set-x-offset ((obj clog-window) value)
(execute obj (format nil "pageXOffset='~A'" (escape-string value)))) (execute obj (format nil "pageXOffset='~A'" (escape-string value)))
value)
(defsetf x-offset set-x-offset) (defsetf x-offset set-x-offset)
;;;;;;;;;;;;;; ;;;;;;;;;;;;;;
@ -150,7 +157,8 @@ window."))
(defgeneric set-y-offset (clog-window value)) (defgeneric set-y-offset (clog-window value))
(defmethod set-y-offset ((obj clog-window) value) (defmethod set-y-offset ((obj clog-window) value)
(execute obj (format nil "pageYOffset='~A'" (escape-string value)))) (execute obj (format nil "pageYOffset='~A'" (escape-string value)))
value)
(defsetf y-offset set-y-offset) (defsetf y-offset set-y-offset)
;;;;;;;;; ;;;;;;;;;
@ -166,7 +174,8 @@ window."))
(defgeneric set-top (clog-window value)) (defgeneric set-top (clog-window value))
(defmethod set-top ((obj clog-window) value) (defmethod set-top ((obj clog-window) value)
(execute obj (format nil "screenY='~A'" (escape-string value)))) (execute obj (format nil "screenY='~A'" (escape-string value)))
value)
(defsetf top set-top) (defsetf top set-top)
;;;;;;;;;; ;;;;;;;;;;
@ -182,7 +191,8 @@ window."))
(defgeneric set-left (clog-window value)) (defgeneric set-left (clog-window value))
(defmethod set-left ((obj clog-window) value) (defmethod set-left ((obj clog-window) value)
(execute obj (format nil "screenX='~A'" (escape-string value)))) (execute obj (format nil "screenX='~A'" (escape-string value)))
value)
(defsetf left set-left) (defsetf left set-left)
;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;
@ -542,5 +552,6 @@ STORAGE-TYPE. (local = persistant or session)"))
(execute obj (format nil "~(~a~)Storage.setItem('~A','~A')" (execute obj (format nil "~(~a~)Storage.setItem('~A','~A')"
storage-type storage-type
(escape-string key-name) (escape-string key-name)
(escape-string value)))) (escape-string value)))
value)
(defsetf storage-element set-storage-element) (defsetf storage-element set-storage-element)