blob: 12db5101cd7a0ddf72f43b18f597a479b38fc7c8 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2008, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.gef.internal.ui.palette;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.widgets.Display;
import org.eclipse.draw2d.ColorConstants;
import org.eclipse.draw2d.FigureUtilities;
/**
* A class to keep miscellaneous palette color utilities.
*
* @author crevells
* @since 3.4
*/
public class PaletteColorUtil {
public static final Color WIDGET_BACKGROUND = ColorConstants.button;
public static final Color WIDGET_NORMAL_SHADOW = ColorConstants.buttonDarker;
public static final Color WIDGET_DARK_SHADOW = ColorConstants.buttonDarkest;
public static final Color WIDGET_LIST_BACKGROUND = ColorConstants.listBackground;
public static final Color INFO_FOREGROUND = ColorConstants.tooltipForeground;
public static final Color ARROW_HOVER = new Color(null, 229, 229, 219);
private static final Color HOVER_COLOR = new Color(null, 252, 228, 179);
private static final Color SELECTED_COLOR = new Color(null, 207, 227, 250);
private static final Color HOVER_COLOR_HICONTRAST = new Color(null, 0, 128,
0);
private static final Color SELECTED_COLOR_HICONTRAST = new Color(null, 128,
0, 128);
public static final Color WIDGET_BACKGROUND_LIST_BACKGROUND_40 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_LIST_BACKGROUND, 0.4);
public static final Color WIDGET_BACKGROUND_LIST_BACKGROUND_60 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_LIST_BACKGROUND, 0.6);
public static final Color WIDGET_BACKGROUND_LIST_BACKGROUND_85 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_LIST_BACKGROUND, 0.85);
public static final Color WIDGET_BACKGROUND_LIST_BACKGROUND_90 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_LIST_BACKGROUND, 0.9);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_40 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.4);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_45 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.45);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_65 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.65);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_70 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.7);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_80 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.8);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_90 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.9);
public static final Color WIDGET_BACKGROUND_NORMAL_SHADOW_95 = FigureUtilities
.mixColors(PaletteColorUtil.WIDGET_BACKGROUND,
PaletteColorUtil.WIDGET_NORMAL_SHADOW, 0.95);
/**
* Gets the color to be used when hovering over palette items. The color
* differs in high contrast mode.
*
* @return the hover color
* @since 3.4
*/
public static Color getHoverColor() {
Display display = Display.getCurrent();
if (display == null) {
display = Display.getDefault();
}
if (display.getHighContrast()) {
return HOVER_COLOR_HICONTRAST;
}
return HOVER_COLOR;
}
/**
* Gets the color to be used when selecting palette items. The color differs
* in high contrast mode.
*
* @return the selected color
* @since 3.4
*/
public static Color getSelectedColor() {
Display display = Display.getCurrent();
if (display == null) {
display = Display.getDefault();
}
if (display.getHighContrast()) {
return SELECTED_COLOR_HICONTRAST;
}
return SELECTED_COLOR;
}
}