diff options
Diffstat (limited to 'api/logic/ProblemProvider.h')
-rw-r--r-- | api/logic/ProblemProvider.h | 34 |
1 files changed, 11 insertions, 23 deletions
diff --git a/api/logic/ProblemProvider.h b/api/logic/ProblemProvider.h index b30e1776..978710f0 100644 --- a/api/logic/ProblemProvider.h +++ b/api/logic/ProblemProvider.h @@ -1,5 +1,7 @@ #pragma once +#include "multimc_logic_export.h" + enum class ProblemSeverity { None, @@ -7,42 +9,28 @@ enum class ProblemSeverity Error }; -class PatchProblem +struct PatchProblem { -public: - PatchProblem(ProblemSeverity severity, const QString & description) - { - m_severity = severity; - m_description = description; - } - const QString & getDescription() const - { - return m_description; - } - const ProblemSeverity getSeverity() const - { - return m_severity; - } -private: ProblemSeverity m_severity; QString m_description; }; -class ProblemProvider +class MULTIMC_LOGIC_EXPORT ProblemProvider { public: - virtual const QList<PatchProblem> getProblems() = 0; - virtual ProblemSeverity getProblemSeverity() = 0; + virtual ~ProblemProvider() {}; + virtual const QList<PatchProblem> getProblems() const = 0; + virtual ProblemSeverity getProblemSeverity() const = 0; }; -class ProblemContainer : public ProblemProvider +class MULTIMC_LOGIC_EXPORT ProblemContainer : public ProblemProvider { public: - const QList<PatchProblem> getProblems() override + const QList<PatchProblem> getProblems() const override { return m_problems; } - ProblemSeverity getProblemSeverity() override + ProblemSeverity getProblemSeverity() const override { return m_problemSeverity; } @@ -52,7 +40,7 @@ public: { m_problemSeverity = severity; } - m_problems.append(PatchProblem(severity, description)); + m_problems.append({severity, description}); } private: |