1 package org.simantics.modeling;
3 import org.eclipse.jface.resource.ColorDescriptor;
4 import org.eclipse.swt.graphics.Color;
5 import org.eclipse.swt.graphics.RGB;
6 import org.eclipse.swt.widgets.Display;
7 import org.simantics.scl.runtime.tuple.Tuple3;
9 public class ColorDescriptorUtil {
10 public static ColorDescriptor colorDescriptor(Tuple3 color) {
11 return ColorDescriptor.createFrom(new RGB((int)(((double)color.c0) * 255), (int)(((double)color.c1) * 255), (int)(((double)color.c2) * 255)));
14 public static Tuple3 colorDescriptorAsTuple3(ColorDescriptor descriptor) {
15 Color color = ((ColorDescriptor)descriptor).createColor(Display.getDefault());
16 return new Tuple3(color.getRed(), color.getGreen(), color.getBlue());
19 public synchronized static String colorDescriptorAsHex(ColorDescriptor descriptor) {
20 Color color = ((ColorDescriptor)descriptor).createColor(Display.getDefault());
21 return String.format("#%02x%02x%02x", color.getRed(), color.getGreen(), color.getBlue());