static JInternalFrame PIDSlider;\r
AlignmentPanel ap;\r
boolean forConservation = true;\r
+ boolean forAnnotation = false;\r
ColourSchemeI cs;\r
\r
/**\r
valueField.setText(value + "");\r
}\r
\r
+ public SliderPanel(final AlignmentAnnotation annotation, final AlignmentPanel ap)\r
+ {\r
+ forAnnotation = true;\r
+ undoButton.setVisible(false);\r
+ applyButton.setVisible(false);\r
+ allGroupsCheck.setVisible(false);\r
+ label.setText("Adjust value - "+annotation.getGraphLine(0).label);\r
+\r
+ float range = annotation.graphMax * 1000 - annotation.graphMin * 1000;\r
+\r
+ slider.setMinimum( (int) (annotation.graphMin * 1000));\r
+ slider.setMaximum( (int) (annotation.graphMax * 1000));\r
+ slider.setValue( (int) (annotation.getGraphLine(0).value * 1000));\r
+ valueField.setText( annotation.getGraphLine(0).value + "");\r
+ slider.setMajorTickSpacing( (int) (range / 10f));\r
+ slider.setMinorTickSpacing( (int) (range / 100f));\r
+ slider.setPaintTicks(true);\r
+\r
+ JInternalFrame slideFrame = new JInternalFrame();\r
+ slideFrame.setLayer(JLayeredPane.PALETTE_LAYER);\r
+ Desktop.addInternalFrame(slideFrame,\r
+ "Adjust " + annotation.label +" value",\r
+ 250, 90);\r
+\r
+ slideFrame.setContentPane(this);\r
+ slider.addChangeListener(new ChangeListener()\r
+ {\r
+ public void stateChanged(ChangeEvent evt)\r
+ {\r
+ valueField.setText( ((float)slider.getValue()/1000f) + "");\r
+ annotation.getGraphLine(0).value = (float)slider.getValue()/1000f;\r
+ ap.repaint();\r
+ }\r
+ });\r
+\r
+ }\r
+\r
+\r
/**\r
* DOCUMENT ME!\r
*\r
ColourSchemeI cs, String source)\r
{\r
SliderPanel sp = null;\r
- ConservationColourScheme ccs = (ConservationColourScheme) cs;\r
\r
if (conservationSlider == null)\r
{\r
- sp = new SliderPanel(ap, ccs.inc, true, cs);\r
+ sp = new SliderPanel(ap, cs.getConservationInc(), true, cs);\r
conservationSlider = new JInternalFrame();\r
conservationSlider.setContentPane(sp);\r
conservationSlider.setLayer(JLayeredPane.PALETTE_LAYER);\r
{\r
SliderPanel pid = null;\r
\r
- int threshold = 50;\r
-\r
- if (cs instanceof ResidueColourScheme)\r
- {\r
- threshold = (((ResidueColourScheme) cs).getThreshold());\r
- }\r
- else if (cs instanceof ScoreColourScheme)\r
- {\r
- threshold = (((ScoreColourScheme) cs).getThreshold());\r
- }\r
+ int threshold = cs.getThreshold();\r
\r
if (PIDSlider == null)\r
{\r
public void valueChanged(int i)\r
{\r
if (cs == null)\r
- {\r
+ {System.out.println("cs is null");\r
return;\r
}\r
\r
+\r
+\r
ColourSchemeI toChange = null;\r
Vector allGroups = null;\r
int groupIndex = 0;\r
toChange = cs;\r
}\r
\r
+\r
while (groupIndex > -1)\r
{\r
if (allGroups != null)\r
\r
if (forConservation)\r
{\r
- if (toChange instanceof ConservationColourScheme)\r
+ if (toChange.conservationApplied())\r
{\r
- ((ConservationColourScheme) toChange).inc = i;\r
+ toChange.setConservationInc(i);\r
}\r
}\r
else\r
{\r
- ((ResidueColourScheme) toChange).setThreshold(i, ap.av.getIgnoreGapsConsensus());\r
+ toChange.setThreshold(i, ap.av.getIgnoreGapsConsensus());\r
}\r
\r
groupIndex--;\r
{\r
try\r
{\r
+ if (forAnnotation)\r
+ {\r
+ float f = Float.parseFloat(valueField.getText());\r
+ slider.setValue( (int)( f * 1000 ));\r
+ }\r
+ else\r
+ {\r
int i = Integer.parseInt(valueField.getText());\r
slider.setValue(i);\r
+ }\r
}\r
catch (Exception ex)\r
{\r