AntiMicroX
Loading...
Searching...
No Matches
joycontrolstick.h
Go to the documentation of this file.
1/* antimicrox Gamepad to KB+M event mapper
2 * Copyright (C) 2015 Travis Nickles <nickles.travis@gmail.com>
3 * Copyright (C) 2020 Jagoda Górska <juliagoda.pl@protonmail>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef JOYCONTROLSTICK_H
20#define JOYCONTROLSTICK_H
21
24
25#include <QPointer>
26
27class JoyAxis;
32
37class JoyControlStick : public QObject, public JoyStickDirectionsType
38{
40
41 public:
42 explicit JoyControlStick(JoyAxis *axisX, JoyAxis *axisY, int index, int originset, QObject *parent);
44
52
53 void joyEvent(bool ignoresets = false); // JoyControlStickEvent class
54 void setIndex(int index);
55 void replaceXAxis(JoyAxis *axis); // JoyControlStickAxes class
56 void replaceYAxis(JoyAxis *axis); // JoyControlStickAxes class
57 void replaceAxes(JoyAxis *axisX, JoyAxis *axisY); // JoyControlStickAxes class
58 void releaseButtonEvents(); // JoyControlStickEvent class
60 void queueJoyEvent(bool ignoresets); // JoyControlStickEvent class
61 void activatePendingEvent(); // JoyControlStickEvent class
62 void clearPendingEvent(); // JoyControlStickEvent class
63
64 bool inDeadZone();
65 bool hasSlotsAssigned();
66 bool isRelativeSpring();
67 bool hasPendingEvent(); // JoyControlStickEvent class
68
69 bool isCalibrated() const;
70 void resetCalibration();
71 void getCalibration(double *offsetX, double *gainX, double *offsetY, double *gainY) const;
72 void setCalibration(double offsetX, double gainX, double offsetY, double gainY);
73
74 int getDeadZone();
75 int getDiagonalRange();
76 int getIndex();
77 int getRealJoyIndex();
78 int getMaxZone();
79 int getModifierZone() const;
80 bool getModifierZoneInverted() const;
82 int getXCoordinate();
83 int getYCoordinate();
86 int getStickDelay();
87
88 double getDistanceFromDeadZone(); // JoyControlStickAxes class
89 double getDistanceFromDeadZone(int axisXValue, int axisYValue); // JoyControlStickAxes class
90 double getAbsoluteRawDistance(); // JoyControlStickAxes class
91 double getAbsoluteRawDistance(int axisXValue, int axisYValue); // JoyControlStickAxes class
92 double getNormalizedAbsoluteDistance(); // JoyControlStickAxes class
93 double calculateBearing(); // JoyControlStickAxes class
94 double calculateBearing(int axisXValue, int axisYValue); // JoyControlStickAxes class
95 double calculateMouseDirectionalDistance(JoyControlStickButton *button); // JoyControlStickAxes class
96 double calculateDirectionalDistance(); // JoyControlStickAxes class
97 double calculateLastDirectionalDistance(); // JoyControlStickAxes class
98 double calculateLastMouseDirectionalDistance(JoyControlStickButton *button); // JoyControlStickAxes class
99 double calculateLastAccelerationButtonDistance(JoyControlStickButton *button); // JoyControlStickAxes class
100 double calculateAccelerationDistance(JoyControlStickButton *button); // JoyControlStickAxis class
101 double calculateXAxisDistance(int axisXValue); // JoyControlStickAxis class
102 double calculateYAxisDistance(int axisYValue); // JoyControlStickAxis class
103 double calculateLastAccelerationDirectionalDistance(); // JoyControlStickAxis class
104 double getRadialDistance(int axisXValue, int axisYValue); // JoyControlStickAxis class
105 double getCircleAdjust(); // JoyControlStickAxis class
107 double getSpringDeadCircleX(); // JoyControlStickAxis class
108 double getSpringDeadCircleY(); // JoyControlStickAxis class
109
111
112 virtual QString getName(bool forceFullFormat = false, bool displayNames = false);
113 virtual QString getPartialName(bool forceFullFormat = false, bool displayNames = false);
114
115 JoyStickDirections getCurrentDirection(); // JoyControlStickAxes class
116
117 QList<double> getDiagonalZoneAngles(); // JoyControlStickAxes class
118 QList<int> getFourWayCardinalZoneAngles(); // JoyControlStickAxes class
119 QList<int> getFourWayDiagonalZoneAngles(); // JoyControlStickAxes class
121
125 JoyAxis *getAxisX(); // JoyControlStickAxes class
126 JoyAxis *getAxisY(); // JoyControlStickAxes class
127
128 void setJoyMode(JoyMode mode);
130
134
138
139 void setButtonsSpringWidth(int value);
141
142 void setButtonsSpringHeight(int value);
144
145 void setButtonsSensitivity(double value);
147
148 void setButtonsWheelSpeedX(int value);
149 void setButtonsWheelSpeedY(int value);
150
153
154 void setButtonsExtraAccelerationMultiplier(double value);
156
157 void setButtonsStartAccelerationMultiplier(double value);
159
160 void setButtonsMinAccelerationThreshold(double value);
162
163 void setButtonsMaxAccelerationThreshold(double value);
165
166 void setButtonsAccelerationExtraDuration(double value);
168
171
174
178 bool state); // JoyControlStickAxes class
179
180 double calculateXDiagonalDeadZone(int axisXValue, int axisYValue); // JoyControlStickAxes class
181 double calculateYDiagonalDeadZone(int axisXValue, int axisYValue); // JoyControlStickAxes class
182
183 virtual bool isDefault();
186 virtual void readConfig(QXmlStreamReader *xml); // JoyControlStickXml class
187 virtual void writeConfig(QXmlStreamWriter *xml); // JoyControlStickXml class
188
189 static const JoyMode DEFAULTMODE;
190
191 protected:
192 virtual void populateButtons();
193
194 void createDeskEvent(bool ignoresets = false); // JoyControlStickEvent class
196 JoyControlStickButton *&eventbutton2); // JoyControlStickEvent class
198 JoyControlStickButton *&eventbutton3); // JoyControlStickEvent class
200 JoyControlStickButton *&eventbutton2); // JoyControlStickEvent class
201 void determineFourWayDiagonalEvent(JoyControlStickButton *&eventbutton3); // JoyControlStickEvent class
202
205 int axisYValue); // JoyControlStickAxes class
206
209 int axisYValue); // JoyControlStickAxes class
210
213 int axisYValue); // JoyControlStickAxes class
214
217 int axisYValue); // JoyControlStickAxes class
218
221
224
225 void resetButtons();
226
227 double calculateXDistanceFromDeadZone(bool interpolate = false); // JoyControlStickAxes class
229 bool interpolate = false); // JoyControlStickAxes class
230
231 double calculateYDistanceFromDeadZone(bool interpolate = false); // JoyControlStickAxes class
233 bool interpolate = false); // JoyControlStickAxes class
234
235 int calculateCircleXValue(int axisXValue, int axisYValue); // JoyControlStickAxes class
236 int calculateCircleYValue(int axisXValue, int axisYValue); // JoyControlStickAxes class
237
238 double calculateEightWayDiagonalDistanceFromDeadZone(); // JoyControlStickAxes class
239 double calculateEightWayDiagonalDistanceFromDeadZone(int axisXValue, int axisYValue); // JoyControlStickAxes class
240 double calculateEightWayDiagonalDistance(int axisXValue, int axisYValue); // JoyControlStickAxes class
241
243 void clearPendingAxisEvents(); // JoyControlStickEvent class
244
245 signals:
246 void moved(int xaxis, int yaxis);
247 void active(int xaxis, int yaxis);
248 void released(int axis, int yaxis);
249 void deadZoneChanged(int value);
250 void diagonalRangeChanged(int value);
251 void maxZoneChanged(int value);
252 void modifierZoneChanged(int value);
254 void stickDelayChanged(int value);
258
259 public slots:
260 void reset();
261 void setDeadZone(int value);
262 void setMaxZone(int value);
263 void setModifierZone(int value);
264 void setModifierZoneInverted(bool value);
265 void setDiagonalRange(int value);
267 void setButtonsSpringRelativeStatus(bool value);
268 void setCircleAdjust(double circle); // JoyControlStickAxes class
269 void setStickDelay(int value);
270 void setButtonsEasingDuration(double value);
273
274 private slots:
275 void stickDirectionChangeEvent(); // JoyControlStickEvent class
276
277 private:
284 int index;
285 int stickDelay; // unsigned int
286
287 double circle;
288
292
295
299
302
305
307
310
311 void populateStickBtns();
312};
313
314#endif // JOYCONTROLSTICK_H
Represents single axis of of joystick (or other input)
Definition joyaxis.h:41
JoyMouseMovementMode
Definition joybutton.h:63
JoyExtraAccelerationCurve
Definition joybutton.h:79
JoyMouseCurve
Definition joybutton.h:68
Definition joycontrolstickbutton.h:29
Definition joycontrolstickmodifierbutton.h:28
Represents stick of a joystick.
Definition joycontrolstick.h:38
void setIndex(int index)
Definition joycontrolstick.cpp:741
int index
Definition joycontrolstick.h:284
JoyButton::JoyMouseCurve getButtonsPresetMouseCurve()
Definition joycontrolstick.cpp:2013
double calculateBearing()
Calculate the bearing (in degrees) corresponding to the current position of the X and Y axes of a sti...
Definition joycontrolstick.cpp:335
int getMaxZone()
Definition joycontrolstick.cpp:832
double calculateXDistanceFromDeadZone(bool interpolate=false)
Get distance of the X axis past the assigned dead zone.
Definition joycontrolstick.cpp:562
static const JoyMode DEFAULTMODE
Definition joycontrolstick.h:189
void performButtonPress(JoyControlStickButton *eventbutton, JoyControlStickButton *&activebutton, bool ignoresets)
Activate a stick direction button.
Definition joycontrolstick.cpp:2236
void determineFourWayCardinalEvent(JoyControlStickButton *&eventbutton1, JoyControlStickButton *&eventbutton2)
Determine which cardinal stick direction button should be active when using a four way cardinal stick...
Definition joycontrolstick.cpp:2378
int getCircleXCoordinate()
Definition joycontrolstick.cpp:1682
void stickDelayChanged(int value)
double calculateEightWayDiagonalDistanceFromDeadZone()
Definition joycontrolstick.cpp:3623
void setButtonsMinAccelerationThreshold(double value)
Definition joycontrolstick.cpp:2972
double getButtonsMinAccelerationThreshold()
Definition joycontrolstick.cpp:2985
int calculateCircleXValue(int axisXValue, int axisYValue)
Definition joycontrolstick.cpp:1704
void setButtonsSpringWidth(int value)
Definition joycontrolstick.cpp:2040
virtual QString getPartialName(bool forceFullFormat=false, bool displayNames=false)
Definition joycontrolstick.cpp:798
void createDeskEvent(bool ignoresets=false)
Find the position of the two stick axes, deactivate no longer used stick direction button and then ac...
Definition joycontrolstick.cpp:207
double calculateYAxisDistance(int axisYValue)
Definition joycontrolstick.cpp:3610
int getDiagonalRange()
Get the assigned diagonal range value.
Definition joycontrolstick.cpp:198
int maxZone
Definition joycontrolstick.h:283
int getButtonsSpringDeadCircleMultiplier()
Definition joycontrolstick.cpp:3116
int m_modifier_zone
Definition joycontrolstick.h:280
void stickDirectionChangeEvent()
Slot called when directionDelayTimer has timed out. The method will call createDeskEvent.
Definition joycontrolstick.cpp:2769
void queueJoyEvent(bool ignoresets)
Definition joycontrolstick.cpp:2823
void populateStickBtns()
Definition joycontrolstick.cpp:159
void setButtonsStartAccelerationMultiplier(double value)
Definition joycontrolstick.cpp:2928
int deadZone
Definition joycontrolstick.h:279
JoyControlStick::JoyStickDirections determineFourWayCardinalDirection()
Find the current stick direction based on a Four Way Cardinal mode stick.
Definition joycontrolstick.cpp:2516
int getDeadZone()
Get the assigned dead zone value.
Definition joycontrolstick.cpp:192
double getButtonsExtraAccelerationMultiplier()
Definition joycontrolstick.cpp:2897
JoyAxis * getAxisX()
Definition joycontrolstick.cpp:1822
void releaseButtonEvents()
Definition joycontrolstick.cpp:1870
QHash< JoyStickDirections, JoyControlStickButton * > * getButtons()
Definition joycontrolstick.cpp:1820
void determineStandardModeEvent(JoyControlStickButton *&eventbutton1, JoyControlStickButton *&eventbutton2)
Determine which stick direction buttons should be active for a standard mode stick.
Definition joycontrolstick.cpp:2260
int getIndex()
Definition joycontrolstick.cpp:743
bool inDeadZone()
Check the current stick position to see if it lies in the assigned dead zone.
Definition joycontrolstick.cpp:144
void setModifierZone(int value)
Sets the modifier zone of the stick to the given value.
Definition joycontrolstick.cpp:898
JoyControlStickButton * activeButton3
Definition joycontrolstick.h:298
void setButtonsAccelerationExtraDuration(double value)
Definition joycontrolstick.cpp:3060
void getCalibration(double *offsetX, double *gainX, double *offsetY, double *gainY) const
Reads the calibration values of both stick axes.
Definition joycontrolstick.cpp:946
void setButtonsSpringDeadCircleMultiplier(int value)
Definition joycontrolstick.cpp:3103
void setModifierZoneInverted(bool value)
Inverts the direction of the modifier zone of the stick.
Definition joycontrolstick.cpp:914
JoyMode currentMode
Definition joycontrolstick.h:301
void performButtonRelease(JoyControlStickButton *&eventbutton, bool ignoresets)
Stick direction button to release.
Definition joycontrolstick.cpp:2248
void setButtonsExtraAccelerationStatus(bool enabled)
Definition joycontrolstick.cpp:2845
void active(int xaxis, int yaxis)
JoyControlStick::JoyStickDirections determineEightWayModeDirection()
Find the current stick direction based on a Eight Way mode stick.
Definition joycontrolstick.cpp:2501
double getSpringDeadCircleY()
Definition joycontrolstick.cpp:3796
void setButtonsExtraAccelCurve(JoyButton::JoyExtraAccelerationCurve curve)
Definition joycontrolstick.cpp:3838
void setButtonsMaxAccelerationThreshold(double value)
Definition joycontrolstick.cpp:3016
void setCircleAdjust(double circle)
Set the percentage of the outer square that should be ignored when performing the final axis calculat...
Definition joycontrolstick.cpp:2748
QString getStickName()
Definition joycontrolstick.cpp:2190
SetJoystick * getParentSet()
Get pointer to the set that a stick belongs to.
Definition joycontrolstick.cpp:2218
double circle
Definition joycontrolstick.h:287
void joyEvent(bool ignoresets=false)
Take the input value for the two axes that make up a stick and activate the proper event based on the...
Definition joycontrolstick.cpp:72
bool m_modifier_zone_inverted
Definition joycontrolstick.h:281
double calculateXAxisDistance(int axisXValue)
Definition joycontrolstick.cpp:3595
virtual void writeConfig(QXmlStreamWriter *xml)
Write the status of the properties of a stick and direction buttons to an XML stream.
Definition joycontrolstick.cpp:1081
bool hasPendingEvent()
Definition joycontrolstick.cpp:2830
bool safezone
Definition joycontrolstick.h:290
bool getModifierZoneInverted() const
Checks if the modifier zone of this stick is inverted.
Definition joycontrolstick.cpp:843
double getAbsoluteRawDistance()
Get the raw radial distance of the stick. Values will be between 0 - 32,767.
Definition joycontrolstick.cpp:691
bool isActive
Definition joycontrolstick.h:289
int originset
Definition joycontrolstick.h:278
double calculateYDistanceFromDeadZone(bool interpolate=false)
Get distance of the Y axis past the assigned dead zone.
Definition joycontrolstick.cpp:432
double calculateYDiagonalDeadZone(int axisXValue, int axisYValue)
Definition joycontrolstick.cpp:3707
void maxZoneChanged(int value)
int calculateCircleYValue(int axisXValue, int axisYValue)
Definition joycontrolstick.cpp:1727
void joyModeChanged()
~JoyControlStick()
Definition joycontrolstick.cpp:59
void stickNameChanged()
JoyControlStickButton * activeButton1
Definition joycontrolstick.h:296
void modifierZoneChanged(int value)
int getRealJoyIndex()
Definition joycontrolstick.cpp:745
void copyAssignments(JoyControlStick *destStick)
Copy slots from all stick buttons and properties from a stick onto another.
Definition joycontrolstick.cpp:2704
double getButtonsMaxAccelerationThreshold()
Definition joycontrolstick.cpp:3029
double calculateDirectionalDistance()
Used to calculate the distance value that should be used for keyboard events and distance slots.
Definition joycontrolstick.cpp:1619
JoyMode
Definition joycontrolstick.h:46
@ StandardMode
Definition joycontrolstick.h:47
@ FourWayDiagonal
Definition joycontrolstick.h:50
@ EightWayMode
Definition joycontrolstick.h:48
@ FourWayCardinal
Definition joycontrolstick.h:49
bool hasSameButtonsMouseMode()
Definition joycontrolstick.cpp:1918
void setButtonsSensitivity(double value)
Definition joycontrolstick.cpp:2118
void setDeadZone(int value)
Definition joycontrolstick.cpp:870
void setButtonsEasingDuration(double value)
Definition joycontrolstick.cpp:2783
JoyStickDirections getCurrentDirection()
Get the value for the currently active stick direction.
Definition joycontrolstick.cpp:1668
void replaceXAxis(JoyAxis *axis)
Definition joycontrolstick.cpp:1826
double getNormalizedAbsoluteDistance()
Definition joycontrolstick.cpp:707
int getStickDelay()
Definition joycontrolstick.cpp:2781
void establishPropertyUpdatedConnection()
Definition joycontrolstick.cpp:2624
QList< int > getFourWayCardinalZoneAngles()
Definition joycontrolstick.cpp:1782
virtual QString getDefaultStickName()
Definition joycontrolstick.cpp:830
QHash< JoyStickDirections, JoyControlStickButton * > buttons
Definition joycontrolstick.h:308
void setJoyMode(JoyMode mode)
Definition joycontrolstick.cpp:1861
QHash< JoyStickDirections, JoyControlStickButton * > getApplicableButtons()
Definition joycontrolstick.cpp:2157
JoyStickDirections currentDirection
Definition joycontrolstick.h:300
void resetCalibration()
Resets the calibration of both stick axes back to uncalibrated state.
Definition joycontrolstick.cpp:933
double getButtonsEasingDuration()
Definition joycontrolstick.cpp:2794
JoyControlStickModifierButton * getModifierButton()
Definition joycontrolstick.cpp:2821
void replaceAxes(JoyAxis *axisX, JoyAxis *axisY)
Definition joycontrolstick.cpp:1846
bool pendingStickEvent
Definition joycontrolstick.h:291
JoyControlStick::JoyStickDirections determineFourWayDiagonalDirection()
Find the current stick direction based on a Four Way Diagonal mode stick.
Definition joycontrolstick.cpp:2555
double calculateMouseDirectionalDistance(JoyControlStickButton *button)
Used to calculate the distance value that should be used for mouse movement.
Definition joycontrolstick.cpp:1192
int getModifierZone() const
Returns the modifier zone of the stick.
Definition joycontrolstick.cpp:837
JoyControlStick::JoyStickDirections determineStandardModeDirection()
Find the current stick direction based on a Standard mode stick.
Definition joycontrolstick.cpp:2446
JoyControlStickModifierButton * modifierButton
Definition joycontrolstick.h:309
JoyAxis * getAxisY()
Definition joycontrolstick.cpp:1824
virtual bool isDefault()
Definition joycontrolstick.cpp:1881
JoyControlStick::JoyStickDirections calculateStickDirection()
Calculate the current direction of the stick based on the values of the X and Y axes and the current ...
Definition joycontrolstick.cpp:2592
void moved(int xaxis, int yaxis)
void released(int axis, int yaxis)
JoyButton::JoyMouseMovementMode getButtonsPresetMouseMode()
Definition joycontrolstick.cpp:1947
QString defaultStickName
Definition joycontrolstick.h:304
int stickDelay
Definition joycontrolstick.h:285
void setMaxZone(int value)
Definition joycontrolstick.cpp:882
bool isCalibrated() const
Check if the stick is calibrated.
Definition joycontrolstick.cpp:928
void diagonalRangeChanged(int value)
double getButtonsAccelerationEasingDuration()
Definition joycontrolstick.cpp:3073
void determineEightWayModeEvent(JoyControlStickButton *&eventbutton1, JoyControlStickButton *&eventbutton2, JoyControlStickButton *&eventbutton3)
Determine which stick direction button should be active for a 8 way mode stick.
Definition joycontrolstick.cpp:2321
QList< int > getFourWayDiagonalZoneAngles()
Definition joycontrolstick.cpp:1801
bool getButtonsExtraAccelerationStatus()
Definition joycontrolstick.cpp:2858
void setDirButtonsUpdateInitAccel(JoyControlStick::JoyStickDirections direction, bool state)
Definition joycontrolstick.cpp:3881
void setButtonsWheelSpeedY(int value)
Definition joycontrolstick.cpp:2203
double getCircleAdjust()
Get the current percentage of the outer square that should be ignored when performing the final axis ...
Definition joycontrolstick.cpp:2763
QPointer< JoyAxis > axisY
Definition joycontrolstick.h:294
virtual void setDefaultStickName(QString tempname)
Definition joycontrolstick.cpp:824
virtual void readConfig(QXmlStreamReader *xml)
Take a XML stream and set the stick and direction button properties according to the values contained...
Definition joycontrolstick.cpp:990
virtual QString getName(bool forceFullFormat=false, bool displayNames=false)
Definition joycontrolstick.cpp:747
virtual void populateButtons()
Populate the virtual buttons assigned to an analog stick.
Definition joycontrolstick.cpp:157
QPointer< JoyAxis > axisX
Definition joycontrolstick.h:293
QTimer directionDelayTimer
Definition joycontrolstick.h:306
void setDiagonalRange(int value)
Set the diagonal range value for a stick.
Definition joycontrolstick.cpp:970
int getXCoordinate()
Get the value for the corresponding X axis.
Definition joycontrolstick.cpp:1674
void setStickDelay(int value)
Definition joycontrolstick.cpp:2771
void deadZoneChanged(int value)
double calculateAccelerationDistance(JoyControlStickButton *button)
Definition joycontrolstick.cpp:3146
void setButtonsMouseCurve(JoyButton::JoyMouseCurve mouseCurve)
Definition joycontrolstick.cpp:1974
JoyButton::JoyExtraAccelerationCurve getButtonsExtraAccelerationCurve()
Definition joycontrolstick.cpp:3851
double calculateLastAccelerationButtonDistance(JoyControlStickButton *button)
Definition joycontrolstick.cpp:3373
void setButtonsMouseMode(JoyButton::JoyMouseMovementMode mode)
Definition joycontrolstick.cpp:1907
double calculateXDiagonalDeadZone(int axisXValue, int axisYValue)
Definition joycontrolstick.cpp:3660
void setStickName(QString tempName)
Definition joycontrolstick.cpp:2180
double calculateLastMouseDirectionalDistance(JoyControlStickButton *button)
Definition joycontrolstick.cpp:1280
QString stickName
Definition joycontrolstick.h:303
QHash< JoyStickDirections, JoyControlStickButton * > getButtonsForDirection(JoyControlStick::JoyStickDirections direction)
Definition joycontrolstick.cpp:3899
bool hasSameButtonsMouseCurve()
Definition joycontrolstick.cpp:1985
void setButtonsSpringHeight(int value)
Definition joycontrolstick.cpp:2051
void clearPendingAxisEvents()
void setButtonsWheelSpeedX(int value)
Definition joycontrolstick.cpp:2192
int getYCoordinate()
Get the value for the corresponding Y axis.
Definition joycontrolstick.cpp:1680
void activatePendingEvent()
Definition joycontrolstick.cpp:2832
double getButtonsPresetSensitivity()
Definition joycontrolstick.cpp:2129
double getSpringDeadCircleX()
Definition joycontrolstick.cpp:3754
int getCircleYCoordinate()
Definition joycontrolstick.cpp:1693
void propertyUpdated()
void determineFourWayDiagonalEvent(JoyControlStickButton *&eventbutton3)
Determine which stick direction button should be active when using 4 way diagonal mode.
Definition joycontrolstick.cpp:2413
void clearPendingEvent()
Definition joycontrolstick.cpp:2843
void reset()
Definition joycontrolstick.cpp:847
JoyControlStickButton * getDirectionButton(JoyStickDirections direction)
Get a pointer to the stick direction button for the desired direction.
Definition joycontrolstick.cpp:1179
double getButtonsStartAccelerationMultiplier()
Definition joycontrolstick.cpp:2941
double calculateEightWayDiagonalDistance(int axisXValue, int axisYValue)
Definition joycontrolstick.cpp:3644
void resetButtons()
Reset all the properties of the stick direction buttons and the stick modifier button.
Definition joycontrolstick.cpp:1156
bool isRelativeSpring()
Definition joycontrolstick.cpp:2671
void circleAdjustChange(double circle)
void replaceYAxis(JoyAxis *axis)
Definition joycontrolstick.cpp:1836
int getButtonsPresetSpringHeight()
Definition joycontrolstick.cpp:2090
bool hasSlotsAssigned()
Check all stick buttons and see if any have slots assigned.
Definition joycontrolstick.cpp:2638
void disconnectPropertyUpdatedConnection()
Definition joycontrolstick.cpp:2629
int getButtonsPresetSpringWidth()
Definition joycontrolstick.cpp:2062
QList< double > getDiagonalZoneAngles()
Definition joycontrolstick.cpp:1750
JoyMode getJoyMode()
Definition joycontrolstick.cpp:1868
JoyControlStickButton * activeButton2
Definition joycontrolstick.h:297
double calculateLastAccelerationDirectionalDistance()
Definition joycontrolstick.cpp:1552
double getRadialDistance(int axisXValue, int axisYValue)
Definition joycontrolstick.cpp:724
int getCurrentlyAssignedSet()
Definition joycontrolstick.cpp:845
void setCalibration(double offsetX, double gainX, double offsetY, double gainY)
Sets the axis calibration values and sets the calibration flag. Calibrated value is calculated by the...
Definition joycontrolstick.cpp:960
double getDistanceFromDeadZone()
Get current radial distance of the stick position past the assigned dead zone.
Definition joycontrolstick.cpp:389
void setButtonsExtraAccelerationMultiplier(double value)
Definition joycontrolstick.cpp:2885
double calculateLastDirectionalDistance()
Definition joycontrolstick.cpp:1464
int diagonalRange
Definition joycontrolstick.h:282
void setButtonsSpringRelativeStatus(bool value)
Definition joycontrolstick.cpp:2660
Definition joydpadxml.h:27
Definition joycontrolstickdirectionstype.h:23
JoyStickDirections
Definition joycontrolstickdirectionstype.h:26
A set of mapped events which can by switched by a controller event. Contains controller input objects...
Definition setjoystick.h:40