import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
+import jalview.util.ColorUtils;
+
+import java.awt.Color;
/**
* ColourSchemeProperty binds names to hardwired colourschemes and tries to deal
public class ColourSchemeProperty
{
- private ColourSchemeProperty()
- {
- // requires static call to getColourScheme(...).
- }
-
/**
* Returns a colour scheme for the given name, with which the given data may
* be coloured. The name is not case-sensitive, and may be one of
return ucs;
}
+ public static Color rnaHelices[] = null;
+
+ public static void initRnaHelicesShading(int n)
+ {
+ int j = 0;
+ if (rnaHelices == null)
+ {
+ rnaHelices = new Color[n + 1];
+ }
+ else if (rnaHelices != null && rnaHelices.length <= n)
+ {
+ Color[] t = new Color[n + 1];
+ System.arraycopy(rnaHelices, 0, t, 0, rnaHelices.length);
+ j = rnaHelices.length;
+ rnaHelices = t;
+ }
+ else
+ {
+ return;
+ }
+ // Generate random colors and store
+ for (; j <= n; j++)
+ {
+ rnaHelices[j] = ColorUtils.generateRandomColor(Color.white);
+ }
+ }
+
+ /**
+ * delete the existing cached RNA helices colours
+ */
+ public static void resetRnaHelicesShading()
+ {
+ rnaHelices = null;
+ }
+
/**
* Returns the name of the colour scheme (or "None" if it is null)
*