MeVisLab Toolbox Reference
CSOAbstractCreateAction.h
Go to the documentation of this file.
1/*************************************************************************************
2**
3** Copyright 2012, MeVis Medical Solutions AG
4**
5** The user may use this file in accordance with the license agreement provided with
6** the Software or, alternatively, in accordance with the terms contained in a
7** written agreement between the user and MeVis Medical Solutions AG.
8**
9** For further information use the contact form at https://www.mevislab.de/contact
10**
11**************************************************************************************/
12
13
15
16#pragma once
17
18#include "CSOPointingAction.h"
19
21
23
25{
26public:
27
29
30 bool isSensitiveAt(const SoPointerPosition& pos) override;
31
32 void startPressAt(const SoPointerPosition& pos) override;
33 void dragMoveTo(const SoPointerPosition& pos) override;
34 SoPointingAction* endPress(int clickCount) override;
35
36 int getCurrentCursor(SoViewerProxy* ) const override;
37
38 void setMode(int mode) override;
39 int getNumModes() const override;
40
41protected:
42
43 virtual void callCreateStartPressAt(const SoPointerPosition& pos) = 0;
44 virtual void callCreateDragMoveTo(const SoPointerPosition& pos) = 0;
45 virtual bool callCreateEndPress(int clickCount) = 0;
46
47 SoRef<SoCSOEditorExtension> _activeEditor;
48
50 SbVec3f _sliceNormal;
51
53};
54
#define SOCSO_EXPORT
Header file for system independent resolution.
Definition SoCSOSystem.h:21
CSOAbstractCreateAction(SoView2DCSOExtensibleEditor *editor, const std::string &id)
virtual bool callCreateEndPress(int clickCount)=0
SoPointingAction * endPress(int clickCount) override
int getCurrentCursor(SoViewerProxy *) const override
void setMode(int mode) override
virtual void callCreateDragMoveTo(const SoPointerPosition &pos)=0
SoCSOEditorExtension * getActiveEditorChecked() const
void dragMoveTo(const SoPointerPosition &pos) override
Continues the drag to given device position.
SoRef< SoCSOEditorExtension > _activeEditor
bool isSensitiveAt(const SoPointerPosition &pos) override
virtual void callCreateStartPressAt(const SoPointerPosition &pos)=0
int getNumModes() const override
void startPressAt(const SoPointerPosition &pos) override
CSOPointingAction(SoView2DCSOExtensibleEditor *editor, const std::string &id)
SoPointerPosition manages the current position of the mouse cursor.
SoPointingAction(SoInteractionOwner *owner, std::string id, bool positionSensitive=true)