Summary

The OS/2 Version 2.0 Workplace Shell provides an object-oriented user interface to the operating system, and provides an object-oriented application layer on top of Presentation Manager, through its implementation of the system object model. An application that exploits the facilities of the Workplace Shell consists of a number of objects, which are manipulated on the Workplace Shell desktop by the user, in order to carry out the required tasks.

Workplace Shell objects conform to "standard" object-oriented principles in that they are grouped into object classes, have instance data, and contain methods which perform the required tasks and operate upon the instance data. Workplace Shell object classes may inherit data and methods from their parent class, in accordance with the object-oriented concept of inheritance. A class may add additional data items or new methods to perform actions not handled by its parent class, or may override existing methods to handle actions in a different manner.

An object class is defined using a class definition file, which defines the parent hierarchy for the object, its data items and its methods. The class definition file is used as input to the SOM Precompiler, which uses the file to produce a number of source code files and header files. The source code is edited by the programmer to add the application logic for each method. It is then compiled using a normal C compiler, and link edited to produce a dynamic link library that implements the object class. An object class may make use of operating system and Presentation Manager resources during its execution.

Workplace Shell objects behave in a similar manner to windows under Presentation Manager; object classes are registered to the Workplace Shell, and individual instances of an object class are created, opened, closed and destroyed by the user or by other objects in the system. The major difference between a window under Presentation Manager and an object under the Workplace Shell is that Workplace Shell objects are persistent; that is, they exist for longer than a single application execution. Once created, a Workplace Shell object remains in existence until it is explicitly destroyed.


[Back: User-Initiated Communication]
[Next: Direct Manipulation]