diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_package.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_package.png new file mode 100644 index 0000000000..0f53282a8f Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_package.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_private.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_private.png new file mode 100644 index 0000000000..2d4b28ffaa Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_private.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_protected.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_protected.png new file mode 100644 index 0000000000..9c4e0f3717 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-agent_protected.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_package.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_package.png new file mode 100644 index 0000000000..985470def8 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_package.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_private.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_private.png new file mode 100644 index 0000000000..d1b956b370 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_private.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_protected.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_protected.png new file mode 100644 index 0000000000..64d47b9801 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-behavior_protected.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_package.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_package.png new file mode 100644 index 0000000000..a0c0f1ce65 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_package.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_private.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_private.png new file mode 100644 index 0000000000..4edff27b6e Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_private.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_protected.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_protected.png new file mode 100644 index 0000000000..3e29db9b34 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-capacity_protected.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_package.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_package.png new file mode 100644 index 0000000000..2728c1d093 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_package.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_private.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_private.png new file mode 100644 index 0000000000..93f6b8db94 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_private.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_protected.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_protected.png new file mode 100644 index 0000000000..23f3094919 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-event_protected.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_package.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_package.png new file mode 100644 index 0000000000..950a1f6eea Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_package.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_private.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_private.png new file mode 100644 index 0000000000..6a269eec90 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_private.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_protected.png b/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_protected.png new file mode 100644 index 0000000000..e9a779dba1 Binary files /dev/null and b/main/coreplugins/io.sarl.lang.ui/icons/sarl-skill_protected.png differ diff --git a/main/coreplugins/io.sarl.lang.ui/src/io/sarl/lang/ui/labeling/SARLImages.java b/main/coreplugins/io.sarl.lang.ui/src/io/sarl/lang/ui/labeling/SARLImages.java index 7873c106f9..72ac2da5f8 100644 --- a/main/coreplugins/io.sarl.lang.ui/src/io/sarl/lang/ui/labeling/SARLImages.java +++ b/main/coreplugins/io.sarl.lang.ui/src/io/sarl/lang/ui/labeling/SARLImages.java @@ -25,6 +25,7 @@ import com.google.inject.Inject; import com.google.inject.Singleton; +import org.eclipse.jdt.core.Flags; import org.eclipse.jdt.internal.ui.viewsupport.JavaElementImageProvider; import org.eclipse.jdt.ui.JavaElementImageDescriptor; import org.eclipse.jface.resource.ImageDescriptor; @@ -49,12 +50,12 @@ public class SARLImages extends XtendImages { static { IMAGE_NAMES = new String[SarlElementType.values().length]; - IMAGE_NAMES[SarlElementType.AGENT.ordinal()] = "sarl-agent.png"; //$NON-NLS-1$ - IMAGE_NAMES[SarlElementType.BEHAVIOR.ordinal()] = "sarl-behavior.png"; //$NON-NLS-1$ - IMAGE_NAMES[SarlElementType.CAPACITY.ordinal()] = "sarl-capacity.png"; //$NON-NLS-1$ - IMAGE_NAMES[SarlElementType.SKILL.ordinal()] = "sarl-skill.png"; //$NON-NLS-1$ - IMAGE_NAMES[SarlElementType.EVENT.ordinal()] = "sarl-event.png"; //$NON-NLS-1$ - IMAGE_NAMES[SarlElementType.BEHAVIOR_UNIT.ordinal()] = "sarl-behavior-unit.png"; //$NON-NLS-1$ + IMAGE_NAMES[SarlElementType.AGENT.ordinal()] = "sarl-agent"; //$NON-NLS-1$ + IMAGE_NAMES[SarlElementType.BEHAVIOR.ordinal()] = "sarl-behavior"; //$NON-NLS-1$ + IMAGE_NAMES[SarlElementType.CAPACITY.ordinal()] = "sarl-capacity"; //$NON-NLS-1$ + IMAGE_NAMES[SarlElementType.SKILL.ordinal()] = "sarl-skill"; //$NON-NLS-1$ + IMAGE_NAMES[SarlElementType.EVENT.ordinal()] = "sarl-event"; //$NON-NLS-1$ + IMAGE_NAMES[SarlElementType.BEHAVIOR_UNIT.ordinal()] = "sarl-behavior-unit"; //$NON-NLS-1$ } @Inject @@ -72,10 +73,22 @@ public class SARLImages extends XtendImages { public ImageDescriptor getTypeImageDescriptor( SarlElementType type, boolean isInner, boolean isInInterfaceOrAnnotation, int flags, boolean useLightIcons) { + final ImageDescriptor desc; if (type != null) { - return this.imageHelper.getImageDescriptor(IMAGE_NAMES[type.ordinal()]); + final StringBuilder iconName = new StringBuilder(IMAGE_NAMES[type.ordinal()]); + if (Flags.isPackageDefault(flags)) { + iconName.append("_package"); //$NON-NLS-1$ + } else if (Flags.isProtected(flags)) { + iconName.append("_protected"); //$NON-NLS-1$ + } else if (Flags.isPrivate(flags)) { + iconName.append("_private"); //$NON-NLS-1$ + } + iconName.append(".png"); //$NON-NLS-1$ + desc = this.imageHelper.getImageDescriptor(iconName.toString()); + } else { + desc = JavaElementImageProvider.getTypeImageDescriptor(isInner, isInInterfaceOrAnnotation, flags, useLightIcons); } - return JavaElementImageProvider.getTypeImageDescriptor(isInner, isInInterfaceOrAnnotation, flags, useLightIcons); + return desc; } /** Replies the image descriptor for the given element.