CLIM mail archive

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

Re: "Grouping" of presentations



    Date: Thu, 21 May 1992 16:24 MEST
    From: Jeff Morrill <jmorrill%BBN.COM@fhg.de>

      Date: Wed, 20 May 1992 15:05+0200
      From: Stefan Bernemann <berni@iml.fhg.de>
      Subject: "Grouping" of presentations
      To: clim@BBN.COM
  
      Hello,
  
      this time :-) I want to implement a feature of drawing applications or
      graph editors, namely the grouping of presentations. That means, I want
      to *replace* a set of presentations (no matter of what type) by ONE
      other presentation (e.g. of type "group").

    This is rather easy to do using incremental redisplay.  I have something
    like this for displaying tree-structured groupings.  A non-terminal node
    in the tree has a "display children" bit that is either on or off.  The
    display method on a node checks the bit and recurses if indicated.

      However, I don't want to erase and readraw any graphical output done to
      the screen, for efficienc reasons but mostly to minimize unnecessary
      screen flicker.

    That's exactly what the :cache-value option to updating-output is for.

Sorry, I wasn't specific enough. The forming of groups, i.e. determining
which objects (presentations) belong to one group, is done by the user.
There is no a priori group structure.  Consider the following example:
 ________
|        |
|  A   B |
|        |
|    C   |
|        |
|________| 

This shows (phantasy required!) a window with presentations A, B and C.
Now the user selects presentations A and C and wants them to be ONE
GROUP - that means, the presentations must be replaced by one
presentation of type group or such:
 ________
|  ___   |
| |A  |B |
| |   |  |
| |  C|  |
|  ---   |
|________| 

However, I don't want A and B do be *redrawn*. I don't see how I can use
incremental redisplay for this - I think I have to manipulate the output
history, but don't know how.

Stefan B.

Mail: Stefan Bernemann        ! Phone:  +49-231-9743-139
      c/o FhG IML Dortmund    ! Fax:    +49-231-9743-234
      Emil-Figge-Str. 75      ! Email:  berni@iml.fhg.de
      D-4600 Dortmund 50, FRG !         



Main Index | Thread Index