// particular type\r
Hashtable featureGroups = null;\r
\r
+ // Holds web links for feature groups and feature types\r
+ // in the form label|link\r
+ Hashtable featureLinks = null;\r
+\r
+\r
// This is actually an Integer held in the hashtable,\r
// Retrieved using the key feature type\r
Object currentColour;\r
FontMetrics fm;\r
int charOffset;\r
\r
+ float transparency = 1f;\r
+\r
+ TransparencySetter transparencySetter = null;\r
+\r
/**\r
* Creates a new FeatureRenderer object.\r
*\r
{\r
this.av = av;\r
initColours();\r
+\r
+ if(!System.getProperty("java.version").startsWith("1.1"))\r
+ transparencySetter = new TransparencySetter();\r
+ }\r
+\r
+ public void addFeatureLink(String feature, String link)\r
+ {\r
+ if(featureLinks == null)\r
+ featureLinks = new Hashtable();\r
+\r
+ featureLinks.put(feature, link);\r
}\r
\r
\r
|| seq.getSequenceFeatures().length==0)\r
return;\r
\r
+ if(transparencySetter!=null && g!=null)\r
+ {\r
+ transparencySetter.setTransparency(g, transparency);\r
+ }\r
\r
if (av.featuresDisplayed == null || renderOrder==null)\r
{\r
\r
}\r
}\r
+\r
+ if(transparencySetter!=null && g!=null)\r
+ {\r
+ transparencySetter.setTransparency(g, 1.0f);\r
+ }\r
}\r
\r
\r
featureColours.put("unsure residue", new Color(0, 75, 245));\r
featureColours.put("zinc finger region", new Color(0, 65, 255));\r
}\r
-\r
}\r
\r
+ class TransparencySetter\r
+ {\r
+ void setTransparency(Graphics g, float value)\r
+ {\r
+ Graphics2D g2 = (Graphics2D) g;\r
+ g2.setComposite(\r
+ AlphaComposite.getInstance(\r
+ AlphaComposite.SRC_OVER, value));\r
+ }\r
+ }\r
+\r
+\r
\r
\r