1991 | OriginalPaper | Buchkapitel
An Overview of GINA — the Generic Interactive Application
verfasst von : Michael Spenke, Christian Beilken
Erschienen in: User Interface Management and Design
Verlag: Springer Berlin Heidelberg
Enthalten in: Professional Book Archive
Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.
Wählen Sie Textabschnitte aus um mit Künstlicher Intelligenz passenden Patente zu finden. powered by
Markieren Sie Textabschnitte, um KI-gestützt weitere passende Inhalte zu finden. powered by
GINA is an object-oriented application framework written in CommonLisp and CLOS. It is based on an interface between CommonLisp and the OSF/Motif software. The generic interactive application is executable and has a complete graphical user interface, but lacks any application-specific behaviour. New applications are created by defining subclasses of GINA classes and adding or overriding methods. The standard functionality of a typical application is already implemented in GINA. Only the differences to the standard application have to be coded. For example, commands for opening, closing, saving and creating new documents are already available in GINA. The programmer only has to write a method to translate the document contents into a stream of characters and vice versa.Motif widgets are encapsulated in CLOS objects. Instantiating an object implicitly creates a widget within OSF/Motif. Graphic output and direct manipulation with individual graphical feedback are also supported.The combination of framework concepts, the flexible Motif toolkit, and the interactive Lisp environment leads to an extremely powerful user interface development environment (UIDE). There is already a dozen demo applications including a Finder to start applications and documents, a simple text editor and a simple graphic editor, each consisting of only a few pages of code. Even the first version of an interface builder, which treats Motif widgets like MacDraw objects, could be completed within a few days. The interface builder is not just a demo, but an important component of our UIDE: The resources of each widget can be modified by a dialog box, and Lisp code to be used in connection with GINA can be generated.A version of GINA for C++ is currently under development.