AnnotationOperator
-
class
HPS.AnnotationOperator: HPS.Operator The AnnotationOperator class defines an operator which allows the user to insert annotations. Annotations are text geometries with leader lines and a background. This Operator works for both mouse- and touch-driven devices.
To operate this operator on a mouse-driven device: Click on a piece of geometry and drag the mouse to position an annotation. Start typing to change the annotation text. Once an annotation has been inserted it can be repositioned, and its text can be changed after clicking on it.
To operate this operator on a touch-driven device: Tap on a piece of geometry and drag your finger to position an annotation. Start typing to change the annotation text. Once an annotation has been inserted, tap on it to edit the text. Drag a previously inserted annotation around to reposition it.
An event of type AnnotationInsertedEvent is injected when new annotations are added to the scene.
Public Functions
-
AnnotationOperator()
-
AnnotationOperator(HPS.AnnotationOperator in_that)
-
AnnotationOperator(HPS.MouseButtons in_mouse_trigger)
-
AnnotationOperator(HPS.MouseButtons in_mouse_trigger, HPS.ModifierKeys in_modifier_trigger)
-
override void
Dispose()
-
string
GetBackgroundShape() This function returns the name of the shape definition currently used to draw the annotation background by this operator.
Return: The name of the shape definition currently used to draw the annotation background
-
override string
GetName() Returns the name of the operator.
-
override bool
OnKeyDown(HPS.KeyboardState in_state) This function is called whenever HPS receives a KeyboardState event that signals a button was pressed. This function is used to edit the text of annotations
Param in_state: A KeyboardState object describing the current keyboard state. Return: true if the input event was handled, false otherwise.
-
override bool
OnMouseDown(HPS.MouseState in_state) This function is called whenever HPS receives a MouseEvent that signals a mouse button was pressed. If the user clicks on a piece of geometry other than an existing annotation, a new annotation will be inserted. If the user clicks on an already inserted annotation, that annotation will become editable (it can be repositioned, and its text can be changed). The user can click on the background to stop editing an annotation.
Param in_state: A MouseState object describing the current mouse state. Return: true if the input event was handled, false otherwise.
-
override bool
OnMouseMove(HPS.MouseState in_state) This function is called whenever HPS receives a MouseEvent that signals the mouse moved When users are inserting or editing an annotation, they will be able to reposition it by dragging the mouse while holding down the trigger button specified in the operator constructor (defaults to Left mouse button)
Param in_state: A MouseState object describing the current mouse state. Return: true if the input event was handled, false otherwise.
-
override bool
OnTextInput(string in_text)
-
override bool
OnTouchDown(HPS.TouchState in_state) This function is called whenever HPS receives a TouchEvent that signals the device was touched. If the user taps a piece of geometry other than an existing annotation, a new annotation will be inserted. If the user taps an already inserted annotation, that annotation will become editable (it can be repositioned, and its text can be changed). The user can tap on the background to stop editing an annotation.
Param in_state: A TouchState object describing the current touch state. Return: true if the input event was handled, false otherwise.
-
override bool
OnTouchMove(HPS.TouchState in_state) This function is called whenever HPS receives a TouchEvent that signals a point of contact has moved. When users are inserting or editing an annotation, they will be able to reposition it by tapping it and dragging their finger
Param in_state: A TouchState object describing the current touch state. Return: true if the input event was handled, false otherwise.
-
override bool
OnTouchUp(HPS.TouchState in_state) This function is called whenever HPS receives a TouchEvent that signals a point of contact has been released.
Param in_state: A TouchState object describing the current touch state. Return: true if the input event was handled, false otherwise.
-
override void
OnViewAttached(HPS.View in_attached_view) This function is called whenever a view is attached to this operator.
Param in_attached_view: The view attached to this operator.
-
override void
OnViewDetached(HPS.View in_detached_view) This function is called whenever a view is detached from this operator.
Param in_detached_view: The view detached from this operator.
-
void
SetBackgroundShape(string in_shape) This function sets the shape which will be use for the annotation background. The shape name provided has to match the name of a shape defined in a portfolio accessible by the view attached to this operator, or to a segment above that. This setting influences all shapes inserted by this operator after it is called, it does not change the shape of annotations already inserted by this operator. By default a rectangle shape (‘box’) is used.
Param in_shape: The name of the shape definition used when inserting annotations.
-
class
AnnotationInsertedEvent: public HPS.Event An event injected every time a new annotation is inserted. It contains the key of the segment containing the annotation and the view currently attached to this operator. This operator places each annotation in a separate segment.
Public Functions
-
AnnotationInsertedEvent() The default constructor creates an empty AnnotationInsertedEvent object.
-
AnnotationInsertedEvent(HPS.AnnotationOperator.AnnotationInsertedEvent in_that)
-
AnnotationInsertedEvent(HPS.Event in_event) This constructor converts an Event Object to a MarkupInsertedEvent object.
Param in_event: The Event Object to be converted.
-
AnnotationInsertedEvent(HPS.SegmentKey in_text_key, HPS.View in_view)
-
override string
ClassName()
-
override HPS.Event
Clone() Allocates and returns a copy of this AnnotationInsertedEvent.
Return: A copy of this MarkupIAnnotationInsertedEventnsertedEvent.
-
override void
Dispose()
-
-