Редакция 125 | Редакция 127 | К новейшей редакции | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 125 | Редакция 126 | ||
---|---|---|---|
Строка 185... | Строка 185... | ||
185 | }
|
185 | }
|
186 | 186 | ||
187 | 187 | ||
188 | void MainWindow::showObjects(QTreeWidgetItem * parent_object_item, QTreeWidgetItem * model_item, QString filtr){ |
188 | void MainWindow::showObjects(QTreeWidgetItem * parent_object_item, QTreeWidgetItem * model_item, QString filtr){ |
189 | QString classID; // èäåíòèôèêàòîð êëàññà |
189 | QString classID; // èäåíòèôèêàòîð êëàññà |
- | 190 | QString parentClassID; // èäåíòèôèêàòîð ðîäèòåëüñêîãî êëàññà |
|
- | 191 | QString pointerField; // èìÿ ïîëÿ-óêàçàòåëÿ íà ðîäèòåëüñêèé êëàññ |
|
190 | QString inctance; // èìÿ òàáëèöû, õðàíèëèùà |
192 | QString inctance; // èìÿ òàáëèöû, õðàíèëèùà |
191 | QString className; // èìÿ êëàññà |
193 | QString className; // èìÿ êëàññà |
192 | int field_ID; |
194 | int field_ID; |
193 | bool filtr_empty; |
195 | bool filtr_empty; |
194 | bool ok; |
196 | bool ok; |
Строка 199... | Строка 201... | ||
199 | QFont font;
|
201 | QFont font;
|
200 | // font.setWeight(40);
|
202 | // font.setWeight(40);
|
201 | font.setBold(true); |
203 | font.setBold(true); |
202 | filtr_empty = filtr.isEmpty(); |
204 | filtr_empty = filtr.isEmpty(); |
203 | classID = model_item->text(1); |
205 | classID = model_item->text(1); |
- | 206 | ||
- | 207 | parentClassID = model_item->parent()->text(1); |
|
- | 208 | ||
- | 209 | pointerField = getPointerFieldName(parentClassID, classID); |
|
- | 210 | ||
204 | className = model_item->text(0); |
211 | className = model_item->text(0); |
205 | inctance = getClassInctance(classID); |
212 | inctance = getClassInctance(classID); |
206 | 213 | ||
207 | if (!model_item->checkState(0)) return; |
214 | if (!model_item->checkState(0)) return; |
208 | 215 | ||
Строка 210... | Строка 217... | ||
210 | title_item->setFont(0, font); |
217 | title_item->setFont(0, font); |
211 | title_item->setText(0, className); |
218 | title_item->setText(0, className); |
212 | title_item->setText(1, tr("class")); |
219 | title_item->setText(1, tr("class")); |
213 | title_item->setText(2, classID); |
220 | title_item->setText(2, classID); |
214 | title_item->setText(3, inctance); |
221 | title_item->setText(3, inctance); |
- | 222 | title_item->setText(4, pointerField); |
|
215 | title_item->setTextColor(0, Qt::darkBlue); |
223 | title_item->setTextColor(0, Qt::darkBlue); |
216 | 224 | ||
- | 225 | ||
217 | sql_str = tr("select * " |
226 | sql_str = tr("select * " |
218 | " from " //íàõîäèì âñå îáúåêòû êëàññà â òàáëèöå - õðàíèëèùå îáúåêòîâ êëàññà |
227 | " from " //íàõîäèì âñå îáúåêòû êëàññà â òàáëèöå - õðàíèëèùå îáúåêòîâ êëàññà |
219 | ); |
228 | ); |
220 | sql_str.append(inctance); |
229 | sql_str.append(inctance); |
221 | if (!filtr.isEmpty()) { // åñëè ôèëüòð íå ïóñòîé |
230 | if (!filtr.isEmpty()) { // åñëè ôèëüòð íå ïóñòîé |
Строка 272... | Строка 281... | ||
272 | QString filtr_tmp;
|
281 | QString filtr_tmp;
|
273 | bool pointer_isEmpty; |
282 | bool pointer_isEmpty; |
274 | model_item_tmp = model_item->child(i); // îòîáðàæàåì îáúåêòû äî÷åðíèõ êëàññîâ |
283 | model_item_tmp = model_item->child(i); // îòîáðàæàåì îáúåêòû äî÷åðíèõ êëàññîâ |
275 | pointer_name = getPointerFieldName(classID, model_item->child(i)->text(1)); |
284 | pointer_name = getPointerFieldName(classID, model_item->child(i)->text(1)); |
276 | itm->setText(4, pointer_name); |
285 | itm->setText(4, pointer_name); |
- | 286 | ||
- | 287 | // title_item->setText(4, pointer_name);
|
|
- | 288 | ||
- | 289 | ||
277 | pointer_isEmpty = pointer_name.isEmpty(); |
290 | pointer_isEmpty = pointer_name.isEmpty(); |
278 | filtr_tmp = tr("where "); |
291 | filtr_tmp = tr("where "); |
279 | filtr_tmp.append(tr("`")); |
292 | filtr_tmp.append(tr("`")); |
280 | filtr_tmp.append(pointer_name); |
293 | filtr_tmp.append(pointer_name); |
281 | filtr_tmp.append(tr("` = '")); |
294 | filtr_tmp.append(tr("` = '")); |
Строка 392... | Строка 405... | ||
392 | {
|
405 | {
|
393 | QString parent_object_id; // èäåíòèôèêàòîð ðîäèòåëüñêîãî îáúåêòà |
406 | QString parent_object_id; // èäåíòèôèêàòîð ðîäèòåëüñêîãî îáúåêòà |
394 | 407 | ||
395 | QString class_id; // èäåíòèôèêàòîð âûáðàííîãî êëàññà |
408 | QString class_id; // èäåíòèôèêàòîð âûáðàííîãî êëàññà |
396 | QString inctance;
|
409 | QString inctance;
|
- | 410 | QString parent_class_inctance;
|
|
397 | QString pointer_name;
|
411 | QString pointer_name;
|
398 | QString filtr_tmp;
|
412 | QString filtr_tmp;
|
399 | // sql_mogel->clear();
|
413 | // sql_mogel->clear();
|
400 | 414 | ||
401 | ui->pushButton->setEnabled(true); |
415 | ui->pushButton->setEnabled(true); |
Строка 407... | Строка 421... | ||
407 | 421 | ||
408 | parentObject_id = parent_item->text(2); |
422 | parentObject_id = parent_item->text(2); |
409 | 423 | ||
410 | class_id = item->text(2); |
424 | class_id = item->text(2); |
411 | inctance = item->text(3); |
425 | inctance = item->text(3); |
412 | pointer_name = parent_item->text(4); |
- | |
413 | 426 | ||
- | 427 | // parent_class_inctance = parent_item->parent()->text(3); // óçíàåì õðàíèëèùå îáúåêòîâ ðîäèòåëüñêîãî êëàññà
|
|
- | 428 | ||
- | 429 | // pointer_name = parent_item->text(4);
|
|
- | 430 | pointer_name = item->text(4); |
|
414 | delete sql_mogel; |
431 | delete sql_mogel; |
415 | sql_mogel = new QSqlTableModel(); |
432 | sql_mogel = new QSqlTableModel(); |
416 | // sql_mogel = new QSqlTableModel(this);
|
433 | // sql_mogel = new QSqlTableModel(this);
|
417 | sql_mogel->setTable(inctance); |
434 | sql_mogel->setTable(inctance); |
418 | // sql_mogel->setEditStrategy(QSqlTableModel::OnFieldChange);
|
435 | // sql_mogel->setEditStrategy(QSqlTableModel::OnFieldChange);
|
Строка 426... | Строка 443... | ||
426 | filtr_tmp.append(tr(" = '")); |
443 | filtr_tmp.append(tr(" = '")); |
427 | filtr_tmp.append(parent_object_id); |
444 | filtr_tmp.append(parent_object_id); |
428 | filtr_tmp.append(tr("'")); |
445 | filtr_tmp.append(tr("'")); |
429 | sql_mogel->setFilter(filtr_tmp); |
446 | sql_mogel->setFilter(filtr_tmp); |
430 | }
|
447 | }
|
- | 448 | ||
- | 449 | /****************************************
|
|
- | 450 | spinDelegate.setInctance(parent_class_inctance);
|
|
- | 451 | spinDelegate.getItems();
|
|
- | 452 | ui->tableView->setItemDelegateForColumn(2, &spinDelegate);
|
|
- | 453 | ***************************************/
|
|
- | 454 | ||
- | 455 | ||
431 | sql_mogel->select(); |
456 | sql_mogel->select(); |
432 | 457 | ||
- | 458 | ||
- | 459 | ||
433 | pointer_index = sql_mogel->record().indexOf(pointer_name); |
460 | pointer_index = sql_mogel->record().indexOf(pointer_name); |
434 | 461 | ||
435 | ui->tableView->setModel(sql_mogel); |
462 | ui->tableView->setModel(sql_mogel); |
436 | 463 | ||
437 | connect(sql_mogel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_sql_mogel_dataChanged(QModelIndex,QModelIndex))); |
464 | connect(sql_mogel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_sql_mogel_dataChanged(QModelIndex,QModelIndex))); |