From d9d468398989c27cb6994a34b2340860e2a9d44c Mon Sep 17 00:00:00 2001 From: Vladimir Rudev Date: Sun, 4 Nov 2012 11:24:45 +0400 Subject: [PATCH] JetDescriptorIconProvider now return abstract icons for abstract functions --- .../jet/plugin/JetDescriptorIconProvider.java | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/JetDescriptorIconProvider.java b/idea/src/org/jetbrains/jet/plugin/JetDescriptorIconProvider.java index 622853d1a15..fcd44af257e 100644 --- a/idea/src/org/jetbrains/jet/plugin/JetDescriptorIconProvider.java +++ b/idea/src/org/jetbrains/jet/plugin/JetDescriptorIconProvider.java @@ -49,7 +49,7 @@ public final class JetDescriptorIconProvider { public static Icon getVisibilityIcon(@NotNull DeclarationDescriptor descriptor) { if (descriptor instanceof DeclarationDescriptorWithVisibility) { - DeclarationDescriptorWithVisibility descriptorWithVisibility = (DeclarationDescriptorWithVisibility)descriptor; + DeclarationDescriptorWithVisibility descriptorWithVisibility = (DeclarationDescriptorWithVisibility) descriptor; Visibility visibility = descriptorWithVisibility.getVisibility(); if (visibility == Visibilities.PUBLIC) { return PlatformIcons.PUBLIC_ICON; @@ -81,11 +81,20 @@ public final class JetDescriptorIconProvider { return JetIcons.EXTENSION_FUNCTION; } - return descriptor.getContainingDeclaration() instanceof ClassDescriptor ? - PlatformIcons.METHOD_ICON : JetIcons.FUNCTION; + if (descriptor.getContainingDeclaration() instanceof ClassDescriptor) { + if (Modality.ABSTRACT == ((FunctionDescriptor) descriptor).getModality()) { + return PlatformIcons.ABSTRACT_METHOD_ICON; + } + else { + return PlatformIcons.METHOD_ICON; + } + } + else { + return JetIcons.FUNCTION; + } } if (descriptor instanceof ClassDescriptor) { - switch (((ClassDescriptor)descriptor).getKind()) { + switch (((ClassDescriptor) descriptor).getKind()) { case TRAIT: return JetIcons.TRAIT; case ENUM_CLASS: