summaryrefslogtreecommitdiffstats
path: root/src/citra_qt/config/controller_config_util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/citra_qt/config/controller_config_util.h')
-rw-r--r--src/citra_qt/config/controller_config_util.h82
1 files changed, 82 insertions, 0 deletions
diff --git a/src/citra_qt/config/controller_config_util.h b/src/citra_qt/config/controller_config_util.h
new file mode 100644
index 000000000..15e025b57
--- /dev/null
+++ b/src/citra_qt/config/controller_config_util.h
@@ -0,0 +1,82 @@
+// Copyright 2014 Citra Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#ifndef _CONTROLLER_CONFIG_UTIL_HXX_
+#define _CONTROLLER_CONFIG_UTIL_HXX_
+
+#include <QWidget>
+#include <QPushButton>
+
+/* TODO(bunnei): ImplementMe
+
+#include "config.h"
+
+class GStickConfig : public QWidget
+{
+ Q_OBJECT
+
+public:
+ // change_receiver needs to have a OnKeyConfigChanged(common::Config::Control, int, const QString&) slot!
+ GStickConfig(common::Config::Control leftid, common::Config::Control rightid, common::Config::Control upid, common::Config::Control downid, QObject* change_receiver, QWidget* parent = NULL);
+
+signals:
+ void LeftChanged();
+ void RightChanged();
+ void UpChanged();
+ void DownChanged();
+
+private:
+ QPushButton* left;
+ QPushButton* right;
+ QPushButton* up;
+ QPushButton* down;
+
+ QPushButton* clear;
+};
+
+class GKeyConfigButton : public QPushButton
+{
+ Q_OBJECT
+
+public:
+ // TODO: change_receiver also needs to have an ActivePortChanged(const common::Config::ControllerPort&) signal
+ // change_receiver needs to have a OnKeyConfigChanged(common::Config::Control, int, const QString&) slot!
+ GKeyConfigButton(common::Config::Control id, const QIcon& icon, const QString& text, QObject* change_receiver, QWidget* parent);
+ GKeyConfigButton(common::Config::Control id, const QString& text, QObject* change_receiver, QWidget* parent);
+
+signals:
+ void KeyAssigned(common::Config::Control id, int key, const QString& text);
+
+private slots:
+ void OnActivePortChanged(const common::Config::ControllerPort& config);
+
+ void OnClicked();
+
+ void keyPressEvent(QKeyEvent* event); // TODO: bGrabbed?
+ void mousePressEvent(QMouseEvent* event);
+
+private:
+ common::Config::Control id;
+ bool inputGrabbed;
+
+ QString old_text;
+};
+
+class GButtonConfigGroup : public QWidget
+{
+ Q_OBJECT
+
+public:
+ // change_receiver needs to have a OnKeyConfigChanged(common::Config::Control, int, const QString&) slot!
+ GButtonConfigGroup(const QString& name, common::Config::Control id, QObject* change_receiver, QWidget* parent = NULL);
+
+private:
+ GKeyConfigButton* config_button;
+
+ common::Config::Control id;
+};
+
+*/
+
+#endif // _CONTROLLER_CONFIG_HXX_