aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/glsleditor
diff options
context:
space:
mode:
authorAlessandro Portale <alessandro.portale@theqtcompany.com>2016-04-06 23:16:17 +0200
committerAlessandro Portale <alessandro.portale@theqtcompany.com>2016-04-11 13:31:25 +0000
commit0788ec7f48cff1313b216d694f9753d2c9087390 (patch)
tree3f31ca49614c2ec30976cd5c134e605662b20b5e /src/plugins/glsleditor
parent01f4e4a8c6eff3bb31948169dc10c75c4338183d (diff)
GlslEditor: Remove duplicated icons
This change makes GlslCompletionAssist reuse the equivalent icons from CPlusPlus, and adds specific ones for "Attribute", "Uniform" and "Varying". Change-Id: Ic8860274a9f421d28cfec86ed0d1badb7e1cf92e Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Diffstat (limited to 'src/plugins/glsleditor')
-rw-r--r--src/plugins/glsleditor/glslcompletionassist.cpp86
-rw-r--r--src/plugins/glsleditor/glslcompletionassist.h11
-rw-r--r--src/plugins/glsleditor/glsleditor.qrc9
-rw-r--r--src/plugins/glsleditor/images/attribute.pngbin456 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/const.pngbin478 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/func.pngbin583 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/keyword.pngbin341 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/other.pngbin377 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/type.pngbin573 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/uniform.pngbin461 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/var.pngbin530 -> 0 bytes
-rw-r--r--src/plugins/glsleditor/images/varying.pngbin457 -> 0 bytes
12 files changed, 65 insertions, 41 deletions
diff --git a/src/plugins/glsleditor/glslcompletionassist.cpp b/src/plugins/glsleditor/glslcompletionassist.cpp
index e75bfb97a2..9be913279e 100644
--- a/src/plugins/glsleditor/glslcompletionassist.cpp
+++ b/src/plugins/glsleditor/glslcompletionassist.cpp
@@ -41,7 +41,9 @@
#include <texteditor/codeassist/genericproposal.h>
#include <texteditor/codeassist/functionhintproposal.h>
#include <cplusplus/ExpressionUnderCursor.h>
+#include <cplusplus/Icons.h>
+#include <utils/icon.h>
#include <utils/faketooltip.h>
#include <QIcon>
@@ -138,6 +140,57 @@ static bool checkStartOfIdentifier(const QString &word)
return false;
}
+enum IconTypes {
+ IconTypeAttribute,
+ IconTypeUniform,
+ IconTypeKeyword,
+ IconTypeVarying,
+ IconTypeConst,
+ IconTypeVariable,
+ IconTypeType,
+ IconTypeFunction,
+ IconTypeOther
+};
+
+static QIcon glslIcon(IconTypes iconType)
+{
+ using namespace CPlusPlus;
+ using namespace Utils;
+
+ const QString member = QLatin1String(":/codemodel/images/member.png");
+
+ switch (iconType) {
+ case IconTypeType:
+ return Icons::iconForType(Icons::ClassIconType);
+ case IconTypeConst:
+ return Icons::iconForType(Icons::EnumeratorIconType);
+ case IconTypeKeyword:
+ return Icons::iconForType(Icons::KeywordIconType);
+ case IconTypeFunction:
+ return Icons::iconForType(Icons::FuncPublicIconType);
+ case IconTypeVariable:
+ return Icons::iconForType(Icons::VarPublicIconType);
+ case IconTypeAttribute: {
+ static const QIcon icon =
+ Icon({{member, Theme::IconsCodeModelAttributeColor}}, Icon::Tint).icon();
+ return icon;
+ }
+ case IconTypeUniform: {
+ static const QIcon icon =
+ Icon({{member, Theme::IconsCodeModelUniformColor}}, Icon::Tint).icon();
+ return icon;
+ }
+ case IconTypeVarying: {
+ static const QIcon icon =
+ Icon({{member, Theme::IconsCodeModelVaryingColor}}, Icon::Tint).icon();
+ return icon;
+ }
+ case IconTypeOther:
+ default:
+ return Icons::iconForType(Icons::NamespaceIconType);
+ }
+}
+
// ----------------------------
// GlslCompletionAssistProvider
// ----------------------------
@@ -223,15 +276,6 @@ int GlslFunctionHintProposalModel::activeArgument(const QString &prefix) const
// -----------------------------
GlslCompletionAssistProcessor::GlslCompletionAssistProcessor()
: m_startPosition(0)
- , m_keywordIcon(QLatin1String(":/glsleditor/images/keyword.png"))
- , m_varIcon(QLatin1String(":/glsleditor/images/var.png"))
- , m_functionIcon(QLatin1String(":/glsleditor/images/func.png"))
- , m_typeIcon(QLatin1String(":/glsleditor/images/type.png"))
- , m_constIcon(QLatin1String(":/glsleditor/images/const.png"))
- , m_attributeIcon(QLatin1String(":/glsleditor/images/attribute.png"))
- , m_uniformIcon(QLatin1String(":/glsleditor/images/uniform.png"))
- , m_varyingIcon(QLatin1String(":/glsleditor/images/varying.png"))
- , m_otherIcon(QLatin1String(":/glsleditor/images/other.png"))
{}
GlslCompletionAssistProcessor::~GlslCompletionAssistProcessor()
@@ -385,9 +429,9 @@ IAssistProposal *GlslCompletionAssistProcessor::perform(const AssistInterface *i
0
};
for (int index = 0; attributeNames[index]; ++index)
- m_completions << createCompletionItem(QString::fromLatin1(attributeNames[index]), m_attributeIcon);
+ m_completions << createCompletionItem(QString::fromLatin1(attributeNames[index]), glslIcon(IconTypeAttribute));
for (int index = 0; uniformNames[index]; ++index)
- m_completions << createCompletionItem(QString::fromLatin1(uniformNames[index]), m_uniformIcon);
+ m_completions << createCompletionItem(QString::fromLatin1(uniformNames[index]), glslIcon(IconTypeUniform));
}
}
@@ -395,7 +439,7 @@ IAssistProposal *GlslCompletionAssistProcessor::perform(const AssistInterface *i
QStringList keywords = GLSL::Lexer::keywords(languageVariant(m_interface->mimeType()));
// m_keywordCompletions.clear();
for (int index = 0; index < keywords.size(); ++index)
- m_completions << createCompletionItem(keywords.at(index), m_keywordIcon);
+ m_completions << createCompletionItem(keywords.at(index), glslIcon(IconTypeKeyword));
// m_keywordVariant = languageVariant(m_interface->mimeType());
// }
@@ -408,23 +452,23 @@ IAssistProposal *GlslCompletionAssistProcessor::perform(const AssistInterface *i
if (var) {
int storageType = var->qualifiers() & GLSL::QualifiedTypeAST::StorageMask;
if (storageType == GLSL::QualifiedTypeAST::Attribute)
- icon = m_attributeIcon;
+ icon = glslIcon(IconTypeAttribute);
else if (storageType == GLSL::QualifiedTypeAST::Uniform)
- icon = m_uniformIcon;
+ icon = glslIcon(IconTypeUniform);
else if (storageType == GLSL::QualifiedTypeAST::Varying)
- icon = m_varyingIcon;
+ icon = glslIcon(IconTypeVarying);
else if (storageType == GLSL::QualifiedTypeAST::Const)
- icon = m_constIcon;
+ icon = glslIcon(IconTypeConst);
else
- icon = m_varIcon;
+ icon = glslIcon(IconTypeVariable);
} else if (s->asArgument()) {
- icon = m_varIcon;
+ icon = glslIcon(IconTypeVariable);
} else if (s->asFunction() || s->asOverloadSet()) {
- icon = m_functionIcon;
+ icon = glslIcon(IconTypeFunction);
} else if (s->asStruct()) {
- icon = m_typeIcon;
+ icon = glslIcon(IconTypeType);
} else {
- icon = m_otherIcon;
+ icon = glslIcon(IconTypeOther);
}
if (specialMembers.contains(s->name()))
m_completions << createCompletionItem(s->name(), icon, SpecialMemberOrder);
diff --git a/src/plugins/glsleditor/glslcompletionassist.h b/src/plugins/glsleditor/glslcompletionassist.h
index 8cc29e6c77..ca1bd84a44 100644
--- a/src/plugins/glsleditor/glslcompletionassist.h
+++ b/src/plugins/glsleditor/glslcompletionassist.h
@@ -34,7 +34,6 @@
#include <texteditor/codeassist/ifunctionhintproposalmodel.h>
-#include <QIcon>
#include <QScopedPointer>
#include <QSharedPointer>
@@ -107,16 +106,6 @@ private:
int m_startPosition;
QScopedPointer<const GlslCompletionAssistInterface> m_interface;
-
- QIcon m_keywordIcon;
- QIcon m_varIcon;
- QIcon m_functionIcon;
- QIcon m_typeIcon;
- QIcon m_constIcon;
- QIcon m_attributeIcon;
- QIcon m_uniformIcon;
- QIcon m_varyingIcon;
- QIcon m_otherIcon;
};
class GlslCompletionAssistInterface : public TextEditor::AssistInterface
diff --git a/src/plugins/glsleditor/glsleditor.qrc b/src/plugins/glsleditor/glsleditor.qrc
index 3455048e00..cb1c737c9a 100644
--- a/src/plugins/glsleditor/glsleditor.qrc
+++ b/src/plugins/glsleditor/glsleditor.qrc
@@ -2,14 +2,5 @@
<qresource prefix="/glsleditor">
<file>GLSLEditor.mimetypes.xml</file>
<file>images/glslfile.png</file>
- <file>images/keyword.png</file>
- <file>images/var.png</file>
- <file>images/func.png</file>
- <file>images/type.png</file>
- <file>images/const.png</file>
- <file>images/attribute.png</file>
- <file>images/uniform.png</file>
- <file>images/varying.png</file>
- <file>images/other.png</file>
</qresource>
</RCC>
diff --git a/src/plugins/glsleditor/images/attribute.png b/src/plugins/glsleditor/images/attribute.png
deleted file mode 100644
index fe2bdc36fd..0000000000
--- a/src/plugins/glsleditor/images/attribute.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/const.png b/src/plugins/glsleditor/images/const.png
deleted file mode 100644
index 25fc49c659..0000000000
--- a/src/plugins/glsleditor/images/const.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/func.png b/src/plugins/glsleditor/images/func.png
deleted file mode 100644
index e515e76e61..0000000000
--- a/src/plugins/glsleditor/images/func.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/keyword.png b/src/plugins/glsleditor/images/keyword.png
deleted file mode 100644
index e5a51858d9..0000000000
--- a/src/plugins/glsleditor/images/keyword.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/other.png b/src/plugins/glsleditor/images/other.png
deleted file mode 100644
index 18d2941572..0000000000
--- a/src/plugins/glsleditor/images/other.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/type.png b/src/plugins/glsleditor/images/type.png
deleted file mode 100644
index 88432d2cb1..0000000000
--- a/src/plugins/glsleditor/images/type.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/uniform.png b/src/plugins/glsleditor/images/uniform.png
deleted file mode 100644
index 075e875dd2..0000000000
--- a/src/plugins/glsleditor/images/uniform.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/var.png b/src/plugins/glsleditor/images/var.png
deleted file mode 100644
index 089cfb45e5..0000000000
--- a/src/plugins/glsleditor/images/var.png
+++ /dev/null
Binary files differ
diff --git a/src/plugins/glsleditor/images/varying.png b/src/plugins/glsleditor/images/varying.png
deleted file mode 100644
index a6e3e12c6d..0000000000
--- a/src/plugins/glsleditor/images/varying.png
+++ /dev/null
Binary files differ