download
[badge] / dialogday.cpp
1 #include "dialogday.h"
2 #include "ui_dialogday.h"
3 #include <QDebug>
4
5 DialogDay::DialogDay(QWidget *parent) :
6     QDialog(parent),
7     m_ui(new Ui::DialogDay)
8 {
9     m_ui->setupUi(this);
10 }
11
12 DialogDay::~DialogDay()
13 {
14     delete m_ui;
15 }
16
17 void DialogDay::changeEvent(QEvent *e)
18 {
19     QDialog::changeEvent(e);
20     switch (e->type()) {
21     case QEvent::LanguageChange:
22         m_ui->retranslateUi(this);
23         break;
24     default:
25         break;
26     }
27 }
28
29 void DialogDay::enableFirst(bool enable)
30 {
31     m_ui->timeEditFBegin->setEnabled(enable);
32     m_ui->timeEditEndF->setEnabled(enable);
33 }
34
35 void DialogDay::enableSecond(bool enable)
36 {
37     m_ui->timeEditSBegin->setEnabled(enable);
38     m_ui->timeEditEndS->setEnabled(enable);
39 }
40
41
42 TimeTable DialogDay::getTimes(TimeTable timetable)
43 {
44
45     m_ui->timeEditEntrance->setTime(timetable.entrance);
46     m_ui->timeEditExit->setTime(timetable.exit);
47     m_ui->checkBoxFirst->setChecked(false);
48     m_ui->checkBoxSecond->setChecked(false);
49
50     if (timetable.firstPause != timetable.endFirstPause) {
51         m_ui->checkBoxFirst->setChecked(true);
52         m_ui->timeEditFBegin->setTime(timetable.firstPause);
53         m_ui->timeEditFBegin->setEnabled(true);
54         m_ui->timeEditEndF->setTime(timetable.endFirstPause);
55         m_ui->timeEditEndF->setEnabled(true);
56     }
57     if (timetable.secondPause != timetable.endSecondPause) {
58         m_ui->checkBoxSecond->setChecked(true);
59         m_ui->timeEditSBegin->setTime(timetable.secondPause);
60         m_ui->timeEditSBegin->setEnabled(true);
61         m_ui->timeEditEndS->setTime(timetable.endSecondPause);
62         m_ui->timeEditEndS->setEnabled(true);
63     }
64
65
66     if (this->exec() == QDialog::Accepted) {
67
68             timetable.entrance = m_ui->timeEditEntrance->time();
69             timetable.exit = m_ui->timeEditExit->time();
70         if (m_ui->checkBoxFirst->isChecked()) {
71             timetable.firstPause = m_ui->timeEditFBegin->time();
72             timetable.endFirstPause = m_ui->timeEditEndF->time();
73         }
74         if (m_ui->checkBoxSecond->isChecked()) {
75             timetable.secondPause = m_ui->timeEditSBegin->time();
76             timetable.endSecondPause = m_ui->timeEditEndS->time();
77         }
78         return timetable;
79     }
80     timetable.setWrong(true);
81     return timetable;
82 }
83
84