void CustomerMaster::slotRenameData() { int row = _extra->currentRow(); if (row == -1) return; Id extra_id = _extra->cellValue(row, 0).toId(); if (extra_id == INVALID_ID) return; Extra extra; if (!_quasar->db()->lookup(extra_id, extra)) { QMessageBox::critical(this, tr("Error"), tr("Data lookup failed.")); return; } bool ok = false; QString message = tr("Enter the new name for %1:").arg(extra.name()); QString text = QInputDialog::getText(tr("Rename Data"), message, QLineEdit::Normal, QString::null, &ok, this); if (!ok || text.isEmpty()) return; Extra orig = extra; extra.setName(text); if (!_quasar->db()->update(orig, extra)) { QMessageBox::critical(this, tr("Error"), tr("Renaming data failed.")); return; } _extra->setCellValue(row, 0, extra.id()); }
void CustomerMaster::slotCreateData() { bool ok = false; QString message = tr("Enter the new data name:"); QString text = QInputDialog::getText(tr("Create Data"), message, QLineEdit::Normal, QString::null, &ok, this); if (!ok || text.isEmpty()) return; Extra extra; extra.setTable("Customer"); extra.setName(text); if (!_quasar->db()->create(extra)) { QMessageBox::critical(this, tr("Error"), tr("Creating new data failed.")); return; } VectorRow* row = new VectorRow(_extra->columns()); row->setValue(0, extra.id()); row->setValue(1, ""); _extra->appendRow(row); }