X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fschemes%2FColourSchemeI.java;h=44a19743301a9b06ff3ec6b1b561e2d54973ffbe;hb=838e4f91d4a53dd315640dbc9ff6ef7a815ee576;hp=7fc6981a3c5f716895087b46ad9c767fc21c5cb5;hpb=865a855a4ca87eadb3e5ff284ed32ed307d9c34b;p=jalview.git diff --git a/src/jalview/schemes/ColourSchemeI.java b/src/jalview/schemes/ColourSchemeI.java index 7fc6981..44a1974 100755 --- a/src/jalview/schemes/ColourSchemeI.java +++ b/src/jalview/schemes/ColourSchemeI.java @@ -1,53 +1,128 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1) + * Copyright (C) 2015 The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.schemes; -import java.awt.Color; -import java.util.Map; - -import jalview.datamodel.AlignmentI; import jalview.datamodel.AnnotatedCollectionI; import jalview.datamodel.SequenceCollectionI; -import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; +import java.awt.Color; +import java.util.Map; + public interface ColourSchemeI { + /** + * + * @param c + * @return the colour for the given character + */ public Color findColour(char c); + /** + * + * @param c + * - sequence symbol or gap + * @param j + * - position in seq + * @param seq + * - sequence being coloured + * @return context dependent colour for the given symbol at the position in + * the given sequence + */ public Color findColour(char c, int j, SequenceI seq); + /** + * assign the given consensus profile for the colourscheme + */ public void setConsensus(java.util.Hashtable[] h); + /** + * assign the given conservation to the colourscheme + * + * @param c + */ public void setConservation(jalview.analysis.Conservation c); + /** + * enable or disable conservation shading for this colourscheme + * + * @param conservationApplied + */ + public void setConservationApplied(boolean conservationApplied); + + /** + * + * @return true if conservation shading is enabled for this colourscheme + */ public boolean conservationApplied(); + /** + * set scale factor for bleaching of colour in unconserved regions + * + * @param i + */ public void setConservationInc(int i); + /** + * + * @return scale factor for bleaching colour in unconserved regions + */ public int getConservationInc(); + /** + * + * @return percentage identity threshold for applying colourscheme + */ public int getThreshold(); + /** + * set percentage identity threshold and type of %age identity calculation for + * shading + * + * @param ct + * 0..100 percentage identity for applying this colourscheme + * @param ignoreGaps + * when true, calculate PID without including gapped positions + */ public void setThreshold(int ct, boolean ignoreGaps); + /** + * recalculate dependent data using the given sequence collection, taking + * account of hidden rows + * + * @param alignment + * @param hiddenReps + */ public void alignmentChanged(AnnotatedCollectionI alignment, Map hiddenReps); + /** + * create a new instance of the colourscheme configured to colour the given + * connection + * + * @param sg + * @param hiddenRepSequences + * @return copy of current scheme with any inherited settings transfered + */ + public ColourSchemeI applyTo(AnnotatedCollectionI sg, + Map hiddenRepSequences); + }