forked from panda3d/panda3d
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpointerEvent.I
More file actions
137 lines (129 loc) · 3.89 KB
/
pointerEvent.I
File metadata and controls
137 lines (129 loc) · 3.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
// Filename: pointerEvent.I
// Created by: jyelon (20Sep2007)
//
////////////////////////////////////////////////////////////////////
//
// PANDA 3D SOFTWARE
// Copyright (c) Carnegie Mellon University. All rights reserved.
//
// All use of this software is subject to the terms of the revised BSD
// license. You should have received a copy of this license along
// with this source code in a file named "LICENSE."
//
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
// Function: PointerEvent::Default Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
INLINE PointerEvent::
PointerEvent() :
_in_window(false),
_xpos(0),
_ypos(0),
_dx(0),
_dy(0),
_length(0.0),
_direction(0.0),
_rotation(0.0),
_sequence(0),
_time(0.0)
{
}
////////////////////////////////////////////////////////////////////
// Function: PointerEvent::Copy Constructor
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
INLINE PointerEvent::
PointerEvent(const PointerEvent ©) :
_in_window(copy._in_window),
_xpos(copy._xpos),
_ypos(copy._ypos),
_dx(copy._dx),
_dy(copy._dy),
_length(copy._length),
_direction(copy._direction),
_rotation(copy._rotation),
_sequence(copy._sequence),
_time(copy._time)
{
}
////////////////////////////////////////////////////////////////////
// Function: PointerEvent::Copy Assignment Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
INLINE void PointerEvent::
operator = (const PointerEvent ©) {
_in_window = copy._in_window;
_xpos = copy._xpos;
_ypos = copy._ypos;
_dx = copy._dx;
_dy = copy._dy;
_sequence = copy._sequence;
_length = copy._length;
_direction = copy._direction;
_rotation = copy._rotation;
_time = copy._time;
}
////////////////////////////////////////////////////////////////////
// Function: PointerEvent::Equality Operator
// Access: Public
// Description: The equality operator does not consider time
// significant.
////////////////////////////////////////////////////////////////////
INLINE bool PointerEvent::
operator == (const PointerEvent &other) const {
return (_in_window == other._in_window &&
_xpos == other._xpos &&
_ypos == other._ypos &&
_dx == other._dx &&
_dy == other._dy &&
_sequence == other._sequence &&
_length == other._length &&
_direction == other._direction &&
_rotation == other._rotation);
}
////////////////////////////////////////////////////////////////////
// Function: PointerEvent::Inequality Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
INLINE bool PointerEvent::
operator != (const PointerEvent &other) const {
return !operator == (other);
}
////////////////////////////////////////////////////////////////////
// Function: PointerEvent::Ordering Operator
// Access: Public
// Description:
////////////////////////////////////////////////////////////////////
INLINE bool PointerEvent::
operator < (const PointerEvent &other) const {
if (_sequence != other._sequence) {
return _sequence < other._sequence;
}
if (_xpos != other._xpos) {
return _xpos < other._xpos;
}
if (_ypos != other._ypos) {
return _ypos < other._ypos;
}
if (_dx != other._dx) {
return _dx < other._dx;
}
if (_dy != other._dy) {
return _dy < other._dy;
}
if (_length != other._length) {
return _length < other._length;
}
if (_direction != other._direction) {
return _direction < other._direction;
}
if (_rotation != other._rotation) {
return _rotation < other._rotation;
}
return _in_window < other._in_window;
}