diff options
Diffstat (limited to 'src/bin/gui')
| -rw-r--r-- | src/bin/gui/gui.pri | 10 | ||||
| -rw-r--r-- | src/bin/gui/mainwindow.cpp | 27 | ||||
| -rw-r--r-- | src/bin/gui/mainwindow.h | 28 | ||||
| -rw-r--r-- | src/bin/gui/mainwindow.ui | 75 |
4 files changed, 140 insertions, 0 deletions
diff --git a/src/bin/gui/gui.pri b/src/bin/gui/gui.pri new file mode 100644 index 0000000..c31fd79 --- /dev/null +++ b/src/bin/gui/gui.pri @@ -0,0 +1,10 @@ +QT += gui + +FORMS += \ + $$PWD/mainwindow.ui + +HEADERS += \ + $$PWD/mainwindow.h + +SOURCES += \ + $$PWD/mainwindow.cpp diff --git a/src/bin/gui/mainwindow.cpp b/src/bin/gui/mainwindow.cpp new file mode 100644 index 0000000..5b8422e --- /dev/null +++ b/src/bin/gui/mainwindow.cpp @@ -0,0 +1,27 @@ +#include "mainwindow.h" +#include "ui_mainwindow.h" + +#include "diceparser.h" + +MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWindow) +{ + ui->setupUi(this); + + connect(ui->m_rollButton, SIGNAL(pressed()), this, SLOT(rollDiceCommand())); + m_dieParser= new DiceParser(); +} + +MainWindow::~MainWindow() +{ + delete ui; +} +void MainWindow::rollDiceCommand() +{ + QString cmd= ui->m_cmdEdit->text(); + + if(m_dieParser->parseLine(cmd)) + { + m_dieParser->Start(); + m_dieParser->displayResult(); + } +} diff --git a/src/bin/gui/mainwindow.h b/src/bin/gui/mainwindow.h new file mode 100644 index 0000000..bd19b34 --- /dev/null +++ b/src/bin/gui/mainwindow.h @@ -0,0 +1,28 @@ +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +#include <QMainWindow> + +class DiceParser; +namespace Ui +{ + class MainWindow; +} + +class MainWindow : public QMainWindow +{ + Q_OBJECT + +public: + explicit MainWindow(QWidget* parent= 0); + ~MainWindow(); + +protected slots: + void rollDiceCommand(); + +private: + Ui::MainWindow* ui; + DiceParser* m_dieParser; +}; + +#endif // MAINWINDOW_H diff --git a/src/bin/gui/mainwindow.ui b/src/bin/gui/mainwindow.ui new file mode 100644 index 0000000..d09f866 --- /dev/null +++ b/src/bin/gui/mainwindow.ui @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>MainWindow</class> + <widget class="QMainWindow" name="MainWindow"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>800</width> + <height>600</height> + </rect> + </property> + <property name="windowTitle"> + <string>MainWindow</string> + </property> + <widget class="QWidget" name="centralwidget"> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLineEdit" name="m_cmdEdit"/> + </item> + <item> + <widget class="QPushButton" name="m_rollButton"> + <property name="text"> + <string>Roll</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2" stretch="0,1"> + <item> + <widget class="QListView" name="m_historicView"/> + </item> + <item> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QWidget" name="m_display" native="true"/> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + </layout> + </item> + </layout> + </widget> + <widget class="QMenuBar" name="menubar"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>800</width> + <height>29</height> + </rect> + </property> + </widget> + <widget class="QStatusBar" name="statusbar"/> + </widget> + <resources/> + <connections/> +</ui> |