forked from qt-creator/qt-creator
Kit: Add static method to get icon for a path
Change-Id: Icd15e53022453be0713ee4953dd8f1f099b053de Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
@@ -33,6 +33,7 @@
|
|||||||
#include "ioutputparser.h"
|
#include "ioutputparser.h"
|
||||||
|
|
||||||
#include <QApplication>
|
#include <QApplication>
|
||||||
|
#include <QFileInfo>
|
||||||
#include <QIcon>
|
#include <QIcon>
|
||||||
#include <QStyle>
|
#include <QStyle>
|
||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
@@ -298,6 +299,19 @@ QIcon Kit::icon() const
|
|||||||
return d->m_icon;
|
return d->m_icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QIcon Kit::icon(const QString &path)
|
||||||
|
{
|
||||||
|
if (path.isEmpty())
|
||||||
|
return QIcon();
|
||||||
|
if (path == QLatin1String(":///DESKTOP///"))
|
||||||
|
return qApp->style()->standardIcon(QStyle::SP_ComputerIcon);
|
||||||
|
|
||||||
|
QFileInfo fi(path);
|
||||||
|
if (fi.isFile() && fi.isReadable())
|
||||||
|
return QIcon(path);
|
||||||
|
return QIcon();
|
||||||
|
}
|
||||||
|
|
||||||
QString Kit::iconPath() const
|
QString Kit::iconPath() const
|
||||||
{
|
{
|
||||||
return d->m_iconPath;
|
return d->m_iconPath;
|
||||||
@@ -308,12 +322,7 @@ void Kit::setIconPath(const QString &path)
|
|||||||
if (d->m_iconPath == path)
|
if (d->m_iconPath == path)
|
||||||
return;
|
return;
|
||||||
d->m_iconPath = path;
|
d->m_iconPath = path;
|
||||||
if (path.isNull())
|
d->m_icon = icon(path);
|
||||||
d->m_icon = QIcon();
|
|
||||||
else if (path == QLatin1String(":///DESKTOP///"))
|
|
||||||
d->m_icon = qApp->style()->standardIcon(QStyle::SP_ComputerIcon);
|
|
||||||
else
|
|
||||||
d->m_icon = QIcon(path);
|
|
||||||
kitUpdated();
|
kitUpdated();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -80,6 +80,7 @@ public:
|
|||||||
Core::Id id() const;
|
Core::Id id() const;
|
||||||
|
|
||||||
QIcon icon() const;
|
QIcon icon() const;
|
||||||
|
static QIcon icon(const QString &path);
|
||||||
QString iconPath() const;
|
QString iconPath() const;
|
||||||
void setIconPath(const QString &path);
|
void setIconPath(const QString &path);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user