import jalview.datamodel.SequenceI;
import jalview.renderer.ResidueShader;
import jalview.renderer.ResidueShaderI;
-import jalview.schemes.Blosum62ColourScheme;
import jalview.schemes.ColourSchemeI;
-import jalview.schemes.PIDColourScheme;
import jalview.structure.CommandListener;
import jalview.structure.StructureSelectionManager;
import jalview.structure.VamsasSource;
// TODO: logic refactored from AlignFrame changeColour -
// TODO: autorecalc stuff should be changed to rely on the worker system
// check to see if we should implement a changeColour(cs) method rather than
- // put th logic in here
+ // put the logic in here
// - means that caller decides if they want to just modify state and defer
// calculation till later or to do all calculations in thread.
// via changecolour
/*
- * only instantiate collection colour scheme once, thereafter update it
+ * only instantiate alignment colouring once, thereafter update it;
* this means that any conservation or PID threshold settings
* persist when the alignment colour scheme is changed
*/
if (globalColourScheme == null)
{
- globalColourScheme = new ResidueShader();
+ globalColourScheme = new ResidueShader(viewStyle);
}
globalColourScheme.setColourScheme(cs);
- // boolean recalc = false;
- // TODO: do threshold and increment belong in ViewStyle or colour scheme?
- // problem: groups need this but do not currently have a ViewStyle
+ // TODO: do threshold and increment belong in ViewStyle or ResidueShader?
+ // ...problem: groups need these, but do not currently have a ViewStyle
if (cs != null)
{
- if (getConservationSelected() || getAbovePIDThreshold()
- || cs instanceof PIDColourScheme
- || cs instanceof Blosum62ColourScheme)
+ // if (getConservationSelected() || getAbovePIDThreshold()
+ // || cs instanceof PIDColourScheme
+ // || cs instanceof Blosum62ColourScheme)
+ if (getConservationSelected())
{
globalColourScheme.setConservation(hconservation);
- globalColourScheme
- .setConservationApplied(getConservationSelected());
}
globalColourScheme.alignmentChanged(alignment, hiddenRepSequences);
}
selectionGroup.setEndRes(alWidth - 1);
}
- resetAllColourSchemes();
+ updateAllColourSchemes();
calculator.restartWorkers();
// alignment.adjustSequenceAnnotations();
}
/**
* reset scope and do calculations for all applied colourschemes on alignment
*/
- void resetAllColourSchemes()
+ void updateAllColourSchemes()
{
- ResidueShaderI cs = globalColourScheme;
- if (cs != null)
+ ResidueShaderI rs = globalColourScheme;
+ if (rs != null)
{
- cs.alignmentChanged(alignment, hiddenRepSequences);
+ rs.alignmentChanged(alignment, hiddenRepSequences);
- cs.setConsensus(hconsensus);
- if (cs.conservationApplied())
+ rs.setConsensus(hconsensus);
+ if (rs.conservationApplied())
{
- cs.setConservation(Conservation.calculateConservation("All",
+ rs.setConservation(Conservation.calculateConservation("All",
alignment.getSequences(), 0, alignment.getWidth(), false,
getConsPercGaps(), false));
}