Skip to content

Instantly share code, notes, and snippets.

Created June 8, 2016 04:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/02c9cecf6f2e5f8430f3562f92b32ef3 to your computer and use it in GitHub Desktop.
Save anonymous/02c9cecf6f2e5f8430f3562f92b32ef3 to your computer and use it in GitHub Desktop.
QSqlRelationalDelegate make only the job for sjow edited data... after that, it give back the id of foreign key. But why ?
void usersValidation::populateUsersToValid() {
modeUsersToValid = new QSqlRelationalTableModel(this, modelDB->currentDB());
formApprobation = new MyDelegate(this);
formPrivileges = new QSqlRelationalDelegate(this);
modeUsersToValid->setTable("\"UserNames\"");
modeUsersToValid->setSort(USERNAMES_USERNAME, Qt::AscendingOrder);
modeUsersToValid->setEditStrategy(QSqlRelationalTableModel::OnFieldChange);
modeUsersToValid->setRelation(USERNAMES_ID_PRIVILEGE,
QSqlRelation("\"Privileges\"",
"id", "privilege"));
modeUsersToValid->setHeaderData(USERNAMES_USERNAME, Qt::Horizontal,
QObject::tr("Utilisateur"));
modeUsersToValid->setHeaderData(USERNAMES_NAME, Qt::Horizontal,
QObject::tr("Prénom"));
modeUsersToValid->setHeaderData(USERNAMES_FAMILLYNAME, Qt::Horizontal,
QObject::tr("Nom"));
modeUsersToValid->setHeaderData(USERNAMES_ID_PRIVILEGE, Qt::Horizontal,
QObject::tr("Privilège"));
modeUsersToValid->setHeaderData(USERNAMES_APPROBATION, Qt::Horizontal,
QObject::tr("Approuvé"));
modeUsersToValid->setHeaderData(USERNAMES_DATECREATION, Qt::Horizontal,
QObject::tr("Date"));
modeUsersToValid->select();
UsersToValid->setModel(modeUsersToValid);
UsersToValid->setItemDelegateForColumn(USERNAMES_APPROBATION, formApprobation);
UsersToValid->setItemDelegateForColumn(USERNAMES_ID_PRIVILEGE, formPrivileges);
UsersToValid->setColumnHidden(USERNAMES_ID, true);
UsersToValid->setColumnHidden(USERNAMES_PASSWORD, true);
UsersToValid->setColumnHidden(USERNAMES_QUALIFICATIONS,true);
UsersToValid
->setSelectionBehavior(QAbstractItemView::SelectRows);
UsersToValid->verticalHeader()->hide();
UsersToValid->horizontalHeader()
->setStretchLastSection(true);
UsersToValid->resizeColumnsToContents();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment