NAME¶
CommandControl, PanelControl, HPanelControl, VPanelControl, CommandInteractor,
PanelInteractor - predefined UControl and UControlInteractor subclasses for
common controls
SYNOPSIS¶
#include <Unidraw/uctrls.h>
DESCRIPTION¶
CommandControl is a UControl subclass that executes a Command. CommandControl
instances are most commonly used in menus. CommandInteractor is a
UControlInteractor subclass that CommandControls create to define their
appearance.
PanelControl is a subclass of UControl that provides a radiobutton-like
interface to selecting from a set of mutually-exclusive choices. A
PanelControl is passed an interactor when it is created to define its
appearance. PanelControls are often used to create ``palettes'' of interactors
that engage the current Tool instance.
PanelInteractor is a UControlInteractor subclass that defines an appearance that
is often appropriate for PanelControls. HPanelControl and VPanelControl are
subclasses of PanelControl that use PanelInteractor instances by default.
COMMANDCONTROL PUBLIC OPERATIONS¶
- CommandControl(ControlInfo*)
- CommandControl(const char*, ControlInfo*)
- Create a CommandControl, optionally supplying an instance
name. The constructors automatically create and insert a ControlInteractor
to define the CommandControl's appearance.
- virtual void Do()
- If the ControlInfo's owner is a reversible command, then Do
will create a copy of the command, execute it, and log it (if it remains
reversible following execution). If the owner is an irreversible command,
then Do will execute it without copying or logging it.
COMMANDINTERACTOR PUBLIC OPERATIONS¶
- CommandInteractor(ControlInfo*)
- Create a CommandInteractor with the given ControlInfo
object. The CommandInteractor displays the ControlInfo's label and
keylabel side-by-side as would befit a menu entry.
PANELCONTROL PUBLIC OPERATIONS¶
- PanelControl(Interactor*, ControlInfo*, ControlState* =
nil)
- PanelControl(
- const char*, Interactor*, ControlInfo*,
- ControlState* = nil
- )
-
Create a PanelControl, supplying an interactor that defines its appearance,
a ControlInfo object, and optionally an instance name and a ControlState,
which all PanelControls in a palette should share to ensure mutual
exclusion.
- virtual void Do()
- Do simply calls Down. Thus when the KeyMap executes the
keyboard equivalent specified in the ControlInfo, it has the same effect
as clicking on the PanelControl instance.
PANELCONTROL SUBCLASS PUBLIC OPERATIONS¶
- HPanelControl(ControlInfo*, ControlState* =
nil)
- HPanelControl(const char*, ControlInfo*, ControlState* =
nil)
- VPanelControl(ControlInfo*, ControlState* =
nil)
- VPanelControl(const char*, ControlInfo*, ControlState* =
nil)
- HPanelControls and VPanelControls simply create an instance
of PanelInteractor and pass it to the PanelControl constructor.
HPanelControls should be used in row-oriented palettes, and VPanelControls
should be used in column-oriented palettes.
PANELINTERACTOR PUBLIC OPERATIONS¶
- PanelInteractor(ControlInfo*, Orientation)
- Create a PanelInteractor with the given orientation and
ControlInfo object. The PanelInteractor will draw the ControlInfo's label
in the center of its canvas and the keylabel in the lower right.
Horizontal orientation is appropriate for row-oriented instances, while
Vertical orientation is appropriate for column-oriented instances.
SEE ALSO¶
Command(3U), ControlInfo(3U), KeyMap(3U), Tool(3U), UControl(3U),
globals(3U)