diff options
author | Paul Wicking <paul.wicking@qt.io> | 2018-06-05 13:13:38 +0200 |
---|---|---|
committer | Paul Wicking <paul.wicking@qt.io> | 2018-06-06 09:46:49 +0000 |
commit | ce7cbcc3b64a1b0b6e5cf91d911d3ad10e7d6424 (patch) | |
tree | fed35fa3b19e0c734e1fe37e210e7409a1f919f4 /examples/sql/books/bookwindow.cpp | |
parent | d9d77e8680f4fcb1afacbcea3830adccf77957c4 (diff) |
Doc: Clean up and modernize SQL example: Books
* Replace Qt4-style connects.
* Reformat code to adhere to 80 column width.
* Touch comments to make location and style consistent.
* Rename a label in the UI form.
Task-number: QTBUG-68652
Change-Id: Icc592f7b5a013d1806bc36c45057b35472b6efbb
Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Diffstat (limited to 'examples/sql/books/bookwindow.cpp')
-rw-r--r-- | examples/sql/books/bookwindow.cpp | 42 |
1 files changed, 26 insertions, 16 deletions
diff --git a/examples/sql/books/bookwindow.cpp b/examples/sql/books/bookwindow.cpp index 1428bc04b5..d85b438956 100644 --- a/examples/sql/books/bookwindow.cpp +++ b/examples/sql/books/bookwindow.cpp @@ -59,53 +59,61 @@ BookWindow::BookWindow() ui.setupUi(this); if (!QSqlDatabase::drivers().contains("QSQLITE")) - QMessageBox::critical(this, "Unable to load database", "This demo needs the SQLITE driver"); + QMessageBox::critical( + this, + "Unable to load database", + "This demo needs the SQLITE driver" + ); - // initialize the database + // Initialize the database: QSqlError err = initDb(); if (err.type() != QSqlError::NoError) { showError(err); return; } - // Create the data model + // Create the data model: model = new QSqlRelationalTableModel(ui.bookTable); model->setEditStrategy(QSqlTableModel::OnManualSubmit); model->setTable("books"); - // Remember the indexes of the columns + // Remember the indexes of the columns: authorIdx = model->fieldIndex("author"); genreIdx = model->fieldIndex("genre"); - // Set the relations to the other database tables + // Set the relations to the other database tables: model->setRelation(authorIdx, QSqlRelation("authors", "id", "name")); model->setRelation(genreIdx, QSqlRelation("genres", "id", "name")); - // Set the localized header captions + // Set the localized header captions: model->setHeaderData(authorIdx, Qt::Horizontal, tr("Author Name")); model->setHeaderData(genreIdx, Qt::Horizontal, tr("Genre")); - model->setHeaderData(model->fieldIndex("title"), Qt::Horizontal, tr("Title")); + model->setHeaderData(model->fieldIndex("title"), + Qt::Horizontal, tr("Title")); model->setHeaderData(model->fieldIndex("year"), Qt::Horizontal, tr("Year")); - model->setHeaderData(model->fieldIndex("rating"), Qt::Horizontal, tr("Rating")); + model->setHeaderData(model->fieldIndex("rating"), + Qt::Horizontal, tr("Rating")); - // Populate the model + // Populate the model: if (!model->select()) { showError(model->lastError()); return; } - // Set the model and hide the ID column + // Set the model and hide the ID column: ui.bookTable->setModel(model); ui.bookTable->setItemDelegate(new BookDelegate(ui.bookTable)); ui.bookTable->setColumnHidden(model->fieldIndex("id"), true); ui.bookTable->setSelectionMode(QAbstractItemView::SingleSelection); - // Initialize the Author combo box + // Initialize the Author combo box: ui.authorEdit->setModel(model->relationModel(authorIdx)); - ui.authorEdit->setModelColumn(model->relationModel(authorIdx)->fieldIndex("name")); + ui.authorEdit->setModelColumn( + model->relationModel(authorIdx)->fieldIndex("name")); ui.genreEdit->setModel(model->relationModel(genreIdx)); - ui.genreEdit->setModelColumn(model->relationModel(genreIdx)->fieldIndex("name")); + ui.genreEdit->setModelColumn( + model->relationModel(genreIdx)->fieldIndex("name")); QDataWidgetMapper *mapper = new QDataWidgetMapper(this); mapper->setModel(model); @@ -116,8 +124,11 @@ BookWindow::BookWindow() mapper->addMapping(ui.genreEdit, genreIdx); mapper->addMapping(ui.ratingEdit, model->fieldIndex("rating")); - connect(ui.bookTable->selectionModel(), SIGNAL(currentRowChanged(QModelIndex,QModelIndex)), - mapper, SLOT(setCurrentModelIndex(QModelIndex))); + connect(ui.bookTable->selectionModel(), + &QItemSelectionModel::currentRowChanged, + mapper, + &QDataWidgetMapper::setCurrentModelIndex + ); ui.bookTable->setCurrentIndex(model->index(0, 0)); } @@ -127,4 +138,3 @@ void BookWindow::showError(const QSqlError &err) QMessageBox::critical(this, "Unable to initialize Database", "Error initializing database: " + err.text()); } - |