rev |
line source |
nuclear@0
|
1 #include "mainwin.h"
|
nuclear@0
|
2 #include "ui_mainwin.h"
|
nuclear@1
|
3 #include "ui_server.h"
|
nuclear@1
|
4 #include "rollwidget.h"
|
nuclear@1
|
5 #include "main.h"
|
nuclear@0
|
6
|
nuclear@1
|
7 MainWindow::MainWindow(QWidget *parent)
|
nuclear@1
|
8 : QMainWindow(parent),
|
nuclear@1
|
9 ui(new Ui::MainWindow)
|
nuclear@0
|
10 {
|
nuclear@1
|
11 ui->setupUi(this);
|
nuclear@1
|
12
|
nuclear@1
|
13 dicebox = new QVBoxLayout;
|
nuclear@1
|
14 ui->sarea_main_cont->setLayout(dicebox);
|
nuclear@1
|
15
|
nuclear@1
|
16 connect(ui->bn_add, SIGNAL(clicked()), this, SLOT(add_dice()));
|
nuclear@1
|
17 connect(ui->bn_clear, SIGNAL(clicked()), this, SLOT(clear_dice()));
|
nuclear@1
|
18 connect(ui->bn_roll_all, SIGNAL(clicked()), this, SLOT(roll_all()));
|
nuclear@1
|
19
|
nuclear@1
|
20 //connect(ui->action_connect, SIGNAL(triggered()), this, SLOT(start_client()));
|
nuclear@1
|
21 //connect(ui->action_start_server, SIGNAL(triggered()), this, SLOT(start_server()));
|
nuclear@0
|
22 }
|
nuclear@0
|
23
|
nuclear@0
|
24 MainWindow::~MainWindow()
|
nuclear@0
|
25 {
|
nuclear@1
|
26 delete ui;
|
nuclear@0
|
27 }
|
nuclear@1
|
28
|
nuclear@1
|
29
|
nuclear@1
|
30 void MainWindow::roll_all()
|
nuclear@1
|
31 {
|
nuclear@1
|
32 for(int i=0; i<dicebox->count() - 1; i++) {
|
nuclear@1
|
33 RollWidget *roll = (RollWidget*)dicebox->itemAt(i)->widget();
|
nuclear@1
|
34 roll->roll();
|
nuclear@1
|
35 }
|
nuclear@1
|
36 }
|
nuclear@1
|
37
|
nuclear@1
|
38
|
nuclear@1
|
39 void MainWindow::add_dice()
|
nuclear@1
|
40 {
|
nuclear@1
|
41 RollWidget *w = new RollWidget;
|
nuclear@1
|
42 dicebox->takeAt(dicebox->count() - 1);
|
nuclear@1
|
43 dicebox->addWidget(w);
|
nuclear@1
|
44 dicebox->addStretch();
|
nuclear@1
|
45
|
nuclear@1
|
46 Roll *roll = new Roll;
|
nuclear@1
|
47 roll->set_sides(4);
|
nuclear@1
|
48 dice.push_back(roll);
|
nuclear@1
|
49 w->set_roll(roll);
|
nuclear@1
|
50 }
|
nuclear@1
|
51
|
nuclear@1
|
52 void MainWindow::clear_dice()
|
nuclear@1
|
53 {
|
nuclear@1
|
54 while(!dicebox->isEmpty()) {
|
nuclear@1
|
55 RollWidget *roll = (RollWidget*)dicebox->takeAt(0)->widget();
|
nuclear@1
|
56 delete roll;
|
nuclear@1
|
57 }
|
nuclear@1
|
58
|
nuclear@1
|
59 for(size_t i=0; i<dice.size(); i++) {
|
nuclear@1
|
60 delete dice[i];
|
nuclear@1
|
61 }
|
nuclear@1
|
62 dice.clear();
|
nuclear@1
|
63 }
|
nuclear@1
|
64
|
nuclear@1
|
65 void MainWindow::start_client()
|
nuclear@1
|
66 {
|
nuclear@1
|
67 Ui::ServerDialog *dlg = new Ui::ServerDialog;
|
nuclear@1
|
68 dlg->setupUi(0);
|
nuclear@1
|
69 }
|
nuclear@1
|
70
|
nuclear@1
|
71 void MainWindow::start_server()
|
nuclear@1
|
72 {
|
nuclear@1
|
73 }
|