AntiMicroX
dpadcontextmenuhelper.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 DPADCONTEXTMENUHELPER_H
20 #define DPADCONTEXTMENUHELPER_H
21 
22 #include "joydpad.h"
23 
24 class JoyButtonSlot;
25 
26 class DPadContextMenuHelper : public QObject
27 {
28  Q_OBJECT
29 
30  public:
31  explicit DPadContextMenuHelper(JoyDPad *dpad, QObject *parent = nullptr);
32  void setPendingSlots(QHash<JoyDPadButton::JoyDPadDirections, JoyButtonSlot *> *tempSlots);
33  void clearPendingSlots();
34  QHash<JoyDPadButton::JoyDPadDirections, JoyButtonSlot *> const &getPendingSlots();
35 
36  public slots:
37  void setFromPendingSlots();
39 
40  private:
42  QHash<JoyDPadButton::JoyDPadDirections, JoyButtonSlot *> pendingSlots;
43 };
44 
45 #endif // DPADCONTEXTMENUHELPER_H
DPadContextMenuHelper::getPendingSlots
const QHash< JoyDPadButton::JoyDPadDirections, JoyButtonSlot * > & getPendingSlots()
Definition: dpadcontextmenuhelper.cpp:85
DPadContextMenuHelper::clearButtonsSlotsEventReset
void clearButtonsSlotsEventReset()
Definition: dpadcontextmenuhelper.cpp:74
DPadContextMenuHelper::setPendingSlots
void setPendingSlots(QHash< JoyDPadButton::JoyDPadDirections, JoyButtonSlot * > *tempSlots)
Definition: dpadcontextmenuhelper.cpp:35
JoyButtonSlot::getSlotMode
JoySlotInputAction getSlotMode() const
Definition: joybuttonslot.cpp:114
JoyDPad::getButtons
QHash< int, JoyDPadButton * > * getButtons()
Definition: joydpad.cpp:223
DPadContextMenuHelper::setFromPendingSlots
void setFromPendingSlots()
Definition: dpadcontextmenuhelper.cpp:52
DPadContextMenuHelper
Definition: dpadcontextmenuhelper.h:26
joybuttonslot.h
JoyButtonSlot
Represents action which can be performed after pressing button.
Definition: joybuttonslot.h:37
DPadContextMenuHelper::DPadContextMenuHelper
DPadContextMenuHelper(JoyDPad *dpad, QObject *parent=nullptr)
Definition: dpadcontextmenuhelper.cpp:27
JoyDPad
Definition: joydpad.h:24
JoyButtonSlot::getSlotCode
int getSlotCode() const
Definition: joybuttonslot.cpp:110
JoyDPadButton
Definition: joydpadbutton.h:27
JoyDPadButton::JoyDPadDirections
JoyDPadDirections
Definition: joydpadbutton.h:41
DPadContextMenuHelper::dpad
JoyDPad * dpad
Definition: dpadcontextmenuhelper.h:41
JoyDPad::getJoyButton
JoyDPadButton * getJoyButton(int index_local)
Definition: joydpad.cpp:50
DPadContextMenuHelper::clearPendingSlots
void clearPendingSlots()
Definition: dpadcontextmenuhelper.cpp:50
JoyButton::setAssignedSlot
bool setAssignedSlot(int code, int alias, int index, JoyButtonSlot::JoySlotInputAction mode=JoyButtonSlot::JoyKeyboard)
Create new JoyButtonSlot with data provided and replace an existing slot in the assignment list if on...
Definition: joybutton.cpp:2134
JoyButtonSlot::getSlotCodeAlias
int getSlotCodeAlias() const
Definition: joybuttonslot.cpp:108
DPadContextMenuHelper::pendingSlots
QHash< JoyDPadButton::JoyDPadDirections, JoyButtonSlot * > pendingSlots
Definition: dpadcontextmenuhelper.h:42
joydpad.h
dpadcontextmenuhelper.h
JoyButton::clearSlotsEventReset
virtual void clearSlotsEventReset(bool clearSignalEmit=true)
Definition: joybutton.cpp:3069