The EventHandler class is the base class for any event handler that can be created. More...
#include <hps.h>
Public Types | |
enum | HandleResult : uint32_t { HandleResult::Handled, HandleResult::NotHandled } |
Enumeration of the values the EventHandler uses to indicate if it handled an event. More... | |
Public Member Functions | |
EventHandler () | |
The default constructor creates an EventHandler object not subscribed to any event. More... | |
EventHandler (EventHandler const &in_that) | |
The copy constructor creates a new EventHandler object that points to the same underlying impl as the source EventHandler. More... | |
EventHandler (EventHandler &&in_that) | |
The move constructor creates an EventHandler by transferring the underlying impl of the rvalue reference to this EventHandler thereby avoiding a copy and allocation. More... | |
EventHandler & | operator= (EventHandler &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this EventHandler thereby avoiding a copy. More... | |
EventHandler & | operator= (EventHandler const &in_that) |
Share the underlying smart-pointer of the EventHandler source. More... | |
virtual | ~EventHandler () |
HPS::Type | ObjectType () const |
bool | Subscribe (EventDispatcher const &in_dispatcher, intptr_t in_type) const |
Add this EventHandler object to the list of subscribers for events of the specified type on the specified EventDispatcher. More... | |
bool | UnSubscribe (EventDispatcher const &in_dispatcher, intptr_t in_type) const |
Remove this EventHandler object from the list of subscribers for events of the specified type on the specified EventDispatcher. More... | |
bool | UnSubscribe (EventDispatcher const &in_dispatcher) const |
Remove this EventHandler object from the list of subscribers for all events on the specified EventDispatcher. More... | |
void | UnSubscribeEverything () const |
Remove this EventHandler object from all events on all EventDispatchers. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
void | Shutdown () |
Notifies the EventDispatcher that this handler is being invalidated and no further events should be dispatched to it. More... | |
virtual HandleResult | Handle (Event const *in_event) |
Function that gets triggered if this EventHandler receives an event it is subscribed to. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::EventHandler |
The EventHandler class is the base class for any event handler that can be created.
All custom event handlers should inherit from this.
|
strong |
Enumeration of the values the EventHandler uses to indicate if it handled an event.
Enumerator | |
---|---|
Handled | The event was handled by this EventHandler. Consume the event if possible. |
NotHandled | The event was not handled by this EventHandler. Pass to the next handler if any or if possible. |
HPS::EventHandler::EventHandler | ( | ) |
The default constructor creates an EventHandler object not subscribed to any event.
HPS::EventHandler::EventHandler | ( | EventHandler const & | in_that | ) |
The copy constructor creates a new EventHandler object that points to the same underlying impl as the source EventHandler.
in_that | The source EventHandler to point to. |
HPS::EventHandler::EventHandler | ( | EventHandler && | in_that | ) |
The move constructor creates an EventHandler by transferring the underlying impl of the rvalue reference to this EventHandler thereby avoiding a copy and allocation.
in_that | An rvalue reference to an EventHandler to take the impl from. |
|
virtual |
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
|
inherited |
Returns an identifier that can be used to identify which instance of a class an object is.
Different keys and controls will return the same value if they are backed by the same database resource.
|
inlinevirtual |
Function that gets triggered if this EventHandler receives an event it is subscribed to.
This should be overridden by subclasses of EventHandler to perform any custom behavior.
in_event | Event which was triggered. |
Reimplemented in HPS::NavigationCubeOperator::SmoothTransitionCompleteEventHandler, HPS::AnnotationOperator::KeyboardHiddenEventHandler, and HPS::MarkupOperator::KeyboardHiddenEventHandler.
|
inherited |
|
inlinevirtual |
Reimplemented from HPS::Object.
EventHandler& HPS::EventHandler::operator= | ( | EventHandler && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this EventHandler thereby avoiding a copy.
in_that | An rvalue reference to an EventHandler to take the impl from. |
EventHandler& HPS::EventHandler::operator= | ( | EventHandler const & | in_that | ) |
Share the underlying smart-pointer of the EventHandler source.
in_that | The EventHandler source of the assignment. |
|
inlinevirtual |
Resets this object to its initial, uninitialized state.
Reimplemented from HPS::Object.
void HPS::EventHandler::Shutdown | ( | ) |
Notifies the EventDispatcher that this handler is being invalidated and no further events should be dispatched to it.
This method must be called in any derived class destructors.
bool HPS::EventHandler::Subscribe | ( | EventDispatcher const & | in_dispatcher, |
intptr_t | in_type | ||
) | const |
Add this EventHandler object to the list of subscribers for events of the specified type on the specified EventDispatcher.
in_dispatcher | Dispatcher from which to receive events of the given type. |
in_type | Type of event to receive from the dispatcher. |
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
bool HPS::EventHandler::UnSubscribe | ( | EventDispatcher const & | in_dispatcher, |
intptr_t | in_type | ||
) | const |
Remove this EventHandler object from the list of subscribers for events of the specified type on the specified EventDispatcher.
in_dispatcher | Dispatcher from which to no longer receive events of the given type. |
in_type | Type of event to no longer receive from the dispatcher. |
bool HPS::EventHandler::UnSubscribe | ( | EventDispatcher const & | in_dispatcher | ) | const |
Remove this EventHandler object from the list of subscribers for all events on the specified EventDispatcher.
in_dispatcher | Dispatcher from which to no longer receive events. |
void HPS::EventHandler::UnSubscribeEverything | ( | ) | const |
Remove this EventHandler object from all events on all EventDispatchers.
|
static |