summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Klinger2016-04-22 12:07:41 +0200
committerChristian Klinger2016-04-22 12:07:41 +0200
commit86ff348f96188e8478665e6f13674c45ff0f3b01 (patch)
tree1312dcb8293eb762e0ff3a848b6af7b0b71ce84e
parentfirst layout of a virtual keyboard, but no logic yet (diff)
downloadpvs2-86ff348f96188e8478665e6f13674c45ff0f3b01.tar.gz
pvs2-86ff348f96188e8478665e6f13674c45ff0f3b01.tar.xz
pvs2-86ff348f96188e8478665e6f13674c45ff0f3b01.zip
feature complete
-rw-r--r--gui/server_normal/numerickeyboard.ui88
-rw-r--r--src/server/numerickeyboard/numerickeyboard.cpp32
-rw-r--r--src/server/numerickeyboard/numerickeyboard.h18
-rw-r--r--src/server/sessionnamewindow/sessionnamewindow.cpp25
-rw-r--r--src/server/sessionnamewindow/sessionnamewindow.h4
5 files changed, 147 insertions, 20 deletions
diff --git a/gui/server_normal/numerickeyboard.ui b/gui/server_normal/numerickeyboard.ui
index 155821e..4e3a8dc 100644
--- a/gui/server_normal/numerickeyboard.ui
+++ b/gui/server_normal/numerickeyboard.ui
@@ -24,77 +24,143 @@
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="3" column="0">
- <widget class="QPushButton" name="pushButton_7">
+ <widget class="QPushButton" name="button_0">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>0</string>
</property>
</widget>
</item>
<item row="3" column="1">
- <widget class="QPushButton" name="pushButton_8">
+ <widget class="QPushButton" name="button_del">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>Del</string>
</property>
</widget>
</item>
<item row="0" column="0">
- <widget class="QPushButton" name="pushButton">
+ <widget class="QPushButton" name="button_1">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>1</string>
</property>
</widget>
</item>
<item row="2" column="1">
- <widget class="QPushButton" name="pushButton_6">
+ <widget class="QPushButton" name="button_8">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>8</string>
</property>
</widget>
</item>
<item row="1" column="0">
- <widget class="QPushButton" name="pushButton_4">
+ <widget class="QPushButton" name="button_4">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>4</string>
</property>
</widget>
</item>
<item row="0" column="1">
- <widget class="QPushButton" name="pushButton_5">
+ <widget class="QPushButton" name="button_2">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>2</string>
</property>
</widget>
</item>
<item row="1" column="1">
- <widget class="QPushButton" name="pushButton_3">
+ <widget class="QPushButton" name="button_5">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>5</string>
</property>
</widget>
</item>
<item row="2" column="0">
- <widget class="QPushButton" name="pushButton_2">
+ <widget class="QPushButton" name="button_7">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>7</string>
</property>
</widget>
</item>
<item row="0" column="2">
- <widget class="QPushButton" name="pushButton_9">
+ <widget class="QPushButton" name="button_3">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>3</string>
</property>
</widget>
</item>
<item row="1" column="2">
- <widget class="QPushButton" name="pushButton_10">
+ <widget class="QPushButton" name="button_6">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>6</string>
</property>
</widget>
</item>
<item row="2" column="2">
- <widget class="QPushButton" name="pushButton_11">
+ <widget class="QPushButton" name="button_9">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="text">
<string>9</string>
</property>
diff --git a/src/server/numerickeyboard/numerickeyboard.cpp b/src/server/numerickeyboard/numerickeyboard.cpp
index 4ecf317..3f59eb8 100644
--- a/src/server/numerickeyboard/numerickeyboard.cpp
+++ b/src/server/numerickeyboard/numerickeyboard.cpp
@@ -1,14 +1,46 @@
#include "src/server/numerickeyboard/numerickeyboard.h"
#include "ui_numerickeyboard.h"
+#include <iostream>
+
+using std::cout;
+using std::endl;
+
NumericKeyboard::NumericKeyboard(QWidget *parent) :
QGroupBox(parent),
ui(new Ui::NumericKeyboard)
{
ui->setupUi(this);
+ /* das geht leider nicht ? */
+// connect(ui->button_0, SIGNAL (clicked(bool)), this, SLOT (relayDigit(0)));
+
+ connect(ui->button_0, SIGNAL (clicked(bool)), this, SLOT (relayDigit0()));
+ connect(ui->button_1, SIGNAL (clicked(bool)), this, SLOT (relayDigit1()));
+ connect(ui->button_2, SIGNAL (clicked(bool)), this, SLOT (relayDigit2()));
+ connect(ui->button_3, SIGNAL (clicked(bool)), this, SLOT (relayDigit3()));
+ connect(ui->button_4, SIGNAL (clicked(bool)), this, SLOT (relayDigit4()));
+ connect(ui->button_5, SIGNAL (clicked(bool)), this, SLOT (relayDigit5()));
+ connect(ui->button_6, SIGNAL (clicked(bool)), this, SLOT (relayDigit6()));
+ connect(ui->button_7, SIGNAL (clicked(bool)), this, SLOT (relayDigit7()));
+ connect(ui->button_8, SIGNAL (clicked(bool)), this, SLOT (relayDigit8()));
+ connect(ui->button_9, SIGNAL (clicked(bool)), this, SLOT (relayDigit9()));
+
+ connect(ui->button_del, SIGNAL (clicked(bool)), this, SLOT(relayDelete()));
}
NumericKeyboard::~NumericKeyboard()
{
delete ui;
}
+
+void NumericKeyboard::relayDigit0() { emit digitTyped(0); }
+void NumericKeyboard::relayDigit1() { emit digitTyped(1); }
+void NumericKeyboard::relayDigit2() { emit digitTyped(2); }
+void NumericKeyboard::relayDigit3() { emit digitTyped(3); }
+void NumericKeyboard::relayDigit4() { emit digitTyped(4); }
+void NumericKeyboard::relayDigit5() { emit digitTyped(5); }
+void NumericKeyboard::relayDigit6() { emit digitTyped(6); }
+void NumericKeyboard::relayDigit7() { emit digitTyped(7); }
+void NumericKeyboard::relayDigit8() { emit digitTyped(8); }
+void NumericKeyboard::relayDigit9() { emit digitTyped(9); }
+void NumericKeyboard::relayDelete() { emit digitDelete(); }
diff --git a/src/server/numerickeyboard/numerickeyboard.h b/src/server/numerickeyboard/numerickeyboard.h
index c95c354..dce7999 100644
--- a/src/server/numerickeyboard/numerickeyboard.h
+++ b/src/server/numerickeyboard/numerickeyboard.h
@@ -17,6 +17,24 @@ public:
private:
Ui::NumericKeyboard *ui;
+
+signals:
+ void digitTyped(int);
+ void digitDelete();
+
+private slots:
+ void relayDigit0();
+ void relayDigit1();
+ void relayDigit2();
+ void relayDigit3();
+ void relayDigit4();
+ void relayDigit5();
+ void relayDigit6();
+ void relayDigit7();
+ void relayDigit8();
+ void relayDigit9();
+ void relayDelete();
};
+
#endif // NUMERICKEYBOARD_H
diff --git a/src/server/sessionnamewindow/sessionnamewindow.cpp b/src/server/sessionnamewindow/sessionnamewindow.cpp
index da67c91..ba67557 100644
--- a/src/server/sessionnamewindow/sessionnamewindow.cpp
+++ b/src/server/sessionnamewindow/sessionnamewindow.cpp
@@ -18,9 +18,9 @@
#include "sessionnamewindow.h"
#include "../numerickeyboard/numerickeyboard.h"
#include "../util/global.h"
-
#include "ui_sessionname.h"
+
SessionNameWindow::SessionNameWindow(QWidget *parent) :
QDialog(parent), ui(new Ui::SessionName)
@@ -29,9 +29,12 @@ SessionNameWindow::SessionNameWindow(QWidget *parent) :
connect(ui->bboxOkCancel, SIGNAL(accepted()), this, SLOT(onOkClicked()));
connect(ui->bboxOkCancel, SIGNAL(rejected()), this, SLOT(close()));
connect(ui->cmdRandom, SIGNAL(clicked(bool)), this, SLOT(onGenerateRandomName()));
- ui->lineEditName->setFocus();
- initVirtualKeyboard();
+ /* add a virtual numeric keyboard */
+ NumericKeyboard *keyboard = new NumericKeyboard();
+ ui->keyboard_placeholder->addWidget(keyboard);
+ connect(keyboard, SIGNAL(digitTyped(int)), this, SLOT(onDigitTyped(int)));
+ connect(keyboard, SIGNAL(digitDelete()), this, SLOT(onDigitDelete()));
}
@@ -72,9 +75,15 @@ void SessionNameWindow::onGenerateRandomName()
ui->lineEditName->setText(QString::number(qrand() % 9000 + 1000));
}
-void SessionNameWindow::initVirtualKeyboard() {
- /* Just playing around here */
- QLabel *label = new QLabel("hello world");
- NumericKeyboard *keyboard = new NumericKeyboard();
- ui->keyboard_placeholder->addWidget(keyboard);
+/** deletes the last digit of the saved sessionname */
+void SessionNameWindow::onDigitDelete() {
+ QString text = ui->lineEditName->text();
+ ui->lineEditName->setText(text.left(text.length() - 1));
+
}
+/** appends the digit to the session name */
+void SessionNameWindow::onDigitTyped(int i) {
+ QString text = ui->lineEditName->text();
+ ui->lineEditName->setText(text + QString::number(i));
+}
+
diff --git a/src/server/sessionnamewindow/sessionnamewindow.h b/src/server/sessionnamewindow/sessionnamewindow.h
index 077c903..b3e6cdc 100644
--- a/src/server/sessionnamewindow/sessionnamewindow.h
+++ b/src/server/sessionnamewindow/sessionnamewindow.h
@@ -14,7 +14,6 @@ class SessionNameWindow : public QDialog
private:
Ui::SessionName *ui;
- void initVirtualKeyboard();
public:
SessionNameWindow(QWidget *parent = 0);
@@ -28,6 +27,9 @@ protected:
private slots:
void onOkClicked();
void onGenerateRandomName();
+ void onDigitDelete();
+ void onDigitTyped(int);
+
signals:
void updateSessionName();