Minor fix for not showing Override stereotypes in light-grey foreground.

Change-Id: I189e28653ae34d08872d295df9b956c49eceeed3
diff --git a/plugins/org.eclipse.tigerstripe.workbench.ui.base/src/java/org/eclipse/tigerstripe/workbench/ui/internal/editors/artifacts/StereotypeSectionManager.java b/plugins/org.eclipse.tigerstripe.workbench.ui.base/src/java/org/eclipse/tigerstripe/workbench/ui/internal/editors/artifacts/StereotypeSectionManager.java
index db3b6c2..fa824cf 100644
--- a/plugins/org.eclipse.tigerstripe.workbench.ui.base/src/java/org/eclipse/tigerstripe/workbench/ui/internal/editors/artifacts/StereotypeSectionManager.java
+++ b/plugins/org.eclipse.tigerstripe.workbench.ui.base/src/java/org/eclipse/tigerstripe/workbench/ui/internal/editors/artifacts/StereotypeSectionManager.java
@@ -110,7 +110,7 @@
         // probably only works for Stereotypes on Artifacts
 
         public Color getForeground(Object element) {
-            if (element instanceof IUnresolvedStereotypeInstance || element instanceof IInheritedStereotypeInstance) {
+            if (isUnresolvedOrInherited(element)) {
                 return ColorUtils.LIGHT_GREY;
             }
 
@@ -211,6 +211,12 @@
         this.callback = callback == null ? IModifyCallback.EMPTY : callback;
         this.isEditable = addButton.isEnabled();
     }
+    
+    private static final boolean isUnresolvedOrInherited(Object stereotype) {
+        return stereotype instanceof IUnresolvedStereotypeInstance
+                || (stereotype instanceof IInheritedStereotypeInstance
+                        && !(stereotype instanceof IOverridenStereotypeInstance));
+    }
 
     /**
      * This method creates all the listener on the various widgets to manage the
@@ -259,10 +265,10 @@
         viewer.setComparator(new ViewerComparator() {
             @Override
             public int compare(Viewer viewer, Object e1, Object e2) {
-                if (e1 instanceof IInheritedStereotypeInstance && !(e2 instanceof IInheritedStereotypeInstance)) {
+                if (isUnresolvedOrInherited(e1) && !isUnresolvedOrInherited(e2)) {
                     return -1;
-                } else if (e2 instanceof IInheritedStereotypeInstance
-                        && !(e1 instanceof IInheritedStereotypeInstance)) {
+                } else if (isUnresolvedOrInherited(e2)
+                        && !isUnresolvedOrInherited(e1)) {
                     return 1;
                 } else if (e1 instanceof IStereotypeInstance && e2 instanceof IStereotypeInstance) {
                     return ((IStereotypeInstance) e1).getName()