From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f43e6,de26b214b6b1a0b3,start X-Google-Attributes: gidf43e6,public X-Google-Thread: 103376,de26b214b6b1a0b3,start X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1995-02-23 13:38:14 PST Path: nntp.gmd.de!stern.fokus.gmd.de!ceres.fokus.gmd.de!zib-berlin.de!uni-duisburg.de!RRZ.Uni-Koeln.DE!news.dfn.de!scsing.switch.ch!news.rediris.es!news.uoregon.edu!vixen.cso.uiuc.edu!howland.reston.ans.net!news.sprintlink.net!uunet!news.claremont.edu!paris.ics.uci.edu!ucivax!gateway From: kari@jasmin.ICS.UCI.EDU ("Kari A. Nies") Subject: New patch release available for Chiron 1.4 Message-ID: <10282.793575303@jasmin.ics.uci.edu> Newsgroups: comp.lang.ada,comp.software-eng Reply-To: kari@ics.uci.edu Date: 23 Feb 95 21:38:14 GMT Xref: nntp.gmd.de comp.lang.ada:19266 comp.software-eng:22569 Date: 1995-02-23T21:38:14+00:00 List-Id: ANNOUNCING THE RELEASE OF CHIRON 1.4 (patch level 5) The Arcadia project at the University of California, Irvine is pleased to announce an updated release of the Chiron user interface development system, version 1.4. This is the first version of Chiron 1.4 to compile successfully on the SunAda 2.1 compiler under Solaris 2.3. THE CHIRON USER INTERFACE DEVELOPMENT SYSTEM The Chiron system provides tools for assisting in the development of graphical user interfaces and provides a run-time system for managing and supporting their dynamic behavior. The objective of the Chiron system is to reduce long-term costs associated with developing and maintaining graphical user interface (GUI) software. It achieves this objective by providing key interface layers which are resilient to change. In particular, Chiron strongly separates an application from its user interface code, as well as separating the user interface code from the underlying toolkit substrates. Chiron supports the construction of GUIs which provide multiple coordinated views of application objects and allows flexible restructuring of the configuration of those views. Chiron supports a concurrent model of control. While the Chiron architecture supports heterogeneous, multi-lingual systems, the development tools which are part of this release only support clients (applications) written in Ada. Chiron is a distributed system. The Chiron server and clients run in separate Unix processes. Within a client, artists are active interface agents that are bound to one or more objects. They encapsulate decisions about how objects should be depicted (presentations) as well as how they behave dynamically (dialogs). Multiple artists can be bound to a single object, providing coordinated multiple views of that object. A Chiron client is made up of application code, a set of artists, and client support code. The client support code implements initialization, event detection and routing, and communication with the server. Client support code is automatically generated by client building tools. Chiron leverages from commercial GUI layout tools. Specifically, Chiron can be used with Sun Microsystem's DevGuide tool to create artists. For those aspects of GUIs which DevGuide is incapable of supporting (e.g. drawing on a canvas), DevGuide and Chiron tools can be used to create an artist template into which the additional graphical aspects can be added programmatically. The Chiron server manages all aspects of the user interface that are not artist or application specific. It can be thought of as a virtual machine providing a high-level graphical "toolkit" interface to artists by means of an Abstract Depiction Hierarchy (ADH). The server receives ADH instructions from the artists and uses them to create and manipulate an internal abstract representation of the graphical interface. The representation is rendered to a concrete depiction (a user viewable image) via calls to the underlying window system. The server also listens for events from the window system (button push, menu selection, etc) and translates them to Chiron events before shipping them back to the appropriate client. The Chiron server provides flexibility in terms of windowing systems and toolkits, application languages, and process inter-connection topology. Although we currently only provide support for Ada clients, it is feasible to provide other language-specific interfaces to the server's ADH. The Chiron model is highly concurrent. Most components maintain their own, and possibly multiple, threads of control. Thus, unlike most user interface architectures, Chiron avoids imposing sequential control upon applications, allowing the application, the user interface, and the server, to run in parallel. Chiron has been described several places in the open literature. The best references are: "Separations of Concerns in the Chiron-1 User Interface Development and Management System." Richard N. Taylor and Gregory F. Johnson. Proceedings of InterChi'93 (ACM SIGCHI's CHI conference united with IFIP TC 13's Interact conference), pp. 367--384. Amsterdam, April 1993. "Chiron-1: A Software Architecture for User Interface Development, Maintenance, and Run-time Support", by Richard N. Taylor, Kari A. Nies, Gregory Alan Bolcer, Craig A. MacFarlane, Gregory F. Johnson, and Kenneth M. Anderson, to appear in ACM Transactions on Computer-Human Interaction. (A version of this paper is available as a UCI techreport TR-94-12) (both papers are available via ftp and from the Chiron home page on the WWW, http://www.ics.uci.edu/Arcadia/Chiron/chiron.html). SYSTEM REQUIREMENTS Chiron 1.4 requires SunAda version 1.1, the X Window System, version 11 revision level 5, on a Sun 4 color or monochrome workstation. Chiron has been developed using the gcc compiler v2.5.8. The latest patch release has been successfully compiled under SunAda 2.1 running on Solaris 2.3. This version has also been successfully ported to an RS6000 under Verdix VADS 6.2. Chiron makes use of XView version 3.0 and Motif version 1.2 to build the XView and Motif versions of the Chiron server. You will need at least one of these toolkits. Chiron also requires Q v3.2, an Ada-C interprocess communication support utility and Arpc v402.3, an extension to Sun RPC/XDR 4.0, both developed by the Department of Computer Science, University of Colorado, Boulder. You must install Arpc and Q before installing Chiron. For convenience, copies of both Arpc and Q have been bundled in the Chiron 1.4 distribution. Space requirements (for Chiron 1.4 only, excludes Q and Arpc), including both the XView and the Motif versions of the Chiron server and all support tools: Distribution size : ~9 Meg (~7 Meg w/o applications) Build size : ~125 Meg (~87 Meg w/o applications) Installation size : ~75 Meg (~62 Meg w/o applications) Distribution size = size of sources, uninstalled. Build size = fully installed after build Installation size = unnecessary ada libs removed, object files removed. Motif Chiron server size : ~7 Meg (2.7 Meg = X11, Xt, Xm) XView Chiron server size : ~10 Meg (3.1 Meg = X11, XView, olgx) Trivial Chiron client : ~900 K FTP INSTRUCTIONS How to obtain Chiron 1.4 via anonymous FTP 1. FTP to the machine liege.ics.uci.edu (internet address 128.195.1.5) 2. When asked for a username use 'anonymous' 3. When asked for a password use your email address (e.g. pat@cs.university.edu) 4. Change directory (cd) into the pub/arcadia/chiron directory. 5. Set a file transfer mode that will allow you to transfer binary files. One way to do this that usually works is to issue the command 'binary' 6. Type the command 'get RELEASE_chiron.1.4.p5.tar.Z' (Binaries are available in RELEASE_chiron.1.4.p5-bin.tar.Z) 7. Quit FTP. 8. You now have a compressed tar file containing the source for Chiron. 9. You need to uncompress the file by typing 'uncompress RELEASE_chiron.1.4.p5.tar.Z' 10. Now untar the file to create the source and documentation tree by typing 'tar xvf RELEASE_chiron.1.4.p5.tar' at the Unix prompt. 11. Read the INSTALLATION.notes file in the RELEASE directory to find out how to install the system. Be sure that you place Chiron in its final location before installation as it is difficult to move once installed. If you already have patch level 4 installed, you can obtain a patch to bring your system up to patch level 5. The patch is available via ftp, located at: pub/arcadia/chiron/patches/chiron.1.4.patch.5.tar.Z ALSO AVAILABLE ON THE WEB See the Chiron home page at http://www.ics.uci.edu/Arcadia/Chiron/chiron.html for software releases, patches, papers and screenshots of running Chiron applications. SUMMARY OF CHANGES BETWEEN CHIRON 1.4 PATCH LEVELS 4 AND 5: 1. Modified sources to make this version compatible with both SunAda 1.1 and SunAda 2.1 compilers. This is the first version of Chiron 1.4 that is compatible with SunAda 2.1 running under Solaris 2.3. This version has also been ported to an RS6000 under Verdix 6.2. 2. New version of the flight simulator application with more artists and better graphics. 3. New sorting application. 4. Fixed numerous memory leaks in both the client and the server. 5. Got rid of machine code in translated artists. This has been a major hindrance for portability. 6. Added lcc targets for all application Makefiles to force lcc translation on artists. 7. Added methods set_line_thickness and set_line_style for class ADL_spline under the Motif server. 8. Cleaned up artist shutdown. Added Shutdown_Client procedure to artist manager package that allows an artist to programmatically shutdown an entire client (useful for quit buttons). Shutdown_All was changed to Shutdown_All_Artists for clarity. 9. Got rid of bogus Q error messages at startup. 10. Fixed bug in ADL_polyline::destroy that was causing the server to crash sporadically. 11. Added "name" parameters to all classes derived from ADL_panel_item. Allows fonts to be specified as .Xdefaults instead of hardcoding them into Chiron applications. e.g., <.Xdefaults file> *QuitButton.fontList: lucidasans-12 quit_button := ~Apply(ADL_button, create, parent => button_panel, button_id => 1, label => "Quit", name => "QuitButton", auto_placement => true);