forked from IPP-Projekt/Uczelnia_z_bibloteka_klas
-
Notifications
You must be signed in to change notification settings - Fork 0
/
dodaj_dialog.cpp
74 lines (65 loc) · 1.95 KB
/
dodaj_dialog.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include "dodaj_dialog.h"
#include "ui_dodaj_dialog.h"
#include <QSqlTableModel>
#include <QSqlRecord>
#include <QSqlField>
Dodaj_dialog::Dodaj_dialog( UczelniaDB* uczelniaPointer, QWidget *parent) :
QDialog(parent),
ui(new Ui::Dodaj_dialog)
{
setUczelnia(uczelniaPointer);
ui->setupUi(this);
QList<QString> listaGrup;
QSqlTableModel* model = uczelnia->getModel(1);
for(int i = 0; i < model->rowCount(); i++){
listaGrup.append(model->record(i).value(1).toString());
}
ui->comboBox->addItems(listaGrup);
}
Dodaj_dialog::~Dodaj_dialog()
{
delete ui;
}
void Dodaj_dialog::setUczelnia(UczelniaDB* uczelniaPointer)
{
uczelnia = uczelniaPointer;
}
void Dodaj_dialog::nowyrekord()
{
QString tekstImie = ui->txtbox_imie->text();
QString tekstNazwisko = ui->txtbox_nazwisko->text();
QSqlRecord rekord = uczelnia->getModel(0)->record();
rekord.setValue("Id",DatabaseLibrary::cGenerateIndex(uczelnia->getModel(0)));
rekord.setValue("Imie",tekstImie);
rekord.setValue("Nazwisko",tekstNazwisko);
rekord.setValue("Srednia","");
if(grupa == true)
rekord.setValue("Id_Grupy", "");
else
rekord.setValue("Id_Grupy", idGrupy);
DatabaseLibrary::cInsertRecord(uczelnia->getModel(0),rekord);
}
void Dodaj_dialog::on_buttonBox_accepted()
{
nowyrekord();
}
void Dodaj_dialog::on_checkBoxGrupa_clicked(bool checked)
{
grupa = checked;
ui->comboBox->setDisabled(checked);
if(checked)
ui->labelGrupa->clear();
else
on_comboBox_currentIndexChanged(ui->comboBox->currentIndex());
}
void Dodaj_dialog::on_comboBox_currentIndexChanged(int index)
{
idGrupy = index;
QString entry = "";
QSqlRecord record = uczelnia->getModel(1)->record(index);
for(int i = 0; i < uczelnia->getModel(1)->columnCount(); i++){
entry += (record.fieldName(i) + ": ");
entry += (record.value(i).toString() + " ");
}
ui->labelGrupa->setText(entry);
}