MacroBinds/qmacrobindswindow.h
2024-09-17 04:05:32 -04:00

49 lines
1.1 KiB
C++

#ifndef QMACROBINDSWINDOW_H
#define QMACROBINDSWINDOW_H
#include <QMainWindow>
#include <qmacrokeysmanager.h>
#define DEFAULT_ROW_COUNT 7
#define DEFAULT_COLUMN_COUNT 4
#define ENCODER_CLICKS_PER_ROTATION 30
QT_BEGIN_NAMESPACE
namespace Ui {
class QMacroBindsWindow;
}
QT_END_NAMESPACE
class QMacroBindsWindow : public QMainWindow
{
Q_OBJECT
public:
QMacroBindsWindow(QWidget *parent = nullptr);
~QMacroBindsWindow();
public slots:
void deviceNameChanged(const QString &newName);
private slots:
void showKeyBindingWindow(const quint8 &row, const quint8 &column);
void showWindowFinder();
private:
void addDeviceToList(const QString &devicePath);
void newButtonState(const quint8 &row, const quint8 &column, const bool &state);
void newEncoderRotation(const quint8 &column, const EncoderRotation &direction);
Ui::QMacroBindsWindow *ui;
class WindowFinderDialogue *diagWindowFinder = nullptr;
class QMacroKeysManager *mkmMacroKeys = nullptr;
QVector<QVector<class QPushButton*>> vButtonWidgets;
QString sLastSelectedDevice = "";
};
#endif // QMACROBINDSWINDOW_H