Class CompareColorImpl

  • All Implemented Interfaces:
    com.google.common.cache.RemovalListener<org.eclipse.swt.graphics.RGB,​org.eclipse.swt.graphics.Color>, ICompareColor
    Direct Known Subclasses:
    EMFCompareColor

    public class CompareColorImpl
    extends Object
    implements com.google.common.cache.RemovalListener<org.eclipse.swt.graphics.RGB,​org.eclipse.swt.graphics.Color>, ICompareColor
    Default implementation that use a cache to store created Color and that is listening to a preference store for color configuration.
    • Field Detail

      • INCOMING_CHANGE_COLOR_THEME_KEY

        public static final String INCOMING_CHANGE_COLOR_THEME_KEY
        Incoming color key in theme
        See Also:
        Constant Field Values
      • CONFLICTING_CHANGE_COLOR_THEME_KEY

        public static final String CONFLICTING_CHANGE_COLOR_THEME_KEY
        Conflicting color key in theme
        See Also:
        Constant Field Values
      • OUTGOING_CHANGE_COLOR_THEME_KEY

        public static final String OUTGOING_CHANGE_COLOR_THEME_KEY
        Outgoing color key in theme
        See Also:
        Constant Field Values
      • REQUIRED_DIFF_COLOR_THEME_KEY

        public static final String REQUIRED_DIFF_COLOR_THEME_KEY
        Required difference color key in theme
        See Also:
        Constant Field Values
      • UNMERGEABLE_DIFF_COLOR_THEME_KEY

        public static final String UNMERGEABLE_DIFF_COLOR_THEME_KEY
        Unmergeable difference color key in theme
        See Also:
        Constant Field Values
    • Constructor Detail

      • CompareColorImpl

        public CompareColorImpl​(org.eclipse.swt.widgets.Display fDisplay,
                                boolean leftIsLocal,
                                org.eclipse.jface.resource.ColorRegistry colorRegistry)
        Constructor. With this constructor the colors will disposed at the same as the control.
        Parameters:
        control - Use for get Display. The colors will be disposed with the control.
        leftIsLocal -
        colorRegistry - ColorRegistry where to find all needed color. Those color will be available through the constants: (UNMERGEABLE_DIFF_COLOR_THEME_KEY, REQUIRED_DIFF_COLOR_THEME_KEY, RESOLVED_CHANGE_COLOR_THEME_KEY, OUTGOING_CHANGE_COLOR_THEME_KEY, CONFLICTING_CHANGE_COLOR_THEME_KEY, INCOMING_CHANGE_COLOR_THEME_KEY)
    • Method Detail

      • onRemoval

        public final void onRemoval​(com.google.common.cache.RemovalNotification<org.eclipse.swt.graphics.RGB,​org.eclipse.swt.graphics.Color> notification)
        Specified by:
        onRemoval in interface com.google.common.cache.RemovalListener<org.eclipse.swt.graphics.RGB,​org.eclipse.swt.graphics.Color>
      • getFillColor

        public org.eclipse.swt.graphics.Color getFillColor​(Diff diff,
                                                           boolean isThreeWay,
                                                           boolean isIgnoreAncestor,
                                                           boolean selected)
        Return the color of the background of the decorator of the given diff.
        Specified by:
        getFillColor in interface ICompareColor
        Parameters:
        diff - the diff to be decorated.
        isThreeWay - are we comparing three models.
        isIgnoreAncestor - if the ancestor has to be ignored (i.e. ignore the isThreeWay parameter).
        selected - if the given diff is selected in the viewer.
        Returns:
        the background color.
        See Also:
        org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.util.ICompareColor#getFillColor(org.eclipse.emf.compare.Diff, boolean, boolean, boolean)
      • getStrokeColor

        public org.eclipse.swt.graphics.Color getStrokeColor​(Diff diff,
                                                             boolean isThreeWay,
                                                             boolean isIgnoreAncestor,
                                                             boolean selected)
        Return the color of the stroke of the decorator of the given diff.
        Specified by:
        getStrokeColor in interface ICompareColor
        Parameters:
        diff - the diff to be decorated.
        isThreeWay - are we comparing three models.
        isIgnoreAncestor - if the ancestor has to be ignored (i.e. ignore the isThreeWay parameter).
        selected - if the given diff is selected in the viewer.
        Returns:
        the background color.
        See Also:
        org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.util.ICompareColor#getStrokeColor(org.eclipse.emf.compare.Diff, boolean, boolean, boolean)
      • updateColors

        protected final void updateColors()
      • dispose

        public void dispose()
        Dispose all Color resources.
        Specified by:
        dispose in interface ICompareColor
        See Also:
        org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.util.ICompareColor#dispose()
      • getRequiredFillColor

        public org.eclipse.swt.graphics.Color getRequiredFillColor()
        Get the color for Required change.
        Specified by:
        getRequiredFillColor in interface ICompareColor
        Returns:
      • getUnmergeableFillColor

        public org.eclipse.swt.graphics.Color getUnmergeableFillColor()
        Get the color for Unmergeable difference.
        Specified by:
        getUnmergeableFillColor in interface ICompareColor
        Returns: