class OverlayKit (Return to index)

helper class for constructing an OverlayEditor.

Type:
    Instantiable

Derived Classes

Include file:

    OverlayUnidraw/ovkit.h

Description:

this class (or something derived from it) is supplied to the constructor of an OverlayEditor (or any class derived from an OverlayEditor). The idea behind OverlayKit is it facilitates a much more flexible construction of an OverlayEditor, the central object in any ivtools drawing editor, by allow the use of virtual functions during the construction. Normally virtual functions can't be used by a constructor, but virtual functions on a pre-constructed helper class, like OverlayKit, can be used.

In this way other classes can be derived from OverlayKit with different virtual methods for initializing the pull-down menus and toolbars, and can completely change the appearance and functionality of essentially the same OverlayEditor.

Another feature of the OverlayKit idea is it solves the problem of what to do when a particular vertical application wants to use the features of two different derivations of an OverlayEditor. Prior to OverlayKit you would need to use multiple-inheritance, which can have problems, or permanently decide on the ordering of one derived editor relative to the other, which may be undesirable in future circumstances. With an OverlayKit it is easier to mix and match the desirable features of one lineage of derived OverlayEditor classes with the features of another lineage, pushing capability as needed from the editor to the kit.

There is support for a default OverlayKit for use when constructing an OverlayEditor. In general any editor-specific state should reside in the editor, not the kit, but this is not a hard-and-fast rule.

Public:



Protected:



(more documentation)