diff options
author | Pavel Pisa <pisa@cmp.felk.cvut.cz> | 2019-08-20 09:31:09 +0200 |
---|---|---|
committer | Pavel Pisa <pisa@cmp.felk.cvut.cz> | 2019-08-20 09:31:09 +0200 |
commit | 724ee7e216d315ffa75c6930f4d290ccd0fe91bf (patch) | |
tree | 7622f4689f2cafc9f4904c64666386e5b4d46861 /qtmips_gui/savechangeddialog.cpp | |
parent | d8e92264f50553a5cae9ac70150d22584067accf (diff) | |
download | qtmips-724ee7e216d315ffa75c6930f4d290ccd0fe91bf.tar.gz qtmips-724ee7e216d315ffa75c6930f4d290ccd0fe91bf.tar.bz2 qtmips-724ee7e216d315ffa75c6930f4d290ccd0fe91bf.zip |
Ask for modified source close and handle unnamed sources close.
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Diffstat (limited to 'qtmips_gui/savechangeddialog.cpp')
-rw-r--r-- | qtmips_gui/savechangeddialog.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/qtmips_gui/savechangeddialog.cpp b/qtmips_gui/savechangeddialog.cpp index dda1949..1849245 100644 --- a/qtmips_gui/savechangeddialog.cpp +++ b/qtmips_gui/savechangeddialog.cpp @@ -51,11 +51,20 @@ SaveChnagedDialog::SaveChnagedDialog(QStringList &changedlist, QWidget *parent) setWindowTitle(tr("Save next modified files?")); model = new QStandardItemModel(this); + bool unknown_inserted = false; for ( const auto& fname : changedlist) { int row = model->rowCount(); QStandardItem* item = new QStandardItem(); - item->setText(fname); + item->setData(fname, Qt::UserRole); + if (!fname.isEmpty()) { + item->setText(fname); + } else { + if (!unknown_inserted) { + item->setText("Unknown"); + unknown_inserted = true; + } + } item->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled); item->setCheckState(Qt::Checked); model->setItem(row, 0, item); @@ -109,7 +118,7 @@ void SaveChnagedDialog::save_clicked() { QStringList list; for(int r = 0; r < model->rowCount(); ++r) { if (model->item(r)->checkState() == Qt::Checked) - list.append(model->item(r)->text()); + list.append(model->item(r)->data(Qt::UserRole).toString()); } emit user_decision(false, list); close(); |