Rev 94 | Rev 97 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 94 | Rev 95 | ||
---|---|---|---|
Line 19... | Line 19... | ||
19 | QTextStream out(&file_tmp); |
19 | QTextStream out(&file_tmp); |
20 | out << MainWindow::modelString; |
20 | out << MainWindow::modelString; |
21 | file_tmp.close(); |
21 | file_tmp.close(); |
22 | 22 | ||
23 | MainWindow::openDataBase(); |
23 | MainWindow::openDataBase(); |
- | 24 | MainWindow::buildPreviewModel(tr("3")); |
|
24 | 25 | ||
25 | }
|
26 | }
|
26 | 27 | ||
27 | MainWindow::~MainWindow() |
28 | MainWindow::~MainWindow() |
28 | {
|
29 | {
|
Line 279... | Line 280... | ||
279 | 280 | ||
280 | 281 | ||
281 | bool MainWindow::buildPreviewModel(QString rootClassID){ |
282 | bool MainWindow::buildPreviewModel(QString rootClassID){ |
282 | QSqlQuery q;
|
283 | QSqlQuery q;
|
283 | QString sql_str;
|
284 | QString sql_str;
|
- | 285 | QString field_name_str;
|
|
- | 286 | QString root_class_name;
|
|
- | 287 | bool ok; |
|
284 | int field_name; |
288 | int field_name; |
- | 289 | ||
- | 290 | //ui->treeWidget->clear();
|
|
- | 291 | ||
- | 292 | root_class_name = MainWindow::ClassName(rootClassID); // îïðåäåëÿåì èìÿ êëàññà |
|
- | 293 | ||
- | 294 | rootItem1 = new QTreeWidgetItem(ui->treeWidget); |
|
- | 295 | rootItem1->setText(0, root_class_name); |
|
- | 296 | // rootItem2 = new QTreeWidgetItem(rootItem1);
|
|
- | 297 | // rootItem2->setText(0, tr("óðîâåíü 2"));
|
|
- | 298 | rootItem1->setCheckState(0,Qt::Checked); |
|
- | 299 | ||
- | 300 | ||
- | 301 | ||
- | 302 | ||
285 | sql_str = tr("select * " |
303 | sql_str = tr("select * " |
286 | " from DescriptionOfClasses where DescriptionOfClasses.ID = "
|
304 | " from DescriptionOfClasses where DescriptionOfClasses.DefaultValue = '" //îïðåäåëèì êëàññû, äëÿ êîòîðûõ êîðíåâîé ÿâëÿåòñÿ êîíòåéíåðîì |
287 | ); |
305 | ); |
288 | sql_str.append(rootClassID); |
306 | sql_str.append(rootClassID); |
289 | 307 | ||
- | 308 | sql_str.append(tr("' and DescriptionOfClasses.FieldType = 'pointer' ")); |
|
- | 309 | ||
- | 310 | q.prepare(sql_str); |
|
- | 311 | ||
- | 312 | ok = q.exec(); |
|
- | 313 | if (!ok) { |
|
- | 314 | QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå. |
|
- | 315 | this, // Ðîäèòåëüñêèé âèäæåò. |
|
- | 316 | QObject::tr("Database Error"), // Çàãîëîâîê. |
|
- | 317 | q.lastError().text()); // Òåêñò ñîîáùåíèÿ. |
|
- | 318 | }
|
|
- | 319 | field_name = q.record().indexOf(tr("FieldName")); |
|
- | 320 | while(q.next()){ |
|
- | 321 | ||
- | 322 | field_name_str = q.value(field_name).toString(); |
|
- | 323 | ||
- | 324 | }
|
|
- | 325 | ||
- | 326 | }
|
|
- | 327 | ||
- | 328 | ||
- | 329 | ||
- | 330 | QString MainWindow::ClassName(QString class_id){ //âîçâðàùàåò èìÿ êëàññà ïî åãî ID |
|
- | 331 | QSqlQuery q;
|
|
- | 332 | QString sql_str;
|
|
- | 333 | QString class_name_str;
|
|
- | 334 | bool ok; |
|
- | 335 | int field_class_name; |
|
- | 336 | ||
- | 337 | sql_str = tr("select * " |
|
- | 338 | " from ListOfClasses where ListOfClasses.ID = '" //îïðåäåëèì êëàññû, äëÿ êîòîðûõ êîðíåâîé ÿâëÿåòñÿ êîíòåéíåðîì |
|
- | 339 | ); |
|
- | 340 | ||
- | 341 | sql_str.append(class_id); |
|
- | 342 | sql_str.append(tr("' ")); |
|
- | 343 | ||
- | 344 | q.prepare(sql_str); |
|
- | 345 | ||
- | 346 | ok = q.exec(); |
|
- | 347 | ||
- | 348 | ||
- | 349 | if (!ok) { |
|
- | 350 | QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå. |
|
- | 351 | this, // Ðîäèòåëüñêèé âèäæåò. |
|
- | 352 | QObject::tr("Database Error"), // Çàãîëîâîê. |
|
- | 353 | q.lastError().text()); // Òåêñò ñîîáùåíèÿ. |
|
- | 354 | }
|
|
- | 355 | ||
- | 356 | field_class_name = q.record().indexOf(tr("ClassName")); |
|
- | 357 | while(q.next()){ |
|
- | 358 | ||
- | 359 | class_name_str = q.value(field_class_name).toString(); |
|
- | 360 | ||
- | 361 | }
|
|
- | 362 | ||
- | 363 | return class_name_str; |
|
290 | 364 | ||
291 | }
|
365 | }
|