Class CompareColorImpl
- java.lang.Object
-
- org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.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.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.emf.compare.rcp.ui.mergeviewer.ICompareColor
ICompareColor.Provider
-
-
Field Summary
Fields Modifier and Type Field Description static StringCONFLICTING_CHANGE_COLOR_THEME_KEYConflicting color key in themestatic StringINCOMING_CHANGE_COLOR_THEME_KEYIncoming color key in themestatic StringOUTGOING_CHANGE_COLOR_THEME_KEYOutgoing color key in themestatic StringREQUIRED_DIFF_COLOR_THEME_KEYRequired difference color key in themestatic StringUNMERGEABLE_DIFF_COLOR_THEME_KEYUnmergeable difference color key in theme
-
Constructor Summary
Constructors Constructor Description CompareColorImpl(org.eclipse.swt.widgets.Display fDisplay, boolean leftIsLocal, org.eclipse.jface.resource.ColorRegistry colorRegistry)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddispose()Dispose allColorresources.org.eclipse.swt.graphics.ColorgetFillColor(Diff diff, boolean isThreeWay, boolean isIgnoreAncestor, boolean selected)Return the color of the background of the decorator of the givendiff.org.eclipse.swt.graphics.ColorgetRequiredFillColor()Get the color for Required change.org.eclipse.swt.graphics.ColorgetRequiredStrokeColor()Get the color for Required change border items.org.eclipse.swt.graphics.ColorgetStrokeColor(Diff diff, boolean isThreeWay, boolean isIgnoreAncestor, boolean selected)Return the color of the stroke of the decorator of the givendiff.org.eclipse.swt.graphics.ColorgetUnmergeableFillColor()Get the color for Unmergeable difference.org.eclipse.swt.graphics.ColorgetUnmergeableStrokeColor()Get the color for Unmergeable difference border items.voidonRemoval(com.google.common.cache.RemovalNotification<org.eclipse.swt.graphics.RGB,org.eclipse.swt.graphics.Color> notification)protected voidupdateColors()
-
-
-
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 getDisplay. 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:
onRemovalin interfacecom.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 givendiff.- Specified by:
getFillColorin interfaceICompareColor- 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 givendiffis 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 givendiff.- Specified by:
getStrokeColorin interfaceICompareColor- 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 givendiffis 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 allColorresources.- Specified by:
disposein interfaceICompareColor- 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:
getRequiredFillColorin interfaceICompareColor- Returns:
-
getUnmergeableFillColor
public org.eclipse.swt.graphics.Color getUnmergeableFillColor()
Get the color for Unmergeable difference.- Specified by:
getUnmergeableFillColorin interfaceICompareColor- Returns:
-
getRequiredStrokeColor
public org.eclipse.swt.graphics.Color getRequiredStrokeColor()
Get the color for Required change border items. This color is computed fromICompareColor.getRequiredFillColor()- Specified by:
getRequiredStrokeColorin interfaceICompareColor- Returns:
-
getUnmergeableStrokeColor
public org.eclipse.swt.graphics.Color getUnmergeableStrokeColor()
Get the color for Unmergeable difference border items. This color is computed fromICompareColor.getUnmergeableFillColor()- Specified by:
getUnmergeableStrokeColorin interfaceICompareColor- Returns:
-
-