Class: AppClientArea [Abstract]

Properties  Events  Methods    Index of Classes

Provides a client area to contain all of an application's views (MDI child dialogs)

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
---------------------DfBasemdiclient
------------------------MdiClientArea
---------------------------AppClientArea
------------------------------ClientArea

Library: Windows Application Class Library

Package: Dfaclnt.pkg

Description

AppClientArea is used to provide a client area to contain all of an application's views (Multiple Document Interface (MDI) child dialogs). The container is placed within an MDI panel (AppPanel or subclass) and will contain MDI child dialogs (AppDialog or subclass thereof). Objects based on this class are automatically sized and support an interface to control various aspects of its child objects.

Sample

Object oPanel is an AppPanel
    Set Size to 200 250
    Set Label to "MyTest Panel"
    :
    Object ClientArea is an AppClientArea
        : Add MDI view objects
    End_Object
    :
End_Object


Syntax

Object object_name is an AppClientArea
    :
    : Add MDI view objects
    :
End_Object


Of Special Note

Three levels of programming classes are supported: basic (non-MDI, no support for tool bars or status bars), application (App... classes - MDI support, basic tool bar and tool-bar support), and high-level-application.

A proper MDI (Multiple Document Interface) application consists of an MDI Panel object (which contains and supports a menu bar, a tool bar, a status bar and a client area), an MDI client-area object which contains and supports child MDI dialogs or views. The App... classes (AppPanel, AppClientArea, AppDialog) provide the needed cooperative support to create an MDI application.

Although complete applications can be written using the App... classes, they are considered to be intermediate-level classes. A higher and more-powerful level of classes exists and it is expected that most applications will be written using these high-level classes (Panel, ClientArea, cToolBar, cStatusBar, MenuBar, View, and dbView).

Normally you will not set properties or send messages directly within an object of this class. Its size, location and characteristics are set by its parent panel object (AppPanel) either automatically or through the panel's public interface. Often messages sent from the panel will require the client area to direct these messages to its children. A number of these messages are predefined. This object can be instructed to do the following to all child view objects: minimize, restore, arrange all icons, cascade, tile, verify exit application, and notify exit application. If a custom process is required, the next_mdi_dialog message can used to retrieve the object ID of all child dialog objects.

The Panel's Client_ID Property

When an object of this class is created, it makes itself known to its container by setting the property Client_Id in its parent panel object. This will be set to the object ID of this object. This allows the AppPanel object to communicate with this object.