diff --git a/src/libs/cplusplus/Icons.cpp b/src/libs/cplusplus/Icons.cpp index 5e5297b4030..5f2397d0e5c 100644 --- a/src/libs/cplusplus/Icons.cpp +++ b/src/libs/cplusplus/Icons.cpp @@ -30,8 +30,6 @@ #include #include -#include - using namespace CPlusPlus; using CPlusPlus::Icons; @@ -42,16 +40,17 @@ QIcon Icons::iconForSymbol(const Symbol *symbol) QIcon Icons::keywordIcon() { - return iconForType(KeywordIconType); + return iconForType(Utils::CodeModelIcon::Keyword); } QIcon Icons::macroIcon() { - return iconForType(MacroIconType); + return iconForType(Utils::CodeModelIcon::Macro); } -Icons::IconType Icons::iconTypeForSymbol(const Symbol *symbol) +Utils::CodeModelIcon::Type Icons::iconTypeForSymbol(const Symbol *symbol) { + using namespace Utils::CodeModelIcon; if (const Template *templ = symbol->asTemplate()) { if (Symbol *decl = templ->declaration()) return iconTypeForSymbol(decl); @@ -67,244 +66,53 @@ Icons::IconType Icons::iconTypeForSymbol(const Symbol *symbol) if (function->isSlot()) { if (function->isPublic()) - return SlotPublicIconType; + return SlotPublic; else if (function->isProtected()) - return SlotProtectedIconType; + return SlotProtected; else if (function->isPrivate()) - return SlotPrivateIconType; + return SlotPrivate; } else if (function->isSignal()) { - return SignalIconType; + return Signal; } else if (symbol->isPublic()) { - return symbol->isStatic() ? FuncPublicStaticIconType : FuncPublicIconType; + return symbol->isStatic() ? FuncPublicStatic : FuncPublic; } else if (symbol->isProtected()) { - return symbol->isStatic() ? FuncProtectedStaticIconType : FuncProtectedIconType; + return symbol->isStatic() ? FuncProtectedStatic : FuncProtected; } else if (symbol->isPrivate()) { - return symbol->isStatic() ? FuncPrivateStaticIconType : FuncPrivateIconType; + return symbol->isStatic() ? FuncPrivateStatic : FuncPrivate; } } else if (symbol->enclosingScope() && symbol->enclosingScope()->isEnum()) { - return EnumeratorIconType; + return Enumerator; } else if (symbol->isDeclaration() || symbol->isArgument()) { if (symbol->isPublic()) { - return symbol->isStatic() ? VarPublicStaticIconType : VarPublicIconType; + return symbol->isStatic() ? VarPublicStatic : VarPublic; } else if (symbol->isProtected()) { - return symbol->isStatic() ? VarProtectedStaticIconType : VarProtectedIconType; + return symbol->isStatic() ? VarProtectedStatic : VarProtected; } else if (symbol->isPrivate()) { - return symbol->isStatic() ? VarPrivateStaticIconType : VarPrivateIconType; + return symbol->isStatic() ? VarPrivateStatic : VarPrivate; } } else if (symbol->isEnum()) { - return EnumIconType; + return Utils::CodeModelIcon::Enum; } else if (symbol->isForwardClassDeclaration()) { - return ClassIconType; // TODO: Store class key in ForwardClassDeclaration + return Utils::CodeModelIcon::Class; // TODO: Store class key in ForwardClassDeclaration } else if (const Class *klass = symbol->asClass()) { - return klass->isStruct() ? StructIconType : ClassIconType; + return klass->isStruct() ? Struct : Utils::CodeModelIcon::Class; } else if (symbol->isObjCClass() || symbol->isObjCForwardClassDeclaration()) { - return ClassIconType; + return Utils::CodeModelIcon::Class; } else if (symbol->isObjCProtocol() || symbol->isObjCForwardProtocolDeclaration()) { - return ClassIconType; + return Utils::CodeModelIcon::Class; } else if (symbol->isObjCMethod()) { - return FuncPublicIconType; + return FuncPublic; } else if (symbol->isNamespace()) { - return NamespaceIconType; + return Utils::CodeModelIcon::Namespace; } else if (symbol->isTypenameArgument()) { - return ClassIconType; + return Utils::CodeModelIcon::Class; } else if (symbol->isQtPropertyDeclaration() || symbol->isObjCPropertyDeclaration()) { - return PropertyIconType; + return Property; } else if (symbol->isUsingNamespaceDirective() || symbol->isUsingDeclaration()) { // TODO: Might be nice to have a different icons for these things - return NamespaceIconType; + return Utils::CodeModelIcon::Namespace; } - return UnknownIconType; -} - -QIcon Icons::iconForType(IconType type) -{ - using namespace Utils; - - static const IconMaskAndColor classRelationIcon { - QLatin1String(":/codemodel/images/classrelation.png"), Theme::IconsCodeModelOverlayForegroundColor}; - static const IconMaskAndColor classRelationBackgroundIcon { - QLatin1String(":/codemodel/images/classrelationbackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; - static const IconMaskAndColor classMemberFunctionIcon { - QLatin1String(":/codemodel/images/classmemberfunction.png"), Theme::IconsCodeModelFunctionColor}; - static const IconMaskAndColor classMemberVariableIcon { - QLatin1String(":/codemodel/images/classmembervariable.png"), Theme::IconsCodeModelVariableColor}; - static const IconMaskAndColor functionIcon { - QLatin1String(":/codemodel/images/member.png"), Theme::IconsCodeModelFunctionColor}; - static const IconMaskAndColor variableIcon { - QLatin1String(":/codemodel/images/member.png"), Theme::IconsCodeModelVariableColor}; - static const IconMaskAndColor signalIcon { - QLatin1String(":/codemodel/images/signal.png"), Theme::IconsCodeModelFunctionColor}; - static const IconMaskAndColor slotIcon { - QLatin1String(":/codemodel/images/slot.png"), Theme::IconsCodeModelFunctionColor}; - static const IconMaskAndColor propertyIcon { - QLatin1String(":/codemodel/images/property.png"), Theme::IconsCodeModelOverlayForegroundColor}; - static const IconMaskAndColor propertyBackgroundIcon { - QLatin1String(":/codemodel/images/propertybackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; - static const IconMaskAndColor protectedIcon { - QLatin1String(":/codemodel/images/protected.png"), Theme::IconsCodeModelOverlayForegroundColor}; - static const IconMaskAndColor protectedBackgroundIcon { - QLatin1String(":/codemodel/images/protectedbackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; - static const IconMaskAndColor privateIcon { - QLatin1String(":/codemodel/images/private.png"), Theme::IconsCodeModelOverlayForegroundColor}; - static const IconMaskAndColor privateBackgroundIcon { - QLatin1String(":/codemodel/images/privatebackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; - static const IconMaskAndColor staticIcon { - QLatin1String(":/codemodel/images/static.png"), Theme::IconsCodeModelOverlayForegroundColor}; - static const IconMaskAndColor staticBackgroundIcon { - QLatin1String(":/codemodel/images/staticbackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; - - switch (type) { - case ClassIconType: { - const static QIcon icon(Icon({ - classRelationBackgroundIcon, classRelationIcon, - {QLatin1String(":/codemodel/images/classparent.png"), Theme::IconsCodeModelClassColor}, - classMemberFunctionIcon, classMemberVariableIcon - }, Icon::Tint).icon()); - return icon; - } - case StructIconType: { - const static QIcon icon(Icon({ - classRelationBackgroundIcon, classRelationIcon, - {QLatin1String(":/codemodel/images/classparent.png"), Theme::IconsCodeModelStructColor}, - classMemberFunctionIcon, classMemberVariableIcon - }, Icon::Tint).icon()); - return icon; - } - case EnumIconType: { - const static QIcon icon(Icon({ - {QLatin1String(":/codemodel/images/enum.png"), Theme::IconsCodeModelEnumColor} - }, Icon::Tint).icon()); - return icon; - } - case EnumeratorIconType: { - const static QIcon icon(Icon({ - {QLatin1String(":/codemodel/images/enumerator.png"), Theme::IconsCodeModelEnumColor} - }, Icon::Tint).icon()); - return icon; - } - case FuncPublicIconType: { - const static QIcon icon(Icon({ - functionIcon}, Icon::Tint).icon()); - return icon; - } - case FuncProtectedIconType: { - const static QIcon icon(Icon({ - functionIcon, protectedBackgroundIcon, protectedIcon - }, Icon::Tint).icon()); - return icon; - } - case FuncPrivateIconType: { - const static QIcon icon(Icon({ - functionIcon, privateBackgroundIcon, privateIcon - }, Icon::Tint).icon()); - return icon; - } - case FuncPublicStaticIconType: { - const static QIcon icon(Icon({ - functionIcon, staticBackgroundIcon, staticIcon - }, Icon::Tint).icon()); - return icon; - } - case FuncProtectedStaticIconType: { - const static QIcon icon(Icon({ - functionIcon, staticBackgroundIcon, staticIcon, protectedBackgroundIcon, protectedIcon - }, Icon::Tint).icon()); - return icon; - } - case FuncPrivateStaticIconType: { - const static QIcon icon(Icon({ - functionIcon, staticBackgroundIcon, staticIcon, privateBackgroundIcon, privateIcon - }, Icon::Tint).icon()); - return icon; - } - case NamespaceIconType: { - const static QIcon icon(Icon({ - {QLatin1String(":/utils/images/namespace.png"), Theme::IconsCodeModelKeywordColor} - }, Icon::Tint).icon()); - return icon; - } - case VarPublicIconType: { - const static QIcon icon(Icon({ - variableIcon - }, Icon::Tint).icon()); - return icon; - } - case VarProtectedIconType: { - const static QIcon icon(Icon({ - variableIcon, protectedBackgroundIcon, protectedIcon - }, Icon::Tint).icon()); - return icon; - } - case VarPrivateIconType: { - const static QIcon icon(Icon({ - variableIcon, privateBackgroundIcon, privateIcon - }, Icon::Tint).icon()); - return icon; - } - case VarPublicStaticIconType: { - const static QIcon icon(Icon({ - variableIcon, staticBackgroundIcon, staticIcon - }, Icon::Tint).icon()); - return icon; - } - case VarProtectedStaticIconType: { - const static QIcon icon(Icon({ - variableIcon, staticBackgroundIcon, staticIcon, protectedBackgroundIcon, protectedIcon - }, Icon::Tint).icon()); - return icon; - } - case VarPrivateStaticIconType: { - const static QIcon icon(Icon({ - variableIcon, staticBackgroundIcon, staticIcon, privateBackgroundIcon, privateIcon - }, Icon::Tint).icon()); - return icon; - } - case SignalIconType: { - const static QIcon icon(Icon({ - signalIcon - }, Icon::Tint).icon()); - return icon; - } - case SlotPublicIconType: { - const static QIcon icon(Icon({ - slotIcon - }, Icon::Tint).icon()); - return icon; - } - case SlotProtectedIconType: { - const static QIcon icon(Icon({ - slotIcon, protectedBackgroundIcon, protectedIcon - }, Icon::Tint).icon()); - return icon; - } - case SlotPrivateIconType: { - const static QIcon icon(Icon({ - slotIcon, privateBackgroundIcon, privateIcon - }, Icon::Tint).icon()); - return icon; - } - case KeywordIconType: { - const static QIcon icon(Icon({ - {QLatin1String(":/codemodel/images/keyword.png"), Theme::IconsCodeModelKeywordColor} - }, Icon::Tint).icon()); - return icon; - } - case MacroIconType: { - const static QIcon icon(Icon({ - {QLatin1String(":/codemodel/images/macro.png"), Theme::IconsCodeModelMacroColor} - }, Icon::Tint).icon()); - return icon; - } - case PropertyIconType: { - const static QIcon icon(Icon({ - variableIcon, propertyBackgroundIcon, propertyIcon - }, Icon::Tint).icon()); - return icon; - } - default: - break; - } - return QIcon(); + return Unknown; } diff --git a/src/libs/cplusplus/Icons.h b/src/libs/cplusplus/Icons.h index a5aaa33d601..05b067f246f 100644 --- a/src/libs/cplusplus/Icons.h +++ b/src/libs/cplusplus/Icons.h @@ -26,6 +26,7 @@ #pragma once #include +#include #include @@ -41,36 +42,7 @@ public: static QIcon keywordIcon(); static QIcon macroIcon(); - enum IconType { - ClassIconType = 0, - StructIconType, - EnumIconType, - EnumeratorIconType, - FuncPublicIconType, - FuncProtectedIconType, - FuncPrivateIconType, - FuncPublicStaticIconType, - FuncProtectedStaticIconType, - FuncPrivateStaticIconType, - NamespaceIconType, - VarPublicIconType, - VarProtectedIconType, - VarPrivateIconType, - VarPublicStaticIconType, - VarProtectedStaticIconType, - VarPrivateStaticIconType, - SignalIconType, - SlotPublicIconType, - SlotProtectedIconType, - SlotPrivateIconType, - KeywordIconType, - MacroIconType, - PropertyIconType, - UnknownIconType - }; - - static IconType iconTypeForSymbol(const Symbol *symbol); - static QIcon iconForType(IconType type); + static Utils::CodeModelIcon::Type iconTypeForSymbol(const Symbol *symbol); private: Icons() {} diff --git a/src/libs/cplusplus/cplusplus-lib.pri b/src/libs/cplusplus/cplusplus-lib.pri index 0931855a553..94e988f0bbc 100644 --- a/src/libs/cplusplus/cplusplus-lib.pri +++ b/src/libs/cplusplus/cplusplus-lib.pri @@ -84,5 +84,3 @@ SOURCES += \ $$PWD/findcdbbreakpoint.cpp \ $$PWD/PPToken.cpp \ $$PWD/cppmodelmanagerbase.cpp - -RESOURCES += $$PWD/cplusplus.qrc diff --git a/src/libs/cplusplus/cplusplus.qbs b/src/libs/cplusplus/cplusplus.qbs index 4eb65814981..b08745263e0 100644 --- a/src/libs/cplusplus/cplusplus.qbs +++ b/src/libs/cplusplus/cplusplus.qbs @@ -122,7 +122,6 @@ Project { "SymbolNameVisitor.cpp", "SymbolNameVisitor.h", "TypeOfExpression.cpp", "TypeOfExpression.h", "TypePrettyPrinter.cpp", "TypePrettyPrinter.h", - "cplusplus.qrc", "findcdbbreakpoint.cpp", "findcdbbreakpoint.h", "pp-cctype.h", "pp-engine.cpp", "pp-engine.h", diff --git a/src/libs/cplusplus/cplusplus.qrc b/src/libs/cplusplus/cplusplus.qrc deleted file mode 100644 index 357db691c0b..00000000000 --- a/src/libs/cplusplus/cplusplus.qrc +++ /dev/null @@ -1,44 +0,0 @@ - - - images/enum.png - images/enum@2x.png - images/enumerator.png - images/enumerator@2x.png - images/keyword.png - images/keyword@2x.png - images/macro.png - images/macro@2x.png - images/signal.png - images/signal@2x.png - images/slot.png - images/slot@2x.png - images/member.png - images/member@2x.png - images/private.png - images/private@2x.png - images/privatebackground.png - images/privatebackground@2x.png - images/property.png - images/property@2x.png - images/propertybackground.png - images/propertybackground@2x.png - images/protected.png - images/protected@2x.png - images/protectedbackground.png - images/protectedbackground@2x.png - images/static.png - images/static@2x.png - images/staticbackground.png - images/staticbackground@2x.png - images/classmemberfunction.png - images/classmemberfunction@2x.png - images/classmembervariable.png - images/classmembervariable@2x.png - images/classparent.png - images/classparent@2x.png - images/classrelation.png - images/classrelation@2x.png - images/classrelationbackground.png - images/classrelationbackground@2x.png - - diff --git a/src/libs/qmljs/qmljsicons.cpp b/src/libs/qmljs/qmljsicons.cpp index 411c0d2c377..58eeae732a7 100644 --- a/src/libs/qmljs/qmljsicons.cpp +++ b/src/libs/qmljs/qmljsicons.cpp @@ -123,20 +123,20 @@ QIcon Icons::icon(Node *node) QIcon Icons::objectDefinitionIcon() { - return CPlusPlus::Icons::iconForType(CPlusPlus::Icons::ClassIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Class); } QIcon Icons::scriptBindingIcon() { - return CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarPublicIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::VarPublic); } QIcon Icons::publicMemberIcon() { - return CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncPublicIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::FuncPublic); } QIcon Icons::functionDeclarationIcon() { - return CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncPublicIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::FuncPublic); } diff --git a/src/libs/cplusplus/images/classmemberfunction.png b/src/libs/utils/images/classmemberfunction.png similarity index 100% rename from src/libs/cplusplus/images/classmemberfunction.png rename to src/libs/utils/images/classmemberfunction.png diff --git a/src/libs/cplusplus/images/classmemberfunction@2x.png b/src/libs/utils/images/classmemberfunction@2x.png similarity index 100% rename from src/libs/cplusplus/images/classmemberfunction@2x.png rename to src/libs/utils/images/classmemberfunction@2x.png diff --git a/src/libs/cplusplus/images/classmembervariable.png b/src/libs/utils/images/classmembervariable.png similarity index 100% rename from src/libs/cplusplus/images/classmembervariable.png rename to src/libs/utils/images/classmembervariable.png diff --git a/src/libs/cplusplus/images/classmembervariable@2x.png b/src/libs/utils/images/classmembervariable@2x.png similarity index 100% rename from src/libs/cplusplus/images/classmembervariable@2x.png rename to src/libs/utils/images/classmembervariable@2x.png diff --git a/src/libs/cplusplus/images/classparent.png b/src/libs/utils/images/classparent.png similarity index 100% rename from src/libs/cplusplus/images/classparent.png rename to src/libs/utils/images/classparent.png diff --git a/src/libs/cplusplus/images/classparent@2x.png b/src/libs/utils/images/classparent@2x.png similarity index 100% rename from src/libs/cplusplus/images/classparent@2x.png rename to src/libs/utils/images/classparent@2x.png diff --git a/src/libs/cplusplus/images/classrelation.png b/src/libs/utils/images/classrelation.png similarity index 100% rename from src/libs/cplusplus/images/classrelation.png rename to src/libs/utils/images/classrelation.png diff --git a/src/libs/cplusplus/images/classrelation@2x.png b/src/libs/utils/images/classrelation@2x.png similarity index 100% rename from src/libs/cplusplus/images/classrelation@2x.png rename to src/libs/utils/images/classrelation@2x.png diff --git a/src/libs/cplusplus/images/classrelationbackground.png b/src/libs/utils/images/classrelationbackground.png similarity index 100% rename from src/libs/cplusplus/images/classrelationbackground.png rename to src/libs/utils/images/classrelationbackground.png diff --git a/src/libs/cplusplus/images/classrelationbackground@2x.png b/src/libs/utils/images/classrelationbackground@2x.png similarity index 100% rename from src/libs/cplusplus/images/classrelationbackground@2x.png rename to src/libs/utils/images/classrelationbackground@2x.png diff --git a/src/libs/cplusplus/images/enum.png b/src/libs/utils/images/enum.png similarity index 100% rename from src/libs/cplusplus/images/enum.png rename to src/libs/utils/images/enum.png diff --git a/src/libs/cplusplus/images/enum@2x.png b/src/libs/utils/images/enum@2x.png similarity index 100% rename from src/libs/cplusplus/images/enum@2x.png rename to src/libs/utils/images/enum@2x.png diff --git a/src/libs/cplusplus/images/enumerator.png b/src/libs/utils/images/enumerator.png similarity index 100% rename from src/libs/cplusplus/images/enumerator.png rename to src/libs/utils/images/enumerator.png diff --git a/src/libs/cplusplus/images/enumerator@2x.png b/src/libs/utils/images/enumerator@2x.png similarity index 100% rename from src/libs/cplusplus/images/enumerator@2x.png rename to src/libs/utils/images/enumerator@2x.png diff --git a/src/libs/cplusplus/images/keyword.png b/src/libs/utils/images/keyword.png similarity index 100% rename from src/libs/cplusplus/images/keyword.png rename to src/libs/utils/images/keyword.png diff --git a/src/libs/cplusplus/images/keyword@2x.png b/src/libs/utils/images/keyword@2x.png similarity index 100% rename from src/libs/cplusplus/images/keyword@2x.png rename to src/libs/utils/images/keyword@2x.png diff --git a/src/libs/cplusplus/images/macro.png b/src/libs/utils/images/macro.png similarity index 100% rename from src/libs/cplusplus/images/macro.png rename to src/libs/utils/images/macro.png diff --git a/src/libs/cplusplus/images/macro@2x.png b/src/libs/utils/images/macro@2x.png similarity index 100% rename from src/libs/cplusplus/images/macro@2x.png rename to src/libs/utils/images/macro@2x.png diff --git a/src/libs/cplusplus/images/member.png b/src/libs/utils/images/member.png similarity index 100% rename from src/libs/cplusplus/images/member.png rename to src/libs/utils/images/member.png diff --git a/src/libs/cplusplus/images/member@2x.png b/src/libs/utils/images/member@2x.png similarity index 100% rename from src/libs/cplusplus/images/member@2x.png rename to src/libs/utils/images/member@2x.png diff --git a/src/libs/cplusplus/images/private.png b/src/libs/utils/images/private.png similarity index 100% rename from src/libs/cplusplus/images/private.png rename to src/libs/utils/images/private.png diff --git a/src/libs/cplusplus/images/private@2x.png b/src/libs/utils/images/private@2x.png similarity index 100% rename from src/libs/cplusplus/images/private@2x.png rename to src/libs/utils/images/private@2x.png diff --git a/src/libs/cplusplus/images/privatebackground.png b/src/libs/utils/images/privatebackground.png similarity index 100% rename from src/libs/cplusplus/images/privatebackground.png rename to src/libs/utils/images/privatebackground.png diff --git a/src/libs/cplusplus/images/privatebackground@2x.png b/src/libs/utils/images/privatebackground@2x.png similarity index 100% rename from src/libs/cplusplus/images/privatebackground@2x.png rename to src/libs/utils/images/privatebackground@2x.png diff --git a/src/libs/cplusplus/images/property.png b/src/libs/utils/images/property.png similarity index 100% rename from src/libs/cplusplus/images/property.png rename to src/libs/utils/images/property.png diff --git a/src/libs/cplusplus/images/property@2x.png b/src/libs/utils/images/property@2x.png similarity index 100% rename from src/libs/cplusplus/images/property@2x.png rename to src/libs/utils/images/property@2x.png diff --git a/src/libs/cplusplus/images/propertybackground.png b/src/libs/utils/images/propertybackground.png similarity index 100% rename from src/libs/cplusplus/images/propertybackground.png rename to src/libs/utils/images/propertybackground.png diff --git a/src/libs/cplusplus/images/propertybackground@2x.png b/src/libs/utils/images/propertybackground@2x.png similarity index 100% rename from src/libs/cplusplus/images/propertybackground@2x.png rename to src/libs/utils/images/propertybackground@2x.png diff --git a/src/libs/cplusplus/images/protected.png b/src/libs/utils/images/protected.png similarity index 100% rename from src/libs/cplusplus/images/protected.png rename to src/libs/utils/images/protected.png diff --git a/src/libs/cplusplus/images/protected@2x.png b/src/libs/utils/images/protected@2x.png similarity index 100% rename from src/libs/cplusplus/images/protected@2x.png rename to src/libs/utils/images/protected@2x.png diff --git a/src/libs/cplusplus/images/protectedbackground.png b/src/libs/utils/images/protectedbackground.png similarity index 100% rename from src/libs/cplusplus/images/protectedbackground.png rename to src/libs/utils/images/protectedbackground.png diff --git a/src/libs/cplusplus/images/protectedbackground@2x.png b/src/libs/utils/images/protectedbackground@2x.png similarity index 100% rename from src/libs/cplusplus/images/protectedbackground@2x.png rename to src/libs/utils/images/protectedbackground@2x.png diff --git a/src/libs/cplusplus/images/signal.png b/src/libs/utils/images/signal.png similarity index 100% rename from src/libs/cplusplus/images/signal.png rename to src/libs/utils/images/signal.png diff --git a/src/libs/cplusplus/images/signal@2x.png b/src/libs/utils/images/signal@2x.png similarity index 100% rename from src/libs/cplusplus/images/signal@2x.png rename to src/libs/utils/images/signal@2x.png diff --git a/src/libs/cplusplus/images/slot.png b/src/libs/utils/images/slot.png similarity index 100% rename from src/libs/cplusplus/images/slot.png rename to src/libs/utils/images/slot.png diff --git a/src/libs/cplusplus/images/slot@2x.png b/src/libs/utils/images/slot@2x.png similarity index 100% rename from src/libs/cplusplus/images/slot@2x.png rename to src/libs/utils/images/slot@2x.png diff --git a/src/libs/cplusplus/images/static.png b/src/libs/utils/images/static.png similarity index 100% rename from src/libs/cplusplus/images/static.png rename to src/libs/utils/images/static.png diff --git a/src/libs/cplusplus/images/static@2x.png b/src/libs/utils/images/static@2x.png similarity index 100% rename from src/libs/cplusplus/images/static@2x.png rename to src/libs/utils/images/static@2x.png diff --git a/src/libs/cplusplus/images/staticbackground.png b/src/libs/utils/images/staticbackground.png similarity index 100% rename from src/libs/cplusplus/images/staticbackground.png rename to src/libs/utils/images/staticbackground.png diff --git a/src/libs/cplusplus/images/staticbackground@2x.png b/src/libs/utils/images/staticbackground@2x.png similarity index 100% rename from src/libs/cplusplus/images/staticbackground@2x.png rename to src/libs/utils/images/staticbackground@2x.png diff --git a/src/libs/utils/utils.qrc b/src/libs/utils/utils.qrc index 032ca917c0d..a19903f09bf 100644 --- a/src/libs/utils/utils.qrc +++ b/src/libs/utils/utils.qrc @@ -210,4 +210,46 @@ images/toolbuttonexpandarrow.png images/toolbuttonexpandarrow@2x.png + + images/enum.png + images/enum@2x.png + images/enumerator.png + images/enumerator@2x.png + images/keyword.png + images/keyword@2x.png + images/macro.png + images/macro@2x.png + images/signal.png + images/signal@2x.png + images/slot.png + images/slot@2x.png + images/member.png + images/member@2x.png + images/private.png + images/private@2x.png + images/privatebackground.png + images/privatebackground@2x.png + images/property.png + images/property@2x.png + images/propertybackground.png + images/propertybackground@2x.png + images/protected.png + images/protected@2x.png + images/protectedbackground.png + images/protectedbackground@2x.png + images/static.png + images/static@2x.png + images/staticbackground.png + images/staticbackground@2x.png + images/classmemberfunction.png + images/classmemberfunction@2x.png + images/classmembervariable.png + images/classmembervariable@2x.png + images/classparent.png + images/classparent@2x.png + images/classrelation.png + images/classrelation@2x.png + images/classrelationbackground.png + images/classrelationbackground@2x.png + diff --git a/src/libs/utils/utilsicons.cpp b/src/libs/utils/utilsicons.cpp index 2c1159468bd..a441ff3e81f 100644 --- a/src/libs/utils/utilsicons.cpp +++ b/src/libs/utils/utilsicons.cpp @@ -256,4 +256,194 @@ const Icon CODEMODEL_FIXIT({ {":/utils/images/lightbulb.png", Theme::IconsWarningColor}}, Icon::Tint); } // namespace Icons + +QIcon CodeModelIcon::iconForType(CodeModelIcon::Type type) +{ + static const IconMaskAndColor classRelationIcon { + QLatin1String(":/codemodel/images/classrelation.png"), Theme::IconsCodeModelOverlayForegroundColor}; + static const IconMaskAndColor classRelationBackgroundIcon { + QLatin1String(":/codemodel/images/classrelationbackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; + static const IconMaskAndColor classMemberFunctionIcon { + QLatin1String(":/codemodel/images/classmemberfunction.png"), Theme::IconsCodeModelFunctionColor}; + static const IconMaskAndColor classMemberVariableIcon { + QLatin1String(":/codemodel/images/classmembervariable.png"), Theme::IconsCodeModelVariableColor}; + static const IconMaskAndColor functionIcon { + QLatin1String(":/codemodel/images/member.png"), Theme::IconsCodeModelFunctionColor}; + static const IconMaskAndColor variableIcon { + QLatin1String(":/codemodel/images/member.png"), Theme::IconsCodeModelVariableColor}; + static const IconMaskAndColor signalIcon { + QLatin1String(":/codemodel/images/signal.png"), Theme::IconsCodeModelFunctionColor}; + static const IconMaskAndColor slotIcon { + QLatin1String(":/codemodel/images/slot.png"), Theme::IconsCodeModelFunctionColor}; + static const IconMaskAndColor propertyIcon { + QLatin1String(":/codemodel/images/property.png"), Theme::IconsCodeModelOverlayForegroundColor}; + static const IconMaskAndColor propertyBackgroundIcon { + QLatin1String(":/codemodel/images/propertybackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; + static const IconMaskAndColor protectedIcon { + QLatin1String(":/codemodel/images/protected.png"), Theme::IconsCodeModelOverlayForegroundColor}; + static const IconMaskAndColor protectedBackgroundIcon { + QLatin1String(":/codemodel/images/protectedbackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; + static const IconMaskAndColor privateIcon { + QLatin1String(":/codemodel/images/private.png"), Theme::IconsCodeModelOverlayForegroundColor}; + static const IconMaskAndColor privateBackgroundIcon { + QLatin1String(":/codemodel/images/privatebackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; + static const IconMaskAndColor staticIcon { + QLatin1String(":/codemodel/images/static.png"), Theme::IconsCodeModelOverlayForegroundColor}; + static const IconMaskAndColor staticBackgroundIcon { + QLatin1String(":/codemodel/images/staticbackground.png"), Theme::IconsCodeModelOverlayBackgroundColor}; + + switch (type) { + case Class: { + const static QIcon icon(Icon({ + classRelationBackgroundIcon, classRelationIcon, + {QLatin1String(":/codemodel/images/classparent.png"), Theme::IconsCodeModelClassColor}, + classMemberFunctionIcon, classMemberVariableIcon + }, Icon::Tint).icon()); + return icon; + } + case Struct: { + const static QIcon icon(Icon({ + classRelationBackgroundIcon, classRelationIcon, + {QLatin1String(":/codemodel/images/classparent.png"), Theme::IconsCodeModelStructColor}, + classMemberFunctionIcon, classMemberVariableIcon + }, Icon::Tint).icon()); + return icon; + } + case Enum: { + const static QIcon icon(Icon({ + {QLatin1String(":/codemodel/images/enum.png"), Theme::IconsCodeModelEnumColor} + }, Icon::Tint).icon()); + return icon; + } + case Enumerator: { + const static QIcon icon(Icon({ + {QLatin1String(":/codemodel/images/enumerator.png"), Theme::IconsCodeModelEnumColor} + }, Icon::Tint).icon()); + return icon; + } + case FuncPublic: { + const static QIcon icon(Icon({ + functionIcon}, Icon::Tint).icon()); + return icon; + } + case FuncProtected: { + const static QIcon icon(Icon({ + functionIcon, protectedBackgroundIcon, protectedIcon + }, Icon::Tint).icon()); + return icon; + } + case FuncPrivate: { + const static QIcon icon(Icon({ + functionIcon, privateBackgroundIcon, privateIcon + }, Icon::Tint).icon()); + return icon; + } + case FuncPublicStatic: { + const static QIcon icon(Icon({ + functionIcon, staticBackgroundIcon, staticIcon + }, Icon::Tint).icon()); + return icon; + } + case FuncProtectedStatic: { + const static QIcon icon(Icon({ + functionIcon, staticBackgroundIcon, staticIcon, protectedBackgroundIcon, protectedIcon + }, Icon::Tint).icon()); + return icon; + } + case FuncPrivateStatic: { + const static QIcon icon(Icon({ + functionIcon, staticBackgroundIcon, staticIcon, privateBackgroundIcon, privateIcon + }, Icon::Tint).icon()); + return icon; + } + case Namespace: { + const static QIcon icon(Icon({ + {QLatin1String(":/utils/images/namespace.png"), Theme::IconsCodeModelKeywordColor} + }, Icon::Tint).icon()); + return icon; + } + case VarPublic: { + const static QIcon icon(Icon({ + variableIcon + }, Icon::Tint).icon()); + return icon; + } + case VarProtected: { + const static QIcon icon(Icon({ + variableIcon, protectedBackgroundIcon, protectedIcon + }, Icon::Tint).icon()); + return icon; + } + case VarPrivate: { + const static QIcon icon(Icon({ + variableIcon, privateBackgroundIcon, privateIcon + }, Icon::Tint).icon()); + return icon; + } + case VarPublicStatic: { + const static QIcon icon(Icon({ + variableIcon, staticBackgroundIcon, staticIcon + }, Icon::Tint).icon()); + return icon; + } + case VarProtectedStatic: { + const static QIcon icon(Icon({ + variableIcon, staticBackgroundIcon, staticIcon, protectedBackgroundIcon, protectedIcon + }, Icon::Tint).icon()); + return icon; + } + case VarPrivateStatic: { + const static QIcon icon(Icon({ + variableIcon, staticBackgroundIcon, staticIcon, privateBackgroundIcon, privateIcon + }, Icon::Tint).icon()); + return icon; + } + case Signal: { + const static QIcon icon(Icon({ + signalIcon + }, Icon::Tint).icon()); + return icon; + } + case SlotPublic: { + const static QIcon icon(Icon({ + slotIcon + }, Icon::Tint).icon()); + return icon; + } + case SlotProtected: { + const static QIcon icon(Icon({ + slotIcon, protectedBackgroundIcon, protectedIcon + }, Icon::Tint).icon()); + return icon; + } + case SlotPrivate: { + const static QIcon icon(Icon({ + slotIcon, privateBackgroundIcon, privateIcon + }, Icon::Tint).icon()); + return icon; + } + case Keyword: { + const static QIcon icon(Icon({ + {QLatin1String(":/codemodel/images/keyword.png"), Theme::IconsCodeModelKeywordColor} + }, Icon::Tint).icon()); + return icon; + } + case Macro: { + const static QIcon icon(Icon({ + {QLatin1String(":/codemodel/images/macro.png"), Theme::IconsCodeModelMacroColor} + }, Icon::Tint).icon()); + return icon; + } + case Property: { + const static QIcon icon(Icon({ + variableIcon, propertyBackgroundIcon, propertyIcon + }, Icon::Tint).icon()); + return icon; + } + default: + break; + } + return QIcon(); +} + } // namespace Utils diff --git a/src/libs/utils/utilsicons.h b/src/libs/utils/utilsicons.h index acdc27ed9bc..b5cf0801efa 100644 --- a/src/libs/utils/utilsicons.h +++ b/src/libs/utils/utilsicons.h @@ -145,4 +145,38 @@ QTCREATOR_UTILS_EXPORT extern const Icon CODEMODEL_DISABLED_WARNING; QTCREATOR_UTILS_EXPORT extern const Icon CODEMODEL_FIXIT; } // namespace Icons + +namespace CodeModelIcon { + +enum Type { + Class = 0, + Struct, + Enum, + Enumerator, + FuncPublic, + FuncProtected, + FuncPrivate, + FuncPublicStatic, + FuncProtectedStatic, + FuncPrivateStatic, + Namespace, + VarPublic, + VarProtected, + VarPrivate, + VarPublicStatic, + VarProtectedStatic, + VarPrivateStatic, + Signal, + SlotPublic, + SlotProtected, + SlotPrivate, + Keyword, + Macro, + Property, + Unknown +}; + +QTCREATOR_UTILS_EXPORT QIcon iconForType(Type type); + +} // namespace CodeModel } // namespace Utils diff --git a/src/plugins/autotest/testtreeitem.cpp b/src/plugins/autotest/testtreeitem.cpp index b28e9d793a6..39dfe5b65da 100644 --- a/src/plugins/autotest/testtreeitem.cpp +++ b/src/plugins/autotest/testtreeitem.cpp @@ -62,8 +62,8 @@ static QIcon testTreeIcon(TestTreeItem::Type type) static QIcon icons[] = { QIcon(), Utils::Icons::OPENFILE.icon(), - CPlusPlus::Icons::iconForType(CPlusPlus::Icons::ClassIconType), - CPlusPlus::Icons::iconForType(CPlusPlus::Icons::SlotPrivateIconType), + Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Class), + Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::SlotPrivate), QIcon(":/autotest/images/data.png") }; diff --git a/src/plugins/clangcodemodel/clangassistproposalitem.cpp b/src/plugins/clangcodemodel/clangassistproposalitem.cpp index c171e2b41f1..28e8401d8ff 100644 --- a/src/plugins/clangcodemodel/clangassistproposalitem.cpp +++ b/src/plugins/clangcodemodel/clangassistproposalitem.cpp @@ -362,11 +362,11 @@ QIcon ClangAssistProposalItem::icon() const case CodeCompletion::ClassCompletionKind: case CodeCompletion::TemplateClassCompletionKind: case CodeCompletion::TypeAliasCompletionKind: - return Icons::iconForType(Icons::ClassIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Class); case CodeCompletion::EnumerationCompletionKind: - return Icons::iconForType(Icons::EnumIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Enum); case CodeCompletion::EnumeratorCompletionKind: - return Icons::iconForType(Icons::EnumeratorIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Enumerator); case CodeCompletion::ConstructorCompletionKind: case CodeCompletion::DestructorCompletionKind: case CodeCompletion::FunctionCompletionKind: @@ -376,40 +376,40 @@ QIcon ClangAssistProposalItem::icon() const switch (completion.availability) { case CodeCompletion::Available: case CodeCompletion::Deprecated: - return Icons::iconForType(Icons::FuncPublicIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::FuncPublic); default: - return Icons::iconForType(Icons::FuncPrivateIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::FuncPrivate); } case CodeCompletion::SignalCompletionKind: - return Icons::iconForType(Icons::SignalIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Signal); case CodeCompletion::SlotCompletionKind: switch (completion.availability) { case CodeCompletion::Available: case CodeCompletion::Deprecated: - return Icons::iconForType(Icons::SlotPublicIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::SlotPublic); case CodeCompletion::NotAccessible: case CodeCompletion::NotAvailable: - return Icons::iconForType(Icons::SlotPrivateIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::SlotPrivate); } break; case CodeCompletion::NamespaceCompletionKind: - return Icons::iconForType(Icons::NamespaceIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Namespace); case CodeCompletion::PreProcessorCompletionKind: - return Icons::iconForType(Icons::MacroIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Macro); case CodeCompletion::VariableCompletionKind: switch (completion.availability) { case CodeCompletion::Available: case CodeCompletion::Deprecated: - return Icons::iconForType(Icons::VarPublicIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::VarPublic); default: - return Icons::iconForType(Icons::VarPrivateIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::VarPrivate); } case CodeCompletion::KeywordCompletionKind: - return Icons::iconForType(Icons::KeywordIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Keyword); case CodeCompletion::ClangSnippetKind: return snippetIcon; case CodeCompletion::Other: - return Icons::iconForType(Icons::UnknownIconType); + return ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Unknown); default: break; } diff --git a/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp b/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp index 99543e18713..2afa03a3b4e 100644 --- a/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp +++ b/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp @@ -496,11 +496,11 @@ bool ClangCompletionAssistProcessor::completePreprocessorDirectives() { foreach (const QString &preprocessorCompletion, m_preprocessorCompletions) addCompletionItem(preprocessorCompletion, - Icons::iconForType(Icons::MacroIconType)); + ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Macro)); if (m_interface->objcEnabled()) addCompletionItem(QLatin1String("import"), - Icons::iconForType(Icons::MacroIconType)); + ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Macro)); return !m_completions.isEmpty(); } diff --git a/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp b/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp index 25f0d4f2349..09a00ceb432 100644 --- a/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp +++ b/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp @@ -97,7 +97,7 @@ static Core::LocatorFilterEntry makeEntry(Core::ILocatorFilter *filter, } entry.displayName = displayName; entry.extraInfo = extra; - entry.displayIcon = CPlusPlus::Icons::iconForType(Utils::iconTypeForToken(info)); + entry.displayIcon = ::Utils::CodeModelIcon::iconForType(Utils::iconTypeForToken(info)); return entry; } diff --git a/src/plugins/clangcodemodel/clangoverviewmodel.cpp b/src/plugins/clangcodemodel/clangoverviewmodel.cpp index e663eec27a3..a8704fe8086 100644 --- a/src/plugins/clangcodemodel/clangoverviewmodel.cpp +++ b/src/plugins/clangcodemodel/clangoverviewmodel.cpp @@ -171,7 +171,7 @@ QVariant TokenTreeItem::data(int column, int role) const } case Qt::DecorationRole: { - return CPlusPlus::Icons::iconForType(ClangCodeModel::Utils::iconTypeForToken(token)); + return ::Utils::CodeModelIcon::iconForType(ClangCodeModel::Utils::iconTypeForToken(token)); } case CppTools::AbstractOverviewModel::FileNameRole: { diff --git a/src/plugins/clangcodemodel/clangutils.cpp b/src/plugins/clangcodemodel/clangutils.cpp index 4a55973bed1..199d4c7e8be 100644 --- a/src/plugins/clangcodemodel/clangutils.cpp +++ b/src/plugins/clangcodemodel/clangutils.cpp @@ -205,52 +205,52 @@ int clangColumn(const QTextBlock &line, int cppEditorColumn) return line.text().left(cppEditorColumn).toUtf8().size() + 1; } -CPlusPlus::Icons::IconType iconTypeForToken(const ClangBackEnd::TokenInfoContainer &token) +::Utils::CodeModelIcon::Type iconTypeForToken(const ClangBackEnd::TokenInfoContainer &token) { const ClangBackEnd::ExtraInfo &extraInfo = token.extraInfo; if (extraInfo.signal) - return CPlusPlus::Icons::SignalIconType; + return ::Utils::CodeModelIcon::Signal; ClangBackEnd::AccessSpecifier access = extraInfo.accessSpecifier; if (extraInfo.slot) { switch (access) { case ClangBackEnd::AccessSpecifier::Public: case ClangBackEnd::AccessSpecifier::Invalid: - return CPlusPlus::Icons::SlotPublicIconType; + return ::Utils::CodeModelIcon::SlotPublic; case ClangBackEnd::AccessSpecifier::Protected: - return CPlusPlus::Icons::SlotProtectedIconType; + return ::Utils::CodeModelIcon::SlotProtected; case ClangBackEnd::AccessSpecifier::Private: - return CPlusPlus::Icons::SlotPrivateIconType; + return ::Utils::CodeModelIcon::SlotPrivate; } } ClangBackEnd::HighlightingType mainType = token.types.mainHighlightingType; if (mainType == ClangBackEnd::HighlightingType::QtProperty) - return CPlusPlus::Icons::PropertyIconType; + return ::Utils::CodeModelIcon::Property; if (mainType == ClangBackEnd::HighlightingType::PreprocessorExpansion || mainType == ClangBackEnd::HighlightingType::PreprocessorDefinition) { - return CPlusPlus::Icons::MacroIconType; + return ::Utils::CodeModelIcon::Macro; } if (mainType == ClangBackEnd::HighlightingType::Enumeration) - return CPlusPlus::Icons::EnumeratorIconType; + return ::Utils::CodeModelIcon::Enumerator; if (mainType == ClangBackEnd::HighlightingType::Type || mainType == ClangBackEnd::HighlightingType::Keyword) { const ClangBackEnd::MixinHighlightingTypes &types = token.types.mixinHighlightingTypes; if (types.contains(ClangBackEnd::HighlightingType::Enum)) - return CPlusPlus::Icons::EnumIconType; + return ::Utils::CodeModelIcon::Enum; if (types.contains(ClangBackEnd::HighlightingType::Struct)) - return CPlusPlus::Icons::StructIconType; + return ::Utils::CodeModelIcon::Struct; if (types.contains(ClangBackEnd::HighlightingType::Namespace)) - return CPlusPlus::Icons::NamespaceIconType; + return ::Utils::CodeModelIcon::Namespace; if (types.contains(ClangBackEnd::HighlightingType::Class)) - return CPlusPlus::Icons::ClassIconType; + return ::Utils::CodeModelIcon::Class; if (mainType == ClangBackEnd::HighlightingType::Keyword) - return CPlusPlus::Icons::KeywordIconType; - return CPlusPlus::Icons::ClassIconType; + return ::Utils::CodeModelIcon::Keyword; + return ::Utils::CodeModelIcon::Class; } ClangBackEnd::StorageClass storageClass = extraInfo.storageClass; @@ -261,21 +261,21 @@ CPlusPlus::Icons::IconType iconTypeForToken(const ClangBackEnd::TokenInfoContain switch (access) { case ClangBackEnd::AccessSpecifier::Public: case ClangBackEnd::AccessSpecifier::Invalid: - return CPlusPlus::Icons::FuncPublicIconType; + return ::Utils::CodeModelIcon::FuncPublic; case ClangBackEnd::AccessSpecifier::Protected: - return CPlusPlus::Icons::FuncProtectedIconType; + return ::Utils::CodeModelIcon::FuncProtected; case ClangBackEnd::AccessSpecifier::Private: - return CPlusPlus::Icons::FuncPrivateIconType; + return ::Utils::CodeModelIcon::FuncPrivate; } } else { switch (access) { case ClangBackEnd::AccessSpecifier::Public: case ClangBackEnd::AccessSpecifier::Invalid: - return CPlusPlus::Icons::FuncPublicStaticIconType; + return ::Utils::CodeModelIcon::FuncPublicStatic; case ClangBackEnd::AccessSpecifier::Protected: - return CPlusPlus::Icons::FuncProtectedStaticIconType; + return ::Utils::CodeModelIcon::FuncProtectedStatic; case ClangBackEnd::AccessSpecifier::Private: - return CPlusPlus::Icons::FuncPrivateStaticIconType; + return ::Utils::CodeModelIcon::FuncPrivateStatic; } } } @@ -285,26 +285,26 @@ CPlusPlus::Icons::IconType iconTypeForToken(const ClangBackEnd::TokenInfoContain switch (access) { case ClangBackEnd::AccessSpecifier::Public: case ClangBackEnd::AccessSpecifier::Invalid: - return CPlusPlus::Icons::VarPublicIconType; + return ::Utils::CodeModelIcon::VarPublic; case ClangBackEnd::AccessSpecifier::Protected: - return CPlusPlus::Icons::VarProtectedIconType; + return ::Utils::CodeModelIcon::VarProtected; case ClangBackEnd::AccessSpecifier::Private: - return CPlusPlus::Icons::VarPrivateIconType; + return ::Utils::CodeModelIcon::VarPrivate; } } else { switch (access) { case ClangBackEnd::AccessSpecifier::Public: case ClangBackEnd::AccessSpecifier::Invalid: - return CPlusPlus::Icons::VarPublicStaticIconType; + return ::Utils::CodeModelIcon::VarPublicStatic; case ClangBackEnd::AccessSpecifier::Protected: - return CPlusPlus::Icons::VarProtectedStaticIconType; + return ::Utils::CodeModelIcon::VarProtectedStatic; case ClangBackEnd::AccessSpecifier::Private: - return CPlusPlus::Icons::VarPrivateStaticIconType; + return ::Utils::CodeModelIcon::VarPrivateStatic; } } } - return CPlusPlus::Icons::UnknownIconType; + return ::Utils::CodeModelIcon::Unknown; } QString diagnosticCategoryPrefixRemoved(const QString &text) diff --git a/src/plugins/clangcodemodel/clangutils.h b/src/plugins/clangcodemodel/clangutils.h index 8ba10911b89..c9637544f00 100644 --- a/src/plugins/clangcodemodel/clangutils.h +++ b/src/plugins/clangcodemodel/clangutils.h @@ -58,7 +58,7 @@ int clangColumn(const QTextBlock &lineText, int cppEditorColumn); QString diagnosticCategoryPrefixRemoved(const QString &text); -CPlusPlus::Icons::IconType iconTypeForToken(const ClangBackEnd::TokenInfoContainer &token); +::Utils::CodeModelIcon::Type iconTypeForToken(const ClangBackEnd::TokenInfoContainer &token); } // namespace Utils } // namespace Clang diff --git a/src/plugins/classview/classviewnavigationwidget.cpp b/src/plugins/classview/classviewnavigationwidget.cpp index 58cab5a6d87..a2f793fcabd 100644 --- a/src/plugins/classview/classviewnavigationwidget.cpp +++ b/src/plugins/classview/classviewnavigationwidget.cpp @@ -173,7 +173,7 @@ QList NavigationWidget::createToolButtons() // create a button fullProjectsModeButton = new QToolButton(); fullProjectsModeButton->setIcon( - CPlusPlus::Icons::iconForType(CPlusPlus::Icons::ClassIconType)); + ::Utils::CodeModelIcon::iconForType(::Utils::CodeModelIcon::Class)); fullProjectsModeButton->setCheckable(true); fullProjectsModeButton->setToolTip(tr("Show Subprojects")); diff --git a/src/plugins/classview/classviewtreeitemmodel.cpp b/src/plugins/classview/classviewtreeitemmodel.cpp index b00f8e30202..0e295324c9e 100644 --- a/src/plugins/classview/classviewtreeitemmodel.cpp +++ b/src/plugins/classview/classviewtreeitemmodel.cpp @@ -62,7 +62,7 @@ QVariant TreeItemModel::data(const QModelIndex &index, int role) const bool ok = false; int type = iconType.toInt(&ok); if (ok && type >= 0) - return CPlusPlus::Icons::iconForType(static_cast(type)); + return ::Utils::CodeModelIcon::iconForType(static_cast<::Utils::CodeModelIcon::Type>(type)); } } break; diff --git a/src/plugins/classview/classviewutils.cpp b/src/plugins/classview/classviewutils.cpp index 793fa3ea6d5..53a673bb767 100644 --- a/src/plugins/classview/classviewutils.cpp +++ b/src/plugins/classview/classviewutils.cpp @@ -43,29 +43,29 @@ namespace Constants { //! Default icon sort order const int IconSortOrder[] = { - CPlusPlus::Icons::NamespaceIconType, - CPlusPlus::Icons::EnumIconType, - CPlusPlus::Icons::ClassIconType, - CPlusPlus::Icons::FuncPublicIconType, - CPlusPlus::Icons::FuncProtectedIconType, - CPlusPlus::Icons::FuncPrivateIconType, - CPlusPlus::Icons::FuncPublicStaticIconType, - CPlusPlus::Icons::FuncProtectedStaticIconType, - CPlusPlus::Icons::FuncPrivateStaticIconType, - CPlusPlus::Icons::SignalIconType, - CPlusPlus::Icons::SlotPublicIconType, - CPlusPlus::Icons::SlotProtectedIconType, - CPlusPlus::Icons::SlotPrivateIconType, - CPlusPlus::Icons::VarPublicIconType, - CPlusPlus::Icons::VarProtectedIconType, - CPlusPlus::Icons::VarPrivateIconType, - CPlusPlus::Icons::VarPublicStaticIconType, - CPlusPlus::Icons::VarProtectedStaticIconType, - CPlusPlus::Icons::VarPrivateStaticIconType, - CPlusPlus::Icons::EnumeratorIconType, - CPlusPlus::Icons::KeywordIconType, - CPlusPlus::Icons::MacroIconType, - CPlusPlus::Icons::UnknownIconType + Utils::CodeModelIcon::Namespace, + Utils::CodeModelIcon::Enum, + Utils::CodeModelIcon::Class, + Utils::CodeModelIcon::FuncPublic, + Utils::CodeModelIcon::FuncProtected, + Utils::CodeModelIcon::FuncPrivate, + Utils::CodeModelIcon::FuncPublicStatic, + Utils::CodeModelIcon::FuncProtectedStatic, + Utils::CodeModelIcon::FuncPrivateStatic, + Utils::CodeModelIcon::Signal, + Utils::CodeModelIcon::SlotPublic, + Utils::CodeModelIcon::SlotProtected, + Utils::CodeModelIcon::SlotPrivate, + Utils::CodeModelIcon::VarPublic, + Utils::CodeModelIcon::VarProtected, + Utils::CodeModelIcon::VarPrivate, + Utils::CodeModelIcon::VarPublicStatic, + Utils::CodeModelIcon::VarProtectedStatic, + Utils::CodeModelIcon::VarPrivateStatic, + Utils::CodeModelIcon::Enumerator, + Utils::CodeModelIcon::Keyword, + Utils::CodeModelIcon::Macro, + Utils::CodeModelIcon::Unknown }; } // namespace Constants diff --git a/src/plugins/cpptools/cppcompletionassist.cpp b/src/plugins/cpptools/cppcompletionassist.cpp index 078d695f852..1bb445589c9 100644 --- a/src/plugins/cpptools/cppcompletionassist.cpp +++ b/src/plugins/cpptools/cppcompletionassist.cpp @@ -1837,7 +1837,7 @@ bool InternalCppCompletionAssistProcessor::completeQtMethodClassName( return false; const LookupContext &context = m_model->m_typeOfExpression->context(); - const QIcon classIcon = Icons::iconForType(Icons::ClassIconType); + const QIcon classIcon = Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Class); Overview overview; foreach (const LookupItem &lookupItem, results) { diff --git a/src/plugins/glsleditor/glslcompletionassist.cpp b/src/plugins/glsleditor/glslcompletionassist.cpp index 2effaa7fa3a..4fb33ac17e4 100644 --- a/src/plugins/glsleditor/glslcompletionassist.cpp +++ b/src/plugins/glsleditor/glslcompletionassist.cpp @@ -161,15 +161,15 @@ static QIcon glslIcon(IconTypes iconType) switch (iconType) { case IconTypeType: - return Icons::iconForType(Icons::ClassIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Class); case IconTypeConst: - return Icons::iconForType(Icons::EnumeratorIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Enumerator); case IconTypeKeyword: - return Icons::iconForType(Icons::KeywordIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Keyword); case IconTypeFunction: - return Icons::iconForType(Icons::FuncPublicIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::FuncPublic); case IconTypeVariable: - return Icons::iconForType(Icons::VarPublicIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::VarPublic); case IconTypeAttribute: { static const QIcon icon = Icon({{member, Theme::IconsCodeModelAttributeColor}}, Icon::Tint).icon(); @@ -187,7 +187,7 @@ static QIcon glslIcon(IconTypes iconType) } case IconTypeOther: default: - return Icons::iconForType(Icons::NamespaceIconType); + return Utils::CodeModelIcon::iconForType(Utils::CodeModelIcon::Namespace); } } diff --git a/src/tools/iconlister/iconlister.cpp b/src/tools/iconlister/iconlister.cpp index ca7976ae8c8..509214cc255 100644 --- a/src/tools/iconlister/iconlister.cpp +++ b/src/tools/iconlister/iconlister.cpp @@ -823,55 +823,56 @@ void IconLister::addUtilsIcons() void IconLister::addCPlusPlusIcons() { + using namespace Utils::CodeModelIcon; const QString prefix = "CPlusPlus"; const QList icons = { - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::ClassIconType), "ClassIconType", prefix, + {iconForType(Class), "Class", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::StructIconType), "StructIconType", prefix, + {iconForType(Struct), "Struct", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::EnumIconType), "EnumIconType", prefix, + {iconForType(Enum), "Enum", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::EnumeratorIconType), "EnumeratorIconType", prefix, + {iconForType(Enumerator), "Enumerator", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncPublicIconType), "FuncPublicIconType", prefix, + {iconForType(FuncPublic), "FuncPublic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncProtectedIconType), "FuncProtectedIconType", prefix, + {iconForType(FuncProtected), "FuncProtected", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncPrivateIconType), "FuncPrivateIconType", prefix, + {iconForType(FuncPrivate), "FuncPrivate", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncPublicStaticIconType), "FuncPublicStaticIconType", prefix, + {iconForType(FuncPublicStatic), "FuncPublicStatic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncProtectedStaticIconType), "FuncProtectedStaticIconType", prefix, + {iconForType(FuncProtectedStatic), "FuncProtectedStatic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::FuncPrivateStaticIconType), "FuncPrivateStaticIconType", prefix, + {iconForType(FuncPrivateStatic), "FuncPrivateStatic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::NamespaceIconType), "NamespaceIconType", prefix, + {iconForType(Namespace), "Namespace", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarPublicIconType), "VarPublicIconType", prefix, + {iconForType(VarPublic), "VarPublic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarProtectedIconType), "VarProtectedIconType", prefix, + {iconForType(VarProtected), "VarProtected", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarPrivateIconType), "VarPrivateIconType", prefix, + {iconForType(VarPrivate), "VarPrivate", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarPublicStaticIconType), "VarPublicStaticIconType", prefix, + {iconForType(VarPublicStatic), "VarPublicStatic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarProtectedStaticIconType), "VarProtectedStaticIconType", prefix, + {iconForType(VarProtectedStatic), "VarProtectedStatic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::VarPrivateStaticIconType), "VarPrivateStaticIconType", prefix, + {iconForType(VarPrivateStatic), "VarPrivateStatic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::SignalIconType), "SignalIconType", prefix, + {iconForType(Signal), "Signal", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::SlotPublicIconType), "SlotPublicIconType", prefix, + {iconForType(SlotPublic), "SlotPublic", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::SlotProtectedIconType), "SlotProtectedIconType", prefix, + {iconForType(SlotProtected), "SlotProtected", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::SlotPrivateIconType), "SlotPrivateIconType", prefix, + {iconForType(SlotPrivate), "SlotPrivate", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::KeywordIconType), "KeywordIconType", prefix, + {iconForType(Keyword), "Keyword", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::MacroIconType), "MacroIconType", prefix, + {iconForType(Macro), "Macro", prefix, ""}, - {CPlusPlus::Icons::iconForType(CPlusPlus::Icons::PropertyIconType), "PropertyIconType", prefix, + {iconForType(Property), "Property", prefix, ""} }; m_icons.append(icons); diff --git a/src/tools/icons/qtcreatoricons.svg b/src/tools/icons/qtcreatoricons.svg index 66fa8dfc87f..95f5e2fb3a1 100644 --- a/src/tools/icons/qtcreatoricons.svg +++ b/src/tools/icons/qtcreatoricons.svg @@ -6275,7 +6275,7 @@ style="display:inline" /> + id="src/libs/utils/images/signal"> + id="src/libs/utils/images/slot"> + id="src/libs/utils/images/keyword"> + id="src/libs/utils/images/macro"> + id="src/libs/utils/images/propertybackground">