Unify custom exceptions

This commit is contained in:
Vladimir Golovnev (Glassez)
2021-05-05 16:41:30 +03:00
parent 89cedd411e
commit 9565b695ef
13 changed files with 43 additions and 57 deletions

View File

@@ -638,7 +638,7 @@ int Application::exec(const QStringList &params)
catch (const RuntimeError &err)
{
#ifdef DISABLE_GUI
fprintf(stderr, "%s", err.what());
fprintf(stderr, "%s", qPrintable(err.message()));
#else
QMessageBox msgBox;
msgBox.setIcon(QMessageBox::Critical);

View File

@@ -498,17 +498,6 @@ QBtCommandLineParameters parseCommandLine(const QStringList &args)
return result;
}
CommandLineParameterError::CommandLineParameterError(const QString &messageForUser)
: std::runtime_error(messageForUser.toLocal8Bit().data())
, m_messageForUser(messageForUser)
{
}
const QString &CommandLineParameterError::messageForUser() const
{
return m_messageForUser;
}
QString wrapText(const QString &text, int initialIndentation = USAGE_TEXT_COLUMN, int wrapAtColumn = WRAP_AT_COLUMN)
{
QStringList words = text.split(' ');

View File

@@ -31,11 +31,12 @@
#pragma once
#include <optional>
#include <stdexcept>
#include <QString>
#include <QStringList>
#include "base/exceptions.h"
class QProcessEnvironment;
struct QBtCommandLineParameters
@@ -67,14 +68,10 @@ struct QBtCommandLineParameters
QStringList paramList() const;
};
class CommandLineParameterError : public std::runtime_error
class CommandLineParameterError : public RuntimeError
{
public:
explicit CommandLineParameterError(const QString &messageForUser);
const QString &messageForUser() const;
private:
const QString m_messageForUser;
using RuntimeError::RuntimeError;
};
QBtCommandLineParameters parseCommandLine(const QStringList &args);

View File

@@ -311,7 +311,7 @@ int main(int argc, char *argv[])
}
catch (const CommandLineParameterError &er)
{
displayBadArgMessage(er.messageForUser());
displayBadArgMessage(er.message());
return EXIT_FAILURE;
}
}