VR-Forces 4.5 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrfGuiCore
guiEventProcessor.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2015 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrfGuiCore/vrfGuiCore.h
>
13
#include <
vrvCore/DtEventProcessorInterface.h
>
14
15
#include <
vrvCore/DtSelectionManager.h
>
16
#include <
vrvCore/DtElementEntry.h
>
17
#include <
vrvUtil/DtVirtualBaseClass.h
>
18
19
namespace
makVrv
20
{
21
class
DtOutlinedPolygon;
22
class
DtDe;
23
class
DtChannel;
24
}
25
26
namespace
makVrf
27
{
30
class
DT_DLL_VRFGUICORE
DtMousePositionProvider
31
{
32
public
:
33
virtual
void
getCurrentMousePosition(
int
& x,
int
& y) = 0;
34
virtual
void
setFreezeMousePosition(
bool
) = 0;
35
virtual
bool
isShiftKeyDown()
const
= 0;
36
virtual
bool
isControlKeyDown()
const
= 0;
37
virtual
bool
isAltKeyDown()
const
= 0;
38
};
39
42
class
DT_DLL_VRFGUICORE
DtGuiEventProcessor
:
public
makVrv::DtEventProcessorInterface
,
public
makVrv::DtVirtualBaseClass
43
{
44
public
:
45
47
DtGuiEventProcessor
(
makVrv::DtDe
& de);
48
50
virtual
~
DtGuiEventProcessor
();
51
54
virtual
void
setBlockKeyboardEvents(
bool
);
55
virtual
bool
blockKeyboardEvents()
const
;
56
59
virtual
bool
processMouseEvent(
const
makVrv::DtMouseEvent
& ev,
makVrv::DtChannel
& channel);
60
64
virtual
bool
processKeyboardEvent(
const
makVrv::DtKeyEvent
& ev,
makVrv::DtChannel
& channel);
65
66
virtual
const
std::string& className();
67
68
virtual
void
setCurrentMousePosition(
makVrv::DtDe
&,
int
x,
int
y);
69
virtual
void
setCurrentMousePosition(
int
x,
int
y);
70
virtual
void
getCurrentMousePosition(
int
& x,
int
& y)
const
;
71
73
virtual
void
setMousePositionProvider(
DtMousePositionProvider
*);
74
virtual
DtMousePositionProvider
* mousePositionProvider();
75
77
static
DtGuiEventProcessor
& instance(
makVrv::DtDe
& de);
78
static
void
registerInstance(
makVrv::DtDe
&,
DtGuiEventProcessor
*);
79
81
virtual
bool
setFreezeMousePosition(
bool
);
82
virtual
bool
mousePositionFrozen()
const
;
83
85
virtual
bool
isShiftKeyDown()
const
;
86
virtual
bool
isControlKeyDown()
const
;
87
virtual
bool
isAltKeyDown()
const
;
88
89
protected
:
91
virtual
void
cleanupBox();
92
94
virtual
void
createBox(
makVrv::DtChannel
& channel);
95
97
virtual
void
setBoxFromExtents(
makVrv::DtChannel
& channel,
int
anchorX,
int
anchorY,
int
toX,
int
toY);
98
99
protected
:
100
makVrv::DtDe
&
myDe
;
101
makVrv::DtOutlinedPolygon
*
myBox
;
102
makVrv::DtUniqueID
myLineId
;
103
DtMousePositionProvider
*
myMousePositionProvider
;
104
105
makVrv::DtSelectionManager::IdSet
myCurrentSelections
;
106
bool
myFrozen
;
107
108
int
myInitialMousePositionX
;
109
int
myInitialMousePositionY
;
110
111
int
myCurrentMousePositionX
;
112
int
myCurrentMousePositionY
;
113
int
myBlockKeyboardEvents
;
114
};
115
}
Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (
www.mak.com
)