aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xfdf.lisp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/xfdf.lisp b/src/xfdf.lisp
index d64aa29..5ddd23a 100644
--- a/src/xfdf.lisp
+++ b/src/xfdf.lisp
@@ -25,3 +25,26 @@ value)))
</xfdf>")
output-stream)
+
+(defun field-xfdf (name value)
+ (field-xfdf* name value 0))
+
+(defun field-xfdf* (name value nesting-level)
+ ""
+ (let ((indent (+ 2 nesting-level)))
+ ;; TODO: Add checkbox default values.
+ (if (listp value)
+ (field-xfdf* name value (1+ nesting-level))
+
+ ;; TODO: Put checkbox stuff here.
+ (format nil "~
+~v{~A~:*~}<field name=\"~A\"
+~v{~A~:*~} <value>~A</value>
+~v{~A~:*~}</field>
+"
+indent
+name
+indent
+value
+indent))))
+;; * (format t "~v{~A~:*~}<>~A" 5 '("Hello") "Next")