[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

specializing CELL-SELECT in sequence dialog items

>The problem is that cell-select is defined only for a table-dialog-item 
>and not for a sequence-dialog-item.

Since sequence-dialog-item is a subclass of table-dialog-item, the
table-dialog-item method will be applicable. The problem really is
that cell-select is not called at all when you click on a table.

>You can use the hilight-table-cell method to work around this problem.

Good idea! Wish I'd thought of it.

Note that you don't need the "ccl::" package prefix: highlight-table-cell
is exported and documented.

>(defclass test-sequence-item (ccl::sequence-dialog-item)
>  ())
>(defmethod ccl::highlight-table-cell ((self test-sequence-item) cell rect
>  (let ((selected (cell-selected-p self cell)))
>    (call-next-method self cell rect selectedp)
>    (unless selected (format t "~a~%" (point-string cell)))))
>(defvar w)
>(defvar v)
>(setq v (make-instance 'test-sequence-item 
>          :table-dimensions #@(6 1)
>          :table-sequence '(0 1 2 3 4 5)))
>(setq w (make-instance 'window
>          :view-subviews
>          (list v)))