Хранилища Subversion OpenInventory

Редакция

Редакция 62 | Редакция 64 | К новейшей редакции | Только различия | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS

Редакция 62 Редакция 63
1
#include "classeditor.h"
1
#include "classeditor.h"
2
#include "ui_classeditor.h"
2
#include "ui_classeditor.h"
3
3
4
4
5
ClassEditor::ClassEditor(QWidget *parent) :
5
ClassEditor::ClassEditor(QWidget *parent) :
6
    QMainWindow(parent),
6
    QMainWindow(parent),
7
    ui(new Ui::ClassEditor)
7
    ui(new Ui::ClassEditor)
8
{
8
{
9
    ui->setupUi(this);
9
    ui->setupUi(this);
10
10
11
   
11
   
12
   
12
   
13
    //    settdialog = new SettingsDialog(this);
13
    //    settdialog = new SettingsDialog(this);
14
  /////////////////////////////////////////////////////  settdialog.show();
14
  /////////////////////////////////////////////////////  settdialog.show();
15
    sql.setDatabaseName(tr("an_db"));
15
    sql.setDatabaseName(tr("an_db"));
16
16
17
/*
17
/*
18
    field = new TableField(tr("Ñîòðóäíèêè"), this);
18
    field = new TableField(tr("Ñîòðóäíèêè"), this);
19
    field->setNotNull(true);
19
    field->setNotNull(true);
20
    field->setDefaultValue(tr("ñîòðóäíèê"));
20
    field->setDefaultValue(tr("ñîòðóäíèê"));
21

21

22
    table = new SqlTable (tr("NewTable"), this);
22
    table = new SqlTable (tr("NewTable"), this);
23
    table->setName(tr("NewTable"));
23
    table->setName(tr("NewTable"));
24
    table->fields().at(0)->setNotNull(true);
24
    table->fields().at(0)->setNotNull(true);
25
    if (!(table->setPrimaryKey(tr("ID")))) {
25
    if (!(table->setPrimaryKey(tr("ID")))) {
26
         ui->label_3->setText(table->lastError());
26
         ui->label_3->setText(table->lastError());
27
    }
27
    }
28
    else  ui->label_3->setText(table->primaryKey());
28
    else  ui->label_3->setText(table->primaryKey());
29
    table->append(field);
29
    table->append(field);
30

30

31
    field = new TableField(tr("Êîìïüþòåðû"), this);
31
    field = new TableField(tr("Êîìïüþòåðû"), this);
32
    field->setNotNull(true);
32
    field->setNotNull(true);
33
    field->setDefaultValue(tr("êîìïüþòåð"));
33
    field->setDefaultValue(tr("êîìïüþòåð"));
34
    table->append(field);
34
    table->append(field);
35

35

36
    field = new TableField(tr("Ìîíèòîðû"), this);
36
    field = new TableField(tr("Ìîíèòîðû"), this);
37
    field->setNotNull(true);
37
    field->setNotNull(true);
38
    field->setDefaultValue(tr("ìîíèòîð"));
38
    field->setDefaultValue(tr("ìîíèòîð"));
39
    table->append(field);
39
    table->append(field);
40

40

41
    field = new TableField(tr("Êîëè÷åñòâî (øòóê)"), this);
41
    field = new TableField(tr("Êîëè÷åñòâî (øòóê)"), this);
42
    field->setNotNull(true);
42
    field->setNotNull(true);
43
    field->setType(tr("INTEGER"));
43
    field->setType(tr("INTEGER"));
44
    field->setDefaultValue(tr("1"));
44
    field->setDefaultValue(tr("1"));
45
    table->append(field);
45
    table->append(field);
46

46

47
    field = new TableField(tr("Äåíü ðîæäåíèÿ"), this);
47
    field = new TableField(tr("Äåíü ðîæäåíèÿ"), this);
48
    field->setNotNull(false);
48
    field->setNotNull(false);
49
    field->setType(tr("DATE"));
49
    field->setType(tr("DATE"));
50
    field->setDefaultValue(tr("NULL"));
50
    field->setDefaultValue(tr("NULL"));
51
    table->append(field);
51
    table->append(field);
52

52

53
    ui->label_2->setText(table->name());
53
    ui->label_2->setText(table->name());
54
    ui->label->setText(table->fields().at(0)->sqlString());
54
    ui->label->setText(table->fields().at(0)->sqlString());
55
    ui->label_4->setText(table->sqlString());
55
    ui->label_4->setText(table->sqlString());
56
   ////// ui->lineEdit->insert(table->sqlString());
56
   ////// ui->lineEdit->insert(table->sqlString());
57

57

58
*/
58
*/
59
    /**********************************************
59
    /**********************************************
60

60

61
    QTextDocument *document;
61
    QTextDocument *document;
62
    // = ui->textEdit->document();
62
    // = ui->textEdit->document();
63
    QTextCursor *cursor;
63
    QTextCursor *cursor;
64

64

65
    document = ui->textEdit->document();
65
    document = ui->textEdit->document();
66
    cursor = new QTextCursor(document);
66
    cursor = new QTextCursor(document);
67
    cursor->movePosition(QTextCursor::Start);
67
    cursor->movePosition(QTextCursor::Start);
68
QTextCharFormat format(cursor->charFormat());
68
QTextCharFormat format(cursor->charFormat());
69
//format.setFontFamily("Courier");
69
//format.setFontFamily("Courier");
70
format.setFontFamily("Arial");
70
format.setFontFamily("Arial");
71
//format.setFontItalic(false);
71
//format.setFontItalic(false);
72

72

73
format.setFontWeight(QFont::Normal);
73
format.setFontWeight(QFont::Normal);
74
QTextCharFormat boldFormat = format;
74
QTextCharFormat boldFormat = format;
75
boldFormat.setFontWeight(QFont::Bold);
75
boldFormat.setFontWeight(QFont::Bold);
76

76

77
QTextCharFormat italicFormat = format;
77
QTextCharFormat italicFormat = format;
78
//format.setFontFamily("Courier");
78
//format.setFontFamily("Courier");
79
//     format.setFontFamily("Arial");
79
//     format.setFontFamily("Arial");
80
italicFormat.setFontItalic(true);
80
italicFormat.setFontItalic(true);
81

81

82
cursor->insertText(table->sqlString(), format);
82
cursor->insertText(table->sqlString(), format);
83

83

84
****************************************************/
84
****************************************************/
85
85
86
QString errorString;
86
QString errorString;
87
87
88
sql.setDatabaseName(tr("an_db"));
88
sql.setDatabaseName(tr("an_db"));
89
sql.setHostName(tr("localhost"));
89
sql.setHostName(tr("localhost"));
90
sql.setUserName(tr("an"));
90
sql.setUserName(tr("an"));
91
sql.setPassword(tr("393939"));
91
sql.setPassword(tr("393939"));
92
92
93
bool ok;
93
bool ok;
94
ok = sql.connect();
94
ok = sql.connect();
95
if (!ok) {
95
if (!ok) {
96
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
96
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
97
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
97
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
98
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
98
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
99
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
99
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
100
100
101
                     }
101
                     }
102
else {
102
else {
103
103
104
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
104
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
105
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
105
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
106
                                                    QObject::tr("Database Connect"),   // Çàãîëîâîê.
106
                                                    QObject::tr("Database Connect"),   // Çàãîëîâîê.
107
                                                    QObject::tr("Ñîåäèíåíèå ñ áàçîé äàííûõ óñïåøíî óñòàíîâëåíî."));         // Òåêñò ñîîáùåíèÿ.
107
                                                    QObject::tr("Ñîåäèíåíèå ñ áàçîé äàííûõ óñïåøíî óñòàíîâëåíî."));         // Òåêñò ñîîáùåíèÿ.
108
108
109
109
110
110
111
111
112
112
113
}
113
}
114
114
115
/*
115
/*
116
ok = sql.createTable(table);
116
ok = sql.createTable(table);
117
if (!ok) {
117
if (!ok) {
118
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
118
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
119
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
119
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
120
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
120
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
121
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
121
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
122
         }
122
         }
123
else {
123
else {
124

124

125
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
125
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
126
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
126
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
127
                                                    QObject::tr("Database Connect"),   // Çàãîëîâîê.
127
                                                    QObject::tr("Database Connect"),   // Çàãîëîâîê.
128
                                                    QObject::tr("Òàáëèöà â áàçå äàííûõ óñïåøíî ñîçäàíà."));         // Òåêñò ñîîáùåíèÿ.
128
                                                    QObject::tr("Òàáëèöà â áàçå äàííûõ óñïåøíî ñîçäàíà."));         // Òåêñò ñîîáùåíèÿ.
129
     }
129
     }
130

130

131

131

132

132

133
*/
133
*/
134
134
135
ok = sql.createListOfClassesTable();
135
ok = sql.createListOfClassesTable();
136
136
137
if (!ok) {
137
if (!ok) {
138
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
138
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
139
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
139
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
140
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
140
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
141
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
141
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
142
142
143
                     }
143
                     }
144
else {
144
else {
145
145
146
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
146
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
147
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
147
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
148
                                                    QObject::tr("Database Create"),   // Çàãîëîâîê.
148
                                                    QObject::tr("Database Create"),   // Çàãîëîâîê.
149
                                                    QObject::tr("Áàçà äàííûõ óñïåøíî ñîçäàíà."));         // Òåêñò ñîîáùåíèÿ.
149
                                                    QObject::tr("Áàçà äàííûõ óñïåøíî ñîçäàíà."));         // Òåêñò ñîîáùåíèÿ.
150
    }
150
    }
151
151
152
152
153
153
154
154
155
ok = sql.createDescriptionOfClassesTable();
155
ok = sql.createDescriptionOfClassesTable();
156
156
157
if (!ok) {
157
if (!ok) {
158
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
158
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
159
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
159
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
160
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
160
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
161
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
161
                                                                            sql.lasError());         // Òåêñò ñîîáùåíèÿ.
162
162
163
                     }
163
                     }
164
else {
164
else {
165
165
166
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
166
    QMessageBox::information( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
167
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
167
                                                    this,                      // Ðîäèòåëüñêèé âèäæåò.
168
                                                    QObject::tr("Database Create"),   // Çàãîëîâîê.
168
                                                    QObject::tr("Database Create"),   // Çàãîëîâîê.
169
                                                    QObject::tr("Áàçà äàííûõ óñïåøíî ñîçäàíà."));         // Òåêñò ñîîáùåíèÿ.
169
                                                    QObject::tr("Áàçà äàííûõ óñïåøíî ñîçäàíà."));         // Òåêñò ñîîáùåíèÿ.
170
    }
170
    }
171
171
172
172
173
173
174
174
175
175
176
176
177
177
178
/////////////////model = new QSqlTableModel(this);
178
/////////////////model = new QSqlTableModel(this);
179
mymodel = new MyModel(this);
179
mymodel = new MyModel(this);
180
//modelForDescription = new QSqlTableModel(this);
180
//modelForDescription = new QSqlTableModel(this);
181
modelForDescription = new ModelForDescriptionTable(this);
181
modelForDescription = new ModelForDescriptionTable(this);
182
182
183
183
184
/////////////////model->setTable(tr("ListOfClasses"));
184
/////////////////model->setTable(tr("ListOfClasses"));
185
mymodel->setTable(tr("ListOfClasses"));
185
mymodel->setTable(tr("ListOfClasses"));
186
modelForDescription->setTable(tr("DescriptionOfClasses"));
186
modelForDescription->setTable(tr("DescriptionOfClasses"));
187
modelForDescription->setEditStrategy(QSqlTableModel::OnFieldChange);
187
modelForDescription->setEditStrategy(QSqlTableModel::OnFieldChange);
188
188
189
/////model->setEditStrategy(QSqlTableModel::OnManualSubmit);
189
/////model->setEditStrategy(QSqlTableModel::OnManualSubmit);
190
190
191
/*
191
/*
192
model->setEditStrategy(QSqlTableModel::OnFieldChange);
192
model->setEditStrategy(QSqlTableModel::OnFieldChange);
193
mymodel->setEditStrategy(QSqlTableModel::OnFieldChange);
193
mymodel->setEditStrategy(QSqlTableModel::OnFieldChange);
194
*/
194
*/
195
195
196
196
197
//////////////////model->setSort(0, Qt::AscendingOrder);
197
//////////////////model->setSort(0, Qt::AscendingOrder);
198
mymodel->setSort(0, Qt::AscendingOrder);
198
mymodel->setSort(0, Qt::AscendingOrder);
199
modelForDescription->setSort(0, Qt::AscendingOrder);
199
modelForDescription->setSort(0, Qt::AscendingOrder);
200
200
201
201
202
//       model->setFilter(tr("Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = '7' and Èíâåíòàðíûé_íîìåð = 'i09090909'"));
202
//       model->setFilter(tr("Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = '7' and Èíâåíòàðíûé_íîìåð = 'i09090909'"));
203
////////////////////model->select();
203
////////////////////model->select();
204
mymodel->select();
204
mymodel->select();
205
modelForDescription->setFilter(tr("ClassIdentifer = 1"));
205
modelForDescription->setFilter(tr("ClassIdentifer = 1"));
206
modelForDescription->select();
206
modelForDescription->select();
207
207
208
208
209
/////////////////////////model->setHeaderData(1, Qt::Horizontal, tr("Èìÿ êëàññà"));
209
/////////////////////////model->setHeaderData(1, Qt::Horizontal, tr("Èìÿ êëàññà"));
210
mymodel->setHeaderData(1, Qt::Horizontal, tr("Èìÿ êëàññà"));
210
mymodel->setHeaderData(1, Qt::Horizontal, tr("Èìÿ êëàññà"));
211
211
212
212
213
213
214
////////////////////////model->setHeaderData(2, Qt::Horizontal, tr("Ïñåâäîíèì êëàññà"));
214
////////////////////////model->setHeaderData(2, Qt::Horizontal, tr("Ïñåâäîíèì êëàññà"));
215
mymodel->setHeaderData(2, Qt::Horizontal, tr("Ïñåâäîíèì êëàññà"));
215
mymodel->setHeaderData(2, Qt::Horizontal, tr("Ïñåâäîíèì êëàññà"));
216
mymodel->setHeaderData(4, Qt::Horizontal, tr("Êîìåíòàðèé"));
216
mymodel->setHeaderData(4, Qt::Horizontal, tr("Êîìåíòàðèé"));
217
217
218
//ui->tableView->setModel(model);
218
//ui->tableView->setModel(model);
219
ui->tableView->setModel(mymodel);
219
ui->tableView->setModel(mymodel);
220
//tableForDescription = new QTableView();
220
//tableForDescription = new QTableView();
221
ui->tableView_2->setModel(modelForDescription);
221
ui->tableView_2->setModel(modelForDescription);
222
ui->tableView_2->setAlternatingRowColors(true);
222
ui->tableView_2->setAlternatingRowColors(true);
223
ui->tableView_2->resizeColumnsToContents();
223
ui->tableView_2->resizeColumnsToContents();
224
//tableForDescription->show();
224
//tableForDescription->show();
225
225
226
226
227
ui->tableView->setAlternatingRowColors(true);
227
ui->tableView->setAlternatingRowColors(true);
228
ui->tableView->resizeColumnsToContents();
228
ui->tableView->resizeColumnsToContents();
229
ui->tableView->hideColumn(0);
229
ui->tableView->hideColumn(0);
230
ui->tableView->hideColumn(3);
230
ui->tableView->hideColumn(3);
231
ui->tableView->hideColumn(2);
231
ui->tableView->hideColumn(2);
232
232
233
ui->tableView_2->hideColumn(0);
233
ui->tableView_2->hideColumn(0);
234
ui->tableView_2->hideColumn(5);
234
ui->tableView_2->hideColumn(5);
235
ui->tableView_2->hideColumn(2);
235
ui->tableView_2->hideColumn(2);
236
236
237
currIndexOfClassesTable = modelForDescription->index(0, 1);
237
currIndexOfClassesTable = modelForDescription->index(0, 1);
238
QModelIndex index_temp;
238
QModelIndex index_temp;
239
239
240
currClassID = mymodel->data(mymodel->index(0,0)).toString();
240
currClassID = mymodel->data(mymodel->index(0,0)).toString();
241
QItemSelectionModel *selectionModel = ui->tableView->selectionModel();
241
QItemSelectionModel *selectionModel = ui->tableView->selectionModel();
242
242
243
QModelIndex topLeft;
243
QModelIndex topLeft;
244
QModelIndex bottomRight;
244
QModelIndex bottomRight;
245
245
246
     topLeft = mymodel->index(0, 0, QModelIndex());
246
     topLeft = mymodel->index(0, 0, QModelIndex());
247
     bottomRight = mymodel->index(0, 1, QModelIndex());
247
     bottomRight = mymodel->index(0, 1, QModelIndex());
248
248
249
QItemSelection selection(topLeft, bottomRight);
249
QItemSelection selection(topLeft, bottomRight);
250
selectionModel->select(selection, QItemSelectionModel::Select);
250
selectionModel->select(selection, QItemSelectionModel::Select);
251
251
252
252
253
253
254
//connect(ui->tableView, SIGNAL(clicked(const QModelIndex)), this, SLOT(on_tableView_clicked(const QModelIndex)));
254
//connect(ui->tableView, SIGNAL(clicked(const QModelIndex)), this, SLOT(on_tableView_clicked(const QModelIndex)));
255
connect(mymodel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_myModel_dataChanged(QModelIndex,QModelIndex)));
255
connect(mymodel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_myModel_dataChanged(QModelIndex,QModelIndex)));
256
connect(modelForDescription, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_modelForDescription_dataChanged(QModelIndex,QModelIndex)));
256
connect(modelForDescription, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_modelForDescription_dataChanged(QModelIndex,QModelIndex)));
257
257
258
}
258
}
259
259
260
260
261
261
262
262
263
263
264
264
265
265
266
266
267
267
268
268
269
269
270
ClassEditor::~ClassEditor()
270
ClassEditor::~ClassEditor()
271
{
271
{
272
    delete ui;
272
    delete ui;
273
 //    delete field;
273
 //    delete field;
274
   // delete settdialog;
274
   // delete settdialog;
275
}
275
}
276
276
277
void ClassEditor::changeEvent(QEvent *e)
277
void ClassEditor::changeEvent(QEvent *e)
278
{
278
{
279
    QMainWindow::changeEvent(e);
279
    QMainWindow::changeEvent(e);
280
    switch (e->type()) {
280
    switch (e->type()) {
281
    case QEvent::LanguageChange:
281
    case QEvent::LanguageChange:
282
        ui->retranslateUi(this);
282
        ui->retranslateUi(this);
283
        break;
283
        break;
284
    default:
284
    default:
285
        break;
285
        break;
286
    }
286
    }
287
}
287
}
288
288
289
289
290
290
291
void  ClassEditor::addNewClass(){
291
void  ClassEditor::addNewClass(){
292
292
293
    int row = model->rowCount();
293
    int row = model->rowCount();
294
294
295
    model->insertRows(row, 1);
295
    model->insertRows(row, 1);
296
    model->setData(model->index(row, 1), tr("New class")); // ïðèñâàèâàåì íîâîå çíà÷åíèå ïîëþ "èìÿ êëàññà"
296
    model->setData(model->index(row, 1), tr("New class")); // ïðèñâàèâàåì íîâîå çíà÷åíèå ïîëþ "èìÿ êëàññà"
297
297
298
298
299
    // model->setData(model->index(row, 1), tr("Âàñÿ Ïóïê  èí"));
299
    // model->setData(model->index(row, 1), tr("Âàñÿ Ïóïê  èí"));
300
    // model->setData(model->index(row, 2) , tr("Ìóõîñðà  íñê, Çàæîïèíñêèå âûñåëêè ä 1"));
300
    // model->setData(model->index(row, 2) , tr("Ìóõîñðà  íñê, Çàæîïèíñêèå âûñåëêè ä 1"));
301
301
302
302
303
    model->submitAll();
303
    model->submitAll();
304
304
305
    row = model->rowCount();
305
    row = model->rowCount();
306
    QString tmp_str;
306
    QString tmp_str;
307
    int i_tmp;
307
    int i_tmp;
308
    i_tmp = model->data(model->index(row-1, 0)).toInt();
308
    i_tmp = model->data(model->index(row-1, 0)).toInt();
309
    tmp_str = model->data(model->index(row-1, 0)).toString(); // ãåíåðèì èìÿ òàáëèöû-õðàíèëèùà îáúåêòîâ êëàññà
309
    tmp_str = model->data(model->index(row-1, 0)).toString(); // ãåíåðèì èìÿ òàáëèöû-õðàíèëèùà îáúåêòîâ êëàññà
310
310
311
    tmp_str.append(tr("_Inctance"));
311
    tmp_str.append(tr("_Inctance"));
312
    model->setData(model->index(row-1, 3), tmp_str );  // è çàíîñèì çíà÷åíèå â òàáëèöó
312
    model->setData(model->index(row-1, 3), tmp_str );  // è çàíîñèì çíà÷åíèå â òàáëèöó
313
313
314
    model->submitAll();
314
    model->submitAll();
315
    mymodel->select();
315
    mymodel->select();
316
316
317
317
318
}
318
}
319
319
320
320
321
void  ClassEditor::addNewClass_new(){
321
void  ClassEditor::addNewClass_new(){
322
322
323
    int row = mymodel->rowCount();
323
    int row = mymodel->rowCount();
324
324
325
    mymodel->insertRows(row, 1);
325
    mymodel->insertRows(row, 1);
326
    mymodel->setData(mymodel->index(row, 1), QVariant(tr("New classs")), Qt::EditRole); // ïðèñâàèâàåì íîâîå çíà÷åíèå ïîëþ "èìÿ êëàññà"
326
    mymodel->setData(mymodel->index(row, 1), QVariant(tr("New classs")), Qt::EditRole); // ïðèñâàèâàåì íîâîå çíà÷åíèå ïîëþ "èìÿ êëàññà"
327
327
328
    mymodel->submitAll();
328
    mymodel->submitAll();
329
329
330
    row = mymodel->rowCount();
330
    row = mymodel->rowCount();
331
    QString tmp_str1;
331
    QString tmp_str1;
332
    int i_tmp1;
332
    int i_tmp1;
333
    i_tmp1 = mymodel->data(mymodel->index(row-1, 0)).toInt();
333
    i_tmp1 = mymodel->data(mymodel->index(row-1, 0)).toInt();
334
    tmp_str1 = mymodel->data(mymodel->index(row-1, 0)).toString(); // ãåíåðèì èìÿ òàáëèöû-õðàíèëèùà îáúåêòîâ êëàññà
334
    tmp_str1 = mymodel->data(mymodel->index(row-1, 0)).toString(); // ãåíåðèì èìÿ òàáëèöû-õðàíèëèùà îáúåêòîâ êëàññà
335
335
336
    tmp_str1.append(tr("_Inctance"));
336
    tmp_str1.append(tr("_Inctance"));
337
    mymodel->setData(mymodel->index(row-1, 3), QVariant(tmp_str1), Qt::EditRole);  // è çàíîñèì çíà÷åíèå â òàáëèöó
337
    mymodel->setData(mymodel->index(row-1, 3), QVariant(tmp_str1), Qt::EditRole);  // è çàíîñèì çíà÷åíèå â òàáëèöó
338
338
339
    // model->setData(model->index(row, 1), tr("Âàñÿ Ïóïê  èí"));
339
    // model->setData(model->index(row, 1), tr("Âàñÿ Ïóïê  èí"));
340
    // model->setData(model->index(row, 2) , tr("Ìóõîñðà  íñê, Çàæîïèíñêèå âûñåëêè ä 1"));
340
    // model->setData(model->index(row, 2) , tr("Ìóõîñðà  íñê, Çàæîïèíñêèå âûñåëêè ä 1"));
341
341
342
342
343
    //mymodel->submitAll();
343
    //mymodel->submitAll();
344
344
345
    //row = mymodel->rowCount();
345
    //row = mymodel->rowCount();
346
346
347
347
348
  //mymodel->select();
348
  //mymodel->select();
349
349
350
350
351
}
351
}
352
352
353
353
354
void ClassEditor::addNewField(){
354
void ClassEditor::addNewField(){
355
    // QSqlRecord rec = mymodel->record(1);
355
    // QSqlRecord rec = mymodel->record(1);
356
     //bool ok;
356
     //bool ok;
357
     //ok = rec.isEmpty();
357
     //ok = rec.isEmpty();
358
     //QString currientClassID;
358
     //QString currientClassID;
359
     //currientClassID = rec.value(1).toString();
359
     //currientClassID = rec.value(1).toString();
360
    int row = modelForDescription->rowCount();
360
    int row = modelForDescription->rowCount();
361
    modelForDescription->insertRows(row, 1);
361
    modelForDescription->insertRows(row, 1);
362
    modelForDescription->setData(modelForDescription->index(row, 5), QVariant(currClassID), Qt::EditRole);
362
    modelForDescription->setData(modelForDescription->index(row, 5), QVariant(currClassID), Qt::EditRole);
363
    modelForDescription->setData(modelForDescription->index(row, 4), QVariant(tr("NULL")), Qt::EditRole);
363
    modelForDescription->setData(modelForDescription->index(row, 4), QVariant(tr("NULL")), Qt::EditRole);
364
364
365
    modelForDescription->submitAll();
365
    modelForDescription->submitAll();
366
}
366
}
367
367
368
368
369
369
370
370
371
371
372
372
373
373
374
374
375
375
376
376
377
377
378
void ClassEditor::on_pushButton_clicked(){
378
void ClassEditor::on_pushButton_clicked(){
379
//int i;
379
//int i;
380
//i++;
380
//i++;
381
/////ClassEditor::addNewClass();
381
/////ClassEditor::addNewClass();
382
ClassEditor::addNewClass_new();
382
ClassEditor::addNewClass_new();
383
 mymodel->select();
383
 mymodel->select();
384
//ui->tableView->setModel(mymodel);
384
//ui->tableView->setModel(mymodel);
385
385
386
}
386
}
387
387
388
void ClassEditor::on_tableView_clicked(const QModelIndex & index ){
388
void ClassEditor::on_tableView_clicked(const QModelIndex & index ){
389
    int i, row, column;
389
    int i, row, column;
390
    i++;
390
    i++;
391
    row = index.row();
391
    row = index.row();
392
    column = index.column();
392
    column = index.column();
393
    currIndexOfClassesTable = index;
393
    currIndexOfClassesTable = index;
394
    QModelIndex index_tmp;
394
    QModelIndex index_tmp;
395
    QString tmp_str, filter_str;
395
    QString tmp_str, filter_str;
396
   index_tmp = ui->tableView->model()->index(row, 0);
396
   index_tmp = ui->tableView->model()->index(row, 0);
397
   tmp_str = ui->tableView->model()->data(index_tmp).toString();
397
   tmp_str = ui->tableView->model()->data(index_tmp).toString();
398
   currClassID = tmp_str;
398
   currClassID = tmp_str;
399
  // ui->label->setText(QVariant(currIndexOfClassesTable.row()).toString());
399
  // ui->label->setText(QVariant(currIndexOfClassesTable.row()).toString());
400
   filter_str = tr("ClassIdentifer = ");
400
   filter_str = tr("ClassIdentifer = ");
401
   filter_str.append(tmp_str);
401
   filter_str.append(tmp_str);
402
   modelForDescription->setFilter(filter_str);
402
   modelForDescription->setFilter(filter_str);
403
   ui->tableView_2->resizeColumnsToContents();
403
   ui->tableView_2->resizeColumnsToContents();
404
   i++;
404
   i++;
405
}
405
}
406
406
407
407
408
408
409
void ClassEditor::on_pushButton_2_clicked(){
409
void ClassEditor::on_pushButton_2_clicked(){
410
    int i;
410
    int i;
411
    i++;
411
    i++;
412
412
413
}
413
}
414
414
415
void ClassEditor::on_pushButton_3_clicked(){         // îáðàáîò÷èê íàæàòèÿ êíîïêè "Íîâîå ïîëå"
415
void ClassEditor::on_pushButton_3_clicked(){         // îáðàáîò÷èê íàæàòèÿ êíîïêè "Íîâîå ïîëå"
416
    int i;
416
    int i;
417
    i++;
417
    i++;
418
    ClassEditor::addNewField();
418
    ClassEditor::addNewField();
419
    ClassEditor::modelForDescription->select();
419
    ClassEditor::modelForDescription->select();
420
}
420
}
421
void ClassEditor::on_pushButton_4_clicked(){         // îáðàáîò÷èê íàæàòèÿ êíîïêè "Óäàëèòü ïîëå"
421
void ClassEditor::on_pushButton_4_clicked(){         // îáðàáîò÷èê íàæàòèÿ êíîïêè "Óäàëèòü ïîëå"
422
    int i;
422
    int i;
423
    i++;
423
    i++;
424
    QModelIndex model_index;
424
    QModelIndex model_index;
425
    QItemSelectionModel *selectionModel = ui->tableView->selectionModel();
425
    QItemSelectionModel *selectionModel = ui->tableView_2->selectionModel();
426
    QModelIndexList indexes = selectionModel->selectedIndexes();
426
    QModelIndexList indexes = selectionModel->selectedIndexes();
427
    //model_index = mymodel->selec;
427
    //model_index = mymodel->selec;
428
    //modelList = ui->tableView->SelectItems;
428
    //modelList = ui->tableView->SelectItems;
429
    i = indexes.size();
429
    i = indexes.size();
-
 
430
    QList<int> selectedRows;
-
 
431
    selectedRows.clear();
-
 
432
    foreach (model_index, indexes){ // ñïèñîê âñåõ âûäåëåííûõ ñòðîê
-
 
433
        if (!selectedRows.contains(model_index.row()))  selectedRows.append(model_index.row());
-
 
434
-
 
435
    }
-
 
436
    i = selectedRows.size();
430
437
431
    if (i > 0) model_index = indexes.at(0);
438
    if (i > 0) model_index = indexes.at(0);
432
    i++;
439
    i++;
433
}
440
}
434
441
435
442
-
 
443
void ClassEditor::on_pushButton_5_clicked(){         // îáðàáîò÷èê íàæàòèÿ êíîïêè "Óäàëèòü âñå ïîëÿ"
-
 
444
int row;
-
 
445
row = ClassEditor::modelForDescription->rowCount();
-
 
446
ClassEditor::modelForDescription->removeRows(0, row);
-
 
447
ClassEditor::modelForDescription->submitAll();
-
 
448
}
-
 
449
436
void ClassEditor::on_myModel_dataChanged( const QModelIndex & topLeft, const QModelIndex & bottomRight ){
450
void ClassEditor::on_myModel_dataChanged( const QModelIndex & topLeft, const QModelIndex & bottomRight ){
437
int i;
451
int i;
438
i++;
452
i++;
439
ui->tableView->resizeColumnsToContents();
453
ui->tableView->resizeColumnsToContents();
440
}
454
}
441
455
442
void ClassEditor::on_modelForDescription_dataChanged ( const QModelIndex & topLeft, const QModelIndex & bottomRight ){
456
void ClassEditor::on_modelForDescription_dataChanged ( const QModelIndex & topLeft, const QModelIndex & bottomRight ){
443
    ui->tableView_2->resizeColumnsToContents();
457
    ui->tableView_2->resizeColumnsToContents();
444
}
458
}
445
 
459