aboutsummaryrefslogtreecommitdiff
path: root/qtmips_gui/savechangeddialog.cpp
diff options
context:
space:
mode:
authorPavel Pisa <pisa@cmp.felk.cvut.cz>2019-08-20 09:31:09 +0200
committerPavel Pisa <pisa@cmp.felk.cvut.cz>2019-08-20 09:31:09 +0200
commit724ee7e216d315ffa75c6930f4d290ccd0fe91bf (patch)
tree7622f4689f2cafc9f4904c64666386e5b4d46861 /qtmips_gui/savechangeddialog.cpp
parentd8e92264f50553a5cae9ac70150d22584067accf (diff)
downloadqtmips-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.cpp13
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();