See below for an overview of the classes in this module.
Part of API
The module provides various classes that are responsible for "handling" "events"
This module contains classes which are used to handle position, motion and refresh events that occur on PixelCanvases and WorldCanvases. Position events occur when the user presses or releases a keyboard key or a mouse button when the window input focus is over a PixelCanvas or WorldCanvas. Motion events occur when the user moves the mouse over a PixelCanvas or a WorldCanvas. Refresh events occur for a variety of reasons, and arise when PixelCanvases or WorldCanvases need to redraw their contents.
The lowest level of event classes are those which describe the various events on the PixelCanvas. These comprise PCPositionEvent, PCMotionEvent and PCRefreshEvent. All of the information pertaining to a particular event will be stored in one of these classes. To receive these type of events, the programmer must register a class derived from PCPositionEH, PCMotionEH or PCRefreshEH (where the "EH" stands for Event Handler) with the appropriate PixelCanvas. Then any events of that type (Position, Motion or Refresh) will be distributed to the class that the programmer registered. The WorldCanvas has equivalent event storage classes in WCPositionEvent, WCMotionEvent and WCRefreshEvent, and equivalent event handling classes in WCPositionEH, WCMotionEH and WCRefreshEH.
It is important to note that none of the event handlers "consume" events. This means that all PixelCanvas events occuring on a particular PixelCanvas wil be distributed to all the event handlers registered on that PixelCanvas. Likewise, all WorldCanvas events for a particular WorldCanvas are distributed to all WorldCanvas event handlers registered on that WorldCanvas.
It is also critical for the programmer to be aware that in general, the WorldCanvas registers one instance of each of the PCPositionEH, PCMotionEH and PCRefreshEH type handler classes for its own use. These event handlers are responsible for constructing WorldCanvas event information objects (WCPositionEvent, WCMotionEvent and WCRefreshEvent) from the corresponding PixelCanvas events, and then call the appropriate handlers on the WorldCanvas. So the programmer must be careful that they handle each event once and only once - either on the PixelCanvas, or on the WorldCanvas, but not on both. There will be rare instances where handling events on both the WorldCanvas and its underlying PixelCanvas is necessary.
Any interactive display library must provide methods for the programmer to respond to user input. That is the reason for this module.
Modules | |
| DisplayEvents_internal_classes | |
| Internal DisplayEvents classes and functions. | |
Classes | |
| class | casa::AnimatorRefEH |
| WorldCanvas refresh event handler for Animator class. More... | |
| class | casa::Animator |
| Animation controller for WorldCanvasHolders. More... | |
| class | casa::AniPosEH |
| WorldCanvas position event handler for Animator. More... | |
| class | casa::CrosshairEvent |
| WorldCanvasEvent:contains info on the WC point selected by MWCCrosshairTool. More... | |
| class | casa::DisplayEH |
| class for handling any type of DisplayEvent. More... | |
| class | casa::MultiWCTool |
| Base class for MultiWorldCanvas event-based tools. More... | |
| class | casa::MWCAnimator |
| Animator for MultiWCHolder class. More... | |
| class | casa::MWCCrosshairTool |
| Base class for MultiWorldCanvas event-based crosshair tools. More... | |
| class | casa::ResetCrosshairEvent |
| Event sent to tell MWCCrosshairTool to reset. More... | |
| class | casa::ResetRTRegionEvent |
| Event sent to tell MWCRTRegionTool to reset. More... | |
| class | casa::MWCPannerTool |
| class | casa::MWCPolylineTool |
| Base class for WorldCanvas event-based polyline tools. More... | |
| class | casa::MWCPolyTool |
| Base class for WorldCanvas event-based polygon tools. More... | |
| class | casa::MWCPTRegion |
| WorldCanvas event-based polygon region drawer. More... | |
| class | casa::MWCRectTool |
| Base class for MultiWorldCanvas event-based rectangle tools. More... | |
| class | casa::MWCRTRegion |
| WorldCanvas event-based rectangle region drawer. More... | |
| class | casa::MWCRTZoomer |
| Multi WorldCanvas event-based zoomer. More... | |
| class | casa::PCInvisTool |
| Base implementation of PCTool for invisible (non-drawing) tools. More... | |
| class | casa::PCITFiddler |
| Colormap fiddling on the PixelCanvas. More... | |
| class | casa::PCMotionEH |
| PixelCanvas Event Handler for managing pointer motion events. More... | |
| class | casa::PCMotionEvent |
| Class which stores PixelCanvas motion event information. More... | |
| class | casa::PCPositionEH |
| PixelCanvas Event Handler for managing keyboard and mouse button events. More... | |
| class | casa::PCPositionEvent |
| Class which stores PixelCanvas position event information. More... | |
| class | casa::PCRefreshEH |
| WorldCanvas Event Handler for managing events. More... | |
| class | casa::PCRefreshEvent |
| Class which stores PixelCanvas refresh event information. More... | |
| class | casa::PCTestPattern |
| PixelCanvas test pattern display refresh event handler. More... | |
| class | casa::PCToolPosEH |
| PixelCanvas position event handler for PCTool. More... | |
| class | casa::PCToolMotEH |
| PixelCanvas motion event handler for PCTool. More... | |
| class | casa::PCToolRefEH |
| PixelCanvas refresh event handler for PCTool. More... | |
| class | casa::PCTool |
| Base class for PixelCanvas event-based tools. More... | |
| class | casa::RectRegionEvent |
| Contains info on the WC rectanglar area selected by MWCRTRegion mouse tool. More... | |
| class | casa::WCCrosshairTool |
| Base class for WorldCanvas event-based crosshair tools. More... | |
| class | casa::WCInvisTool |
| Base implementation of WCTool for invisible (non-drawing) tools. More... | |
| class | casa::WCMotionEH |
| Base class for handling WorldCanvas motion events. More... | |
| class | casa::WCMotionEvent |
| Class which stores WorldCanvas motion event information. More... | |
| class | casa::WCPolyTool |
| Base class for WorldCanvas event-based polygon tools. More... | |
| class | casa::WCPositionEH |
| Base class for handling WorldCanvas position events. More... | |
| class | casa::WCPositionEvent |
| Class which stores WorldCanvas position event information. More... | |
| class | casa::WCPTRegion |
| WorldCanvas event-based polygon region drawer. More... | |
| class | casa::WCRectTool |
| Base class for WorldCanvas event-based rectangle tools. More... | |
| class | casa::WCRefreshEH |
| Base class for handling WorldCanvas refresh events. More... | |
| class | casa::WCRefreshEvent |
| Class which stores WorldCanvas refresh event information. More... | |
| class | casa::WCRTRegion |
| WorldCanvas event-based rectangle region drawer. More... | |
| class | casa::WCRTZoomer |
| WorldCanvas event-based zoomer. More... | |
| class | casa::WCToolPosEH |
| WorldCanvas position event handler for WCTool. More... | |
| class | casa::WCToolMotEH |
| WorldCanvas motion event handler for WCTool. More... | |
| class | casa::WCToolRefEH |
| WorldCanvas refresh event handler for WCTool. More... | |
| class | casa::WCTool |
| Base class for WorldCanvas event-based tools. More... | |
1.5.1