diff --git a/share/qtcreator/themes/dark.creatortheme b/share/qtcreator/themes/dark.creatortheme index 832a981bddbc601b34846f3a0ac3659ef2fbfc31..1211ebbd1681c099cc91a7d9ca1cd35d71bc615d 100644 --- a/share/qtcreator/themes/dark.creatortheme +++ b/share/qtcreator/themes/dark.creatortheme @@ -49,6 +49,7 @@ FancyToolButtonHoverColor=hoverBackground FancyToolButtonSelectedColor=selectedBackground FutureProgressBackgroundColor=shadowBackground IconsBaseColor=ffdcdcdc +IconsDisabledColor=textDisabled IconsInfoColor=ff43aced IconsWarningColor=fff9ce1f IconsErrorColor=ffe8555a @@ -57,6 +58,15 @@ IconsStopColor=ffe7353b IconsDebugColor=ffb8c6ff IconsInterruptColor=ff7488db IconsNavigationArrowsColor=ffebc322 +IconsBuildHammerHandleColor=ffdd7710 +IconsBuildHammerHeadColor=ff989898 +IconsModeWelcomeActiveColor=ff80c342 +IconsModeEditActiveColor=ff99aaef +IconsModeDesignActiveColor=ffbb6000 +IconsModeDebugActiveColor=ff99aaef +IconsModeProjetcsActiveColor=ff80c342 +IconsModeAnalyzeActiveColor=ff43adee +IconsModeHelpActiveColor=fff4be04 InfoBarBackground=ff505000 InfoBarText=text MenuBarEmptyAreaBackgroundColor=shadowBackground @@ -157,6 +167,7 @@ DrawProgressBarSunken=false DrawSearchResultWidgetFrame=false DrawTargetSelectorBottom=false ApplyThemePaletteGlobally=true +FlatSideBarIcons=true [Gradients] DetailsWidgetHeaderGradient\1\color=0 diff --git a/share/qtcreator/themes/default.creatortheme b/share/qtcreator/themes/default.creatortheme index bc09f594bb548fb3147b23f69452a1800967f4e7..2346a5a13ea155e03434825a5e0ee68cefe0f701 100644 --- a/share/qtcreator/themes/default.creatortheme +++ b/share/qtcreator/themes/default.creatortheme @@ -3,8 +3,9 @@ ThemeName=default PreferredStyles= [Palette] -brightText = ffffffff -darkText = ff000000 +brightText=ffffffff +darkText=ff000000 +textDisabled=99a0a0a0 [Colors] BackgroundColorAlternate=ff3d3d3d @@ -35,14 +36,15 @@ DoubleTabWidget2ndTabBackgroundColor=ffff0000 DoubleTabWidget2ndTabInactiveTextColor=ff000000 EditorPlaceholderColor=ffe0dcd8 FancyTabBarBackgroundColor=ffff0000 -FancyTabWidgetDisabledSelectedTextColor=ffffffff -FancyTabWidgetDisabledUnselectedTextColor=78ffffff +FancyTabWidgetDisabledSelectedTextColor=textDisabled +FancyTabWidgetDisabledUnselectedTextColor=textDisabled FancyTabWidgetEnabledSelectedTextColor=ff3c3c3c FancyTabWidgetEnabledUnselectedTextColor=ffffffff FancyToolButtonHoverColor=28ffffff FancyToolButtonSelectedColor=32000000 FutureProgressBackgroundColor=ffff0000 IconsBaseColor=ffdcdcdc +IconsDisabledColor=textDisabled IconsInfoColor=ff43aced IconsWarningColor=fff9ce1f IconsErrorColor=ffe8555a @@ -51,6 +53,15 @@ IconsStopColor=ffe7353b IconsDebugColor=ffb8c6ff IconsInterruptColor=ff7488db IconsNavigationArrowsColor=ffebc322 +IconsBuildHammerHandleColor=ffdd7710 +IconsBuildHammerHeadColor=ff989898 +IconsModeWelcomeActiveColor=ff5caa15 +IconsModeEditActiveColor=ff6a6add +IconsModeDesignActiveColor=ffbb6000 +IconsModeDebugActiveColor=ff6a6add +IconsModeProjetcsActiveColor=ff5caa15 +IconsModeAnalyzeActiveColor=ff43adee +IconsModeHelpActiveColor=fffaa836 InfoBarBackground=ffffffe1 InfoBarText=ff000000 MenuBarEmptyAreaBackgroundColor=ffff0000 @@ -151,6 +162,7 @@ DrawProgressBarSunken=true DrawSearchResultWidgetFrame=true DrawTargetSelectorBottom=true ApplyThemePaletteGlobally=false +FlatSideBarIcons=false [Gradients] DetailsWidgetHeaderGradient\1\color=ffffff diff --git a/src/libs/utils/icon.cpp b/src/libs/utils/icon.cpp index 402341a320257af725df808b8fe76a5b3e6c9921..8a2286698f9288c40aef8fc993b114d8193a8235 100644 --- a/src/libs/utils/icon.cpp +++ b/src/libs/utils/icon.cpp @@ -39,6 +39,7 @@ #include <QMetaEnum> #include <QPainter> #include <QPaintEngine> +#include <QWidget> namespace Utils { @@ -211,11 +212,40 @@ QString Icon::imageFileName() const return first().first; } -Icon& Icon::operator=(const Icon &other) +QIcon Icon::sideBarIcon(const Icon &classic, const Icon &flat) { - QVector::operator =(other); - m_style = other.m_style; - return *this; + QIcon result; + if (creatorTheme()->flag(Theme::FlatSideBarIcons)) { + result = flat.icon(); + } else { + const QPixmap pixmap = classic.pixmap(); + result.addPixmap(pixmap); + // Ensure that the icon contains a disabled state of that size, since + // Since we have icons with mixed sizes (e.g. DEBUG_START), and want to + // avoid that QIcon creates scaled versions of missing QIcon::Disabled + // sizes. + result.addPixmap(StyleHelper::disabledSideBarIcon(pixmap), QIcon::Disabled); + } + return result; +} + +QIcon Icon::modeIcon(const Icon &classic, const Icon &flat, const Icon &flatActive) +{ + QIcon result = sideBarIcon(classic, flat); + if (creatorTheme()->flag(Theme::FlatSideBarIcons)) + result.addPixmap(flatActive.pixmap(), QIcon::Active); + return result; +} + +QIcon Icon::combinedIcon(const QList<QIcon> &icons) +{ + QIcon result; + QWindow *window = QApplication::allWidgets().first()->windowHandle(); + for (const QIcon &icon: icons) + for (const QIcon::Mode mode: {QIcon::Disabled, QIcon::Normal}) + for (const QSize &size: icon.availableSizes(mode)) + result.addPixmap(icon.pixmap(window, size, mode), mode); + return result; } } // namespace Utils diff --git a/src/libs/utils/icon.h b/src/libs/utils/icon.h index d1916aa0632f51f01747e2a44e5c9b00c44967b6..b8326ac90636db12e81a460b5ccd267177e49be1 100644 --- a/src/libs/utils/icon.h +++ b/src/libs/utils/icon.h @@ -60,6 +60,7 @@ public: Icon(); Icon(std::initializer_list<IconMaskAndColor> args, Style style = Style::TintedWithShadow); Icon(const QString &imageFileName); + Icon(const Icon &other) = default; QIcon icon() const; // Same as icon() but without disabled state. @@ -69,7 +70,14 @@ public: // where icons are still defined as filename. QString imageFileName() const; - Icon &operator=(const Icon &other); + // Returns either the classic or a themed icon depending on + // the current Theme::FlatModeIcons flag. + static QIcon sideBarIcon(const Icon &classic, const Icon &flat); + // Like sideBarIcon plus added action mode for the flat icon + static QIcon modeIcon(const Icon &classic, const Icon &flat, const Icon &flatActive); + + // Combined icon pixmaps in Normal and Disabled states from several QIcons + static QIcon combinedIcon(const QList<QIcon> &icons); private: Style m_style = Style::Plain; diff --git a/src/libs/utils/stylehelper.cpp b/src/libs/utils/stylehelper.cpp index 90ef68fb3bd21eb1b7bcfe234c3e4d50f7309e6d..877ea793903d1d796130348d982f3fb8f6389f30 100644 --- a/src/libs/utils/stylehelper.cpp +++ b/src/libs/utils/stylehelper.cpp @@ -350,6 +350,21 @@ void StyleHelper::menuGradient(QPainter *painter, const QRect &spanRect, const Q } } +QPixmap StyleHelper::disabledSideBarIcon(const QPixmap &enabledicon) +{ + QImage im = enabledicon.toImage().convertToFormat(QImage::Format_ARGB32); + for (int y=0; y<im.height(); ++y) { + QRgb *scanLine = reinterpret_cast<QRgb*>(im.scanLine(y)); + for (int x=0; x<im.width(); ++x) { + QRgb pixel = *scanLine; + char intensity = char(qGray(pixel)); + *scanLine = qRgba(intensity, intensity, intensity, qAlpha(pixel)); + ++scanLine; + } + } + return QPixmap::fromImage(im); +} + // Draws a cached pixmap with shadow void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect, QPainter *p, QIcon::Mode iconMode, int dipRadius, const QColor &color, const QPoint &dipOffset) @@ -363,7 +378,8 @@ void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect, // return a high-dpi pixmap, which will in that case have a devicePixelRatio // different than 1. The shadow drawing caluculations are done in device // pixels. - QPixmap px = icon.pixmap(rect.size()); + QWindow *window = QApplication::allWidgets().first()->windowHandle(); + QPixmap px = icon.pixmap(window, rect.size(), iconMode); int devicePixelRatio = qCeil(px.devicePixelRatio()); int radius = dipRadius * devicePixelRatio; QPoint offset = dipOffset * devicePixelRatio; @@ -372,51 +388,43 @@ void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect, QPainter cachePainter(&cache); if (iconMode == QIcon::Disabled) { - QImage im = px.toImage().convertToFormat(QImage::Format_ARGB32); - for (int y=0; y<im.height(); ++y) { - QRgb *scanLine = (QRgb*)im.scanLine(y); - for (int x=0; x<im.width(); ++x) { - QRgb pixel = *scanLine; - char intensity = qGray(pixel); - *scanLine = qRgba(intensity, intensity, intensity, qAlpha(pixel)); - ++scanLine; - } - } - px = QPixmap::fromImage(im); + const bool hasDisabledState = icon.availableSizes(QIcon::Disabled).contains(px.size()); + if (!hasDisabledState) + px = disabledSideBarIcon(icon.pixmap(window, rect.size())); + } else { + // Draw shadow + QImage tmp(px.size() + QSize(radius * 2, radius * 2 + 1), QImage::Format_ARGB32_Premultiplied); + tmp.fill(Qt::transparent); + + QPainter tmpPainter(&tmp); + tmpPainter.setCompositionMode(QPainter::CompositionMode_Source); + tmpPainter.drawPixmap(QRect(radius, radius, px.width(), px.height()), px); + tmpPainter.end(); + + // blur the alpha channel + QImage blurred(tmp.size(), QImage::Format_ARGB32_Premultiplied); + blurred.fill(Qt::transparent); + QPainter blurPainter(&blurred); + qt_blurImage(&blurPainter, tmp, radius, false, true); + blurPainter.end(); + + tmp = blurred; + + // blacken the image... + tmpPainter.begin(&tmp); + tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn); + tmpPainter.fillRect(tmp.rect(), color); + tmpPainter.end(); + + tmpPainter.begin(&tmp); + tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn); + tmpPainter.fillRect(tmp.rect(), color); + tmpPainter.end(); + + // draw the blurred drop shadow... + cachePainter.drawImage(QRect(0, 0, cache.rect().width(), cache.rect().height()), tmp); } - // Draw shadow - QImage tmp(px.size() + QSize(radius * 2, radius * 2 + 1), QImage::Format_ARGB32_Premultiplied); - tmp.fill(Qt::transparent); - - QPainter tmpPainter(&tmp); - tmpPainter.setCompositionMode(QPainter::CompositionMode_Source); - tmpPainter.drawPixmap(QRect(radius, radius, px.width(), px.height()), px); - tmpPainter.end(); - - // blur the alpha channel - QImage blurred(tmp.size(), QImage::Format_ARGB32_Premultiplied); - blurred.fill(Qt::transparent); - QPainter blurPainter(&blurred); - qt_blurImage(&blurPainter, tmp, radius, false, true); - blurPainter.end(); - - tmp = blurred; - - // blacken the image... - tmpPainter.begin(&tmp); - tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn); - tmpPainter.fillRect(tmp.rect(), color); - tmpPainter.end(); - - tmpPainter.begin(&tmp); - tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn); - tmpPainter.fillRect(tmp.rect(), color); - tmpPainter.end(); - - // draw the blurred drop shadow... - cachePainter.drawImage(QRect(0, 0, cache.rect().width(), cache.rect().height()), tmp); - // Draw the actual pixmap... cachePainter.drawPixmap(QRect(QPoint(radius, radius) + offset, QSize(px.width(), px.height())), px); cache.setDevicePixelRatio(devicePixelRatio); diff --git a/src/libs/utils/stylehelper.h b/src/libs/utils/stylehelper.h index 4e4295f5307eb06a8f9cc88913826d4e2293a310..8c2683335e09d3fdcaf1b5fcb163c75b81c8d782 100644 --- a/src/libs/utils/stylehelper.h +++ b/src/libs/utils/stylehelper.h @@ -85,6 +85,7 @@ public: static void menuGradient(QPainter *painter, const QRect &spanRect, const QRect &clipRect); static bool usePixmapCache() { return true; } + static QPixmap disabledSideBarIcon(const QPixmap &enabledicon); static void drawIconWithShadow(const QIcon &icon, const QRect &rect, QPainter *p, QIcon::Mode iconMode, int dipRadius = 3, const QColor &color = QColor(0, 0, 0, 130), const QPoint &dipOffset = QPoint(1, -2)); diff --git a/src/libs/utils/theme/theme.h b/src/libs/utils/theme/theme.h index bd398847622c3228b20f6eb1c4c74ba26f2bd3b8..e8103a2105c4e9b0a5696af74ec960c1f020ac97 100644 --- a/src/libs/utils/theme/theme.h +++ b/src/libs/utils/theme/theme.h @@ -133,6 +133,7 @@ public: /* Icons */ IconsBaseColor, + IconsDisabledColor, IconsInfoColor, IconsWarningColor, IconsErrorColor, @@ -141,6 +142,15 @@ public: IconsInterruptColor, IconsDebugColor, IconsNavigationArrowsColor, + IconsBuildHammerHandleColor, + IconsBuildHammerHeadColor, + IconsModeWelcomeActiveColor, + IconsModeEditActiveColor, + IconsModeDesignActiveColor, + IconsModeDebugActiveColor, + IconsModeProjetcsActiveColor, + IconsModeAnalyzeActiveColor, + IconsModeHelpActiveColor, /* Output panes */ @@ -249,7 +259,8 @@ public: DrawIndicatorBranch, ComboBoxDrawTextShadow, DerivePaletteFromTheme, - ApplyThemePaletteGlobally + ApplyThemePaletteGlobally, + FlatSideBarIcons }; enum WidgetStyle { diff --git a/src/plugins/analyzerbase/analyzerbase.qrc b/src/plugins/analyzerbase/analyzerbase.qrc index b6c5662d1fbcc6037997584e30e0afb67475495f..10c518cfb2092a5f69d4537684afaa6b4d653565 100644 --- a/src/plugins/analyzerbase/analyzerbase.qrc +++ b/src/plugins/analyzerbase/analyzerbase.qrc @@ -2,6 +2,8 @@ <qresource prefix="/"> <file>images/mode_analyze.png</file> <file>images/mode_analyze@2x.png</file> + <file>images/mode_analyze_mask.png</file> + <file>images/mode_analyze_mask@2x.png</file> <file>images/analyzer_category.png</file> <file>images/analyzer_overlay_small.png</file> <file>images/analyzer_overlay_small@2x.png</file> diff --git a/src/plugins/analyzerbase/analyzericons.h b/src/plugins/analyzerbase/analyzericons.h index cf6c5065e4aec618744b84126721306029c64cb4..4bde750f3ac61b67d929a71d92e0e1cfbfe5de0e 100644 --- a/src/plugins/analyzerbase/analyzericons.h +++ b/src/plugins/analyzerbase/analyzericons.h @@ -39,6 +39,12 @@ namespace Icons { const Utils::Icon ANALYZER_CONTROL_START({ {QLatin1String(":/images/analyzer_overlay_small.png"), Utils::Theme::IconsBaseColor}, {QLatin1String(":/core/images/run_overlay_small.png"), Utils::Theme::IconsRunColor}}); +const Utils::Icon MODE_ANALYZE_CLASSIC( + QLatin1String(":/images/mode_analyze.png")); +const Utils::Icon MODE_ANALYZE_FLAT({ + {QLatin1String(":/images/mode_analyze_mask.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_ANALYZE_FLAT_ACTIVE({ + {QLatin1String(":/images/mode_analyze_mask.png"), Utils::Theme::IconsModeAnalyzeActiveColor}}); } // namespace Icons } // namespace Analyzer diff --git a/src/plugins/analyzerbase/analyzermanager.cpp b/src/plugins/analyzerbase/analyzermanager.cpp index 34b02e437115b87bf9cec07f5bdec61a862f7eeb..db8d48dd5cc826a1a6f75d7e334ad8e018393ce5 100644 --- a/src/plugins/analyzerbase/analyzermanager.cpp +++ b/src/plugins/analyzerbase/analyzermanager.cpp @@ -36,7 +36,7 @@ #include "analyzerstartparameters.h" #include "ianalyzertool.h" -#include <coreplugin/coreconstants.h> +#include <coreplugin/coreicons.h> #include <coreplugin/findplaceholder.h> #include <coreplugin/icore.h> #include <coreplugin/imode.h> @@ -106,7 +106,8 @@ public: { setContext(Context(C_ANALYZEMODE, C_NAVIGATION_PANE)); setDisplayName(AnalyzerManager::tr("Analyze")); - setIcon(QIcon(QLatin1String(":/images/mode_analyze.png"))); + setIcon(Utils::Icon::modeIcon(Icons::MODE_ANALYZE_CLASSIC, + Icons::MODE_ANALYZE_FLAT, Icons::MODE_ANALYZE_FLAT_ACTIVE)); setPriority(P_MODE_ANALYZE); setId(MODE_ANALYZE); } diff --git a/src/plugins/analyzerbase/images/mode_analyze_mask.png b/src/plugins/analyzerbase/images/mode_analyze_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..a898c27eb6e4a42e4f4fa8a42763ca2aaaddd62c Binary files /dev/null and b/src/plugins/analyzerbase/images/mode_analyze_mask.png differ diff --git a/src/plugins/analyzerbase/images/mode_analyze_mask@2x.png b/src/plugins/analyzerbase/images/mode_analyze_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..160b6513a10419bd8880cd9e8d2e76a39b79be7d Binary files /dev/null and b/src/plugins/analyzerbase/images/mode_analyze_mask@2x.png differ diff --git a/src/plugins/coreplugin/coreicons.h b/src/plugins/coreplugin/coreicons.h index 917fc6930e365e8133e4537057f1ec7aea8db359..46233ece145c80719eb7e4755ef4f95d059c1448 100644 --- a/src/plugins/coreplugin/coreicons.h +++ b/src/plugins/coreplugin/coreicons.h @@ -148,6 +148,19 @@ const Utils::Icon ZOOM({ const Utils::Icon TOOLBAR_EXTENSION({ {QLatin1String(":/core/images/extension.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_EDIT_CLASSIC( + QLatin1String(":/fancyactionbar/images/mode_Edit.png")); +const Utils::Icon MODE_EDIT_FLAT({ + {QLatin1String(":/fancyactionbar/images/mode_edit_mask.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_EDIT_FLAT_ACTIVE({ + {QLatin1String(":/fancyactionbar/images/mode_edit_mask.png"), Utils::Theme::IconsModeEditActiveColor}}); +const Utils::Icon MODE_DESIGN_CLASSIC( + QLatin1String(":/fancyactionbar/images/mode_Design.png")); +const Utils::Icon MODE_DESIGN_FLAT({ + {QLatin1String(":/fancyactionbar/images/mode_design_mask.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_DESIGN_FLAT_ACTIVE({ + {QLatin1String(":/fancyactionbar/images/mode_design_mask.png"), Utils::Theme::IconsModeDesignActiveColor}}); + } // namespace Icons } // namespace Core diff --git a/src/plugins/coreplugin/designmode.cpp b/src/plugins/coreplugin/designmode.cpp index d935ae814373b204afbb09c3b4e2acddff70b573..9485c81933344f6e4bfcf038be694e64ebd994b7 100644 --- a/src/plugins/coreplugin/designmode.cpp +++ b/src/plugins/coreplugin/designmode.cpp @@ -35,6 +35,8 @@ #include <coreplugin/modemanager.h> #include <coreplugin/editormanager/editormanager.h> #include <coreplugin/coreconstants.h> +#include <coreplugin/coreicons.h> + #include <coreplugin/editormanager/ieditor.h> #include <QPointer> @@ -90,7 +92,8 @@ DesignMode::DesignMode() setContext(Context(Constants::C_DESIGN_MODE)); setWidget(d->m_stackWidget); setDisplayName(tr("Design")); - setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Design.png"))); + setIcon(Utils::Icon::modeIcon(Icons::MODE_DESIGN_CLASSIC, + Icons::MODE_DESIGN_FLAT, Icons::MODE_DESIGN_FLAT_ACTIVE)); setPriority(Constants::P_MODE_DESIGN); setId(Constants::MODE_DESIGN); diff --git a/src/plugins/coreplugin/editmode.cpp b/src/plugins/coreplugin/editmode.cpp index 33733c4bb5e9a274b0d856c6091d59b0a62acc58..5d55c36b051ecafffe213a25e062d279fed6709a 100644 --- a/src/plugins/coreplugin/editmode.cpp +++ b/src/plugins/coreplugin/editmode.cpp @@ -29,6 +29,7 @@ ****************************************************************************/ #include "coreconstants.h" +#include "coreicons.h" #include "editmode.h" #include "icore.h" #include "modemanager.h" @@ -53,7 +54,8 @@ EditMode::EditMode() : { setObjectName(QLatin1String("EditMode")); setDisplayName(tr("Edit")); - setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Edit.png"))); + setIcon(Utils::Icon::modeIcon(Icons::MODE_EDIT_CLASSIC, + Icons::MODE_EDIT_FLAT, Icons::MODE_EDIT_FLAT_ACTIVE)); setPriority(Constants::P_MODE_EDIT); setId(Constants::MODE_EDIT); diff --git a/src/plugins/coreplugin/fancyactionbar.cpp b/src/plugins/coreplugin/fancyactionbar.cpp index 5d89a184a281b21133523b034f82d55814e0524a..ffb69bf594c6787e7c2e2c5578da68750875909b 100644 --- a/src/plugins/coreplugin/fancyactionbar.cpp +++ b/src/plugins/coreplugin/fancyactionbar.cpp @@ -182,6 +182,8 @@ void FancyToolButton::paintEvent(QPaintEvent *event) painter.restore(); } + const QIcon::Mode iconMode = isEnabled() ? ((isDown() || isChecked()) ? QIcon::Active : QIcon::Normal) + : QIcon::Disabled; QRect iconRect(0, 0, Constants::TARGET_ICON_SIZE, Constants::TARGET_ICON_SIZE); // draw popup texts if (isTitledAction) { @@ -203,7 +205,7 @@ void FancyToolButton::paintEvent(QPaintEvent *event) centerRect.adjust(0, 0, 0, -lineHeight*2 - 4); iconRect.moveCenter(centerRect.center()); - StyleHelper::drawIconWithShadow(icon(), iconRect, &painter, isEnabled() ? QIcon::Normal : QIcon::Disabled); + StyleHelper::drawIconWithShadow(icon(), iconRect, &painter, iconMode); painter.setFont(normalFont); QPoint textOffset = centerRect.center() - QPoint(iconRect.width()/2, iconRect.height()/2); @@ -264,7 +266,7 @@ void FancyToolButton::paintEvent(QPaintEvent *event) } } else { iconRect.moveCenter(rect().center()); - StyleHelper::drawIconWithShadow(icon(), iconRect, &painter, isEnabled() ? QIcon::Normal : QIcon::Disabled); + StyleHelper::drawIconWithShadow(icon(), iconRect, &painter, iconMode); } } diff --git a/src/plugins/coreplugin/fancyactionbar.qrc b/src/plugins/coreplugin/fancyactionbar.qrc index 63e33279a0d3bfb0e01794b44feebd9e8dbb3b50..75e7599657d39a7d9321b4b25bff9021bef0af2e 100644 --- a/src/plugins/coreplugin/fancyactionbar.qrc +++ b/src/plugins/coreplugin/fancyactionbar.qrc @@ -4,5 +4,9 @@ <file>images/mode_Edit@2x.png</file> <file>images/mode_Design.png</file> <file>images/mode_Design@2x.png</file> + <file>images/mode_edit_mask.png</file> + <file>images/mode_edit_mask@2x.png</file> + <file>images/mode_design_mask.png</file> + <file>images/mode_design_mask@2x.png</file> </qresource> </RCC> diff --git a/src/plugins/coreplugin/fancytabwidget.cpp b/src/plugins/coreplugin/fancytabwidget.cpp index f4352bf62eea629ad6427efd7f20ab441ee1ef6e..5d76861b9a7610bc27022ff92717c02d02c9130f 100644 --- a/src/plugins/coreplugin/fancytabwidget.cpp +++ b/src/plugins/coreplugin/fancytabwidget.cpp @@ -342,7 +342,9 @@ void FancyTabBar::paintTab(QPainter *painter, int tabIndex) const if (drawIcon) { int textHeight = painter->fontMetrics().boundingRect(QRect(0, 0, width(), height()), Qt::TextWordWrap, tabText).height(); tabIconRect.adjust(0, 4, 0, -textHeight); - StyleHelper::drawIconWithShadow(tabIcon(tabIndex), tabIconRect, painter, enabled ? QIcon::Normal : QIcon::Disabled); + const QIcon::Mode iconMode = enabled ? (selected ? QIcon::Active : QIcon::Normal) + : QIcon::Disabled; + StyleHelper::drawIconWithShadow(tabIcon(tabIndex), tabIconRect, painter, iconMode); } painter->setOpacity(1.0); //FIXME: was 0.7 before? diff --git a/src/plugins/coreplugin/images/mode_design_mask.png b/src/plugins/coreplugin/images/mode_design_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..a2955133508babfa41c53a17f0266441f1946bfb Binary files /dev/null and b/src/plugins/coreplugin/images/mode_design_mask.png differ diff --git a/src/plugins/coreplugin/images/mode_design_mask@2x.png b/src/plugins/coreplugin/images/mode_design_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..99d95b7a4d09359f1c147a31bad4f3e34c3cd8ac Binary files /dev/null and b/src/plugins/coreplugin/images/mode_design_mask@2x.png differ diff --git a/src/plugins/coreplugin/images/mode_edit_mask.png b/src/plugins/coreplugin/images/mode_edit_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..954f3abe79033fed77e9d41ea6c409444e8778df Binary files /dev/null and b/src/plugins/coreplugin/images/mode_edit_mask.png differ diff --git a/src/plugins/coreplugin/images/mode_edit_mask@2x.png b/src/plugins/coreplugin/images/mode_edit_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b70cbcb71b42b25aa036eda0446df65406a848f9 Binary files /dev/null and b/src/plugins/coreplugin/images/mode_edit_mask@2x.png differ diff --git a/src/plugins/debugger/debugger.qrc b/src/plugins/debugger/debugger.qrc index a61acc6d8bb006af8dc1756f32a3348740b70973..00d902ea0d969446407ee91b207da5d31985af6b 100644 --- a/src/plugins/debugger/debugger.qrc +++ b/src/plugins/debugger/debugger.qrc @@ -3,8 +3,14 @@ <file>images/category_debug.png</file> <file>images/debugger_breakpoints.png</file> <file>images/debugger_continue.png</file> + <file>images/debugger_continue@2x.png</file> + <file>images/debugger_continue_mask.png</file> + <file>images/debugger_continue_mask@2x.png</file> <file>images/debugger_empty_14.png</file> <file>images/debugger_interrupt.png</file> + <file>images/debugger_interrupt@2x.png</file> + <file>images/debugger_interrupt_mask.png</file> + <file>images/debugger_interrupt_mask@2x.png</file> <file>images/debugger_reversemode_16.png</file> <file>images/debugger_singleinstructionmode.png</file> <file>images/debugger_singleinstructionmode@2x.png</file> @@ -30,6 +36,8 @@ <file>images/location_24.png</file> <file>images/mode_debug.png</file> <file>images/mode_debug@2x.png</file> + <file>images/mode_debug_mask.png</file> + <file>images/mode_debug_mask@2x.png</file> <file>images/pin.xpm</file> <file>images/qml/select.png</file> <file>images/qml/app-on-top.png</file> diff --git a/src/plugins/debugger/debuggericons.h b/src/plugins/debugger/debuggericons.h index 2fc4e69577da1fdcaf4beeba7b3933aaf7968a99..602aa1283cdefa4a845bb564a1c5fcb66052d1af 100644 --- a/src/plugins/debugger/debuggericons.h +++ b/src/plugins/debugger/debuggericons.h @@ -50,8 +50,14 @@ const Utils::Icon TRACEPOINT( QLatin1String(":/debugger/images/tracepoint.png")); const Utils::Icon CONTINUE( QLatin1String(":/debugger/images/debugger_continue.png")); +const Utils::Icon CONTINUE_FLAT({ + {QLatin1String(":/projectexplorer/images/debugger_beetle_mask.png"), Utils::Theme::IconsDebugColor}, + {QLatin1String(":/debugger/images/debugger_continue_mask.png"), Utils::Theme::IconsRunColor}}); const Utils::Icon INTERRUPT( QLatin1String(":/debugger/images/debugger_interrupt.png")); +const Utils::Icon INTERRUPT_FLAT({ + {QLatin1String(":/projectexplorer/images/debugger_beetle_mask.png"), Utils::Theme::IconsDebugColor}, + {QLatin1String(":/debugger/images/debugger_interrupt_mask.png"), Utils::Theme::IconsInterruptColor}}); const Utils::Icon LOCATION( QLatin1String(":/debugger/images/location_16.png")); const Utils::Icon SNAPSHOT( @@ -80,6 +86,13 @@ const Utils::Icon RESTART({ const Utils::Icon SINGLE_INSTRUCTION_MODE({ {QLatin1String(":/debugger/images/debugger_singleinstructionmode.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_DEBUGGER_CLASSIC( + QLatin1String(":/debugger/images/mode_debug.png")); +const Utils::Icon MODE_DEBUGGER_FLAT({ + {QLatin1String(":/debugger/images/mode_debug_mask.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_DEBUGGER_FLAT_ACTIVE({ + {QLatin1String(":/debugger/images/mode_debug_mask.png"), Utils::Theme::IconsModeDebugActiveColor}}); + } // namespace Icons } // namespace Debugger diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index f3065e77d0e57f01ba2a0c0448b4801b9e38e22f..3a3da49d19d76caabb40a00b28182a860a8718b1 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -496,7 +496,8 @@ public: setObjectName(QLatin1String("DebugMode")); setContext(Context(C_DEBUGMODE, CC::C_NAVIGATION_PANE)); setDisplayName(DebuggerPlugin::tr("Debug")); - setIcon(QIcon(QLatin1String(":/debugger/images/mode_debug.png"))); + setIcon(Utils::Icon::modeIcon(Icons::MODE_DEBUGGER_CLASSIC, + Icons::MODE_DEBUGGER_FLAT, Icons::MODE_DEBUGGER_FLAT_ACTIVE)); setPriority(85); setId(MODE_DEBUG); } @@ -2349,10 +2350,12 @@ void DebuggerPluginPrivate::extensionsInitialized() m_startIcon = Core::Icons::DEBUG_START_SMALL.icon(); m_exitIcon = Core::Icons::DEBUG_EXIT_SMALL.icon(); - m_continueIcon = Core::Icons::DEBUG_CONTINUE_SMALL.icon(); - m_continueIcon.addPixmap(Icons::CONTINUE.pixmap()); - m_interruptIcon = Core::Icons::DEBUG_INTERRUPT_SMALL.icon(); - m_interruptIcon.addPixmap(Icons::INTERRUPT.pixmap()); + const QIcon continueSideBarIcon = + Icon::sideBarIcon(Icons::CONTINUE, Icons::CONTINUE_FLAT); + m_continueIcon = Icon::combinedIcon({Core::Icons::DEBUG_CONTINUE_SMALL.icon(), continueSideBarIcon}); + const QIcon interruptSideBarIcon = + Icon::sideBarIcon(Icons::INTERRUPT, Icons::INTERRUPT_FLAT); + m_interruptIcon = Icon::combinedIcon({Core::Icons::DEBUG_INTERRUPT_SMALL.icon(), interruptSideBarIcon}); m_locationMarkIcon = Icons::LOCATION.icon(); m_resetIcon = Icons::RESTART.icon(); @@ -2536,8 +2539,9 @@ void DebuggerPluginPrivate::extensionsInitialized() // The main "Start Debugging" action. act = m_startAction = new QAction(this); - QIcon debuggerIcon(Core::Icons::DEBUG_START_SMALL.icon()); - debuggerIcon.addPixmap(ProjectExplorer::Icons::DEBUG_START.pixmap()); + const QIcon sideBarIcon = + Icon::sideBarIcon(ProjectExplorer::Icons::DEBUG_START, ProjectExplorer::Icons::DEBUG_START_FLAT); + const QIcon debuggerIcon = Icon::combinedIcon({Core::Icons::DEBUG_START_SMALL.icon(), sideBarIcon}); act->setIcon(debuggerIcon); act->setText(tr("Start Debugging")); connect(act, &QAction::triggered, [] { ProjectExplorerPlugin::runStartupProject(ProjectExplorer::Constants::DEBUG_RUN_MODE); }); diff --git a/src/plugins/debugger/images/debugger_continue@2x.png b/src/plugins/debugger/images/debugger_continue@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..69552eb9808c0a55d6fa42e0a3e1b1770c094818 Binary files /dev/null and b/src/plugins/debugger/images/debugger_continue@2x.png differ diff --git a/src/plugins/debugger/images/debugger_continue_32.png b/src/plugins/debugger/images/debugger_continue_32.png deleted file mode 100644 index 1208cbf0cc28156abe60179407af1781fbf522a0..0000000000000000000000000000000000000000 Binary files a/src/plugins/debugger/images/debugger_continue_32.png and /dev/null differ diff --git a/src/plugins/debugger/images/debugger_continue_mask.png b/src/plugins/debugger/images/debugger_continue_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..3784ea035b417e7999a774b6cdce35dcfb98ce22 Binary files /dev/null and b/src/plugins/debugger/images/debugger_continue_mask.png differ diff --git a/src/plugins/debugger/images/debugger_continue_mask@2x.png b/src/plugins/debugger/images/debugger_continue_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b883affe2236520c55440f55c3ade8433919f6ba Binary files /dev/null and b/src/plugins/debugger/images/debugger_continue_mask@2x.png differ diff --git a/src/plugins/debugger/images/debugger_interrupt@2x.png b/src/plugins/debugger/images/debugger_interrupt@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..6c99c073db4dcb9ece8e35a8d65b64e803a8bc84 Binary files /dev/null and b/src/plugins/debugger/images/debugger_interrupt@2x.png differ diff --git a/src/plugins/debugger/images/debugger_interrupt_32.png b/src/plugins/debugger/images/debugger_interrupt_32.png deleted file mode 100644 index 7b74a586ab933a6d0314b7c50d00b205215191d1..0000000000000000000000000000000000000000 Binary files a/src/plugins/debugger/images/debugger_interrupt_32.png and /dev/null differ diff --git a/src/plugins/debugger/images/debugger_interrupt_mask.png b/src/plugins/debugger/images/debugger_interrupt_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..c2081ca1360ba43fb4ef8becdd5499b993b28716 Binary files /dev/null and b/src/plugins/debugger/images/debugger_interrupt_mask.png differ diff --git a/src/plugins/debugger/images/debugger_interrupt_mask@2x.png b/src/plugins/debugger/images/debugger_interrupt_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..43aec6f9cc294378666b861df7108c9a8f6a29e1 Binary files /dev/null and b/src/plugins/debugger/images/debugger_interrupt_mask@2x.png differ diff --git a/src/plugins/debugger/images/mode_debug_mask.png b/src/plugins/debugger/images/mode_debug_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..ea9b364994f403842095d9bf8a5191204b595678 Binary files /dev/null and b/src/plugins/debugger/images/mode_debug_mask.png differ diff --git a/src/plugins/debugger/images/mode_debug_mask@2x.png b/src/plugins/debugger/images/mode_debug_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..63e2fe5f99c75d894a71f2dd05b896794afd05c7 Binary files /dev/null and b/src/plugins/debugger/images/mode_debug_mask@2x.png differ diff --git a/src/plugins/help/help.qrc b/src/plugins/help/help.qrc index f38a578e14cad758660dfcdfd01973fdd41333f2..a0b727d945b63f938ba70b18fdd721a32909e657 100644 --- a/src/plugins/help/help.qrc +++ b/src/plugins/help/help.qrc @@ -7,6 +7,8 @@ <file>images/category_help.png</file> <file>images/mode_help.png</file> <file>images/mode_help@2x.png</file> + <file>images/mode_help_mask.png</file> + <file>images/mode_help_mask@2x.png</file> </qresource> <qresource prefix="/trolltech/assistant" > <file>images/mac/addtab.png</file> diff --git a/src/plugins/help/helpmode.cpp b/src/plugins/help/helpmode.cpp index 98042ce8d8fea75088e405508abc00f7ecc2932f..ab53166bc590f74d52577b76948af260a1ef9f6f 100644 --- a/src/plugins/help/helpmode.cpp +++ b/src/plugins/help/helpmode.cpp @@ -30,6 +30,7 @@ #include "helpmode.h" #include "helpconstants.h" +#include "helpicons.h" #include <QCoreApplication> @@ -41,7 +42,8 @@ HelpMode::HelpMode(QObject *parent) { setObjectName(QLatin1String("HelpMode")); setContext(Core::Context(Constants::C_MODE_HELP)); - setIcon(QIcon(QLatin1String(":/help/images/mode_help.png"))); + setIcon(Utils::Icon::modeIcon(Icons::MODE_HELP_CLASSIC, + Icons::MODE_HELP_FLAT, Icons::MODE_HELP_FLAT_ACTIVE)); setDisplayName(QCoreApplication::translate("Help::Internal::HelpMode", "Help")); setPriority(Constants::P_MODE_HELP); setId(Constants::ID_MODE_HELP); diff --git a/src/plugins/help/images/mode_help_mask.png b/src/plugins/help/images/mode_help_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..9924e734167578dc388c7d7d36238a6e3d52d6ea Binary files /dev/null and b/src/plugins/help/images/mode_help_mask.png differ diff --git a/src/plugins/help/images/mode_help_mask@2x.png b/src/plugins/help/images/mode_help_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..213bfc65aadcd8fb6529fb7e6fa0881ed6afc2c6 Binary files /dev/null and b/src/plugins/help/images/mode_help_mask@2x.png differ diff --git a/src/plugins/projectexplorer/images/build_hammerhandle_mask.png b/src/plugins/projectexplorer/images/build_hammerhandle_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..8759e4204fc9d26f1b37c6ede75787b35a310bbf Binary files /dev/null and b/src/plugins/projectexplorer/images/build_hammerhandle_mask.png differ diff --git a/src/plugins/projectexplorer/images/build_hammerhandle_mask@2x.png b/src/plugins/projectexplorer/images/build_hammerhandle_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..04304d35f82d66c779a4f7c987884a0b81422870 Binary files /dev/null and b/src/plugins/projectexplorer/images/build_hammerhandle_mask@2x.png differ diff --git a/src/plugins/projectexplorer/images/build_hammerhead_mask.png b/src/plugins/projectexplorer/images/build_hammerhead_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..31a174fd177bd1b48aaa14f4bb06157e7cf2d145 Binary files /dev/null and b/src/plugins/projectexplorer/images/build_hammerhead_mask.png differ diff --git a/src/plugins/projectexplorer/images/build_hammerhead_mask@2x.png b/src/plugins/projectexplorer/images/build_hammerhead_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..4bc0b4b7fc8c074a5bd0c9336df2c9267d102c91 Binary files /dev/null and b/src/plugins/projectexplorer/images/build_hammerhead_mask@2x.png differ diff --git a/src/plugins/projectexplorer/images/debugger_beetle_mask.png b/src/plugins/projectexplorer/images/debugger_beetle_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..359b6cc425bdcf4bf466c39cfebe51acb0a89124 Binary files /dev/null and b/src/plugins/projectexplorer/images/debugger_beetle_mask.png differ diff --git a/src/plugins/projectexplorer/images/debugger_beetle_mask@2x.png b/src/plugins/projectexplorer/images/debugger_beetle_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..24a5f3b7bc0477f9554855df4eb852414c642cab Binary files /dev/null and b/src/plugins/projectexplorer/images/debugger_beetle_mask@2x.png differ diff --git a/src/plugins/projectexplorer/images/debugger_run_mask.png b/src/plugins/projectexplorer/images/debugger_run_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..0e3ab010d0aabc7407a7fdf8e5532a6589056ce2 Binary files /dev/null and b/src/plugins/projectexplorer/images/debugger_run_mask.png differ diff --git a/src/plugins/projectexplorer/images/debugger_run_mask@2x.png b/src/plugins/projectexplorer/images/debugger_run_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..978d099a9c51654af8893b3feac4a5dfeb937f80 Binary files /dev/null and b/src/plugins/projectexplorer/images/debugger_run_mask@2x.png differ diff --git a/src/plugins/projectexplorer/images/mode_project_mask.png b/src/plugins/projectexplorer/images/mode_project_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..f3098ca6f89b6276fd0ed5561413c0baf43961e6 Binary files /dev/null and b/src/plugins/projectexplorer/images/mode_project_mask.png differ diff --git a/src/plugins/projectexplorer/images/mode_project_mask@2x.png b/src/plugins/projectexplorer/images/mode_project_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..88e203caea5179b3a2faea08f82f1b2cd13cd35a Binary files /dev/null and b/src/plugins/projectexplorer/images/mode_project_mask@2x.png differ diff --git a/src/plugins/projectexplorer/images/run_mask.png b/src/plugins/projectexplorer/images/run_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..aaaf05ce22d23ce271d836378787779924844c33 Binary files /dev/null and b/src/plugins/projectexplorer/images/run_mask.png differ diff --git a/src/plugins/projectexplorer/images/run_mask@2x.png b/src/plugins/projectexplorer/images/run_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..38f6445c2528350fa07487e4f47d274bc9fc4f1d Binary files /dev/null and b/src/plugins/projectexplorer/images/run_mask@2x.png differ diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index bd6aaa3af8f7abcb36b24a2a0367af53e075ddb6..4636fea507ce9d489df87b97d7f3d553160fdc63 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -396,7 +396,8 @@ public: setWidget(proWindow); setContext(Context(Constants::C_PROJECTEXPLORER)); setDisplayName(QCoreApplication::translate("ProjectExplorer::ProjectsMode", "Projects")); - setIcon(QIcon(QLatin1String(":/projectexplorer/images/mode_project.png"))); + setIcon(Utils::Icon::modeIcon(Icons::MODE_PROJECT_CLASSIC, + Icons::MODE_PROJECT_FLAT, Icons::MODE_PROJECT_FLAT_ACTIVE)); setPriority(Constants::P_MODE_SESSION); setId(Constants::MODE_SESSION); setContextHelpId(QLatin1String("Managing Projects")); @@ -704,7 +705,7 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er ActionContainer *runMenu = ActionManager::createMenu(Constants::RUNMENUCONTEXTMENU); runMenu->setOnAllDisabledBehavior(ActionContainer::Hide); - QIcon runIcon = Icons::RUN.icon(); + QIcon runIcon = Utils::Icon::sideBarIcon(Icons::RUN, Icons::RUN_FLAT); runIcon.addPixmap(Icons::RUN_SMALL.pixmap()); runMenu->menu()->setIcon(runIcon); runMenu->menu()->setTitle(tr("Run")); @@ -839,8 +840,8 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er msessionContextMenu->addAction(cmd, Constants::G_SESSION_FILES); // build session action - QIcon buildIcon = Icons::BUILD.icon(); - buildIcon.addPixmap(Icons::BUILD_SMALL.pixmap()); + const QIcon sideBarIcon = Utils::Icon::sideBarIcon(Icons::BUILD, Icons::BUILD_FLAT); + const QIcon buildIcon = Utils::Icon::combinedIcon({Icons::BUILD_SMALL.icon(), sideBarIcon}); dd->m_buildSessionAction = new QAction(buildIcon, tr("Build All"), this); cmd = ActionManager::registerAction(dd->m_buildSessionAction, Constants::BUILDSESSION); cmd->setDefaultKeySequence(QKeySequence(tr("Ctrl+Shift+B"))); diff --git a/src/plugins/projectexplorer/projectexplorer.qrc b/src/plugins/projectexplorer/projectexplorer.qrc index 43524be6ba58dab061ca15634be0b7d5d0f85f43..6a730cb0d0e27b643b850ce82af9243677c375a9 100644 --- a/src/plugins/projectexplorer/projectexplorer.qrc +++ b/src/plugins/projectexplorer/projectexplorer.qrc @@ -7,13 +7,21 @@ <file>images/closetab.png</file> <file>images/debugger_start.png</file> <file>images/debugger_start@2x.png</file> + <file>images/debugger_beetle_mask.png</file> + <file>images/debugger_beetle_mask@2x.png</file> + <file>images/debugger_run_mask.png</file> + <file>images/debugger_run_mask@2x.png</file> <file>images/mode_project.png</file> <file>images/mode_project@2x.png</file> + <file>images/mode_project_mask.png</file> + <file>images/mode_project_mask@2x.png</file> <file>images/projectexplorer.png</file> <file>images/rebuild.png</file> <file>images/rebuild_small.png</file> <file>images/run.png</file> <file>images/run@2x.png</file> + <file>images/run_mask.png</file> + <file>images/run_mask@2x.png</file> <file>images/run_small.png</file> <file>images/run_small@2x.png</file> <file>images/session.png</file> @@ -35,6 +43,10 @@ <file>images/DeviceReadyToUse.png</file> <file>images/build.png</file> <file>images/build@2x.png</file> + <file>images/build_hammerhandle_mask.png</file> + <file>images/build_hammerhandle_mask@2x.png</file> + <file>images/build_hammerhead_mask.png</file> + <file>images/build_hammerhead_mask@2x.png</file> <file>images/targetpanel_bottom.png</file> <file>images/targetpanel_gradient.png</file> <file>images/window.png</file> diff --git a/src/plugins/projectexplorer/projectexplorericons.h b/src/plugins/projectexplorer/projectexplorericons.h index 604bddd024ebf5e42e132bb8f0e52bdab695abf3..883d5436a1f2b52da09233fcc8a93608d452c6dc 100644 --- a/src/plugins/projectexplorer/projectexplorericons.h +++ b/src/plugins/projectexplorer/projectexplorericons.h @@ -38,6 +38,9 @@ namespace Icons { const Utils::Icon BUILD( QLatin1String(":/projectexplorer/images/build.png")); +const Utils::Icon BUILD_FLAT({ + {QLatin1String(":/projectexplorer/images/build_hammerhandle_mask.png"), Utils::Theme::IconsBuildHammerHandleColor}, + {QLatin1String(":/projectexplorer/images/build_hammerhead_mask.png"), Utils::Theme::IconsBuildHammerHeadColor}}); const Utils::Icon BUILD_SMALL( QLatin1String(":/projectexplorer/images/build_small.png")); const Utils::Icon CLEAN( @@ -50,15 +53,26 @@ const Utils::Icon REBUILD_SMALL( QLatin1String(":/projectexplorer/images/rebuild_small.png")); const Utils::Icon RUN( QLatin1String(":/projectexplorer/images/run.png")); +const Utils::Icon RUN_FLAT({ + {QLatin1String(":/projectexplorer/images/run_mask.png"), Utils::Theme::IconsRunColor}}); const Utils::Icon WINDOW( QLatin1String(":/projectexplorer/images/window.png")); const Utils::Icon DEBUG_START( QLatin1String(":/projectexplorer/images/debugger_start.png")); +const Utils::Icon DEBUG_START_FLAT({ + {QLatin1String(":/projectexplorer/images/debugger_beetle_mask.png"), Utils::Theme::IconsDebugColor}, + {QLatin1String(":/projectexplorer/images/debugger_run_mask.png"), Utils::Theme::IconsRunColor}}); const Utils::Icon RUN_SMALL({ {QLatin1String(":/projectexplorer/images/run_small.png"), Utils::Theme::IconsRunColor}}); const Utils::Icon STOP_SMALL({ {QLatin1String(":/projectexplorer/images/stop_small.png"), Utils::Theme::IconsStopColor}}); +const Utils::Icon MODE_PROJECT_CLASSIC( + QLatin1String(":/projectexplorer/images/mode_project.png")); +const Utils::Icon MODE_PROJECT_FLAT({ + {QLatin1String(":/projectexplorer/images/mode_project_mask.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_PROJECT_FLAT_ACTIVE({ + {QLatin1String(":/projectexplorer/images/mode_project_mask.png"), Utils::Theme::IconsModeProjetcsActiveColor}}); } // namespace Icons } // namespace ProjectExplorer diff --git a/src/plugins/welcome/images/mode_edit_mask.png b/src/plugins/welcome/images/mode_edit_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..221f49151933146e4b2c14b3632e08e750ea46a3 Binary files /dev/null and b/src/plugins/welcome/images/mode_edit_mask.png differ diff --git a/src/plugins/welcome/images/mode_welcome_mask.png b/src/plugins/welcome/images/mode_welcome_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..d0183d3e79f586155ade0716ae60a11526580fc7 Binary files /dev/null and b/src/plugins/welcome/images/mode_welcome_mask.png differ diff --git a/src/plugins/welcome/images/mode_welcome_mask@2x.png b/src/plugins/welcome/images/mode_welcome_mask@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b9189b3efb40a68fe45a599453461512ff8975cd Binary files /dev/null and b/src/plugins/welcome/images/mode_welcome_mask@2x.png differ diff --git a/src/plugins/welcome/welcome.qrc b/src/plugins/welcome/welcome.qrc index 05531f04b1df5f9a9e56d9872294bb97601f1b76..3d8bff335f2a8281876e9aacb28e813727e3d034 100644 --- a/src/plugins/welcome/welcome.qrc +++ b/src/plugins/welcome/welcome.qrc @@ -2,5 +2,7 @@ <qresource prefix="/welcome"> <file>images/mode_welcome.png</file> <file>images/mode_welcome@2x.png</file> + <file>images/mode_welcome_mask.png</file> + <file>images/mode_welcome_mask@2x.png</file> </qresource> </RCC> diff --git a/src/plugins/welcome/welcomeplugin.cpp b/src/plugins/welcome/welcomeplugin.cpp index 7a64fde5beb8156b2cc388f73daa0d63db54f8f3..26b0aed55d5237a5a3819deec51183deeef5bb4c 100644 --- a/src/plugins/welcome/welcomeplugin.cpp +++ b/src/plugins/welcome/welcomeplugin.cpp @@ -40,6 +40,7 @@ #include <coreplugin/modemanager.h> #include <utils/algorithm.h> +#include <utils/icon.h> #include <utils/fileutils.h> #include <utils/hostosinfo.h> #include <utils/qtcassert.h> @@ -130,7 +131,16 @@ WelcomeMode::WelcomeMode() : m_activePlugin(0) { setDisplayName(tr("Welcome")); - setIcon(QIcon(QLatin1String(":/welcome/images/mode_welcome.png"))); + + const Utils::Icon MODE_WELCOME_CLASSIC( + QLatin1String(":/welcome/images/mode_welcome.png")); + const Utils::Icon MODE_WELCOME_FLAT({ + {QLatin1String(":/welcome/images/mode_welcome_mask.png"), Utils::Theme::IconsBaseColor}}); + const Utils::Icon MODE_WELCOME_FLAT_ACTIVE({ + {QLatin1String(":/welcome/images/mode_welcome_mask.png"), Utils::Theme::IconsModeWelcomeActiveColor}}); + + setIcon(Utils::Icon::modeIcon(MODE_WELCOME_CLASSIC, + MODE_WELCOME_FLAT, MODE_WELCOME_FLAT_ACTIVE)); setPriority(Constants::P_MODE_WELCOME); setId(Constants::MODE_WELCOME); setContextHelpId(QLatin1String("Qt Creator Manual")); diff --git a/src/shared/help/helpicons.h b/src/shared/help/helpicons.h index 4cd72deb3364c746e985978d9c7c77a0ac594d9f..957d65bbd9ffa6e40eaef591a5a54c117454328f 100644 --- a/src/shared/help/helpicons.h +++ b/src/shared/help/helpicons.h @@ -40,6 +40,12 @@ const Utils::Icon BOOKMARK( QLatin1String(":/help/images/bookmark.png")); const Utils::Icon HOME( QLatin1String(":/help/images/home.png")); +const Utils::Icon MODE_HELP_CLASSIC( + QLatin1String(":/help/images/mode_help.png")); +const Utils::Icon MODE_HELP_FLAT({ + {QLatin1String(":/help/images/mode_help_mask.png"), Utils::Theme::IconsBaseColor}}); +const Utils::Icon MODE_HELP_FLAT_ACTIVE({ + {QLatin1String(":/help/images/mode_help_mask.png"), Utils::Theme::IconsModeHelpActiveColor}}); } // namespace Icons } // namespace Help diff --git a/src/tools/icons/qtcreatoricons.svg b/src/tools/icons/qtcreatoricons.svg index be39a7746d3a7d0b26a463bf889bb6618a94252d..f4bfbb5a06f0a044417e429402a3288781f9ad4b 100644 --- a/src/tools/icons/qtcreatoricons.svg +++ b/src/tools/icons/qtcreatoricons.svg @@ -3584,4 +3584,394 @@ height="600" /> </g> </g> + <g + inkscape:groupmode="layer" + id="g4718" + inkscape:label="Side Bar Icons"> + <g + transform="translate(-34,308)" + style="display:inline" + id="src/plugins/welcome/images/mode_welcome_mask"> + <rect + style="fill:#ffffff;fill-opacity:1" + x="34" + y="42" + width="48" + height="32" + id="rect5694-0" /> + <path + id="rect5692-9" + style="fill:#000000" + d="m 62,62 4,0 0,4 -4,0 z m -6,0 4,0 0,4 -4,0 z m -6,0 4,0 0,4 -4,0 z m 12,-6 4,0 0,4 -4,0 z m -6,0 4,0 0,4 -4,0 z m -6,0 4,0 0,4 -4,0 z m 12,-6 4,0 0,4 -4,0 z m -6,0 4,0 0,4 -4,0 z m -6,0 4,0 0,4 -4,0 z" + inkscape:connector-curvature="0" /> + </g> + <g + transform="translate(-36,308)" + style="display:inline;fill:#000000" + id="src/plugins/coreplugin/images/mode_edit_mask"> + <rect + style="display:inline;fill:#ffffff;fill-opacity:1" + x="84" + y="42" + width="48" + height="32" + id="rect5706-3-8" /> + <g + style="fill:#000000" + id="g5697-7"> + <path + style="fill:#000000" + inkscape:connector-curvature="0" + d="m 100,50 0,16 16,0 0,-16 -16,0 z m 3,6 8,0 0,1 -8,0 0,-1 z m 8,5 -8,0 0,-1 8,0 0,1 z m 2,-2 -10,0 0,-1 10,0 0,1 z m 0,-4 -10,0 0,-1 10,0 0,1 z" + id="path5699-3" /> + </g> + </g> + <g + transform="translate(-38,308)" + style="display:inline" + id="src/plugins/coreplugin/images/mode_design_mask"> + <rect + style="fill:#ffffff;fill-opacity:1" + x="134" + y="42" + width="48" + height="32" + id="rect5706-2" /> + <rect + style="fill:#000000" + x="161.58099" + y="50.402" + transform="matrix(-0.707,0.7072,-0.7072,-0.707,315.6181,-25.4514)" + width="3" + height="4.5" + id="rect5702-4" /> + <polygon + style="fill:#000000" + points="159.511,53.04 150.884,61.667 150,65.732 154.065,64.85 162.692,56.222 " + id="polygon5704-0" /> + </g> + <g + transform="translate(-40,308)" + style="display:inline" + id="src/plugins/debugger/images/mode_debug_mask"> + <rect + style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none" + x="184" + y="42" + width="48" + height="32" + id="rect5706-4-6" /> + <g + style="fill:#000000" + id="g5709-8" + transform="translate(0.5,0)"> + <path + style="fill:#000000" + inkscape:connector-curvature="0" + d="m 208,50 c -1.016,0 -2.634,0.93 -3.106,2.18 l 3.106,1.746 3.105,-1.747 C 210.635,50.93 209.016,50 208,50 Z" + id="path5711-2" /> + <path + style="fill:#000000" + inkscape:connector-curvature="0" + d="m 215.5,58.011 -1.125,0 -0.636,-2.543 1.407,-1.407 c 0.194,-0.194 0.194,-0.513 0,-0.707 -0.195,-0.194 -0.514,-0.194 -0.708,0 l -1.054,1.054 -1.629,-1.447 -3.256,1.832 0,2.458 0,7.749 1.75,-0.489 2.707,-1.806 0.963,0.963 c 0.193,0.193 0.512,0.193 0.707,0 0.193,-0.195 0.193,-0.514 0,-0.707 l -1.156,-1.156 0.873,-2.794 1.156,0 c 0.275,0 0.5,-0.226 0.5,-0.5 0,-0.274 -0.224,-0.5 -0.499,-0.5 z" + id="path5713-0" /> + <path + style="fill:#000000" + inkscape:connector-curvature="0" + d="m 202.615,54.408 -1.055,-1.055 c -0.194,-0.194 -0.513,-0.194 -0.707,0 l 0,0 c -0.194,0.194 -0.194,0.513 0,0.707 l 1.407,1.407 -0.636,2.543 -1.124,0 c -0.275,0 -0.5,0.226 -0.5,0.5 0,0.274 0.225,0.5 0.5,0.5 l 1.156,0 0.873,2.794 -1.156,1.156 c -0.194,0.193 -0.194,0.512 0,0.707 0.194,0.193 0.513,0.193 0.707,0 l 0.962,-0.963 2.708,1.806 1.75,0.49 0,-7.75 0,-2.458 -3.256,-1.832 -1.629,1.448 z" + id="path5715-4" /> + </g> + </g> + <g + transform="translate(-42,308)" + style="display:inline" + id="src/plugins/projectexplorer/images/mode_project_mask"> + <rect + style="fill:#ffffff;fill-opacity:1" + x="234" + y="42" + width="48" + height="32" + id="rect5722-4" /> + <path + style="fill:#000000" + inkscape:connector-curvature="0" + d="m 264.652,57.667 c 1.247,-1.246 1.592,-3.038 1.069,-4.604 l -2.483,2.483 c -0.389,0.389 -1.025,0.389 -1.414,0 l -1.414,-1.415 c -0.389,-0.389 -0.389,-1.025 0,-1.414 l 2.482,-2.483 c -1.565,-0.521 -3.357,-0.177 -4.604,1.069 -1.318,1.318 -1.646,3.251 -0.988,4.876 l -6.79,6.791 c -0.681,0.681 -0.681,1.794 0,2.475 0.681,0.681 1.794,0.681 2.475,0 l 6.79,-6.791 c 1.627,0.66 3.559,0.331 4.877,-0.987 z" + id="path5720-8" /> + </g> + <g + transform="translate(-44,308)" + style="display:inline" + id="src/plugins/analyzerbase/images/mode_analyze_mask"> + <rect + style="display:inline;fill:#ffffff;fill-opacity:1" + x="284" + y="42" + width="48" + height="32" + id="rect5706-6-2" /> + <rect + style="fill:#000000" + x="300" + y="50" + width="1" + height="16" + id="rect5725-8" /> + <rect + style="fill:#000000" + x="300" + y="65" + width="16" + height="1" + id="rect5727-6" /> + <rect + style="fill:#000000" + x="303" + y="50" + width="13" + height="3" + id="rect5729-7" /> + <rect + style="fill:#000000" + x="303" + y="55" + width="9" + height="3" + id="rect5731-4" /> + <rect + style="fill:#000000" + x="303" + y="60" + width="5" + height="3" + id="rect5733-9" /> + </g> + <g + transform="translate(-46,308)" + style="display:inline" + id="src/plugins/help/images/mode_help_mask"> + <rect + style="display:inline;fill:#ffffff;fill-opacity:1" + x="334" + y="42" + width="48" + height="32" + id="rect5706-9-7" /> + <path + d="m 358,50 c -4.418,0 -8,3.582 -8,8 0,4.418 3.582,8 8,8 4.418,0 8,-3.582 8,-8 0,-4.418 -3.582,-8 -8,-8 z m 0.91,12.846 c -0.22,0.215 -0.483,0.322 -0.791,0.322 -0.15,0 -0.292,-0.028 -0.428,-0.084 -0.135,-0.056 -0.254,-0.13 -0.356,-0.224 -0.103,-0.093 -0.185,-0.205 -0.245,-0.336 -0.061,-0.13 -0.091,-0.271 -0.091,-0.42 0,-0.299 0.109,-0.555 0.329,-0.77 0.219,-0.214 0.482,-0.322 0.791,-0.322 0.299,0 0.56,0.103 0.783,0.308 0.225,0.206 0.336,0.458 0.336,0.756 0,0.298 -0.109,0.555 -0.328,0.77 z m 2.192,-6.384 c -0.084,0.233 -0.197,0.448 -0.337,0.644 -0.14,0.196 -0.301,0.383 -0.483,0.56 -0.182,0.177 -0.375,0.364 -0.58,0.56 -0.131,0.121 -0.243,0.229 -0.336,0.322 -0.094,0.094 -0.171,0.189 -0.231,0.287 -0.06,0.098 -0.104,0.21 -0.133,0.336 -0.029,0.126 -0.042,0.278 -0.042,0.455 l 0,0.532 -1.68,0 0,-0.77 c 0,-0.206 0.012,-0.38 0.035,-0.525 0.022,-0.145 0.064,-0.275 0.125,-0.392 0.061,-0.117 0.141,-0.229 0.238,-0.336 0.098,-0.107 0.217,-0.235 0.357,-0.385 l 1.078,-1.092 c 0.232,-0.233 0.35,-0.537 0.35,-0.91 0,-0.364 -0.119,-0.66 -0.357,-0.889 -0.238,-0.229 -0.539,-0.343 -0.902,-0.343 -0.393,0 -0.715,0.133 -0.967,0.399 -0.252,0.266 -0.396,0.59 -0.434,0.973 l -1.792,-0.14 c 0.056,-0.448 0.173,-0.847 0.35,-1.197 0.177,-0.35 0.408,-0.646 0.693,-0.889 0.284,-0.243 0.614,-0.427 0.987,-0.553 0.373,-0.126 0.783,-0.189 1.232,-0.189 0.42,0 0.809,0.061 1.168,0.182 0.359,0.122 0.672,0.296 0.938,0.525 0.267,0.229 0.474,0.514 0.623,0.854 0.149,0.341 0.224,0.73 0.224,1.169 10e-4,0.308 -0.04,0.579 -0.124,0.812 z" + id="mode_x5F_help-2" + inkscape:connector-curvature="0" + style="fill:#000000" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90" /> + </g> + <g + transform="translate(-262,305)" + style="display:inline" + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + id="src/plugins/projectexplorer/images/run_mask"> + <rect + style="fill:#ffffff;fill-opacity:1" + x="600" + y="50" + width="24" + height="24" + id="rect5751-4" /> + <polygon + style="fill:#000000" + points="621,61 603,72 603,50 " + id="polygon5749-6" /> + </g> + <g + transform="translate(-388,305)" + style="display:inline" + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="src/plugins/projectexplorer/images/debugger_beetle_mask"> + <rect + style="display:inline;fill:#ffffff;fill-opacity:1" + x="750" + y="50" + width="24" + height="24" + id="rect5759-4-1" /> + <path + style="fill:#000000;fill-opacity:1" + inkscape:connector-curvature="0" + d="m 758.5,52 c -1.016,0 -2.635,0.93 -3.105,2.18 l 3.105,1.746 3.105,-1.747 C 761.135,52.93 759.516,52 758.5,52 Z" + id="path6121-0" /> + <path + style="fill:#000000;fill-opacity:1" + inkscape:connector-curvature="0" + d="m 753.115,56.408 -1.055,-1.055 c -0.194,-0.194 -0.513,-0.194 -0.707,0 l 0,0 c -0.194,0.194 -0.194,0.513 0,0.707 l 1.407,1.407 -0.636,2.543 -1.124,0 c -0.275,0 -0.5,0.226 -0.5,0.5 0,0.274 0.225,0.5 0.5,0.5 l 1.156,0 0.873,2.794 -1.156,1.156 c -0.193,0.193 -0.193,0.512 0,0.707 0.195,0.193 0.514,0.193 0.707,0 l 0.963,-0.963 2.707,1.806 1.75,0.49 0,-7.75 0,-2.458 -3.256,-1.832 -1.629,1.448 z" + id="path6123-6" /> + <use + x="0" + y="0" + xlink:href="#path6123-6" + id="use4775" + transform="matrix(-1,0,0,1,1516.9862,0)" + width="100%" + height="100%" /> + </g> + <g + style="display:inline" + transform="translate(-364,305)" + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="src/plugins/projectexplorer/images/debugger_run_mask"> + <rect + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="rect6723-8" + height="24" + width="24" + y="50" + x="750" + style="display:inline;fill:#ffffff;fill-opacity:1" /> + <polygon + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="polygon6717-3" + points="763,74 774,67 763,60 " + style="fill:#000000;fill-opacity:1" + transform="translate(-1,-1)" /> + </g> + <g + id="src/plugins/debugger/images/debugger_interrupt_mask" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90" + transform="translate(-340,305)" + style="display:inline"> + <rect + style="display:inline;fill:#ffffff;fill-opacity:1" + x="750" + y="50" + width="24" + height="24" + id="rect4791" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90" /> + <rect + style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + id="rect4608-0" + width="4" + height="12" + x="763" + y="61" /> + <rect + style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.5;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + id="rect4610-6" + width="4" + height="12" + x="769" + y="61" /> + </g> + <g + style="display:inline" + transform="translate(-316,305)" + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="src/plugins/debugger/images/debugger_continue_mask"> + <rect + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="rect4797" + height="24" + width="24" + y="50" + x="750" + style="display:inline;fill:#ffffff;fill-opacity:1" /> + <path + style="display:inline;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 758.5,73 6.5,-6 0,6 z" + id="path5681-4" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + id="path4867" + sodipodi:type="arc" + sodipodi:cx="766" + sodipodi:cy="66.99987" + sodipodi:rx="5.5" + sodipodi:ry="5.5" + sodipodi:start="2.1642083" + sodipodi:end="0" + sodipodi:open="true" + d="m 762.92444,71.559577 a 5.5,5.5 0 0 1 -1.99963,-6.679238 5.5,5.5 0 0 1 6.15603,-3.273221 5.5,5.5 0 0 1 4.41916,5.392752" /> + </g> + <g + transform="translate(-392,305)" + style="display:inline" + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="src/plugins/projectexplorer/images/build_hammerhandle_mask"> + <rect + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + style="fill:#ffffff;fill-opacity:1" + x="850" + y="50" + width="24" + height="24" + id="rect5759-5" /> + <g + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + style="fill:#030303;fill-opacity:1" + id="build-5"> + <rect + style="fill:#030303;fill-opacity:1" + x="856.98199" + y="53.081001" + transform="matrix(0.7071,0.7071,-0.7071,0.7071,296.0486,-588.562)" + width="3" + height="20" + id="rect5755-4" /> + </g> + </g> + <g + transform="translate(-368,305)" + style="display:inline" + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + id="src/plugins/projectexplorer/images/build_hammerhead_mask"> + <rect + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + style="fill:#ffffff;fill-opacity:1" + x="850" + y="50" + width="24" + height="24" + id="rect5759-5-9" /> + <g + inkscape:export-ydpi="90" + inkscape:export-xdpi="90" + inkscape:export-filename="c:\Users\aportale\ownprojects\stuff\experiments\iconrecoloring\icon.png" + style="fill:#030303;fill-opacity:1" + id="build-5-2"> + <polygon + style="fill:#030303;fill-opacity:1" + points="866.613,50 873.684,57.071 870.148,60.606 859.542,50 " + id="polygon5757-3-4" /> + </g> + </g> + </g> </svg>