summaryrefslogtreecommitdiffstats
path: root/src/dialog.cpp
diff options
context:
space:
mode:
authorNils Schwabe2014-03-07 16:23:16 +0100
committerNils Schwabe2014-03-07 16:23:16 +0100
commit56d213b3c8984ef033784e60fccf25d3cfbdbb13 (patch)
treeac6fdf1487a2051a702b58cae349cd6c6e3d6e84 /src/dialog.cpp
parentfixed umlauts in xml (diff)
downloadvmchooser2-56d213b3c8984ef033784e60fccf25d3cfbdbb13.tar.gz
vmchooser2-56d213b3c8984ef033784e60fccf25d3cfbdbb13.tar.xz
vmchooser2-56d213b3c8984ef033784e60fccf25d3cfbdbb13.zip
Added function to add info entries if the xml file could not be loaded
Diffstat (limited to 'src/dialog.cpp')
-rw-r--r--src/dialog.cpp24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/dialog.cpp b/src/dialog.cpp
index 9367bf8..b48ff1b 100644
--- a/src/dialog.cpp
+++ b/src/dialog.cpp
@@ -84,6 +84,18 @@ void Dialog::addItems(const QList<Session*>& entries, const QString& section) {
ui->treeView->expandAll();
}
+void Dialog::addLabelItem(const QString& label, const QString& section) {
+ this->model_->addLabelItem(label, section);
+ ui->treeView->setModel(model_);
+ ui->treeView->expandAll();
+}
+
+void Dialog::removeItem(const QString& name, const QString& section) {
+ this->model_->removeItem(name, section);
+ ui->treeView->setModel(model_);
+ ui->treeView->expandAll();
+}
+
void Dialog::on_pushButtonAbort_clicked() {
close();
}
@@ -262,6 +274,8 @@ void Dialog::addSessionsAfterDownload(QNetworkReply* reply) {
if (debugMode) {
qDebug() << "Cannot read backup file " << backup_filename << " either";
}
+ this->removeItem(QCoreApplication::instance()->translate("Dialog", "Loading..."),QCoreApplication::instance()->translate("Dialog", "Virtual Sessions"));
+ this->addLabelItem(QCoreApplication::instance()->translate("Dialog", "URL Error"), QCoreApplication::instance()->translate("Dialog", "Virtual Sessions"));
return;
}
@@ -292,6 +306,14 @@ void Dialog::addSessionsAfterDownload(QNetworkReply* reply) {
file.close();
}
- this->addItems(VSession::readXmlFile(filename), QCoreApplication::instance()->translate("Dialog", "Virtual Sessions"));
+ const QList<Session*> sessions = VSession::readXmlFile(filename);
+
+ this->removeItem(QCoreApplication::instance()->translate("Dialog", "Loading..."),QCoreApplication::instance()->translate("Dialog", "Virtual Sessions"));
+
+ if (!sessions.isEmpty()) {
+ this->addItems(sessions, QCoreApplication::instance()->translate("Dialog", "Virtual Sessions"));
+ } else {
+ this->addLabelItem(QCoreApplication::instance()->translate("Dialog", "No Items"), QCoreApplication::instance()->translate("Dialog", "Virtual Sessions"));
+ }
}