1 Overview of Lidskjalv

Lidskjalv [1] is an platform independent object-oriented user interface construction framework for constructing user interfaces that are easily portable between the Macintosh window system, the X Window System (based on Motif Widgets), and the Microsoft Windows (Windows NT, Windows 2000, Windows 98, or Windows 95).

This document contains the object-oriented model for Lidskjalv, along with an overview of the interface files for Lidskjalv.

The Lidskjalv model is based on previous experiences in developing object-oriented user interface construction frameworks for the Macintosh window system, and the X Window System (based on Athena and Motif Widgets). It has been an important design criterion to make a model that deals with the construction of portable user interfaces in such a way that the details of the look-and-feel of the Lidskjalv applications will conform to the standardised look-and-feel at the specific platform; i.e. the interface will appear to the user as a genuine Motif interface when running in a Motif environment, and will appear as a genuine Macintosh application when running in a Macintosh environment, etc. However, not all issues can be dealt with without the co-operation from the application programmer. To give an example: if the application programmer decides that the windows in the application should contain individual menubars, there is no way this application can conform with the Macintosh User Interface Guidelines. However, Lidskjalv will allow the application programmer to specify individual window menubars on a Macintosh. However, the application programmer might use other facilities of Lidskjalv to deal with this issue of window-specific menubars, such that the code is purely portable across look-and-feel.

Lidskjalv defines abstractions for all commonly used interface objects, such as window, menubar, menu, button, text fields, figure items, scrolling lists, etc. Each interface object takes care of the interactions related to itself, and it is the responsibility of the entire framework to ensure that the user interactions (such as mouse button presses, key presses, etc.) are taken care of and converted internally into invocations of virtual procedures of the appropriate interface object - that is, no application programmer needs to handle user interaction at the event level of the underlying platform.

Lidskjalv is realised in the form of a class, guienv, whose instance acts as the framework for the user interface, taking care of all platform dependent event handling, etc.


[1] Lidskjalv is the name of the Odin's high throne, from which he is able to look into all Worlds and see everything that happens


Lidskjalv: User Interface Framework - Reference Manual
© 1994-2004 Mjølner Informatics
[Modified: Monday October 23rd 2000 at 22:18]