You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by se...@apache.org on 2020/04/25 07:06:27 UTC

[directory-studio] branch master updated: DIRSTUDIO-1206: Fix attribute colors for dark theme

This is an automated email from the ASF dual-hosted git repository.

seelmann pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-studio.git


The following commit(s) were added to refs/heads/master by this push:
     new df34383  DIRSTUDIO-1206: Fix attribute colors for dark theme
df34383 is described below

commit df343830da2f3e8ec2f8599bcece0eec99d7c0d0
Author: Stefan Seelmann <ma...@stefan-seelmann.de>
AuthorDate: Sat Apr 25 09:06:07 2020 +0200

    DIRSTUDIO-1206: Fix attribute colors for dark theme
---
 .../EntryEditorWidgetLabelProvider.java            | 34 ++++++++++++++--------
 1 file changed, 22 insertions(+), 12 deletions(-)

diff --git a/plugins/ldapbrowser.common/src/main/java/org/apache/directory/studio/ldapbrowser/common/widgets/entryeditor/EntryEditorWidgetLabelProvider.java b/plugins/ldapbrowser.common/src/main/java/org/apache/directory/studio/ldapbrowser/common/widgets/entryeditor/EntryEditorWidgetLabelProvider.java
index 3acca40..bebdd83 100644
--- a/plugins/ldapbrowser.common/src/main/java/org/apache/directory/studio/ldapbrowser/common/widgets/entryeditor/EntryEditorWidgetLabelProvider.java
+++ b/plugins/ldapbrowser.common/src/main/java/org/apache/directory/studio/ldapbrowser/common/widgets/entryeditor/EntryEditorWidgetLabelProvider.java
@@ -28,6 +28,7 @@ import org.apache.directory.studio.ldapbrowser.core.model.IAttribute;
 import org.apache.directory.studio.ldapbrowser.core.model.IValue;
 import org.apache.directory.studio.valueeditors.IValueEditor;
 import org.apache.directory.studio.valueeditors.ValueEditorManager;
+import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.preference.PreferenceConverter;
 import org.eclipse.jface.viewers.IColorProvider;
 import org.eclipse.jface.viewers.IFontProvider;
@@ -279,27 +280,19 @@ public class EntryEditorWidgetLabelProvider extends LabelProvider implements ITa
         {
             if ( attribute.isObjectClassAttribute() )
             {
-                RGB rgb = PreferenceConverter.getColor( BrowserCommonActivator.getDefault().getPreferenceStore(),
-                    BrowserCommonConstants.PREFERENCE_OBJECTCLASS_COLOR );
-                return BrowserCommonActivator.getDefault().getColor( rgb );
+                return getColorIfNotDefaultElseNull( BrowserCommonConstants.PREFERENCE_OBJECTCLASS_COLOR );
             }
             else if ( attribute.isMustAttribute() )
             {
-                RGB rgb = PreferenceConverter.getColor( BrowserCommonActivator.getDefault().getPreferenceStore(),
-                    BrowserCommonConstants.PREFERENCE_MUSTATTRIBUTE_COLOR );
-                return BrowserCommonActivator.getDefault().getColor( rgb );
+                return getColorIfNotDefaultElseNull( BrowserCommonConstants.PREFERENCE_MUSTATTRIBUTE_COLOR );
             }
             else if ( attribute.isOperationalAttribute() )
             {
-                RGB rgb = PreferenceConverter.getColor( BrowserCommonActivator.getDefault().getPreferenceStore(),
-                    BrowserCommonConstants.PREFERENCE_OPERATIONALATTRIBUTE_COLOR );
-                return BrowserCommonActivator.getDefault().getColor( rgb );
+                return getColorIfNotDefaultElseNull( BrowserCommonConstants.PREFERENCE_OPERATIONALATTRIBUTE_COLOR );
             }
             else
             {
-                RGB rgb = PreferenceConverter.getColor( BrowserCommonActivator.getDefault().getPreferenceStore(),
-                    BrowserCommonConstants.PREFERENCE_MAYATTRIBUTE_COLOR );
-                return BrowserCommonActivator.getDefault().getColor( rgb );
+                return getColorIfNotDefaultElseNull( BrowserCommonConstants.PREFERENCE_MAYATTRIBUTE_COLOR );
             }
         }
         else
@@ -309,6 +302,23 @@ public class EntryEditorWidgetLabelProvider extends LabelProvider implements ITa
     }
 
 
+    private Color getColorIfNotDefaultElseNull( String color )
+    {
+        BrowserCommonActivator plugin = BrowserCommonActivator.getDefault();
+        IPreferenceStore preferenceStore = plugin.getPreferenceStore();
+        RGB rgb = PreferenceConverter.getColor( preferenceStore, color );
+        RGB defaultRgb = PreferenceConverter.getDefaultColor( preferenceStore, color );
+        if ( rgb.equals( defaultRgb ) )
+        {
+            return null;
+        }
+        else
+        {
+            return plugin.getColor( rgb );
+        }
+    }
+
+
     /**
      * {@inheritDoc}
      */