1 /*******************************************************************************
2  * Copyright (c) 2000, 2005 IBM Corporation and others.
3  *
4  * This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License 2.0
6  * which accompanies this distribution, and is available at
7  * https://www.eclipse.org/legal/epl-2.0/
8  *
9  * SPDX-License-Identifier: EPL-2.0
10  *
11  * Contributors:
12  *     IBM Corporation - initial API and implementation
13  *******************************************************************************/
14 package org.eclipse.jface.text.source;
15 
16 import org.eclipse.swt.graphics.Color;
17 
18 /**
19  * An <code>IChangeRulerColumn</code> can display quick diff information.
20  *
21  * @since 3.0
22  */
23 public interface IChangeRulerColumn extends IVerticalRulerColumn, IVerticalRulerInfoExtension {
24 
25 	/** The ID under which the quick diff model is registered with a document's annotation model. */
26 	public static final String QUICK_DIFF_MODEL_ID= "diff"; //$NON-NLS-1$
27 
28 	/**
29 	 * Sets the hover of this ruler column.
30 	 *
31 	 * @param hover the hover that will produce hover information text for this ruler column
32 	 */
setHover(IAnnotationHover hover)33 	public abstract void setHover(IAnnotationHover hover);
34 
35 	/**
36 	 * Sets the background color for normal lines. The color has to be disposed of by the caller when
37 	 * the receiver is no longer used.
38 	 *
39 	 * @param backgroundColor the new color to be used as standard line background
40 	 */
setBackground(Color backgroundColor)41 	public abstract void setBackground(Color backgroundColor);
42 
43 	/**
44 	 * Sets the background color for added lines. The color has to be disposed of by the caller when
45 	 * the receiver is no longer used.
46 	 *
47 	 * @param addedColor the new color to be used for the added lines background
48 	 */
setAddedColor(Color addedColor)49 	public abstract void setAddedColor(Color addedColor);
50 
51 	/**
52 	 * Sets the background color for changed lines. The color has to be disposed of by the caller when
53 	 * the receiver is no longer used.
54 	 *
55 	 * @param changedColor the new color to be used for the changed lines background
56 	 */
setChangedColor(Color changedColor)57 	public abstract void setChangedColor(Color changedColor);
58 
59 	/**
60 	 * Sets the color for the deleted lines indicator. The color has to be disposed of by the caller when
61 	 * the receiver is no longer used.
62 	 *
63 	 * @param deletedColor the new color to be used for the deleted lines indicator.
64 	 */
setDeletedColor(Color deletedColor)65 	public abstract void setDeletedColor(Color deletedColor);
66 }
67