Coin3D is Free Software,
published under the
BSD 3-clause license
.
https://bitbucket.org/Coin3D/
http://www.kongsberg.com/kogt/
InputDevice.h
1
#ifndef QUARTER_INPUTDEVICE_H
2
#define QUARTER_INPUTDEVICE_H
3
4
/**************************************************************************\
5
* Copyright (c) Kongsberg Oil & Gas Technologies AS
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions are
10
* met:
11
*
12
* Redistributions of source code must retain the above copyright notice,
13
* this list of conditions and the following disclaimer.
14
*
15
* Redistributions in binary form must reproduce the above copyright
16
* notice, this list of conditions and the following disclaimer in the
17
* documentation and/or other materials provided with the distribution.
18
*
19
* Neither the name of the copyright holder nor the names of its
20
* contributors may be used to endorse or promote products derived from
21
* this software without specific prior written permission.
22
*
23
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
* HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
\**************************************************************************/
35
36
#include <Quarter/Basic.h>
37
#include <Inventor/SbVec2s.h>
38
39
class
QEvent;
40
class
SoEvent;
41
class
QInputEvent;
42
43
namespace
SIM {
namespace
Coin3D {
namespace
Quarter {
44
45
class
QuarterWidget;
46
47
class
QUARTER_DLL_API
InputDevice
{
48
public
:
49
InputDevice
(
QuarterWidget
* quarter);
50
virtual
~
InputDevice
() {}
51
56
virtual
const
SoEvent *
translateEvent
(QEvent * event) = 0;
57
58
void
setMousePosition(
const
SbVec2s & pos);
59
void
setWindowSize(
const
SbVec2s & size);
60
void
setModifiers(SoEvent * soevent,
const
QInputEvent * qevent);
61
62
protected
:
63
SbVec2s
mousepos
;
64
SbVec2s
windowsize
;
65
QuarterWidget
* quarter;
66
};
67
68
}}}
// namespace
69
70
#endif // QUARTER_INPUTDEVICE_H
SIM::Coin3D::Quarter::InputDevice::windowsize
SbVec2s windowsize
Definition:
InputDevice.h:64
SIM::Coin3D::Quarter::InputDevice
The InputDevice class is the base class for devices such as the Keyboard and Mouse....
Definition:
InputDevice.h:47
SIM::Coin3D::Quarter::InputDevice::mousepos
SbVec2s mousepos
Definition:
InputDevice.h:63
SIM::Coin3D::Quarter::QuarterWidget
The QuarterWidget class is the main class in Quarter. It provides a widget for Coin rendering....
Definition:
QuarterWidget.h:59
SIM::Coin3D::Quarter::InputDevice::translateEvent
virtual const SoEvent * translateEvent(QEvent *event)=0
include
Quarter
devices
InputDevice.h
Generated on Sat Aug 1 2020 00:00:00 for Quarter by
doxygen
1.8.18