CLIM mail archive


question on table-formatting + graphics

   Date: Fri, 17 Jun 94 09:44:25 -0700
   From: Marilyn Bunzo <>


		 When the links are present but no drawn to the pane,
   all items in the columns can be selected.  When the same links are drawn on
   the pane (using draw-line*), the lower items in the list will once again
   become inaccessable.  

   We are using table formatting to build the columns.  I assume that we are
   somehow interfering with the table by overlaying graphics.  Can anyone give
   me any further information here?  I have included code for a simple test
   case based on our editor below.  

   We are about to port our code to CLIM 2.0.  Is this problem likely to
   persist in CLIM 2.0?  If this problem will go away in CLIM 2.0, I won't
   worry about doing a rewrite now.

It took about 90 seconds to convert this to CLIM 2.  (I'll send you
a diff if you're interested - let me know.)  The basic problem still
persists in CLIM 2, however it is easily worked around.

Cause of the problem: using the default type of output-record -
coordinate-sorted-sets.  You're not really interfering with the table,
just confusing the output-record lookup *above* the table.
Coordinate-sorted-sets are assuming that no record inserted in the
history after the table will overlap the table.  It's a bug.

Easy workaround (CLIM 2 only, alas): Use an r-tree-output-history for
the work-area pane.
(define-application-frame test-editor ()
  (:command-table (top-level-test-ct))
    :default-text-style '(:fix :roman :normal)
    :display-function 'display-structure
    :output-record (make-instance 'r-tree-output-history) ;; <== !
    :incremental-redisplay nil
    :scroll-bars ':both))

Then it works for me.  (Lispworks 3.2, our "Beta 7" CLIM 2.)


Follow-Ups: References:

Main Index | Thread Index