/******************************************************************************* * Copyright (c) 2010, 2011 Tom Seidel, Remus Software * 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: * Tom Seidel - initial API and implementation *******************************************************************************/ package org.eclipse.mylyn.htmltext.util; import java.awt.Color; import org.eclipse.swt.graphics.RGB; /** * Utitlity class for converting RGB colors to hex-colors. * * @author Tom Seidel <tom.seidel@remus-software.org> */ public final class ColorConverter { public static String convertRgbToHex(RGB rgb) { return new StringBuffer(toHex(rgb.red)).append(toHex(rgb.green)).append(toHex(rgb.blue)).toString(); } private static String toHex(int color) { return new String(new char[] { "0123456789ABCDEF".charAt((color - color % 16) / 16), //$NON-NLS-1$ "0123456789ABCDEF".charAt(color % 16) }, 0, 2); //$NON-NLS-1$ } public static RGB convertHexToRgb(String hex) { Color color = Color.decode(hex.charAt(0) == '#' ? hex : "#" + hex); //$NON-NLS-1$ return new RGB(color.getRed(), color.getGreen(), color.getBlue()); } }