package org.geogebra.desktop.awt; import java.awt.Color; import java.util.HashMap; import org.geogebra.common.awt.GColor; /** * Static methods for AWT <-> multiplatform color conversion * */ public class GColorD { private static HashMap<GColor, Color> map = new HashMap<GColor, Color>(); /** * @param gColor * multiplatform color * @return awt color */ public static Color getAwtColor(GColor gColor) { Color ret = map.get(gColor); if (ret == null && gColor != null) { // color hasn't been used yet, need to create it ret = new Color(gColor.getRed(), gColor.getGreen(), gColor.getBlue(), gColor.getAlpha()); synchronized (map) { map.put(gColor, ret); } } return ret; } /** * @param color * awt color * @return multiplatform color */ public static GColor newColor(Color color) { return color == null ? null : GColor.newColor(color.getRed(), color.getGreen(), color.getBlue()); } }