From 1932912e7c07484fa3523f451a9317630b9aac20 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Mon, 9 Oct 2017 06:59:54 +0200 Subject: Add icons to file system view directory selector Change-Id: I0b6451d7f68fae93e0b140aaea030c88ec1a8801 Reviewed-by: Eike Ziller Reviewed-by: Alessandro Portale --- src/libs/utils/images/home.png | Bin 0 -> 146 bytes src/libs/utils/images/home@2x.png | Bin 0 -> 251 bytes src/libs/utils/utils.qrc | 2 ++ src/libs/utils/utilsicons.cpp | 5 +++++ src/libs/utils/utilsicons.h | 2 ++ src/plugins/help/help.qrc | 2 -- src/plugins/help/helpwidget.cpp | 2 +- src/plugins/help/images/home.png | Bin 146 -> 0 bytes src/plugins/help/images/home@2x.png | Bin 251 -> 0 bytes src/plugins/projectexplorer/foldernavigationwidget.cpp | 11 ++++++++--- src/plugins/projectexplorer/foldernavigationwidget.h | 2 ++ src/plugins/projectexplorer/session.cpp | 9 +++++++-- src/shared/help/helpicons.h | 2 -- src/tools/icons/qtcreatoricons.svg | 2 +- 14 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 src/libs/utils/images/home.png create mode 100644 src/libs/utils/images/home@2x.png delete mode 100644 src/plugins/help/images/home.png delete mode 100644 src/plugins/help/images/home@2x.png diff --git a/src/libs/utils/images/home.png b/src/libs/utils/images/home.png new file mode 100644 index 0000000000..45b92a001e Binary files /dev/null and b/src/libs/utils/images/home.png differ diff --git a/src/libs/utils/images/home@2x.png b/src/libs/utils/images/home@2x.png new file mode 100644 index 0000000000..72629cb719 Binary files /dev/null and b/src/libs/utils/images/home@2x.png differ diff --git a/src/libs/utils/utils.qrc b/src/libs/utils/utils.qrc index 9086ea94a7..95a473da2a 100644 --- a/src/libs/utils/utils.qrc +++ b/src/libs/utils/utils.qrc @@ -178,5 +178,7 @@ images/wizardicon-file@2x.png images/project.png images/project@2x.png + images/home.png + images/home@2x.png diff --git a/src/libs/utils/utilsicons.cpp b/src/libs/utils/utilsicons.cpp index cc08c3920c..016d3d5fb4 100644 --- a/src/libs/utils/utilsicons.cpp +++ b/src/libs/utils/utilsicons.cpp @@ -28,6 +28,11 @@ namespace Utils { namespace Icons { + +const Icon HOME({ + {QLatin1String(":/utils/images/home.png"), Utils::Theme::PanelTextColorDark}}, Icon::Tint); +const Icon HOME_TOOLBAR({ + {QLatin1String(":/utils/images/home.png"), Utils::Theme::IconsBaseColor}}); const Icon EDIT_CLEAR({ {QLatin1String(":/utils/images/editclear.png"), Theme::PanelTextColorMid}}, Icon::Tint); const Icon EDIT_CLEAR_TOOLBAR({ diff --git a/src/libs/utils/utilsicons.h b/src/libs/utils/utilsicons.h index af618ee454..9a3a586e14 100644 --- a/src/libs/utils/utilsicons.h +++ b/src/libs/utils/utilsicons.h @@ -31,6 +31,8 @@ namespace Utils { namespace Icons { +QTCREATOR_UTILS_EXPORT extern const Icon HOME; +QTCREATOR_UTILS_EXPORT extern const Icon HOME_TOOLBAR; QTCREATOR_UTILS_EXPORT extern const Icon EDIT_CLEAR; QTCREATOR_UTILS_EXPORT extern const Icon EDIT_CLEAR_TOOLBAR; QTCREATOR_UTILS_EXPORT extern const Icon LOCKED_TOOLBAR; diff --git a/src/plugins/help/help.qrc b/src/plugins/help/help.qrc index d2db8d1a6b..12c1f0803e 100644 --- a/src/plugins/help/help.qrc +++ b/src/plugins/help/help.qrc @@ -2,8 +2,6 @@ images/find.png images/book.png - images/home.png - images/home@2x.png images/category_help.png images/mode_help.png images/mode_help@2x.png diff --git a/src/plugins/help/helpwidget.cpp b/src/plugins/help/helpwidget.cpp index b0e6cb3daf..feb6c3ffa4 100644 --- a/src/plugins/help/helpwidget.cpp +++ b/src/plugins/help/helpwidget.cpp @@ -176,7 +176,7 @@ HelpWidget::HelpWidget(const Core::Context &context, WidgetStyle style, QWidget layout->addWidget(Core::Command::toolButtonWithAppendedShortcut(m_switchToHelp, cmd)); } - m_homeAction = new QAction(Icons::HOME_TOOLBAR.icon(), tr("Home"), this); + m_homeAction = new QAction(Utils::Icons::HOME_TOOLBAR.icon(), tr("Home"), this); cmd = Core::ActionManager::registerAction(m_homeAction, Constants::HELP_HOME, context); connect(m_homeAction, &QAction::triggered, this, &HelpWidget::goHome); layout->addWidget(Core::Command::toolButtonWithAppendedShortcut(m_homeAction, cmd)); diff --git a/src/plugins/help/images/home.png b/src/plugins/help/images/home.png deleted file mode 100644 index 45b92a001e..0000000000 Binary files a/src/plugins/help/images/home.png and /dev/null differ diff --git a/src/plugins/help/images/home@2x.png b/src/plugins/help/images/home@2x.png deleted file mode 100644 index 72629cb719..0000000000 Binary files a/src/plugins/help/images/home@2x.png and /dev/null differ diff --git a/src/plugins/projectexplorer/foldernavigationwidget.cpp b/src/plugins/projectexplorer/foldernavigationwidget.cpp index f981545c69..3ba8fecce1 100644 --- a/src/plugins/projectexplorer/foldernavigationwidget.cpp +++ b/src/plugins/projectexplorer/foldernavigationwidget.cpp @@ -25,6 +25,7 @@ #include "foldernavigationwidget.h" #include "projectexplorer.h" +#include "projectexplorericons.h" #include #include @@ -199,6 +200,7 @@ void FolderNavigationWidget::insertRootDirectory( m_rootSelector->setItemData(index, directory.id, ID_ROLE); m_rootSelector->setItemData(index, directory.sortValue, SORT_ROLE); m_rootSelector->setItemData(index, directory.path.toUserOutput(), Qt::ToolTipRole); + m_rootSelector->setItemIcon(index, directory.icon); if (m_rootSelector->currentIndex() == previousIndex) m_rootSelector->setCurrentIndex(index); if (previousIndex < m_rootSelector->count()) @@ -378,11 +380,13 @@ FolderNavigationWidgetFactory::FolderNavigationWidgetFactory() insertRootDirectory({QLatin1String("A.Computer"), 0 /*sortValue*/, FolderNavigationWidget::tr("Computer"), - Utils::FileName()}); + Utils::FileName(), + Icons::DESKTOP_DEVICE_SMALL.icon()}); insertRootDirectory({QLatin1String("A.Home"), 10 /*sortValue*/, FolderNavigationWidget::tr("Home"), - Utils::FileName::fromString(QDir::homePath())}); + Utils::FileName::fromString(QDir::homePath()), + Utils::Icons::HOME.icon()}); updateProjectsDirectoryRoot(); connect(Core::DocumentManager::instance(), &Core::DocumentManager::projectsDirectoryChanged, @@ -465,7 +469,8 @@ void FolderNavigationWidgetFactory::updateProjectsDirectoryRoot() insertRootDirectory({QLatin1String(PROJECTSDIRECTORYROOT_ID), 20 /*sortValue*/, FolderNavigationWidget::tr("Projects"), - Core::DocumentManager::projectsDirectory()}); + Core::DocumentManager::projectsDirectory(), + Utils::Icons::PROJECT.icon()}); } } // namespace Internal diff --git a/src/plugins/projectexplorer/foldernavigationwidget.h b/src/plugins/projectexplorer/foldernavigationwidget.h index 11e2bbc9ec..55bbf44a27 100644 --- a/src/plugins/projectexplorer/foldernavigationwidget.h +++ b/src/plugins/projectexplorer/foldernavigationwidget.h @@ -28,6 +28,7 @@ #include #include +#include #include namespace Core { class IEditor; } @@ -56,6 +57,7 @@ public: int sortValue; QString displayName; Utils::FileName path; + QIcon icon; }; FolderNavigationWidgetFactory(); diff --git a/src/plugins/projectexplorer/session.cpp b/src/plugins/projectexplorer/session.cpp index e66e8e7d8b..b5fddb74ce 100644 --- a/src/plugins/projectexplorer/session.cpp +++ b/src/plugins/projectexplorer/session.cpp @@ -394,14 +394,19 @@ void SessionManager::addProject(Project *pro) emit m_instance->projectAdded(pro); const auto updateFolderNavigation = [pro] { + const QIcon icon = pro->rootProjectNode() ? pro->rootProjectNode()->icon() : QIcon(); FolderNavigationWidgetFactory::insertRootDirectory({projectFolderId(pro), PROJECT_SORT_VALUE, pro->displayName(), - pro->projectFilePath().parentDir()}); + pro->projectFilePath().parentDir(), + icon}); }; updateFolderNavigation(); configureEditors(pro); - connect(pro, &Project::fileListChanged, [pro](){ configureEditors(pro); }); + connect(pro, &Project::fileListChanged, [pro, updateFolderNavigation]() { + configureEditors(pro); + updateFolderNavigation(); // update icon + }); connect(pro, &Project::displayNameChanged, pro, updateFolderNavigation); } diff --git a/src/shared/help/helpicons.h b/src/shared/help/helpicons.h index f9429a2815..dd4ebce26a 100644 --- a/src/shared/help/helpicons.h +++ b/src/shared/help/helpicons.h @@ -30,8 +30,6 @@ namespace Help { namespace Icons { -const Utils::Icon HOME_TOOLBAR({ - {QLatin1String(":/help/images/home.png"), Utils::Theme::IconsBaseColor}}); const Utils::Icon MODE_HELP_CLASSIC( QLatin1String(":/help/images/mode_help.png")); const Utils::Icon MODE_HELP_FLAT({ diff --git a/src/tools/icons/qtcreatoricons.svg b/src/tools/icons/qtcreatoricons.svg index 442a265749..2cfb5042d2 100644 --- a/src/tools/icons/qtcreatoricons.svg +++ b/src/tools/icons/qtcreatoricons.svg @@ -4087,7 +4087,7 @@ sodipodi:nodetypes="cccc" /> + id="src/libs/utils/images/home">