#include <HOpMoveHandle.h>
Public Member Functions | |
virtual HBaseOperator * | Clone () |
HC_KEY | FindHandle (HEventInfo &hevent) |
This method finds a handle based on the mouse position. | |
HC_KEY | FindObject (HEventInfo &hevent, HC_KEY key, bool exclude=false) |
virtual const char * | GetName () |
HOpMoveHandle (HBaseView *view, bool allowSelect=true, int DoRepeat=0, int DoCapture=1) | |
virtual int | OnLButtonDown (HEventInfo &hevent) |
virtual int | OnLButtonDownAndMove (HEventInfo &hevent) |
virtual int | OnLButtonUp (HEventInfo &hevent) |
virtual int | OnNoButtonDownAndMove (HEventInfo &hevent) |
void | Reset () |
Reset the operator so that no object or handle is currently selected for manipulation. | |
void | SetupObject (HC_KEY key) |
Protected Attributes | |
bool | m_bAllowSelect |
If the value is true, this class allows selection of different handle objects. This is disabled for cutting planes. | |
HC_KEY | m_pHandleKey |
The key of the active handle. | |
HC_KEY | m_pObjectKey |
The key of the handle object. |
HOpMoveHandle implements three mouse event methods defined on the base class and maps the event information to operator routines. This operation consists of the following steps:
HOpMoveHandle::HOpMoveHandle | ( | HBaseView * | view, | |
bool | allowSelect = true , |
|||
int | DoRepeat = 0 , |
|||
int | DoCapture = 1 | |||
) |
Constructs an HOpMoveHandle object.
view | A pointer to an HBaseView object. | |
allowSelect | Pass true to allow selection of different handle objects. | |
DoRepeat | An integer denoting whether this is a repeatable operator. This parameter has been deprecated. | |
DoCapture | An integer denoting whether the mouse state should be captured, which means that all mouse events should be received after a mousedown, even if it leaves the window. This parameter has been deprecated. |
virtual HBaseOperator* HOpMoveHandle::Clone | ( | ) | [virtual] |
Creates a new operator which is a copy of the current operator. The user is responsible for deleting the newly created operator.
Reimplemented from HBaseOperator.
HC_KEY HOpMoveHandle::FindObject | ( | HEventInfo & | hevent, | |
HC_KEY | key, | |||
bool | exclude = false | |||
) |
This method finds geometry based on mouse position.
hevent | An HEventInfo object containing information about the current event. | |
key | Key of currently selected object. | |
exclude | Pass true to exclude currently selected object from search. |
virtual const char* HOpMoveHandle::GetName | ( | ) | [virtual] |
Reimplemented from HBaseOperator.
virtual int HOpMoveHandle::OnLButtonDown | ( | HEventInfo & | hevent | ) | [virtual] |
OnLButtonDown selects an existing handle if the mouse is over a handle or designates a new object for handle based movement.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
virtual int HOpMoveHandle::OnLButtonDownAndMove | ( | HEventInfo & | hevent | ) | [virtual] |
OnLButtonDownAndMove moves/rotates/scales the handle and it's associated geometry based on various constraints (ray, plane, etc).
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
virtual int HOpMoveHandle::OnLButtonUp | ( | HEventInfo & | hevent | ) | [virtual] |
OnLButtonUp finalizes mouse movement and deselectes the active handle.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
virtual int HOpMoveHandle::OnNoButtonDownAndMove | ( | HEventInfo & | hevent | ) | [virtual] |
OnNoButtonDownAndMove activates handle in mouse cursor range.
hevent | An HEventInfo object containing information about the current event. |
Reimplemented from HBaseOperator.
void HOpMoveHandle::SetupObject | ( | HC_KEY | key | ) |
Creates handles for the choosen geometry.
key | The key of the geometry to attach handles to. |