Ignore:
Timestamp:
11/16/2007 09:23:48 PM (19 years ago)
Author:
David Owen <dsowen@…>
branch-nick:
tui
revision id:
dsowen@fugue88.ws-20071116212348-g0y85h0so1fralzf
Message:

Created a new mix-in architecture for grids.
Converted the test.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/grid/test.lisp

    r57 r60  
    77
    88
    9 (defclass test () ())
     9(defclass test (nice-header row-selectable column-padding column-formats)
     10  ())
    1011
    1112(defmethod rows ((gd test)) 10)
    12 
    13 (defmethod header-rows ((gd test))
    14   1)
    1513
    1614(defmethod columns ((gd test)) 10)
     
    1917  1)
    2018
    21 (defmethod column-width ((gd test) column)
    22   5)
    23 
    2419(defmethod item ((gd test) row column)
    2520  (assert (and (<= 0 row 9)
    2621               (<= 0 column 9)))
    27   (cond
    28     ((= row 0)
    29      (concatenate 'string "`B`U " (string (aref "*ABCDEFGHI" column)) " `u`b"))
    30     ((= column 0)
    31      (format nil " `B~A`b " row))
    32     (t
    33      (format nil (if (= row column 2) "`R~A,~A`r" "~A,~A") row column))))
    34 
    35 (defmethod uses-display-strings ((gd test) row column)
    36   t)
     22  (* (1+ row) (1+ column)))
    3723
    3824
     
    4228  (refresh screen))
    4329
     30(defconstant +format+ (first (parse-format-specs '(:number 3))))
     31(defconstant +formats+ (make-sequence 'vector 10 :initial-element +format+))
     32
    4433(defun test-draw ()
    45   (let ((data (make-instance 'test)))
     34  (let ((data (make-instance 'test
     35                             :format-specs +formats+
     36                             :column-heads #("   *" "   A" "   B" "   C" "   D"
     37                                             "   E" "   F" "   G" "   H"
     38                                             "   I"))))
     39    (setf (selected-row data) 1)
    4640    (with-screen (screen)
    4741      (clear screen)
Note: See TracChangeset for help on using the changeset viewer.