home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.lang.lisp:2821 comp.human-factors:2566
- Path: sparky!uunet!ogicse!das-news.harvard.edu!cantaloupe.srv.cs.cmu.edu!crabapple.srv.cs.cmu.edu!bam
- From: bam+@cs.cmu.edu (Brad Myers)
- Newsgroups: cmu.cs.common-lisp,comp.lang.lisp,comp.human-factors
- Subject: New version of Garnet
- Message-ID: <BxAxy6.Lto.1@cs.cmu.edu>
- Date: 6 Nov 92 06:03:40 GMT
- Article-I.D.: cs.BxAxy6.Lto.1
- Sender: news@cs.cmu.edu (Usenet News System)
- Organization: School of Computer Science, Carnegie Mellon
- Lines: 196
- Nntp-Posting-Host: bam.garnet.cs.cmu.edu
-
- -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
- -*-*-*-*-*-*- ANNOUNCING THE RELEASE OF VERSION 2.1 OF GARNET -*-*-*-*-*-*-
- -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
-
- Garnet is an advanced user interface development environment for Lisp and
- X/11. It runs on all machines and Lisps that support X/11, and it is free.
- FTP instructions are below.
-
- We have added a significant number of new features to this version,
- including the release of C32 and its integration with Lapidary. We have
- also added a number of new gadgets, such as one for reading and saving
- Garnet objects; interactor support for animation; and full support for
- reading and writing X pixmap objects. In addition, we have corrected
- several bugs that were reported in version 2.0.
-
- In summary, the primary changes are:
-
- * The spreadsheet object and constraint editor C32 is now ready for
- release. It allows Garnet objects to be viewed and edited using a
- spreadsheet-like interface. C32 was described in a paper presented at CHI.
-
- * Several bugs were fixed in Lapidary. In addition, Lapidary now uses
- C32. This makes it possible to edit objects and constraints created
- with Lapidary using a spreadsheet interface.
-
- * We have created new gadgets for saving and reading Garnet objects from
- a file, and pop-up option menus. Both come in Motif and Garnet
- looks-and-feels.
-
- * All button and menu widgets can now include arbitrary Garnet objects as
- the labels, in addition to text strings. This results from an extension
- to aggrelists to include arbitrary pictures.
-
- * It is now possible to have X pixmaps (color pictures) as first-class
- Garnet objects. Pixmap objects can be read and written to files in xpm format.
-
- * The multi-graphics selection widget now supports many new features such as
- the ability to grow multiple objects, select all objects in a region, etc.
-
- * There is a new interactor, animator-interactor, which supports
- various forms of animation.
-
- * Garnet now supports modal windows, which can be specified with the
- slot :modal-p. These prevent input from going to any other
- windows, and are easier to use than priority-levels.
-
-
-
- In summary, the secondary changes are:
-
- KR:
-
- The function SCHEMA-P now returns T only for valid objects, i.e., objects
- that have not been destroyed.
-
- By default, KR functions such as G-VALUE now give more meaningful
- error messages when given illegal objects such as NIL.
-
- The behavior of the :override keyword to create-instance has
- been improved considerably. Formulas which used to depend on values
- that are overridden are properly invalidated.
-
- The macro gv now gives an error message if its first argument is a
- keyword. Usually, this results from using gv instead of gvl
- by mistake.
-
- destroy-slot now runs the invalidate demon before deleting the
- slot. This ensures that the Update algorithm sees the change and
- reflects it in the display.
-
- We have added two new macros, with-demon-enabled and
- with-demon-disabled, which allow finer control over which invalidate
- demons are executed.
-
-
- OPAL:
-
- The functions of the opal:gv- family, such as opal:gv-bottom,
- now behave as if a link was missing when the object they are given is
- NIL.
-
- The point-in-gob method now works appropriately for polygons and arcs,
- rather than just using the bounding-box.
-
- The circularities in dependencies for aggrelists were removed, so it is
- now easier to center an aggrelist in other objects with formulas.
-
- Opal parses the ":0.0" part of the DISPLAY environment variable, in
- case it is not the default ("0.0"). This environment variable is used
- by the X server to tell which display is being used.
-
- Postscript printing can now handle multiple windows, and is more
- robust. The comment at the top of PostScript files generated by
- opal:Make-PS-File has been changed to "%!PS-Adobe-2.0 EPSF 2.0". The
- addition of the EPSF comment should make it easier to load these
- PostScript files into other applications like FrameMaker.
-
- The cursor multi-text object gadget now scrolls the text so the cursor
- remains visible. If the cursor is pulled outside the window that displays
- the text, the window is scrolled continuously.
-
- Thanks to Denys Duchier, Garnet now provides better support for
- windows on the TVTWM window manager.
-
- The standard Garnet fonts are now referenced by point size rather than
- by pixel size. For example, when Garnet looks for the default-font on
- the font path, it will search for a font with a point size of 120,
- rather than a pixel size of 12. This should reduce the number of
- users who have to explicitly add directories to their font path.
-
-
- INTERACTORS:
-
- The two-point interactor, text interactor, and polyline-creator now
- accept the same gridding control as the move-grow interactor.
-
- The button-interactor now supports auto-repeat using the
- animator-interactor (but only under Allegro or Lucid).
-
-
- GADGETS:
-
- Scrolling windows now have a new function to scroll the window so a given
- rectangular area is visible.
-
- The arrows on scroll bars and sliders will now auto-repeat if you hold the
- mouse button down on them (but only under Allegro or Lucid).
-
- Releasing the mouse button outside a menubar now makes the menubar go away.
-
- The functions Pop-Up-Win-For-Prop, Pop-Up-Win-Change-Obj, and
- Pop-Up-Win-Change-Items all take an optional modal-p final parameter.
-
- The Motif-Slider has a new :format-string slot, so you can control
- how the indicator text is formatted.
-
-
- DEMOS AND UTILITIES:
-
- New demo demo-animator shows off how to make an animation, and
- demo-pixmap is a kind of pixmap editor.
-
- Garnetdraw has been substantially upgraded by using the new
- multi-graphics-selection and read and save gadgets, and
- it also supports gridding.
-
-
- GILT:
-
- The functions Gilt:show-in-window and
- Gilt:show-in-window-and-wait now take the parameter modal-p.
-
-
- LAPIDARY:
-
- Lapidary now uses so-called link parameters, i.e., slots that
- constraints use to reference other objects, and which may change with each
- incarnation of an object.
-
- The parameters menu has been extensively revised to make it work
- with aggrelists and link parameters.
-
- Lapidary no longer requests anything from the Lisp listener.
-
- The interactor menus now disappear when one of the action buttons
- has been hit.
-
- Lapidary-generated files are much smaller and more readable, because
- formulas that should be inherited are no longer dumped.
-
-
- CONTRIB:
-
- New contributions include a set of functions that let the user provide
- input (such as Lisp expressions) and handle errors that might occur
- during evaluation.
-
-
- DOCUMENTATION:
-
- The new Garnet manuals now use embedded postscript pictures instead of
- bitmaps, so the manuals should be much smaller files and quicker to print.
-
-
-
- FTP INSTRUCTIONS
-
- Garnet is available for free by anonymous FTP. To retrieve it, ftp to
- a.gp.cs.cmu.edu (128.2.242.7). When asked to log in, use "anonymous", and
- your name as the password. Then change to the garnet directory (note the
- double garnet's) and get the README explanation file:
- ftp> cd /usr/garnet/garnet/
- ftp> get README
- Now, follow the directions in the README file.
-
- There is a usenet bboard for discussing Garnet: comp.windows.garnet.
-