From 2b60659f6b999de7888b2600dc06d8545f6bc270 Mon Sep 17 00:00:00 2001 From: Valentino Orlandi Date: Sat, 27 Jan 2024 18:13:00 +0100 Subject: [PATCH] Added new dialogs Configuration related dialogs --- logdoctor/modules/dialogs.cpp | 29 +++++++++++++++++++++++++++-- logdoctor/modules/dialogs.h | 10 ++++++++-- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/logdoctor/modules/dialogs.cpp b/logdoctor/modules/dialogs.cpp index 524c5c0f..3c75b443 100644 --- a/logdoctor/modules/dialogs.cpp +++ b/logdoctor/modules/dialogs.cpp @@ -98,18 +98,43 @@ void DialogSec::errConfDirNotWritable( const QString& dir, const QString& err, Q } -void DialogSec::errFailedApplyingConfigs( const QString& msg, QWidget* parent ) +void DialogSec::errFailedApplyingConfigsItem( const QString& msg, QWidget* parent ) { DialogMsg dialog{ DialogSec::tr("Failed applying configuration"), QString("%1\n%2").arg( (msg.isEmpty()) ? msg : QString("%1\n").arg(msg), - DialogSec::tr("Aborting") ), + DialogSec::tr("Skipping") ), "", MsgType::Error, parent }; std::ignore = dialog.exec(); } +void DialogSec::warnInvalidConfigsList( const QStringList& list, QWidget* parent ) +{ + DialogMsg dialog{ + DialogSec::tr("Invalid configuration lines"), + QString("%1\n%2").arg( + DialogSec::tr("Has not been possible to apply some of the configurations"), + DialogSec::tr("If you haven't manually edited the configuration file,\nplease report this issue") ), + list.join('\n'), + MsgType::Warning, parent }; + std::ignore = dialog.exec(); +} + + +bool DialogSec::choiceFailedApplyingConfigs( const QString& msg, QWidget* parent ) +{ + DialogBool dialog{ + DialogSec::tr("Failed applying configuration"), + QString("%1\n\n%2").arg( + msg, + DialogSec::tr("If you choose to proceed, all of the unapplied configurations will be lost\nContinue?") ), + parent }; + return dialog.exec(); +} + + ////////////// //// HELP //// diff --git a/logdoctor/modules/dialogs.h b/logdoctor/modules/dialogs.h index 22fd215f..a27429e0 100644 --- a/logdoctor/modules/dialogs.h +++ b/logdoctor/modules/dialogs.h @@ -57,8 +57,14 @@ public: //! Missing read permission for the configuration file's directory static void errConfDirNotWritable( const QString& dir, const QString& err, QWidget* parent=nullptr ); - //! Missing write permission for the configuration file's directory - static void errFailedApplyingConfigs( const QString& msg, QWidget* parent=nullptr ); + //! An error occured while applying the value retrieved from the conf file + static void errFailedApplyingConfigsItem( const QString& msg, QWidget* parent=nullptr ); + + //! The lines in the list caused an error and cannot be applied + static void warnInvalidConfigsList( const QStringList& list, QWidget* parent=nullptr ); + + //! Failed to apply user provided configurations + static bool choiceFailedApplyingConfigs( const QString& msg, QWidget* parent=nullptr ); //////////////