From 6f4bd849041de0461f6b8f2ade4026780cd03c15 Mon Sep 17 00:00:00 2001 From: David Botton Date: Tue, 12 Jan 2021 22:38:15 -0500 Subject: [PATCH] Text Areas --- clog-form.lisp | 120 ++++++++++++++++++++++++++++++++++---- clog.lisp | 9 ++- doc/clog-manual.html | 57 +++++++++++++++--- tutorial/09-tutorial.lisp | 23 ++++++-- 4 files changed, 186 insertions(+), 23 deletions(-) diff --git a/clog-form.lisp b/clog-form.lisp index 3f9163b..d1dff6f 100644 --- a/clog-form.lisp +++ b/clog-form.lisp @@ -44,7 +44,7 @@ action.")) ;; form-element-count ;; ;;;;;;;;;;;;;;;;;;;;;;;; -(defgeneric form-element-count (clog-formt) +(defgeneric form-element-count (clog-form) (:documentation "Get form element count.")) (defmethod form-element-count ((obj clog-form)) @@ -141,16 +141,16 @@ elements.")) :file :hidden :image :month :number :password :radio :range :reset :search :submit :tel :text :time :url :week)) -(defgeneric create-form-element (clog-form element-type &key name value label) - (:documentation "Create a new clog-form-element as child of CLOG-FORM. -clog-form-elements are always placed with in the CLOG-FORM in the DOM")) +(defgeneric create-form-element (clog-obj element-type &key name value label) + (:documentation "Create a new clog-form-element as child of CLOG-OBJ. +It is importamt tjat clog-form-elements are a child or descendant of a +clog-form in the DOM")) -(defmethod create-form-element ((obj clog-form) element-type +(defmethod create-form-element ((obj clog-obj) element-type &key (name nil) (value "") (label nil)) (let ((element (create-child - obj (format nil "" + obj (format nil "" (escape-string element-type) - (html-id obj) value (if name (format nil "name='~A'" name) @@ -448,10 +448,10 @@ have this set true. Autofocus on element when form loaded. ")) ;;;;;;;;;;;;;;;;;; -(defgeneric create-label (clog-form &key content label-for) - (:documentation "Create a new clog-label as child of CLOG-FORM.")) +(defgeneric create-label (clog-obj &key content label-for) + (:documentation "Create a new clog-label as child of CLOG-OBJ.")) -(defmethod create-label ((obj clog-form) &key (content "") (label-for nil)) +(defmethod create-label ((obj clog-obj) &key (content "") (label-for nil)) (create-child obj (format nil "" (if label-for (html-id label-for) @@ -481,7 +481,7 @@ have this set true. Autofocus on element when form loaded. ")) ;;;;;;;;;;;;;;;;;;;;;; (defgeneric create-data-list (clog-obj) - (:documentation "Create a new clog-data-list as child of CLOG-FORM.")) + (:documentation "Create a new clog-data-list as child of CLOG-OBJ.")) (defmethod create-data-list ((obj clog-obj)) (create-child obj "" :clog-type 'clog-data-list :auto-place t)) @@ -497,3 +497,101 @@ have this set true. Autofocus on element when form loaded. ")) (create-child obj (format nil "