UControl(3U)

NAME
UControl, UControlInteractor - base classes for menu and button interfaces that work with ControlInfo objects

SYNOPSIS
#include <Unidraw/uctrl.h>

DESCRIPTION
UControl is an abstract class that augments InterViews' Control base class to deal with Unidraw's ControlInfo objects, which define a keyboard equivalent for the control. UControlInteractor is an abstract base class for interactors that base their appearance on the information in a ControlInfo object. UControl subclasses can use UControlInteractor subclasses to define their appearance.

Unidraw-based applications needn't use UControls and UControlInteractors to help define their look and feel if Unidraw's keyboard equivalent mechanism is not needed.

UCONTROL PUBLIC OPERATIONS

virtual void SetControlInfo(ControlInfo*)

ControlInfo* GetControlInfo()
    Assign and retrieve the UControl's ControlInfo object.

UCONTROL PROTECTED OPERATIONS

UControl(ControlInfo*)

UControl(const char*, ControlInfo*)
    UControl provides protected constructors that let subclasses initialize the ControlInfo object and optionally specify their instance name.

UCONTROLINTERACTOR PUBLIC OPERATIONS

virtual void SetControlInfo(ControlInfo*)

ControlInfo* GetControlInfo()
    Assign and retrieve the UControlInteractor's ControlInfo object.

virtual void Highlight(boolean)
    The UControlInteractor's appearance is defined by a Graphic object, which it builds from information in its ControlInfo object. By default, UControlInteractor highlights itself by drawing this graphic with its foreground and background colors reversed.

UCONTROLINTERACTOR PROTECTED OPERATIONS

UControlInteractor(ControlInfo*)

UControlInteractor()
    UControlInteractor defines two protected constructors. One takes the ControlInfo object to use as an argument. This constructor also initializes the UControlInteractor's _label protected member by calling InitLabel (described below) with the ControlInfo object. The parameterless constructor initializes _label to nil. Both constructors initialize the UControlInteractor's _picture protected member to point to an instance of a Picture object, which defines the UControlInteractor's appearance.

virtual void Invert()
    Invert reverses _picture's colors without drawing it.

Graphic* InitLabel(ControlInfo*)
    Create a graphic from the information stored in a ControlInfo object that defines the UControlInteractor's appearance. This operation creates a GraphicView of the ControlInfo's GraphicComp and returns a copy of the view's graphic.

SEE ALSO
Control(3I), ControlInfo(3U), Graphic(3U), GraphicComp(3U), GraphicView(3U), KeyMap(3U)