Base class for event-based tools in the display classes. More...
#include <DisplayTool.h>
Public Member Functions | |
| virtual | ~DisplayTool () |
| Destructor. | |
| virtual void | enable ()=0 |
| Switch the tool on/off. | |
| virtual void | disable ()=0 |
| virtual void | setKey (const Display::KeySym &keysym) |
| Set/get which key to catch. | |
| virtual Display::KeySym | getKey () const |
Protected Member Functions | |
| DisplayTool (const Display::KeySym &keysym=Display::K_Pointer_Button1) | |
| Constructor taking a key to which this tool will initially be attached, typically one of the pointer buttons. | |
| DisplayTool (const DisplayTool &other) | |
Copy constructor - construct a new DisplayTool from other, using copy semantics. | |
| DisplayTool & | operator= (const DisplayTool &other) |
| Copy assignment using copy semantics. | |
| Display::KeyModifier | keyModifiers () |
| Return the modifier mask. | |
Private Member Functions | |
| void | chooseKeyModifier () |
| Support function to choose a key modifier for the tool key. | |
Private Attributes | |
| Display::KeySym | itsKeySym |
| The key to handle. | |
| Display::KeyModifier | itsKeyModifier |
| The modifier mask for the key. | |
Base class for event-based tools in the display classes.
Internal
"DisplayTool" is a base interface for "Tools" to be used in "Display" applications.
This class is a simple base class which provides a suitable base upon which to build interactive user tools for the display classes. It simply provides a facility to setup a key to catch and respond to, and an interface to enable and disable the tool.
A function to provide information about a DisplayTool might look like:
void MyClass::printToolKey(const DisplayTool &tool) const { cout << tool.getKey() << endl; }
This class unites all key handling for display tools.
Definition at line 74 of file DisplayTool.h.
| virtual casa::DisplayTool::~DisplayTool | ( | ) | [virtual] |
Destructor.
| casa::DisplayTool::DisplayTool | ( | const Display::KeySym & | keysym = Display::K_Pointer_Button1 |
) | [explicit, protected] |
Constructor taking a key to which this tool will initially be attached, typically one of the pointer buttons.
| casa::DisplayTool::DisplayTool | ( | const DisplayTool & | other | ) | [protected] |
Copy constructor - construct a new DisplayTool from other, using copy semantics.
| void casa::DisplayTool::chooseKeyModifier | ( | ) | [private] |
Support function to choose a key modifier for the tool key.
| virtual void casa::DisplayTool::disable | ( | ) | [pure virtual] |
Implemented in casa::MultiPolylineTool, casa::MultiPolyTool, casa::MultiPVTool, casa::MultiRectTool, casa::MultiWCTool, casa::MWCCrosshairTool, casa::MWCEllipseTool, casa::MWCPolylineTool, casa::MWCPolyTool, casa::MWCRectTool, casa::RegionTool, casa::WCCrosshairTool, casa::WCPolyTool, casa::WCRectTool, and casa::WCTool.
| virtual void casa::DisplayTool::enable | ( | ) | [pure virtual] |
Switch the tool on/off.
This simply registers or unregisters the event handlers.
Implemented in casa::MultiWCTool, casa::RegionTool, and casa::WCTool.
| virtual Display::KeySym casa::DisplayTool::getKey | ( | ) | const [virtual] |
| Display::KeyModifier casa::DisplayTool::keyModifiers | ( | ) | [inline, protected] |
Return the modifier mask.
Some keys, specifically the mouse (pointer) buttons, have associated with them a bit mask which is used to determine if that key is currently held down. This function returns the modifier for the key of this tool, and returns 0 if the key does not have a modifier bit mask, eg. it is an alphanumeric key on the keyboard.
Definition at line 114 of file DisplayTool.h.
References itsKeyModifier.
| DisplayTool& casa::DisplayTool::operator= | ( | const DisplayTool & | other | ) | [protected] |
Copy assignment using copy semantics.
Reimplemented in casa::MultiWCTool, and casa::WCTool.
| virtual void casa::DisplayTool::setKey | ( | const Display::KeySym & | keysym | ) | [virtual] |
Set/get which key to catch.
The modifier mask for the key.
Definition at line 124 of file DisplayTool.h.
Referenced by keyModifiers().
Display::KeySym casa::DisplayTool::itsKeySym [private] |
The key to handle.
Definition at line 121 of file DisplayTool.h.
1.6.1