System object inheritance hierarchy

Inheritance

One of the most powerful features of PowerBuilder is inheritance. It enables you to build windows, user objects, and menus that are derived from existing objects. When you build an object that inherits from another object, you create a hierarchy (or tree structure) of ancestor and descendant objects.

Base class object

The object at the top of the hierarchy is a base class object, and the other objects are descendants of this object. Each descendant inherits its definition from its ancestor. The base class object typically implements generalized processing, and each descendant modifies the inherited processing as needed.

System object hierarchy

The PowerBuilder system objects compose such a hierarchy. At the top of the hierarchy is the PowerObject, the base class from which all the objects and controls described in this book descend. The hierarchy also contains other (generic) base class objects that are not typically used in application development but are necessary parts of the logical organization of the hierarchy.

Undocumented base class objects

Base class objects whose primary function is to provide generic properties and functions for descendant objects are not documented, since these objects typically are not used in applications. The base class system objects that are not documented are:

ClassDefinitionObject
ConnectObject
CPlusPlus
DragObject
DrawObject
DWObject
ExtObject
Function_Object
GraphicObject
NonVisualObject
OmControl
OmCustomControl
OmEmbeddedControl
OmObject
OmStorage
OmStream
ORB
PBtoCPPObject
PowerObject
RemoteObject
Service
Structure
WindowObject