diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/.ratings b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/.ratings index 32d5f2ec879540f06661ecd859e33dfa2ee24057..d6e82f8abfd2362f440681973427dd3a021013d0 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/.ratings +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/.ratings @@ -4,7 +4,7 @@ EObjectActionBase.java 67c307ac15d7f45ad970ab1df42f4729fee09518 GREEN EReferencePropertySectionBase.java d4cce5af54efc59b33415a34d5130ab8952d60ce GREEN EditorBase.java 3af0350a488adf676d5b5e5ccad2087fb97c3d5b GREEN ModelEditorBindingBase.java 12f6323750cde28cefa99c1ec9d45191c8779109 GREEN -ModelElementHandlerBase.java 135d078a83e2174e762168d7467b6def2ad26273 GREEN +ModelElementHandlerBase.java 56590eab74170f91e2760ec5d44d2653667f1f94 YELLOW MultiEObjectActionBase.java ab9170f3918a069fa2a3aabae0436618317fa7b8 GREEN NamedCommentedModelElementHandlerBase.java 8f9cb1e750afb577f528d330165a9f377e23aa8b GREEN PropertySectionBase.java f8e2cf4444ab4808ac8c45b65840619b367ba112 GREEN diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/ModelElementHandlerBase.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/ModelElementHandlerBase.java index ab76427eadbcd4836142d377051b13b4e907bf96..078edad97779fc280f63b8850636970e36da9c57 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/ModelElementHandlerBase.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/ModelElementHandlerBase.java @@ -22,7 +22,9 @@ import java.util.Map; import org.eclipse.emf.ecore.EObject; import org.eclipse.jface.resource.ImageDescriptor; +import org.eclipse.jface.viewers.DecorationOverlayIcon; import org.eclipse.swt.graphics.Image; +import org.eclipse.swt.graphics.Point; import org.fortiss.tooling.kernel.ui.extension.IModelElementHandler; /** @@ -58,6 +60,17 @@ public abstract class ModelElementHandlerBase<T extends EObject> implements IMod iconImage = descr.createImage(); iconImages.put(descr, iconImage); } + + ImageDescriptor overlay = getIconOverlay(element); + if(overlay != null) { + Point resultImgSize = new Point(16, 16); + ImageDescriptor[] overlaysArray = new ImageDescriptor[] {null, null, null, + overlay, null}; + DecorationOverlayIcon decorated = + new DecorationOverlayIcon(iconImage, overlaysArray, resultImgSize); + return decorated.createImage(); + } + return iconImage; } @@ -127,4 +140,15 @@ public abstract class ModelElementHandlerBase<T extends EObject> implements IMod public EObject getPropertySectionRetargetElement(T element) { return element; } + + /** + * Retrieves the overlay, that is applied to the icon of the given element. + * + * @param element + * The element for which its icon shall be decorated with the overlay. + * @return The decoration overlay for element's icon. + */ + public ImageDescriptor getIconOverlay(T element) { + return null; + } }