X-Git-Url: https://git.hcoop.net/clinton/lisp-on-lines.git/blobdiff_plain/5dea194ed068c8ff73dd65849d92be4ee6c7097b..6ac956e82549cf957dba5079060b1252884ff219:/src/slot-presentations.lisp
diff --git a/src/slot-presentations.lisp b/src/slot-presentations.lisp
index 3757ee3..d515860 100644
--- a/src/slot-presentations.lisp
+++ b/src/slot-presentations.lisp
@@ -1,5 +1,11 @@
+;; i know this is horrible, but it works wonders.
+(declaim (optimize (speed 0) (space 3) (safety 0)))
+
+
(in-package :lisp-on-lines)
+
+;;;; I dont think i'm using these anymore.
(defun multiple-value-funcall->list (function &rest args)
"The function to be called by m-v-bf"
(multiple-value-call #'list (apply function args)))
@@ -14,23 +20,40 @@
;;;; ** Textarea Slot Presentation
(defslot-presentation text-slot-presentation ()
- ((rows :initarg :rows :accessor rows :initform 25)
+ ((rows :initarg :rows :accessor rows :initform 5)
(columns :initarg :columns :accessor columns :initform 40)
- (escape-html-p :initarg :escape-html-p :accessor escape-html-p :initform nil))
+ (escape-html-p :initarg :escape-html-p :accessor escape-html-p :initform nil)
+ (convert-newlines-p :initarg :convert-newlines-p :accessor convert-newlines-p :initform nil))
(:type-name text))
(defmethod present-slot ((slot text-slot-presentation) instance)
- (if (editablep slot)
- ("))))
+ (presentation-slot-value slot instance))))
+ (if (escape-html-p slot)
+ (<:as-html string)
+ (<:as-is string)))))
+
+ (if (editablep slot)
+ (