diff options
-rw-r--r-- | gui/server_normal/numerickeyboard.ui | 88 | ||||
-rw-r--r-- | src/server/numerickeyboard/numerickeyboard.cpp | 32 | ||||
-rw-r--r-- | src/server/numerickeyboard/numerickeyboard.h | 18 | ||||
-rw-r--r-- | src/server/sessionnamewindow/sessionnamewindow.cpp | 25 | ||||
-rw-r--r-- | src/server/sessionnamewindow/sessionnamewindow.h | 4 |
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(); |