forked from qt-creator/qt-creator
Kit: Display warning and error icons
Display warning and error icons in the kit options page. This is more consistent with what we do elsewhere. Change-Id: I31786054da3ad8c55931156f0124740eea2d68d3 Reviewed-by: Daniel Teske <daniel.teske@digia.com>
This commit is contained in:
@@ -87,6 +87,7 @@ public:
|
|||||||
m_id(id),
|
m_id(id),
|
||||||
m_autodetected(false),
|
m_autodetected(false),
|
||||||
m_isValid(true),
|
m_isValid(true),
|
||||||
|
m_hasWarning(false),
|
||||||
m_nestedBlockingLevel(0),
|
m_nestedBlockingLevel(0),
|
||||||
m_mustNotify(false)
|
m_mustNotify(false)
|
||||||
{
|
{
|
||||||
@@ -98,6 +99,7 @@ public:
|
|||||||
Id m_id;
|
Id m_id;
|
||||||
bool m_autodetected;
|
bool m_autodetected;
|
||||||
bool m_isValid;
|
bool m_isValid;
|
||||||
|
bool m_hasWarning;
|
||||||
QIcon m_icon;
|
QIcon m_icon;
|
||||||
QString m_iconPath;
|
QString m_iconPath;
|
||||||
int m_nestedBlockingLevel;
|
int m_nestedBlockingLevel;
|
||||||
@@ -176,16 +178,24 @@ bool Kit::isValid() const
|
|||||||
return d->m_id.isValid() && d->m_isValid;
|
return d->m_id.isValid() && d->m_isValid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Kit::hasWarning() const
|
||||||
|
{
|
||||||
|
return d->m_hasWarning;
|
||||||
|
}
|
||||||
|
|
||||||
QList<Task> Kit::validate() const
|
QList<Task> Kit::validate() const
|
||||||
{
|
{
|
||||||
QList<Task> result;
|
QList<Task> result;
|
||||||
QList<KitInformation *> infoList = KitManager::instance()->kitInformation();
|
QList<KitInformation *> infoList = KitManager::instance()->kitInformation();
|
||||||
d->m_isValid = true;
|
d->m_isValid = true;
|
||||||
|
d->m_hasWarning = false;
|
||||||
foreach (KitInformation *i, infoList) {
|
foreach (KitInformation *i, infoList) {
|
||||||
QList<Task> tmp = i->validate(this);
|
QList<Task> tmp = i->validate(this);
|
||||||
foreach (const Task &t, tmp) {
|
foreach (const Task &t, tmp) {
|
||||||
if (t.type == Task::Error)
|
if (t.type == Task::Error)
|
||||||
d->m_isValid = false;
|
d->m_isValid = false;
|
||||||
|
if (t.type == Task::Warning)
|
||||||
|
d->m_hasWarning = true;
|
||||||
}
|
}
|
||||||
result.append(tmp);
|
result.append(tmp);
|
||||||
}
|
}
|
||||||
@@ -411,7 +421,7 @@ QString Kit::toHtml()
|
|||||||
str << "<h3>" << displayName() << "</h3>";
|
str << "<h3>" << displayName() << "</h3>";
|
||||||
str << "<table>";
|
str << "<table>";
|
||||||
|
|
||||||
if (!isValid()) {
|
if (!isValid() || hasWarning()) {
|
||||||
QList<Task> issues = validate();
|
QList<Task> issues = validate();
|
||||||
str << "<p>";
|
str << "<p>";
|
||||||
foreach (const Task &t, issues) {
|
foreach (const Task &t, issues) {
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ public:
|
|||||||
void unblockNotification();
|
void unblockNotification();
|
||||||
|
|
||||||
bool isValid() const;
|
bool isValid() const;
|
||||||
|
bool hasWarning() const;
|
||||||
QList<Task> validate() const;
|
QList<Task> validate() const;
|
||||||
void fix(); // Fix the individual kit information.
|
void fix(); // Fix the individual kit information.
|
||||||
void setup(); // Apply advanced magic(TM). Used only once on each kit during initial setup.
|
void setup(); // Apply advanced magic(TM). Used only once on each kit during initial setup.
|
||||||
|
|||||||
@@ -157,6 +157,11 @@ bool KitManagerConfigWidget::isValid() const
|
|||||||
return m_modifiedKit->isValid();
|
return m_modifiedKit->isValid();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool KitManagerConfigWidget::hasWarning() const
|
||||||
|
{
|
||||||
|
return m_modifiedKit->hasWarning();
|
||||||
|
}
|
||||||
|
|
||||||
QString KitManagerConfigWidget::validityMessage() const
|
QString KitManagerConfigWidget::validityMessage() const
|
||||||
{
|
{
|
||||||
return m_modifiedKit->toHtml();
|
return m_modifiedKit->toHtml();
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ public:
|
|||||||
void discard();
|
void discard();
|
||||||
bool isDirty() const;
|
bool isDirty() const;
|
||||||
bool isValid() const;
|
bool isValid() const;
|
||||||
|
bool hasWarning() const;
|
||||||
QString validityMessage() const;
|
QString validityMessage() const;
|
||||||
void addConfigWidget(ProjectExplorer::KitConfigWidget *widget);
|
void addConfigWidget(ProjectExplorer::KitConfigWidget *widget);
|
||||||
void makeReadOnly();
|
void makeReadOnly();
|
||||||
|
|||||||
@@ -154,6 +154,7 @@ int KitModel::columnCount(const QModelIndex &parent) const
|
|||||||
QVariant KitModel::data(const QModelIndex &index, int role) const
|
QVariant KitModel::data(const QModelIndex &index, int role) const
|
||||||
{
|
{
|
||||||
static QIcon warningIcon(QLatin1String(":/projectexplorer/images/compile_warning.png"));
|
static QIcon warningIcon(QLatin1String(":/projectexplorer/images/compile_warning.png"));
|
||||||
|
static QIcon errorIcon(QLatin1String(":/projectexplorer/images/compile_error.png"));
|
||||||
|
|
||||||
if (!index.isValid() || index.column() != 0)
|
if (!index.isValid() || index.column() != 0)
|
||||||
return QVariant();
|
return QVariant();
|
||||||
@@ -179,7 +180,11 @@ QVariant KitModel::data(const QModelIndex &index, int role) const
|
|||||||
baseName = tr("%1 (default)").arg(baseName);
|
baseName = tr("%1 (default)").arg(baseName);
|
||||||
return baseName;
|
return baseName;
|
||||||
} else if (role == Qt::DecorationRole) {
|
} else if (role == Qt::DecorationRole) {
|
||||||
return node->widget->isValid() ? QIcon() : warningIcon;
|
if (!node->widget->isValid())
|
||||||
|
return errorIcon;
|
||||||
|
if (node->widget->hasWarning())
|
||||||
|
return warningIcon;
|
||||||
|
return QIcon();
|
||||||
} else if (role == Qt::ToolTipRole) {
|
} else if (role == Qt::ToolTipRole) {
|
||||||
return node->widget->validityMessage();
|
return node->widget->validityMessage();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user