You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.9 KiB
C++
83 lines
1.9 KiB
C++
/*
|
|
* Copyright (c) Contributors to the Open 3D Engine Project.
|
|
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
*
|
|
*/
|
|
|
|
#include <ActionOutput.h>
|
|
#include <QWidget>
|
|
|
|
namespace AZ
|
|
{
|
|
ActionOutput::ActionOutput()
|
|
: m_errorCount(0)
|
|
, m_warningCount(0)
|
|
{
|
|
}
|
|
|
|
void ActionOutput::AddError(const AZStd::string& error)
|
|
{
|
|
AddError(error, "");
|
|
}
|
|
|
|
void ActionOutput::AddError(const AZStd::string& error, const AZStd::string& details)
|
|
{
|
|
m_errorToDetails[error].push_back(details);
|
|
++m_errorCount;
|
|
}
|
|
|
|
bool ActionOutput::HasAnyErrors() const
|
|
{
|
|
return m_errorCount > 0;
|
|
}
|
|
|
|
AZStd::string ActionOutput::BuildErrorMessage() const
|
|
{
|
|
return BuildMessage(m_errorToDetails);
|
|
}
|
|
|
|
void ActionOutput::AddWarning(const AZStd::string& warning)
|
|
{
|
|
AddWarning(warning, "");
|
|
}
|
|
|
|
void ActionOutput::AddWarning(const AZStd::string& warning, const AZStd::string& details)
|
|
{
|
|
m_warningToDetails[warning].push_back(details);
|
|
++m_warningCount;
|
|
}
|
|
|
|
bool ActionOutput::HasAnyWarnings() const
|
|
{
|
|
return m_warningCount > 0;
|
|
}
|
|
|
|
AZStd::string ActionOutput::BuildWarningMessage() const
|
|
{
|
|
return BuildMessage(m_warningToDetails);
|
|
}
|
|
|
|
AZStd::string ActionOutput::BuildMessage(const IssueToDetails& issues) const
|
|
{
|
|
AZStd::string message;
|
|
for (const auto& it : issues)
|
|
{
|
|
message += it.first;
|
|
message += ":\n";
|
|
const DetailList& details = it.second;
|
|
for (size_t i = 0; i < details.size(); ++i)
|
|
{
|
|
message += " ";
|
|
message += details[i];
|
|
message += "\n";
|
|
}
|
|
|
|
message += "\n";
|
|
}
|
|
|
|
return message;
|
|
}
|
|
}
|