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

presentation flavors



One strategy you could follow is to make my-slot be a presentation
argument of your presentation type(s).  These give you a place to store
extra information that is independent of the actual representation of
presentations themselves.

The dw::displayed-presentation representation is specific to
dw:dynamic-window's, per se.  The present and
dw:with-output-as-presentation protocol is not.  In the 7.2 system,
there are two other implementations of this protocol for editor
intervals and with-output-to-presentation-recording-string.  Neither is
based on dw::displayed-presentation.  In the MacIvory system, there are
a couple others for use with Macintosh style windows.  If one were
implementing Dynamic Windows like capabilities on top of X Windows or MS
Windows / Presentation Manager, there might be more.

Of course it might well be that you are only concerned with the ability
to have these extended presentations in true dynamic-window's.  Or it
might be that you wish to shadow the actual implementation of the
presentation protocol.  In this case, the basic extension you require is

    (defun make-displayed-presentation (&rest options 
					&key (flavor 'displayed-presentation)
					&allow-other-keys)
      (apply #'make-instance flavor options))