]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.modeling/src/org/simantics/modeling/ColorDescriptorUtil.java
Possibility to define label color decorator rules in SCL
[simantics/platform.git] / bundles / org.simantics.modeling / src / org / simantics / modeling / ColorDescriptorUtil.java
1 package org.simantics.modeling;
2
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;
8
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)));
12         }
13         
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());
17         }
18         
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());
22         }
23 }