desktop UI: no longer attempt to manually show error notifications

report_error() now does this automatically. So all these odd places in which we tried
to make sure that we show errors are no longer needed.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2017-10-26 15:55:49 +02:00
parent 752d9b60c4
commit e64dcd12bd
6 changed files with 8 additions and 40 deletions

View file

@ -297,7 +297,6 @@ MainWindow::MainWindow() : QMainWindow(),
// now let's set up some connections // now let's set up some connections
connect(graphics(), &ProfileWidget2::enableToolbar ,this, &MainWindow::setEnabledToolbar); connect(graphics(), &ProfileWidget2::enableToolbar ,this, &MainWindow::setEnabledToolbar);
connect(graphics(), &ProfileWidget2::showError, this, &MainWindow::showError);
connect(graphics(), &ProfileWidget2::disableShortcuts, this, &MainWindow::disableShortcuts); connect(graphics(), &ProfileWidget2::disableShortcuts, this, &MainWindow::disableShortcuts);
connect(graphics(), &ProfileWidget2::enableShortcuts, this, &MainWindow::enableShortcuts); connect(graphics(), &ProfileWidget2::enableShortcuts, this, &MainWindow::enableShortcuts);
connect(graphics(), &ProfileWidget2::refreshDisplay, this, &MainWindow::refreshDisplay); connect(graphics(), &ProfileWidget2::refreshDisplay, this, &MainWindow::refreshDisplay);
@ -439,7 +438,6 @@ MainWindow *MainWindow::instance()
// this gets called after we download dives from a divecomputer // this gets called after we download dives from a divecomputer
void MainWindow::refreshDisplay(bool doRecreateDiveList) void MainWindow::refreshDisplay(bool doRecreateDiveList)
{ {
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
information()->reload(); information()->reload();
TankInfoModel::instance()->update(); TankInfoModel::instance()->update();
MapWidget::instance()->reload(); MapWidget::instance()->reload();
@ -572,10 +570,9 @@ void MainWindow::on_actionCloudstorageopen_triggered()
return; return;
QString filename; QString filename;
if (getCloudURL(filename)) { if (getCloudURL(filename))
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
return; return;
}
if (verbose) if (verbose)
qDebug() << "Opening cloud storage from:" << filename; qDebug() << "Opening cloud storage from:" << filename;
@ -601,13 +598,12 @@ void MainWindow::on_actionCloudstoragesave_triggered()
{ {
QString filename; QString filename;
if (!dive_table.nr) { if (!dive_table.nr) {
getNotificationWidget()->showNotification(tr("Don't save an empty log to the cloud"), KMessageWidget::Error); report_error(qPrintable(tr("Don't save an empty log to the cloud")));
return; return;
} }
if (getCloudURL(filename)) { if (getCloudURL(filename))
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
return; return;
}
if (verbose) if (verbose)
qDebug() << "Saving cloud storage to:" << filename; qDebug() << "Saving cloud storage to:" << filename;
if (information()->isEditing()) if (information()->isEditing())
@ -615,14 +611,11 @@ void MainWindow::on_actionCloudstoragesave_triggered()
showProgressBar(); showProgressBar();
if (save_dives(filename.toUtf8().data())) { if (save_dives(filename.toUtf8().data()))
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
return; return;
}
hideProgressBar(); hideProgressBar();
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
set_filename(filename.toUtf8().data(), true); set_filename(filename.toUtf8().data(), true);
setTitle(MWTF_FILENAME); setTitle(MWTF_FILENAME);
mark_divelist_changed(false); mark_divelist_changed(false);
@ -1656,12 +1649,9 @@ int MainWindow::file_save_as(void)
if (information()->isEditing()) if (information()->isEditing())
information()->acceptChanges(); information()->acceptChanges();
if (save_dives(filename.toUtf8().data())) { if (save_dives(filename.toUtf8().data()))
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
return -1; return -1;
}
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
set_filename(filename.toUtf8().data(), true); set_filename(filename.toUtf8().data(), true);
setTitle(MWTF_FILENAME); setTitle(MWTF_FILENAME);
mark_divelist_changed(false); mark_divelist_changed(false);
@ -1693,14 +1683,12 @@ int MainWindow::file_save(void)
if (is_cloud) if (is_cloud)
showProgressBar(); showProgressBar();
if (save_dives(existing_filename)) { if (save_dives(existing_filename)) {
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
if (is_cloud) if (is_cloud)
hideProgressBar(); hideProgressBar();
return -1; return -1;
} }
if (is_cloud) if (is_cloud)
hideProgressBar(); hideProgressBar();
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
mark_divelist_changed(false); mark_divelist_changed(false);
addRecentFile(QStringList() << QString(existing_filename)); addRecentFile(QStringList() << QString(existing_filename));
return 0; return 0;
@ -1711,11 +1699,6 @@ NotificationWidget *MainWindow::getNotificationWidget()
return ui.mainErrorMessage; return ui.mainErrorMessage;
} }
void MainWindow::showError()
{
getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
}
QString MainWindow::displayedFilename(QString fullFilename) QString MainWindow::displayedFilename(QString fullFilename)
{ {
QFile f(fullFilename); QFile f(fullFilename);
@ -1805,7 +1788,6 @@ void MainWindow::importTxtFiles(const QStringList fileNames)
void MainWindow::loadFiles(const QStringList fileNames) void MainWindow::loadFiles(const QStringList fileNames)
{ {
bool showWarning = false;
if (fileNames.isEmpty()) { if (fileNames.isEmpty()) {
refreshDisplay(); refreshDisplay();
return; return;
@ -1822,19 +1804,11 @@ void MainWindow::loadFiles(const QStringList fileNames)
if (!error) { if (!error) {
set_filename(fileNamePtr.data(), true); set_filename(fileNamePtr.data(), true);
setTitle(MWTF_FILENAME); setTitle(MWTF_FILENAME);
// if there were any messages, show them
QString warning = get_error_string();
if (!warning.isEmpty()) {
showWarning = true;
getNotificationWidget()->showNotification(warning , KMessageWidget::Information);
}
} else { } else {
failedParses.append(fileNames.at(i)); failedParses.append(fileNames.at(i));
} }
} }
hideProgressBar(); hideProgressBar();
if (!showWarning)
getNotificationWidget()->hideNotification();
process_dives(false, false); process_dives(false, false);
addRecentFile(fileNames); addRecentFile(fileNames);
removeRecentFile(failedParses); removeRecentFile(failedParses);

View file

@ -87,7 +87,6 @@ public:
QUndoStack *undoStack; QUndoStack *undoStack;
NotificationWidget *getNotificationWidget(); NotificationWidget *getNotificationWidget();
void enableDisableCloudActions(); void enableDisableCloudActions();
void showError();
private private
slots: slots:

View file

@ -735,7 +735,6 @@ void DivelogsDeWebServices::prepareDivesForUpload(bool selected)
} else { } else {
report_error("Failed to create upload file %s\n", qPrintable(filename)); report_error("Failed to create upload file %s\n", qPrintable(filename));
} }
MainWindow::instance()->getNotificationWidget()->showNotification(get_error_string(), KMessageWidget::Error);
} }
void DivelogsDeWebServices::uploadDives(QIODevice *dldContent) void DivelogsDeWebServices::uploadDives(QIODevice *dldContent)

View file

@ -709,7 +709,7 @@ void ProfileWidget2::plotDive(struct dive *d, bool force)
#ifdef SUBSURFACE_MOBILE #ifdef SUBSURFACE_MOBILE
if (currentdc->divemode == CCR) { if (currentdc->divemode == CCR) {
gasYAxis->setPos(itemPos.partialPressure.pos.on); gasYAxis->setPos(itemPos.partialPressure.pos.on);
gasYAxis->setLine(itemPos.partialPressure.expanded); gasYAxis->setLine(itemPos.partialPressure.expanded);
tankItem->setVisible(false); tankItem->setVisible(false);
@ -802,7 +802,6 @@ void ProfileWidget2::plotDive(struct dive *d, bool force)
report_error(qPrintable(tr("Show NDL / TTS was disabled because of excessive processing time"))); report_error(qPrintable(tr("Show NDL / TTS was disabled because of excessive processing time")));
} }
#endif #endif
emit showError();
} }
void ProfileWidget2::recalcCeiling() void ProfileWidget2::recalcCeiling()

View file

@ -90,7 +90,6 @@ public:
signals: signals:
void fontPrintScaleChanged(double scale); void fontPrintScaleChanged(double scale);
void enableToolbar(bool enable); void enableToolbar(bool enable);
void showError();
void enableShortcuts(); void enableShortcuts();
void disableShortcuts(bool paste); void disableShortcuts(bool paste);
void refreshDisplay(bool recreateDivelist); void refreshDisplay(bool recreateDivelist);

View file

@ -104,8 +104,6 @@ int main(int argc, char **argv)
filesOnCommandLine = !files.isEmpty() || !importedFiles.isEmpty(); filesOnCommandLine = !files.isEmpty() || !importedFiles.isEmpty();
m->loadFiles(files); m->loadFiles(files);
m->importFiles(importedFiles); m->importFiles(importedFiles);
// in case something has gone wrong make sure we show the error message
m->showError();
if (verbose > 0) { if (verbose > 0) {
print_files(); print_files();