X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FFeatureColourChooser.java;h=3c04ccdd18835bb336327f69155d0077864f49c2;hb=0b1c761dfaa8242f122cf868e8897a06ec6eb727;hp=46a67c4bd48a1a0c8b14ac09a27541feab63cab6;hpb=8b9c85b131fbaa1b9b29c489b661089c0ea404bd;p=jalview.git diff --git a/src/jalview/appletgui/FeatureColourChooser.java b/src/jalview/appletgui/FeatureColourChooser.java index 46a67c4..3c04ccd 100644 --- a/src/jalview/appletgui/FeatureColourChooser.java +++ b/src/jalview/appletgui/FeatureColourChooser.java @@ -20,9 +20,10 @@ */ package jalview.appletgui; +import jalview.api.FeatureColourI; import jalview.datamodel.GraphLine; import jalview.schemes.AnnotationColourGradient; -import jalview.schemes.GraduatedColor; +import jalview.schemes.FeatureColour; import jalview.util.MessageManager; import java.awt.Checkbox; @@ -60,9 +61,9 @@ public class FeatureColourChooser extends Panel implements ActionListener, // AlignmentPanel ap; - GraduatedColor cs; + FeatureColourI cs; - Object oldcs; + FeatureColourI oldcs; Hashtable oldgroupColours; @@ -91,29 +92,29 @@ public class FeatureColourChooser extends Panel implements ActionListener, { this.type = type; fr = frenderer; - float mm[] = ((float[][]) fr.getMinMax().get(type))[0]; + float mm[] = fr.getMinMax().get(type)[0]; min = mm[0]; max = mm[1]; oldcs = fr.getFeatureColours().get(type); - if (oldcs instanceof GraduatedColor) + if (oldcs.isGraduatedColour()) { - cs = new GraduatedColor((GraduatedColor) oldcs, min, max); + cs = new FeatureColour((FeatureColour) oldcs, min, max); } else { // promote original color to a graduated color Color bl = Color.black; - if (oldcs instanceof Color) + if (oldcs.isSimpleColour()) { - bl = (Color) oldcs; + bl = oldcs.getColour(); } // original colour becomes the maximum colour - cs = new GraduatedColor(Color.white, bl, mm[0], mm[1]); + cs = new FeatureColour(Color.white, bl, mm[0], mm[1]); } - minColour.setBackground(cs.getMinColor()); - maxColour.setBackground(cs.getMaxColor()); - minColour.setForeground(cs.getMinColor()); - maxColour.setForeground(cs.getMaxColor()); + minColour.setBackground(cs.getMinColour()); + maxColour.setBackground(cs.getMaxColour()); + minColour.setForeground(cs.getMinColour()); + maxColour.setForeground(cs.getMaxColour()); colourFromLabel.setState(cs.isColourByLabel()); adjusting = true; @@ -123,10 +124,8 @@ public class FeatureColourChooser extends Panel implements ActionListener, } catch (Exception ex) { } - threshold - .select(cs.getThreshType() == AnnotationColourGradient.NO_THRESHOLD ? 0 - : cs.getThreshType() == AnnotationColourGradient.ABOVE_THRESHOLD ? 1 - : 2); + threshold.select(cs.isAboveThreshold() ? 1 : (cs.isBelowThreshold() ? 2 + : 0)); adjusting = false; changeColour(); @@ -259,6 +258,7 @@ public class FeatureColourChooser extends Panel implements ActionListener, private GraphLine threshline; + @Override public void actionPerformed(ActionEvent evt) { if (evt.getSource() == thresholdValue) @@ -286,6 +286,7 @@ public class FeatureColourChooser extends Panel implements ActionListener, } } + @Override public void itemStateChanged(ItemEvent evt) { maxColour.setEnabled(!colourFromLabel.getState()); @@ -293,19 +294,20 @@ public class FeatureColourChooser extends Panel implements ActionListener, changeColour(); } + @Override public void adjustmentValueChanged(AdjustmentEvent evt) { if (!adjusting) { - thresholdValue.setText(((float) slider.getValue() / 1000f) + ""); + thresholdValue.setText((slider.getValue() / 1000f) + ""); valueChanged(); } } protected void valueChanged() { - threshline.value = (float) slider.getValue() / 1000f; - cs.setThresh(threshline.value); + threshline.value = slider.getValue() / 1000f; + cs.setThreshold(threshline.value); changeColour(); PaintRefresher.Refresh(this, fr.getViewport().getSequenceSetId()); // ap.paintAlignment(false); @@ -369,7 +371,7 @@ public class FeatureColourChooser extends Panel implements ActionListener, slider.setEnabled(true); thresholdValue.setEnabled(true); - GraduatedColor acg = new GraduatedColor(minColour.getBackground(), + FeatureColour acg = new FeatureColour(minColour.getBackground(), maxColour.getBackground(), min, max); acg.setColourByLabel(colourFromLabel.getState()); @@ -393,7 +395,7 @@ public class FeatureColourChooser extends Panel implements ActionListener, if (aboveThreshold != AnnotationColourGradient.NO_THRESHOLD) { adjusting = true; - acg.setThresh(threshline.value); + acg.setThreshold(threshline.value); float range = max * 1000f - min * 1000f; @@ -406,17 +408,17 @@ public class FeatureColourChooser extends Panel implements ActionListener, adjusting = false; } - acg.setThreshType(aboveThreshold); + acg.setAboveThreshold(true); if (thresholdIsMin.getState() && aboveThreshold != AnnotationColourGradient.NO_THRESHOLD) { if (aboveThreshold == AnnotationColourGradient.ABOVE_THRESHOLD) { - acg = new GraduatedColor(acg, threshline.value, max); + acg = new FeatureColour(acg, threshline.value, max); } else { - acg = new GraduatedColor(acg, min, threshline.value); + acg = new FeatureColour(acg, min, threshline.value); } } @@ -434,14 +436,17 @@ public class FeatureColourChooser extends Panel implements ActionListener, } + @Override public void mouseClicked(MouseEvent evt) { } + @Override public void mousePressed(MouseEvent evt) { } + @Override public void mouseReleased(MouseEvent evt) { if (evt.getSource() == minColour || evt.getSource() == maxColour) @@ -456,10 +461,12 @@ public class FeatureColourChooser extends Panel implements ActionListener, // ap.paintAlignment(true); } + @Override public void mouseEntered(MouseEvent evt) { } + @Override public void mouseExited(MouseEvent evt) { }