refs #338 Severity strings.

This commit is contained in:
Mathew Sutcliffe
2014-10-24 00:34:52 +01:00
parent 33b0e80a99
commit 0f888b8d89
2 changed files with 57 additions and 3 deletions

View File

@@ -164,9 +164,37 @@ namespace BlackMisc
/*
* Severity
*/
const QString &CStatusMessage::getSeverityAsString() const
CStatusMessage::StatusSeverity CStatusMessage::stringToSeverity(const QString &severity)
{
switch (this->m_severity)
if (severity.compare(severityToString(SeverityDebug), Qt::CaseInsensitive) == 0)
{
return SeverityDebug;
}
else if (severity.compare(severityToString(SeverityInfo), Qt::CaseInsensitive) == 0)
{
return SeverityInfo;
}
else if (severity.compare(severityToString(SeverityWarning), Qt::CaseInsensitive) == 0)
{
return SeverityWarning;
}
else if (severity.compare(severityToString(SeverityError), Qt::CaseInsensitive) == 0)
{
return SeverityError;
}
else
{
qFatal("Unknown severity string");
return SeverityError;
}
}
/*
* Severity
*/
const QString &CStatusMessage::severityToString(CStatusMessage::StatusSeverity severity)
{
switch (severity)
{
case SeverityDebug:
{
@@ -195,6 +223,23 @@ namespace BlackMisc
}
}
/*
* Severity
*/
const QString &CStatusMessage::getSeverityAsString() const
{
return severityToString(this->m_severity);
}
/*
* Severity
*/
const QStringList &CStatusMessage::allSeverityStrings()
{
static const QStringList all { severityToString(SeverityDebug), severityToString(SeverityInfo), severityToString(SeverityWarning), severityToString(SeverityError) };
return all;
}
/*
* Property by index
*/

View File

@@ -99,9 +99,18 @@ namespace BlackMisc
//! Representing icon
virtual CIcon toIcon() const override { return CStatusMessage::convertToIcon(*this); }
//! Type as string
//! Severity as string
const QString &getSeverityAsString() const;
//! Severity as string
static const QString &severityToString(StatusSeverity severity);
//! Severity as string
static StatusSeverity stringToSeverity(const QString &severityString);
//! Severities as strings
static const QStringList &allSeverityStrings();
//! \copydoc CValueObject::propertyByIndex(int)
virtual QVariant propertyByIndex(const BlackMisc::CPropertyIndex &index) const override;