Cleanup of Theming

A theme is supposed to provide colors, flags and images. This change
removes functions from Theme which do not just return simple data.
Also ManhattanStyle and Theme get separated a bit.

Change-Id: I2fab26ee38b858fefb55920eb219f84abcfaac18
Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
Alessandro Portale
2014-10-15 23:07:33 +02:00
committed by hjk
parent 4612cccb08
commit a18b067326
13 changed files with 112 additions and 152 deletions

View File

@@ -84,27 +84,28 @@ struct FileTypeDataStorage {
ProjectExplorer::FileType type;
const char *typeName;
const char *icon;
Theme::ImageFile themeImage;
};
static const FileTypeDataStorage fileTypeDataStorage[] = {
{ ProjectExplorer::HeaderType,
QT_TRANSLATE_NOOP("QmakeProjectManager::QmakePriFileNode", "Headers"),
":/qmakeprojectmanager/images/headers.png" },
":/qmakeprojectmanager/images/headers.png", Theme::ProjectExplorerHeader },
{ ProjectExplorer::SourceType,
QT_TRANSLATE_NOOP("QmakeProjectManager::QmakePriFileNode", "Sources"),
":/qmakeprojectmanager/images/sources.png" },
":/qmakeprojectmanager/images/sources.png", Theme::ProjectExplorerSource },
{ ProjectExplorer::FormType,
QT_TRANSLATE_NOOP("QmakeProjectManager::QmakePriFileNode", "Forms"),
":/qtsupport/images/forms.png" },
":/qtsupport/images/forms.png", Theme::ProjectExplorerForm },
{ ProjectExplorer::ResourceType,
QT_TRANSLATE_NOOP("QmakeProjectManager::QmakePriFileNode", "Resources"),
":/qtsupport/images/qt_qrc.png" },
":/qtsupport/images/qt_qrc.png", Theme::ProjectExplorerResource },
{ ProjectExplorer::QMLType,
QT_TRANSLATE_NOOP("QmakeProjectManager::QmakePriFileNode", "QML"),
":/qtsupport/images/qml.png" },
":/qtsupport/images/qml.png", Theme::ProjectExplorerQML },
{ ProjectExplorer::UnknownFileType,
QT_TRANSLATE_NOOP("QmakeProjectManager::QmakePriFileNode", "Other files"),
":/qmakeprojectmanager/images/unknown.png" }
":/qmakeprojectmanager/images/unknown.png", Theme::ProjectExplorerOtherFiles }
};
class SortByPath
@@ -153,8 +154,8 @@ QmakeNodeStaticData::QmakeNodeStaticData()
for (unsigned i = 0 ; i < count; ++i) {
QIcon overlayIcon;
QString iconFile = QString::fromLatin1(fileTypeDataStorage[i].icon);
iconFile = creatorTheme()->imageFile(iconFile);
const QString iconFile = creatorTheme()->imageFile(fileTypeDataStorage[i].themeImage,
QString::fromLatin1(fileTypeDataStorage[i].icon));
overlayIcon = QIcon(iconFile);
const QPixmap folderPixmap =
Core::FileIconProvider::overlayIcon(QStyle::SP_DirIcon,
@@ -166,8 +167,9 @@ QmakeNodeStaticData::QmakeNodeStaticData()
desc, folderIcon));
}
// Project icon
const QLatin1String fname(":/qtsupport/images/qt_project.png");
const QIcon projectBaseIcon(creatorTheme()->imageFile(fname));
const QString fileName = creatorTheme()->imageFile(Theme::ProjectFileIcon,
QLatin1String(":/qtsupport/images/qt_project.png"));
const QIcon projectBaseIcon(fileName);
const QPixmap projectPixmap = Core::FileIconProvider::overlayIcon(QStyle::SP_DirIcon,
projectBaseIcon,
desiredSize);