CLIM mail archive


filling-output and cells

I'm trying to use filling-output inside a cell, and have the resulting
text centered both x and Y. it appears not to be centering.

what I want: (this is drawn inside a circle, so I KNOW when it fails)

"testing testing" should end up as 

    / | \
   /  |  \
   \  |  /
    \ | /

(ok it's sloppy--this ain't NeXTMail or something!)

anyway, I want the text exactly centered across multiple linebreaks,
and the circle is to be centered with the text, as [very] roughly
shown. i've used :align-x and :align-y with :centered.

is this a bug?

here's a code-frag:

(DEFUN print-patient-pp-data (frame stream
				    &optional (patient *patient*)
				    &aux width ph)

  (declare (ignore frame))
  (clim:formatting-table (STREAM 
			   :inter-row-spacing 20
			   :equalize-column-widths t
			   :multiple-columns 6
			   :multiple-columns-inter-column-spacing '(50 :pixel))

      (clim:formatting-row (STREAM)
	    (dolist (pp (pps patient))
	      (clim:formatting-cell (STREAM :align-x :center :align-y :center)
		    (clim:with-output-as-presentation (:object pp :stream stream :single-box t)
		      ;;now draw the circle...
		      (clim:draw-circle* stream 25 25 50
					 :filled (slot-value pp 'highlighted)
					 :ink (if (slot-value pp 'highlighted)
		    ;;drawing the string MUST occur after the circle.
		    ;;now draw the text, inverting the bits over the rectangle and the circle.
		    (clim:with-drawing-options (stream :ink (if (slot-value pp 'highlighted)
		      (clim:with-text-family (:sans-serif stream)
			(clim:filling-output (stream :fill-width '(100 :pixel))
					     (princ (string (name pp)) stream))

 -- clint
	----- End of forwarded message -----



Main Index | Thread Index