Class: DfBaseDialog [Abstract]

Properties  Events  Methods    Index of Classes

A container class that manages the controls that are placed in its scope

This is an abstract class and should never be used by a developer for object instantiation. While a developer could use this class for sub-classing, it is not encouraged.

Hierarchy

cObject
---cUIObject
------DfBaseObject
---------DfBaseWindow
------------DfBaseUIWindow
---------------DfBaseContainer
------------------DfBaseDialog
---------------------Container3d
---------------------DfBasemdiclient
---------------------DfBasePanel

Library: Windows Application Class Library

Package: none (class defined in runtime)

Description

DfBaseDialog is a container class that manages the controls that are placed in its scope. This class is not intended to be used for instantiation. It does serve as the basis for a number of important classes (BasicPanel, ToolPanel, and Container3d and all of their subclasses.)

Note

DfBaseDialog is never instantiated in applications. It is, however, used as the basis for most of the other container subclasses. While this class contains a large number of properties most of them are properly set within the sub-class. For this reason, most of the properties and methods in this class are considered to be "advanced" - you should never need to change their default settings. In fact, it is the purpose of most of these sub-classes to hide the complexity of this class.

Client_Area_State

The DfBaseDialog class object initializes its Client_Area_State to true. This property controls the way activation and deactivation is performed on the object. When activated, it automatically activates all of its children (that do not have their Focus_Modes set to no_activate). The object then gives the focus to its first focusable child. This ability allows programs to activate a whole set of objects with one message. Note that the container object is never the focus itself.

Just as the DfBaseDialog changes the Activate message, it also changes the deactivate message to remove all children of the container from the focus tree.

Container areas also change the default way that objects are added to the focus tree. Normally, objects are added to the next level of the focus and are kept in a linear-linked list. At the end of each level, the focus is directed to the next object at the prior level. All child objects that are activated with a container are added to the focus tree as a child of container.

Ring_State

Containers may change navigation at the end of a level by setting the Ring_State property of the container object. The ends of the focus tree of a container will point to each other, creating a circular "ring" of navigation. This ring is often useful when the processing of information is repeated. Rings are ususally desriable within panel and view objects (BasicPanel, ModalPanel, View, etc.) and are undesirable for grouping objects (Container3d, Group). These sub-classes all set ring_state appropriately. You will rarely need to change this