From: Jim Procter Date: Thu, 15 Aug 2024 07:47:12 +0000 (+0100) Subject: JAL-1551 spotless X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=e148ab3317ddf2a3d8db98c89cbe0c68aedd1b47;p=jalview.git JAL-1551 spotless --- diff --git a/src/jalview/analysis/AAFrequency.java b/src/jalview/analysis/AAFrequency.java index 7278a80..ca619f9 100755 --- a/src/jalview/analysis/AAFrequency.java +++ b/src/jalview/analysis/AAFrequency.java @@ -192,13 +192,12 @@ public class AAFrequency // jalview.bin.Console.outPrintln(elapsed); } - public static final ProfilesI calculateSS(List list, int start, int end, String source) { return calculateSS(list, start, end, false, source); } - + public static final ProfilesI calculateSS(List sequences, int start, int end, boolean profile, String source) { @@ -220,28 +219,29 @@ public class AAFrequency { end = width; } - - ProfilesI reply = calculateSS(seqs, width, start, end, profile, source); + ProfilesI reply = calculateSS(seqs, width, start, end, profile, + source); return reply; } } - + public static final ProfilesI calculateSS(final SequenceI[] sequences, - int width, int start, int end, boolean saveFullProfile, String source) + int width, int start, int end, boolean saveFullProfile, + String source) { int seqCount = sequences.length; - + int seqWithSSCount = 0; - + ProfileI[] result = new ProfileI[width]; for (int column = start; column < end; column++) { - + int ssCount = 0; - + SecondaryStructureCount ssCounts = new SecondaryStructureCount(); for (int row = 0; row < seqCount; row++) @@ -252,29 +252,36 @@ public class AAFrequency "WARNING: Consensus skipping null sequence - possible race condition."); continue; } - + char c = sequences[row].getCharAt(column); - List annots = AlignmentUtils.getAlignmentAnnotationForSource(sequences[row], source); - if(annots!=null) { + List annots = AlignmentUtils + .getAlignmentAnnotationForSource(sequences[row], source); + if (annots != null) + { seqWithSSCount++; - for(AlignmentAnnotation aa:annots) { - if(aa!=null) { + for (AlignmentAnnotation aa : annots) + { + if (aa != null) + { ssCount++; } - - if (sequences[row].getLength() > column && !Comparison.isGap(c) && aa !=null) + + if (sequences[row].getLength() > column && !Comparison.isGap(c) + && aa != null) { - + int seqPosition = sequences[row].findPosition(column); - - char ss = AlignmentUtils.findSSAnnotationForGivenSeqposition( - aa, seqPosition); - if(ss == '*') { + + char ss = AlignmentUtils + .findSSAnnotationForGivenSeqposition(aa, seqPosition); + if (ss == '*') + { continue; - } - ssCounts.add(ss); + } + ssCounts.add(ss); } - else if(Comparison.isGap(c) && aa!=null) { + else if (Comparison.isGap(c) && aa != null) + { ssCounts.addGap(); } } @@ -284,9 +291,8 @@ public class AAFrequency int maxSSCount = ssCounts.getModalCount(); String maxSS = ssCounts.getSSForCount(maxSSCount); int gapCount = ssCounts.getGapCount(); - ProfileI profile = new Profile(maxSS, ssCount, gapCount, - maxSSCount, seqWithSSCount); - + ProfileI profile = new Profile(maxSS, ssCount, gapCount, maxSSCount, + seqWithSSCount); if (saveFullProfile) { @@ -394,67 +400,67 @@ public class AAFrequency // long elapsed = System.currentTimeMillis() - now; // jalview.bin.Console.outPrintln(-elapsed); } - - - public static void completeSSConsensus(AlignmentAnnotation ssConsensus, - ProfilesI profiles, int startCol, int endCol, boolean ignoreGaps, - boolean showSequenceLogo, long nseq) - { - // long now = System.currentTimeMillis(); - if (ssConsensus == null || ssConsensus.annotations == null - || ssConsensus.annotations.length < endCol) - { - /* + + public static void completeSSConsensus(AlignmentAnnotation ssConsensus, + ProfilesI profiles, int startCol, int endCol, boolean ignoreGaps, + boolean showSequenceLogo, long nseq) + { + // long now = System.currentTimeMillis(); + if (ssConsensus == null || ssConsensus.annotations == null + || ssConsensus.annotations.length < endCol) + { + /* * called with a bad alignment annotation row * wait for it to be initialised properly */ - return; - } - - for (int i = startCol; i < endCol; i++) - { - ProfileI profile = profiles.get(i); - if (profile == null) - { - /* + return; + } + + for (int i = startCol; i < endCol; i++) + { + ProfileI profile = profiles.get(i); + if (profile == null) + { + /* * happens if sequences calculated over were * shorter than alignment width */ - ssConsensus.annotations[i] = null; - return; - } - - if(ssConsensus.getNoOfSequencesIncluded()<0) { - ssConsensus.setNoOfSequencesIncluded(profile.getSeqWithSSCount()); - } - - final int dp = getPercentageDp(nseq); - - float value = profile.getSSPercentageIdentity(ignoreGaps); - - String description = getSSTooltip(profile, value, showSequenceLogo, - ignoreGaps, dp); - - String modalSS = profile.getModalSS(); - if ("".equals(modalSS)) - { - modalSS = "-"; - } - else if (modalSS.length() > 1) - { - modalSS = "+"; - } - ssConsensus.annotations[i] = new Annotation(modalSS, description, - ' ', value); - } - - //Hide consensus with no data to display - if(ssConsensus.getNoOfSequencesIncluded()<1) - ssConsensus.visible = false; - - // long elapsed = System.currentTimeMillis() - now; - // jalview.bin.Console.outPrintln(-elapsed); - } + ssConsensus.annotations[i] = null; + return; + } + + if (ssConsensus.getNoOfSequencesIncluded() < 0) + { + ssConsensus.setNoOfSequencesIncluded(profile.getSeqWithSSCount()); + } + + final int dp = getPercentageDp(nseq); + + float value = profile.getSSPercentageIdentity(ignoreGaps); + + String description = getSSTooltip(profile, value, showSequenceLogo, + ignoreGaps, dp); + + String modalSS = profile.getModalSS(); + if ("".equals(modalSS)) + { + modalSS = "-"; + } + else if (modalSS.length() > 1) + { + modalSS = "+"; + } + ssConsensus.annotations[i] = new Annotation(modalSS, description, ' ', + value); + } + + // Hide consensus with no data to display + if (ssConsensus.getNoOfSequencesIncluded() < 1) + ssConsensus.visible = false; + + // long elapsed = System.currentTimeMillis() - now; + // jalview.bin.Console.outPrintln(-elapsed); + } /** * Derive the gap count annotation row. @@ -560,7 +566,7 @@ public class AAFrequency } return description; } - + static String getSSTooltip(ProfileI profile, float pid, boolean showSequenceLogo, boolean ignoreGaps, int dp) { @@ -616,27 +622,28 @@ public class AAFrequency { char[] symbols; int[] values; - + if (profile.getCounts() != null) { ResidueCount counts = profile.getCounts(); SymbolCounts symbolCounts = counts.getSymbolCounts(); symbols = symbolCounts.symbols; values = symbolCounts.values; - + } - else if(profile.getSSCounts() != null) + else if (profile.getSSCounts() != null) { SecondaryStructureCount counts = profile.getSSCounts(); // to do - SecondaryStructureCount.SymbolCounts symbolCounts = counts.getSymbolCounts(); + SecondaryStructureCount.SymbolCounts symbolCounts = counts + .getSymbolCounts(); symbols = symbolCounts.symbols; values = symbolCounts.values; } - else { + else + { return null; } - QuickSort.sort(values, symbols); int totalPercentage = 0; diff --git a/src/jalview/analysis/AlignSeq.java b/src/jalview/analysis/AlignSeq.java index e806d2b..1a12681 100755 --- a/src/jalview/analysis/AlignSeq.java +++ b/src/jalview/analysis/AlignSeq.java @@ -58,10 +58,10 @@ public class AlignSeq private static final int DEFAULT_OPENCOST = 120; private static final int DEFAULT_EXTENDCOST = 20; - - private int GAP_OPEN_COST=DEFAULT_OPENCOST; - private int GAP_EXTEND_COST=DEFAULT_EXTENDCOST; + private int GAP_OPEN_COST = DEFAULT_OPENCOST; + + private int GAP_EXTEND_COST = DEFAULT_EXTENDCOST; private static final int GAP_INDEX = -1; @@ -100,11 +100,11 @@ public class AlignSeq int[] aseq1; int[] aseq2; - + /* * matches in alignment */ - int match=-1; + int match = -1; public String astr1 = ""; @@ -129,9 +129,9 @@ public class AlignSeq public float maxscore; - public float meanScore; //needed for PaSiMap + public float meanScore; // needed for PaSiMap - public int hypotheticMaxScore; // needed for PaSiMap + public int hypotheticMaxScore; // needed for PaSiMap int prev = 0; @@ -156,6 +156,7 @@ public class AlignSeq GAP_OPEN_COST = opencost; GAP_EXTEND_COST = extcost; } + public AlignSeq(SequenceI s1, SequenceI s2, String type) { seqInit(s1, s1.getSequenceAsString(), s2, s2.getSequenceAsString(), @@ -182,18 +183,18 @@ public class AlignSeq public AlignSeq(SequenceI s1, SequenceI s2, String type, int opencost, int extcost) { - this(s1,s2,type); - GAP_OPEN_COST=opencost; - GAP_EXTEND_COST=extcost; + this(s1, s2, type); + GAP_OPEN_COST = opencost; + GAP_EXTEND_COST = extcost; } public AlignSeq(SequenceI s12, String string1, SequenceI s22, String string2, String type2, int defaultOpencost, int defaultExtendcost) { - this(s12,string1,s22,string2,type2); - GAP_OPEN_COST=defaultOpencost; - GAP_EXTEND_COST=defaultExtendcost; + this(s12, string1, s22, string2, type2); + GAP_OPEN_COST = defaultOpencost; + GAP_EXTEND_COST = defaultExtendcost; } /** @@ -207,10 +208,10 @@ public class AlignSeq } /** - * returns the overall score of the alignment - * - * @return - */ + * returns the overall score of the alignment + * + * @return + */ public float getAlignmentScore() { return alignmentScore; @@ -333,27 +334,31 @@ public class AlignSeq s2.getDatasetSequence() == null ? s2 : s2.getDatasetSequence()); return alSeq2; } + /** * fraction of seq2 matched in the alignment + * * @return NaN or [0..1] */ public double getS2Coverage() { - if (match>=0) + if (match >= 0) { - return ((double)match)/((double)s2.getEnd()-s2.getStart()+1); + return ((double) match) / ((double) s2.getEnd() - s2.getStart() + 1); } return Double.NaN; } + /** * fraction of seq1 matched in the alignment + * * @return NaN or [0..1] */ public double getS1Coverage() { - if (match>=0) + if (match >= 0) { - return ((double)match)/((double)s1.getEnd()-s1.getStart()+1); + return ((double) match) / ((double) s1.getEnd() - s1.getStart() + 1); } return Double.NaN; } @@ -375,13 +380,14 @@ public class AlignSeq public void seqInit(SequenceI s1, String string1, SequenceI s2, String string2, String type) { - seqInit(s1,string1,s2,string2,type,GAP_OPEN_COST,GAP_EXTEND_COST); + seqInit(s1, string1, s2, string2, type, GAP_OPEN_COST, GAP_EXTEND_COST); } + public void seqInit(SequenceI s1, String string1, SequenceI s2, - String string2, String type, int opening,int extension) + String string2, String type, int opening, int extension) { - GAP_OPEN_COST=opening; - GAP_EXTEND_COST=extension; + GAP_OPEN_COST = opening; + GAP_EXTEND_COST = extension; this.s1 = s1; this.s2 = s2; setDefaultParams(type); @@ -473,13 +479,12 @@ public class AlignSeq aseq1 = new int[seq1.length + seq2.length]; aseq2 = new int[seq1.length + seq2.length]; - match=0; + match = 0; StringBuilder sb1 = new StringBuilder(aseq1.length); StringBuilder sb2 = new StringBuilder(aseq2.length); count = (seq1.length + seq2.length) - 1; - while (i > 0 && j > 0) { aseq1[count] = seq1[i]; @@ -523,12 +528,12 @@ public class AlignSeq { aseq2[count] = seq2[j]; sb2.append(s2str.charAt(j)); - if (aseq1[count]!=GAP_INDEX) { + if (aseq1[count] != GAP_INDEX) + { match++; } } - /* * we built the character strings backwards, so now * reverse them to convert to sequence strings @@ -570,7 +575,7 @@ public class AlignSeq int trace; maxscore = score[i][j] / 10f; - //prepare trailing gaps + // prepare trailing gaps while ((i < seq1.length - 1) || (j < seq2.length - 1)) { i++; @@ -587,20 +592,22 @@ public class AlignSeq count = (seq1.length + seq2.length) - 1; - //get trailing gaps + // get trailing gaps while ((i >= seq1.length) || (j >= seq2.length)) { if (i >= seq1.length) { - aseq1[count] = GAP_INDEX; - sb1.append("-"); - aseq2[count] = seq2[j]; - sb2.append(s2str.charAt(j)); - } else if (j >= seq2.length) { - aseq1[count] = seq1[i]; - sb1.append(s1str.charAt(i)); - aseq2[count] = GAP_INDEX; - sb2.append("-"); + aseq1[count] = GAP_INDEX; + sb1.append("-"); + aseq2[count] = seq2[j]; + sb2.append(s2str.charAt(j)); + } + else if (j >= seq2.length) + { + aseq1[count] = seq1[i]; + sb1.append(s1str.charAt(i)); + aseq2[count] = GAP_INDEX; + sb2.append("-"); } i--; j--; @@ -644,18 +651,20 @@ public class AlignSeq aseq2[count] = seq2[j]; sb2.append(s2str.charAt(j)); - //get initial gaps + // get initial gaps while (j > 0 || i > 0) { if (j > 0) { - j--; - sb1.append("-"); - sb2.append(s2str.charAt(j)); - } else if (i > 0) { - i--; - sb1.append(s1str.charAt(i)); - sb2.append("-"); + j--; + sb1.append("-"); + sb2.append(s2str.charAt(j)); + } + else if (i > 0) + { + i--; + sb1.append(s1str.charAt(i)); + sb2.append("-"); } } @@ -853,7 +862,7 @@ public class AlignSeq { int n = seq1.length; int m = seq2.length; - final int GAP_EX_COST=GAP_EXTEND_COST; + final int GAP_EX_COST = GAP_EXTEND_COST; final int GAP_OP_COST = GAP_OPEN_COST; // top left hand element score[0][0] = scoreMatrix.getPairwiseScore(s1str.charAt(0), @@ -871,8 +880,7 @@ public class AlignSeq float pairwiseScore = scoreMatrix.getPairwiseScore(s1str.charAt(0), s2str.charAt(j)); - score[0][j] = max(pairwiseScore * 10, -GAP_OP_COST, - -GAP_EX_COST); + score[0][j] = max(pairwiseScore * 10, -GAP_OP_COST, -GAP_EX_COST); traceback[0][j] = 1; } @@ -1076,13 +1084,15 @@ public class AlignSeq public static AlignSeq doGlobalNWAlignment(SequenceI s1, SequenceI s2, String type) { - return doGlobalNWAlignment(s1, s2, type, DEFAULT_OPENCOST,DEFAULT_EXTENDCOST); + return doGlobalNWAlignment(s1, s2, type, DEFAULT_OPENCOST, + DEFAULT_EXTENDCOST); } + public static AlignSeq doGlobalNWAlignment(SequenceI s1, SequenceI s2, - String type, int opencost,int extcost) + String type, int opencost, int extcost) { - - AlignSeq as = new AlignSeq(s1, s2, type,opencost,extcost); + + AlignSeq as = new AlignSeq(s1, s2, type, opencost, extcost); as.calcScoreMatrix(); as.traceAlignment(); @@ -1359,42 +1369,45 @@ public class AlignSeq } /** - * calculate the mean score of the alignment - * mean score is equal to the score of an alignmenet of two sequences with randomly shuffled AA sequence composited of the same AA as the two original sequences - * - */ + * calculate the mean score of the alignment mean score is equal to the score + * of an alignmenet of two sequences with randomly shuffled AA sequence + * composited of the same AA as the two original sequences + * + */ public void meanScore() { - int length = indelfreeAstr1.length(); //both have the same length - //create HashMap for counting residues in each sequence + int length = indelfreeAstr1.length(); // both have the same length + // create HashMap for counting residues in each sequence HashMap seq1ResCount = new HashMap(); HashMap seq2ResCount = new HashMap(); - // for both sequences (String indelfreeAstr1 or 2) create a key for the residue and add 1 each time its encountered - for (char residue: indelfreeAstr1.toCharArray()) + // for both sequences (String indelfreeAstr1 or 2) create a key for the + // residue and add 1 each time its encountered + for (char residue : indelfreeAstr1.toCharArray()) { seq1ResCount.putIfAbsent(residue, 0); seq1ResCount.replace(residue, seq1ResCount.get(residue) + 1); } - for (char residue: indelfreeAstr2.toCharArray()) + for (char residue : indelfreeAstr2.toCharArray()) { seq2ResCount.putIfAbsent(residue, 0); seq2ResCount.replace(residue, seq2ResCount.get(residue) + 1); } - // meanscore = for each residue pair get the number of appearance and add (countA * countB * pairwiseScore(AB)) + // meanscore = for each residue pair get the number of appearance and add + // (countA * countB * pairwiseScore(AB)) // divide the meanscore by the sequence length afterwards float _meanscore = 0; for (char resA : seq1ResCount.keySet()) { for (char resB : seq2ResCount.keySet()) { - int countA = seq1ResCount.get(resA); - int countB = seq2ResCount.get(resB); + int countA = seq1ResCount.get(resA); + int countB = seq2ResCount.get(resB); float scoreAB = scoreMatrix.getPairwiseScore(resA, resB); - _meanscore += countA * countB * scoreAB; + _meanscore += countA * countB * scoreAB; } } _meanscore /= length; @@ -1407,21 +1420,23 @@ public class AlignSeq } /** - * calculate the hypothetic max score using the self-alignment of the sequences - */ + * calculate the hypothetic max score using the self-alignment of the + * sequences + */ public void hypotheticMaxScore() { int _hmsA = 0; int _hmsB = 0; - for (char residue: indelfreeAstr1.toCharArray()) + for (char residue : indelfreeAstr1.toCharArray()) { _hmsA += scoreMatrix.getPairwiseScore(residue, residue); } - for (char residue: indelfreeAstr2.toCharArray()) + for (char residue : indelfreeAstr2.toCharArray()) { _hmsB += scoreMatrix.getPairwiseScore(residue, residue); } - this.hypotheticMaxScore = (_hmsA < _hmsB) ? _hmsA : _hmsB; // take the lower self alignment + this.hypotheticMaxScore = (_hmsA < _hmsB) ? _hmsA : _hmsB; // take the lower + // self alignment } @@ -1431,27 +1446,30 @@ public class AlignSeq } /** - * create strings based of astr1 and astr2 but without gaps - */ + * create strings based of astr1 and astr2 but without gaps + */ public void getIndelfreeAstr() { - int n = astr1.length(); // both have the same length + int n = astr1.length(); // both have the same length for (int i = 0; i < n; i++) { - if (Character.isLetter(astr1.charAt(i)) && Character.isLetter(astr2.charAt(i))) // if both sequences dont have a gap -> add to indelfreeAstr + if (Character.isLetter(astr1.charAt(i)) + && Character.isLetter(astr2.charAt(i))) // if both sequences dont + // have a gap -> add to + // indelfreeAstr { - this.indelfreeAstr1 += astr1.charAt(i); - this.indelfreeAstr2 += astr2.charAt(i); + this.indelfreeAstr1 += astr1.charAt(i); + this.indelfreeAstr2 += astr2.charAt(i); } } } /** - * calculates the overall score of the alignment - * preprescore = sum of all scores - all penalties - * if preprescore < 1 ~ alignmentScore = Float.NaN > - * alignmentScore = ((preprescore - meanScore) / (hypotheticMaxScore - meanScore)) * coverage - */ + * calculates the overall score of the alignment preprescore = sum of all + * scores - all penalties if preprescore < 1 ~ alignmentScore = Float.NaN > + * alignmentScore = ((preprescore - meanScore) / (hypotheticMaxScore - + * meanScore)) * coverage + */ public void scoreAlignment() { @@ -1475,36 +1493,51 @@ public class AlignSeq char char2 = indelfreeAstr2.charAt(i); boolean aIsLetter = Character.isLetter(char1); boolean bIsLetter = Character.isLetter(char2); - if (aIsLetter && bIsLetter) // if pair -> get score + if (aIsLetter && bIsLetter) // if pair -> get score { score += scoreMatrix.getPairwiseScore(char1, char2); - } else if (!aIsLetter && !bIsLetter) { // both are gap -> skip - } else if ((!aIsLetter && aGapOpen) || (!bIsLetter && bGapOpen)) { // one side gapopen -> score - gap_extend - score -= GAP_EXTEND_COST; - } else { // no gap open -> score - gap_open - score -= GAP_OPEN_COST; + } + else if (!aIsLetter && !bIsLetter) + { // both are gap -> skip + } + else if ((!aIsLetter && aGapOpen) || (!bIsLetter && bGapOpen)) + { // one side gapopen -> score - gap_extend + score -= GAP_EXTEND_COST; + } + else + { // no gap open -> score - gap_open + score -= GAP_OPEN_COST; } // adjust GapOpen status in both sequences aGapOpen = (!aIsLetter) ? true : false; bGapOpen = (!bIsLetter) ? true : false; } - float preprescore = score; // if this score < 1 --> alignment score = Float.NaN - score = (score - this.meanScore) / (this.hypotheticMaxScore - this.meanScore); - int[] _max = MiscMath.findMax(new int[]{astr1.replace("-","").length(), astr2.replace("-","").length()}); // {index of max, max} - float coverage = (float) n / (float) _max[1]; // indelfreeAstr length / longest sequence length - float prescore = score; // only debug + float preprescore = score; // if this score < 1 --> alignment score = + // Float.NaN + score = (score - this.meanScore) + / (this.hypotheticMaxScore - this.meanScore); + int[] _max = MiscMath + .findMax(new int[] + { astr1.replace("-", "").length(), + astr2.replace("-", "").length() }); // {index of max, max} + float coverage = (float) n / (float) _max[1]; // indelfreeAstr length / + // longest sequence length + float prescore = score; // only debug score *= coverage; - //System.out.println(String.format("prepre-score: %f, pre-score: %f, longlength: %d\nscore: %1.16f, mean: %f, max: %d", preprescore, prescore, _max[1], score, this.meanScore, this.hypotheticMaxScore)); + // System.out.println(String.format("prepre-score: %f, pre-score: %f, + // longlength: %d\nscore: %1.16f, mean: %f, max: %d", preprescore, prescore, + // _max[1], score, this.meanScore, this.hypotheticMaxScore)); float minScore = 0f; this.alignmentScore = (score <= minScore) ? Float.NaN : score; } public void setScoreMatrix(ScoreMatrix sm) { - if (sm != null) { - scoreMatrix = sm; - } + if (sm != null) + { + scoreMatrix = sm; + } } } diff --git a/src/jalview/analysis/AlignmentAnnotationUtils.java b/src/jalview/analysis/AlignmentAnnotationUtils.java index cf2f5bb..15514ef 100644 --- a/src/jalview/analysis/AlignmentAnnotationUtils.java +++ b/src/jalview/analysis/AlignmentAnnotationUtils.java @@ -273,8 +273,7 @@ public class AlignmentAnnotationUtils }); } } - - + /** * Returns a BitSet (possibly empty) of those graphGroups for line graph * annotations, which have at least one member annotation row marked visible. diff --git a/src/jalview/analysis/AlignmentUtils.java b/src/jalview/analysis/AlignmentUtils.java index f5927ab..31670fd 100644 --- a/src/jalview/analysis/AlignmentUtils.java +++ b/src/jalview/analysis/AlignmentUtils.java @@ -84,7 +84,7 @@ public class AlignmentUtils { private static final int CODON_LENGTH = 3; - private static final String SEQUENCE_VARIANT = "sequence_variant:"; + private static final String SEQUENCE_VARIANT = "sequence_variant:"; /* * the 'id' attribute is provided for variant features fetched from @@ -1542,13 +1542,15 @@ public class AlignmentUtils } } } - - - public static boolean isSSAnnotationPresent( Map> annotations) { - + + public static boolean isSSAnnotationPresent( + Map> annotations) + { + for (SequenceI seq : annotations.keySet()) { - if(isSecondaryStructurePresent(annotations.get(seq).toArray(new AlignmentAnnotation[0]))) + if (isSecondaryStructurePresent( + annotations.get(seq).toArray(new AlignmentAnnotation[0]))) { return true; } @@ -1645,7 +1647,7 @@ public class AlignmentUtils } } } - + /** * Shows or hides auto calculated annotations for a sequence group. * @@ -1689,8 +1691,7 @@ public class AlignmentUtils } } } - - + public static AlignmentAnnotation getFirstSequenceAnnotationOfType( AlignmentI al, int graphType) { @@ -2898,8 +2899,9 @@ public class AlignmentUtils } return true; } - - public static boolean isSecondaryStructurePresent(AlignmentAnnotation[] annotations) + + public static boolean isSecondaryStructurePresent( + AlignmentAnnotation[] annotations) { boolean ssPresent = false; @@ -2920,7 +2922,7 @@ public class AlignmentUtils return ssPresent; } - + public static Color getSecondaryStructureAnnotationColour(char symbol) { @@ -2940,8 +2942,8 @@ public class AlignmentUtils return Color.white; } - public static char findSSAnnotationForGivenSeqposition(AlignmentAnnotation aa, - int seqPosition) + public static char findSSAnnotationForGivenSeqposition( + AlignmentAnnotation aa, int seqPosition) { char ss = '*'; @@ -2966,8 +2968,7 @@ public class AlignmentUtils return ss; } - - + public static List extractSSSourceInAlignmentAnnotation( AlignmentAnnotation[] annotations) { @@ -2998,7 +2999,7 @@ public class AlignmentUtils return ssSources; } - + public static String extractSSSourceFromAnnotationDescription( AlignmentAnnotation aa) { @@ -3009,13 +3010,13 @@ public class AlignmentUtils if (label.equals(aa.label)) { - if (aa.getProperty(Constants.SS_PROVIDER_PROPERTY) != null) + if (aa.getProperty(Constants.SS_PROVIDER_PROPERTY) != null) { - + return aa.getProperty(Constants.SS_PROVIDER_PROPERTY); - + } - + // For JPred if (Constants.SS_ANNOTATION_FROM_JPRED_LABEL.equals(aa.label)) { @@ -3026,7 +3027,8 @@ public class AlignmentUtils // For input with secondary structure if (Constants.SS_ANNOTATION_LABEL.equals(aa.label) - && aa.description != null && Constants.SS_ANNOTATION_LABEL.equals(aa.description)) + && aa.description != null + && Constants.SS_ANNOTATION_LABEL.equals(aa.description)) { return (Constants.SECONDARY_STRUCTURE_LABELS.get(aa.label)); @@ -3052,11 +3054,13 @@ public class AlignmentUtils String entryProvider = entry.getProvider(); if (entryProvider == null) { - // No provider - so this is either an old Jalview project, or not retrieved from recognised source + // No provider - so this is either an old Jalview project, or not + // retrieved from recognised source entryProvider = "PDB"; } - // Should (re)use a standard mechanism for extracting the PDB ID as it is written 1QWXTUV:CHAIN + // Should (re)use a standard mechanism for extracting the PDB ID as it + // is written 1QWXTUV:CHAIN // Trim the string from first occurrence of colon String entryID = entry.getId(); int index = entryID.indexOf(':'); @@ -3070,7 +3074,8 @@ public class AlignmentUtils } - // TODO: shouldn't need to extract from description what the originating ID is for this annotation! + // TODO: shouldn't need to extract from description what the + // originating ID is for this annotation! if (entryProvider == "PDB" && aa.description.toLowerCase() .contains("secondary structure for " + entryID.toLowerCase())) @@ -3095,8 +3100,8 @@ public class AlignmentUtils return null; } - - //to do set priority for labels + + // to do set priority for labels public static List getAlignmentAnnotationForSource( SequenceI seq, String ssSource) { @@ -3118,9 +3123,9 @@ public class AlignmentUtils for (AlignmentAnnotation annot : aa) { - String ssSourceForAnnot = extractSSSourceFromAnnotationDescription(annot); - if (ssSourceForAnnot != null && ssSource - .equals(ssSourceForAnnot)) + String ssSourceForAnnot = extractSSSourceFromAnnotationDescription( + annot); + if (ssSourceForAnnot != null && ssSource.equals(ssSourceForAnnot)) { ssAnnots.add(annot); } @@ -3170,7 +3175,8 @@ public class AlignmentUtils * * @param selectedSSSource * @param aa - * @return true if aa is from a provider or all providers as specified by selectedSSSource + * @return true if aa is from a provider or all providers as specified by + * selectedSSSource */ public static boolean isSecondaryStructureFrom(String selectedSSSource, AlignmentAnnotation aa) diff --git a/src/jalview/analysis/ConnectivityException.java b/src/jalview/analysis/ConnectivityException.java index 9915f2a..5f371c8 100644 --- a/src/jalview/analysis/ConnectivityException.java +++ b/src/jalview/analysis/ConnectivityException.java @@ -23,7 +23,9 @@ package jalview.analysis; public class ConnectivityException extends RuntimeException { private String sequence; + private int connection; + private byte dim; public ConnectivityException(String sequence, int connection, byte dim) @@ -31,9 +33,11 @@ public class ConnectivityException extends RuntimeException this("Insufficient number of connections", sequence, connection, dim); } - public ConnectivityException(String message, String sequence, int connection, byte dim) + public ConnectivityException(String message, String sequence, + int connection, byte dim) { - super(String.format("%s for %s (%d, should be %d or more)", message, sequence, connection, dim)); + super(String.format("%s for %s (%d, should be %d or more)", message, + sequence, connection, dim)); this.sequence = sequence; this.connection = connection; this.dim = dim; diff --git a/src/jalview/analysis/Finder.java b/src/jalview/analysis/Finder.java index c84c69a..32d4cf3 100644 --- a/src/jalview/analysis/Finder.java +++ b/src/jalview/analysis/Finder.java @@ -606,7 +606,7 @@ public class Finder implements FinderI } else { - //allFeatures = sf.getAllFeatures(null); + // allFeatures = sf.getAllFeatures(null); allFeatures = sf.getAllFeatures(); } // so we can check we are advancing when debugging diff --git a/src/jalview/analysis/PaSiMap.java b/src/jalview/analysis/PaSiMap.java index 48ec899..295bb89 100755 --- a/src/jalview/analysis/PaSiMap.java +++ b/src/jalview/analysis/PaSiMap.java @@ -38,7 +38,8 @@ import java.util.Hashtable; /** * Performs Principal Component Analysis on given sequences - * @AUTHOR MorellThomas + * + * @AUTHOR MorellThomas */ public class PaSiMap implements Runnable { @@ -72,14 +73,17 @@ public class PaSiMap implements Runnable * @param sm * @param options */ - public PaSiMap(AlignmentViewport sequences, ScoreModelI sm, PairwiseAlignPanel pap) + public PaSiMap(AlignmentViewport sequences, ScoreModelI sm, + PairwiseAlignPanel pap) { this.seqs = sequences; - if (sm!=null && sm instanceof ScoreMatrix) + if (sm != null && sm instanceof ScoreMatrix) { this.scoreMatrix = ((ScoreMatrix) sm); - } else { + } + else + { this.scoreMatrix = null; } @@ -108,7 +112,8 @@ public class PaSiMap implements Runnable * DOCUMENT ME! * @param mm * DOCUMENT ME! - * @param factor ~ is 1 + * @param factor + * ~ is 1 * * @return DOCUMENT ME! */ @@ -164,8 +169,8 @@ public class PaSiMap implements Runnable } /** - * Answers a formatted text report of the PaSiMap calculation results (matrices - * and eigenvalues) suitable for display + * Answers a formatted text report of the PaSiMap calculation results + * (matrices and eigenvalues) suitable for display * * @return */ @@ -197,23 +202,27 @@ public class PaSiMap implements Runnable /** * Performs the PaSiMap calculation * - * creates a new gui/PairwiseAlignPanel with the input sequences (AlignmentViewport) - * uses analysis/AlignSeq to creatue the pairwise alignments and calculate the AlignmentScores (float for each pair) - * gets all float[][] scores from the gui/PairwiseAlignPanel - * checks the connections for each sequence with AlignmentViewport seqs.calculateConnectivity(float[][] scores, int dim) (from analysis/Connectivity) -- throws an Exception if insufficient - * creates a math/MatrixI pairwiseScores of the float[][] scores - * copys the scores and fills the diagonal to create a symmetric matrix using math/Matrix.fillDiagonal() - * performs the analysis/ccAnalysis with the symmetric matrix - * gets the eigenmatrix and the eigenvalues using math/Matrix.tqli() + * creates a new gui/PairwiseAlignPanel with the input sequences + * (AlignmentViewport) uses analysis/AlignSeq to creatue the pairwise + * alignments and calculate the AlignmentScores (float for each pair) gets all + * float[][] scores from the gui/PairwiseAlignPanel checks the connections for + * each sequence with AlignmentViewport seqs.calculateConnectivity(float[][] + * scores, int dim) (from analysis/Connectivity) -- throws an Exception if + * insufficient creates a math/MatrixI pairwiseScores of the float[][] scores + * copys the scores and fills the diagonal to create a symmetric matrix using + * math/Matrix.fillDiagonal() performs the analysis/ccAnalysis with the + * symmetric matrix gets the eigenmatrix and the eigenvalues using + * math/Matrix.tqli() */ @Override public void run() { try { - //alignment = new PairwiseAlignPanel(seqs, true, 100, 5); + // alignment = new PairwiseAlignPanel(seqs, true, 100, 5); alignment.calculate(scoreMatrix); - float[][] scores = alignment.getAlignmentScores(); //bigger index first -- eg scores[14][13] + float[][] scores = alignment.getAlignmentScores(); // bigger index first + // -- eg scores[14][13] SequenceI[] iseqs = alignment.getInputSequences(); Connectivity.getConnectivity(iseqs, scores, dim); diff --git a/src/jalview/analysis/TreeBuilder.java b/src/jalview/analysis/TreeBuilder.java index e713525..156657a 100644 --- a/src/jalview/analysis/TreeBuilder.java +++ b/src/jalview/analysis/TreeBuilder.java @@ -43,6 +43,7 @@ public abstract class TreeBuilder extends TreeEngine public static final String NEIGHBOUR_JOINING = "NJ"; protected SequenceI[] sequences; + protected List labels; public AlignmentView seqData; @@ -78,7 +79,7 @@ public abstract class TreeBuilder extends TreeEngine } init(seqStrings, start, end); - + computeTree(sm, scoreParameters); } @@ -87,7 +88,6 @@ public abstract class TreeBuilder extends TreeEngine return sequences; } - /** * * @return true if tree has real distances @@ -129,7 +129,7 @@ public abstract class TreeBuilder extends TreeEngine labels = new ArrayList(); sequences = sm.expandSeqData(sequences, seqData, scoreOptions, labels); noseqs = sequences.length; - + distances = sm.findDistances(seqData, scoreOptions); makeLeaves(); @@ -186,14 +186,14 @@ public abstract class TreeBuilder extends TreeEngine SequenceNode sn = new SequenceNode(); sn.setElement(sequences[i]); - - if (labels.size()==noseqs) + + if (labels.size() == noseqs) { sn.setLabel(labels.get(i)); } - + sn.setName(sequences[i].getName()); - + node.addElement(sn); BitSet bs = new BitSet(); bs.set(i); diff --git a/src/jalview/analysis/TreeModel.java b/src/jalview/analysis/TreeModel.java index e29eb95..2d2248d 100644 --- a/src/jalview/analysis/TreeModel.java +++ b/src/jalview/analysis/TreeModel.java @@ -87,11 +87,15 @@ public class TreeModel if (leafAnnotations != null) { // leaf names are seuqence ID + annotation for display - // leaf links are annotationId <> annotation object for import from project + // leaf links are annotationId <> annotation object for import from + // project // --> need to resolve before passing for display // ==> do leafs need to be renamed after import ? - // ==> implies the 'nodeLabel' business needs to be callable independently of score function - } else { + // ==> implies the 'nodeLabel' business needs to be callable independently + // of score function + } + else + { associateLeavesToSequences(seqs); } } diff --git a/src/jalview/analysis/ccAnalysis.java b/src/jalview/analysis/ccAnalysis.java index 4922a54..265a3f4 100755 --- a/src/jalview/analysis/ccAnalysis.java +++ b/src/jalview/analysis/ccAnalysis.java @@ -55,11 +55,11 @@ import org.apache.commons.math3.linear.SingularValueDecomposition; /** * A class to model rectangular matrices of double values and operations on them */ -public class ccAnalysis +public class ccAnalysis { - private byte dim = 0; //dimensions + private byte dim = 0; // dimensions - private MatrixI scoresOld; //input scores + private MatrixI scoresOld; // input scores public ccAnalysis(MatrixI scores, byte dim) { @@ -68,29 +68,33 @@ public class ccAnalysis { for (int j = 0; j < scores.width(); j++) { - if (!Double.isNaN(scores.getValue(i,j))) - { - scores.setValue(i, j, (double) Math.round(scores.getValue(i,j) * (int) 10000) / 10000); - } + if (!Double.isNaN(scores.getValue(i, j))) + { + scores.setValue(i, j, + (double) Math.round(scores.getValue(i, j) * (int) 10000) + / 10000); + } } } this.scoresOld = scores; this.dim = dim; } - /** - * Initialise a distrust-score for each hypothesis (h) of hSigns - * distrust = conHypNum - proHypNum - * - * @param hSigns ~ hypothesis signs (+/-) for each sequence - * @param scores ~ input score matrix - * - * @return distrustScores - */ + /** + * Initialise a distrust-score for each hypothesis (h) of hSigns distrust = + * conHypNum - proHypNum + * + * @param hSigns + * ~ hypothesis signs (+/-) for each sequence + * @param scores + * ~ input score matrix + * + * @return distrustScores + */ private int[] initialiseDistrusts(byte[] hSigns, MatrixI scores) { int[] distrustScores = new int[scores.width()]; - + // loop over symmetric matrix for (int i = 0; i < scores.width(); i++) { @@ -100,34 +104,43 @@ public class ccAnalysis for (int j = 0; j < scores.width(); j++) { - double cell = scores.getRow(i)[j]; // value at [i][j] in scores - byte hBSign = hSigns[j]; - if (!Double.isNaN(cell)) - { - byte cellSign = (byte) Math.signum(cell); //check if sign of matrix value fits hyptohesis - if (cellSign == hASign * hBSign) - { - proHypNum++; - } else { - conHypNum++; - } - } + double cell = scores.getRow(i)[j]; // value at [i][j] in scores + byte hBSign = hSigns[j]; + if (!Double.isNaN(cell)) + { + byte cellSign = (byte) Math.signum(cell); // check if sign of matrix + // value fits hyptohesis + if (cellSign == hASign * hBSign) + { + proHypNum++; + } + else + { + conHypNum++; + } + } } - distrustScores[i] = conHypNum - proHypNum; //create distrust score for each sequence + distrustScores[i] = conHypNum - proHypNum; // create distrust score for + // each sequence } return distrustScores; } /** - * Optemise hypothesis concerning the sign of the hypothetical value for each hSigns by interpreting the pairwise correlation coefficients as scalar products - * - * @param hSigns ~ hypothesis signs (+/-) - * @param distrustScores - * @param scores ~ input score matrix - * - * @return hSigns - */ - private byte[] optimiseHypothesis(byte[] hSigns, int[] distrustScores, MatrixI scores) + * Optemise hypothesis concerning the sign of the hypothetical value for each + * hSigns by interpreting the pairwise correlation coefficients as scalar + * products + * + * @param hSigns + * ~ hypothesis signs (+/-) + * @param distrustScores + * @param scores + * ~ input score matrix + * + * @return hSigns + */ + private byte[] optimiseHypothesis(byte[] hSigns, int[] distrustScores, + MatrixI scores) { // get maximum distrust score int[] maxes = MiscMath.findMax(distrustScores); @@ -137,7 +150,7 @@ public class ccAnalysis // if hypothesis is not optimal yet if (maxDistrust > 0) { - //toggle sign for hI with maximum distrust + // toggle sign for hI with maximum distrust hSigns[maxDistrustIndex] *= -1; // update distrust at same position distrustScores[maxDistrustIndex] *= -1; @@ -146,299 +159,325 @@ public class ccAnalysis byte hASign = hSigns[maxDistrustIndex]; for (int NOTmaxDistrustIndex = 0; NOTmaxDistrustIndex < distrustScores.length; NOTmaxDistrustIndex++) { - if (NOTmaxDistrustIndex != maxDistrustIndex) - { - byte hBSign = hSigns[NOTmaxDistrustIndex]; - double cell = scores.getValue(maxDistrustIndex, NOTmaxDistrustIndex); - - // distrust only changed if not NaN - if (!Double.isNaN(cell)) - { - byte cellSign = (byte) Math.signum(cell); - // if sign of cell matches hypothesis decrease distrust by 2 because 1 more value supporting and 1 less contradicting - // else increase by 2 - if (cellSign == hASign * hBSign) - { - distrustScores[NOTmaxDistrustIndex] -= 2; - } else { - distrustScores[NOTmaxDistrustIndex] += 2; - } - } - } + if (NOTmaxDistrustIndex != maxDistrustIndex) + { + byte hBSign = hSigns[NOTmaxDistrustIndex]; + double cell = scores.getValue(maxDistrustIndex, + NOTmaxDistrustIndex); + + // distrust only changed if not NaN + if (!Double.isNaN(cell)) + { + byte cellSign = (byte) Math.signum(cell); + // if sign of cell matches hypothesis decrease distrust by 2 because + // 1 more value supporting and 1 less contradicting + // else increase by 2 + if (cellSign == hASign * hBSign) + { + distrustScores[NOTmaxDistrustIndex] -= 2; + } + else + { + distrustScores[NOTmaxDistrustIndex] += 2; + } + } + } } - //further optimisation necessary + // further optimisation necessary return optimiseHypothesis(hSigns, distrustScores, scores); - } else { + } + else + { return hSigns; } } - /** - * takes the a symmetric MatrixI as input scores which may contain Double.NaN - * approximate the missing values using hypothesis optimisation - * - * runs analysis - * - * @param scores ~ score matrix - * - * @return - */ - public MatrixI run () throws Exception + /** + * takes the a symmetric MatrixI as input scores which may contain Double.NaN + * approximate the missing values using hypothesis optimisation + * + * runs analysis + * + * @param scores + * ~ score matrix + * + * @return + */ + public MatrixI run() throws Exception { - //initialse eigenMatrix and repMatrix + // initialse eigenMatrix and repMatrix MatrixI eigenMatrix = scoresOld.copy(); MatrixI repMatrix = scoresOld.copy(); try { - /* - * Calculate correction factor for 2nd and higher eigenvalue(s). - * This correction is NOT needed for the 1st eigenvalue, because the - * unknown (=NaN) values of the matrix are approximated by presuming - * 1-dimensional vectors as the basis of the matrix interpretation as dot - * products. - */ - - System.out.println("Input correlation matrix:"); - eigenMatrix.print(System.out, "%1.4f "); - - int matrixWidth = eigenMatrix.width(); // square matrix, so width == height - int matrixElementsTotal = (int) Math.pow(matrixWidth, 2); //total number of elemts - - float correctionFactor = (float) (matrixElementsTotal - eigenMatrix.countNaN()) / (float) matrixElementsTotal; - - /* - * Calculate hypothetical value (1-dimensional vector) h_i for each - * dataset by interpreting the given correlation coefficients as scalar - * products. - */ - - /* - * Memory for current hypothesis concerning sign of each h_i. - * List of signs for all h_i in the encoding: + /* + * Calculate correction factor for 2nd and higher eigenvalue(s). + * This correction is NOT needed for the 1st eigenvalue, because the + * unknown (=NaN) values of the matrix are approximated by presuming + * 1-dimensional vectors as the basis of the matrix interpretation as dot + * products. + */ + + System.out.println("Input correlation matrix:"); + eigenMatrix.print(System.out, "%1.4f "); + + int matrixWidth = eigenMatrix.width(); // square matrix, so width == + // height + int matrixElementsTotal = (int) Math.pow(matrixWidth, 2); // total number + // of elemts + + float correctionFactor = (float) (matrixElementsTotal + - eigenMatrix.countNaN()) / (float) matrixElementsTotal; + + /* + * Calculate hypothetical value (1-dimensional vector) h_i for each + * dataset by interpreting the given correlation coefficients as scalar + * products. + */ + + /* + * Memory for current hypothesis concerning sign of each h_i. + * List of signs for all h_i in the encoding: * * 1: positive * * 0: zero * * -1: negative - * Initial hypothesis: all signs are positive. - */ - byte[] hSigns = new byte[matrixWidth]; - Arrays.fill(hSigns, (byte) 1); - - //Estimate signs for each h_i by refining hypothesis on signs. - hSigns = optimiseHypothesis(hSigns, initialiseDistrusts(hSigns, eigenMatrix), eigenMatrix); - - - //Estimate absolute values for each h_i by determining sqrt of mean of - //non-NaN absolute values for every row. - double[] hAbs = MiscMath.sqrt(eigenMatrix.absolute().meanRow()); - - //Combine estimated signs with absolute values in obtain total value for - //each h_i. - double[] hValues = MiscMath.elementwiseMultiply(hSigns, hAbs); - - /*Complement symmetric matrix by using the scalar products of estimated - *values of h_i to replace NaN-cells. - *Matrix positions that have estimated values - *(only for diagonal and upper off-diagonal values, due to the symmetry - *the positions of the lower-diagonal values can be inferred). - List of tuples (row_idx, column_idx).*/ - - ArrayList estimatedPositions = new ArrayList(); - - // for off-diagonal cells - for (int rowIndex = 0; rowIndex < matrixWidth - 1; rowIndex++) - { - for (int columnIndex = rowIndex + 1; columnIndex < matrixWidth; columnIndex++) + * Initial hypothesis: all signs are positive. + */ + byte[] hSigns = new byte[matrixWidth]; + Arrays.fill(hSigns, (byte) 1); + + // Estimate signs for each h_i by refining hypothesis on signs. + hSigns = optimiseHypothesis(hSigns, + initialiseDistrusts(hSigns, eigenMatrix), eigenMatrix); + + // Estimate absolute values for each h_i by determining sqrt of mean of + // non-NaN absolute values for every row. + double[] hAbs = MiscMath.sqrt(eigenMatrix.absolute().meanRow()); + + // Combine estimated signs with absolute values in obtain total value for + // each h_i. + double[] hValues = MiscMath.elementwiseMultiply(hSigns, hAbs); + + /*Complement symmetric matrix by using the scalar products of estimated + *values of h_i to replace NaN-cells. + *Matrix positions that have estimated values + *(only for diagonal and upper off-diagonal values, due to the symmetry + *the positions of the lower-diagonal values can be inferred). + List of tuples (row_idx, column_idx).*/ + + ArrayList estimatedPositions = new ArrayList(); + + // for off-diagonal cells + for (int rowIndex = 0; rowIndex < matrixWidth - 1; rowIndex++) { - double cell = eigenMatrix.getValue(rowIndex, columnIndex); - if (Double.isNaN(cell)) - { - //calculate scalar product as new cell value - cell = hValues[rowIndex] * hValues[columnIndex]; - //fill in new value in cell and symmetric partner - eigenMatrix.setValue(rowIndex, columnIndex, cell); - eigenMatrix.setValue(columnIndex, rowIndex, cell); - //save positions of estimated values - estimatedPositions.add(new int[]{rowIndex, columnIndex}); - } + for (int columnIndex = rowIndex + + 1; columnIndex < matrixWidth; columnIndex++) + { + double cell = eigenMatrix.getValue(rowIndex, columnIndex); + if (Double.isNaN(cell)) + { + // calculate scalar product as new cell value + cell = hValues[rowIndex] * hValues[columnIndex]; + // fill in new value in cell and symmetric partner + eigenMatrix.setValue(rowIndex, columnIndex, cell); + eigenMatrix.setValue(columnIndex, rowIndex, cell); + // save positions of estimated values + estimatedPositions.add(new int[] { rowIndex, columnIndex }); + } + } } - } - // for diagonal cells - for (int diagonalIndex = 0; diagonalIndex < matrixWidth; diagonalIndex++) + // for diagonal cells + for (int diagonalIndex = 0; diagonalIndex < matrixWidth; diagonalIndex++) { double cell = Math.pow(hValues[diagonalIndex], 2); - eigenMatrix.setValue(diagonalIndex, diagonalIndex, cell); - estimatedPositions.add(new int[]{diagonalIndex, diagonalIndex}); + eigenMatrix.setValue(diagonalIndex, diagonalIndex, cell); + estimatedPositions.add(new int[] { diagonalIndex, diagonalIndex }); } - /*Refine total values of each h_i: - *Initialise h_values of the hypothetical non-existant previous iteration - *with the correct format but with impossible values. - Needed for exit condition of otherwise endless loop.*/ - System.out.print("initial values: [ "); - for (double h : hValues) - { - System.out.print(String.format("%1.4f, ", h)); - } - System.out.println(" ]"); - - - double[] hValuesOld = new double[matrixWidth]; - - int iterationCount = 0; - - // repeat unitl values of h do not significantly change anymore - while (true) - { - for (int hIndex = 0; hIndex < matrixWidth; hIndex++) - { - double newH = Arrays.stream(MiscMath.elementwiseMultiply(hValues, eigenMatrix.getRow(hIndex))).sum() / Arrays.stream(MiscMath.elementwiseMultiply(hValues, hValues)).sum(); - hValues[hIndex] = newH; - } - - System.out.print(String.format("iteration %d: [ ", iterationCount)); + /*Refine total values of each h_i: + *Initialise h_values of the hypothetical non-existant previous iteration + *with the correct format but with impossible values. + Needed for exit condition of otherwise endless loop.*/ + System.out.print("initial values: [ "); for (double h : hValues) { - System.out.print(String.format("%1.4f, ", h)); + System.out.print(String.format("%1.4f, ", h)); } System.out.println(" ]"); - //update values of estimated positions - for (int[] pair : estimatedPositions) // pair ~ row, col - { - double newVal = hValues[pair[0]] * hValues[pair[1]]; - eigenMatrix.setValue(pair[0], pair[1], newVal); - eigenMatrix.setValue(pair[1], pair[0], newVal); - } + double[] hValuesOld = new double[matrixWidth]; - iterationCount++; + int iterationCount = 0; - //exit loop as soon as new values are similar to the last iteration - if (MiscMath.allClose(hValues, hValuesOld, 0d, 1e-05d, false)) + // repeat unitl values of h do not significantly change anymore + while (true) { - break; + for (int hIndex = 0; hIndex < matrixWidth; hIndex++) + { + double newH = Arrays + .stream(MiscMath.elementwiseMultiply(hValues, + eigenMatrix.getRow(hIndex))) + .sum() + / Arrays.stream( + MiscMath.elementwiseMultiply(hValues, hValues)) + .sum(); + hValues[hIndex] = newH; + } + + System.out.print(String.format("iteration %d: [ ", iterationCount)); + for (double h : hValues) + { + System.out.print(String.format("%1.4f, ", h)); + } + System.out.println(" ]"); + + // update values of estimated positions + for (int[] pair : estimatedPositions) // pair ~ row, col + { + double newVal = hValues[pair[0]] * hValues[pair[1]]; + eigenMatrix.setValue(pair[0], pair[1], newVal); + eigenMatrix.setValue(pair[1], pair[0], newVal); + } + + iterationCount++; + + // exit loop as soon as new values are similar to the last iteration + if (MiscMath.allClose(hValues, hValuesOld, 0d, 1e-05d, false)) + { + break; + } + + // save hValues for comparison in the next iteration + System.arraycopy(hValues, 0, hValuesOld, 0, hValues.length); } - //save hValues for comparison in the next iteration - System.arraycopy(hValues, 0, hValuesOld, 0, hValues.length); - } - - //----------------------------- - //Use complemented symmetric matrix to calculate final representative - //vectors. - - //Eigendecomposition. - eigenMatrix.tred(); - eigenMatrix.tqli(); + // ----------------------------- + // Use complemented symmetric matrix to calculate final representative + // vectors. - System.out.println("eigenmatrix"); - eigenMatrix.print(System.out, "%8.2f"); - System.out.println(); - System.out.println("uncorrected eigenvalues"); - eigenMatrix.printD(System.out, "%2.4f "); - System.out.println(); + // Eigendecomposition. + eigenMatrix.tred(); + eigenMatrix.tqli(); - double[] eigenVals = eigenMatrix.getD(); + System.out.println("eigenmatrix"); + eigenMatrix.print(System.out, "%8.2f"); + System.out.println(); + System.out.println("uncorrected eigenvalues"); + eigenMatrix.printD(System.out, "%2.4f "); + System.out.println(); - TreeMap eigenPairs = new TreeMap<>(Comparator.reverseOrder()); - for (int i = 0; i < eigenVals.length; i++) - { - eigenPairs.put(eigenVals[i], i); - } + double[] eigenVals = eigenMatrix.getD(); - // matrix of representative eigenvectors (each row is a vector) - double[][] _repMatrix = new double[eigenVals.length][dim]; - double[][] _oldMatrix = new double[eigenVals.length][dim]; - double[] correctedEigenValues = new double[dim]; - - int l = 0; - for (Entry pair : eigenPairs.entrySet()) - { - double eigenValue = pair.getKey(); - int column = pair.getValue(); - double[] eigenVector = eigenMatrix.getColumn(column); - //for 2nd and higher eigenvalues - if (l >= 1) + TreeMap eigenPairs = new TreeMap<>( + Comparator.reverseOrder()); + for (int i = 0; i < eigenVals.length; i++) { - eigenValue /= correctionFactor; + eigenPairs.put(eigenVals[i], i); } - correctedEigenValues[l] = eigenValue; - for (int j = 0; j < eigenVector.length; j++) - { - _repMatrix[j][l] = (eigenValue < 0) ? 0.0 : - Math.sqrt(eigenValue) * eigenVector[j]; - double tmpOldScore = scoresOld.getColumn(column)[j]; - _oldMatrix[j][dim - l - 1] = (Double.isNaN(tmpOldScore)) ? 0.0 : tmpOldScore; - } - l++; - if (l >= dim) - { - break; - } - } - System.out.println("correctedEigenValues"); - MiscMath.print(correctedEigenValues, "%2.4f "); - - repMatrix = new Matrix(_repMatrix); - repMatrix.setD(correctedEigenValues); - MatrixI oldMatrix = new Matrix(_oldMatrix); - - MatrixI dotMatrix = repMatrix.postMultiply(repMatrix.transpose()); - - double rmsd = scoresOld.rmsd(dotMatrix); - - System.out.println("iteration, rmsd, maxDiff, rmsdDiff"); - System.out.println(String.format("0, %8.5f, -, -", rmsd)); - // Refine representative vectors by minimising sum-of-squared deviates between dotMatrix and original score matrix - for (int iteration = 1; iteration < 21; iteration++) // arbitrarily set to 20 - { - MatrixI repMatrixOLD = repMatrix.copy(); - MatrixI dotMatrixOLD = dotMatrix.copy(); + // matrix of representative eigenvectors (each row is a vector) + double[][] _repMatrix = new double[eigenVals.length][dim]; + double[][] _oldMatrix = new double[eigenVals.length][dim]; + double[] correctedEigenValues = new double[dim]; - // for all rows/hA in the original matrix - for (int hAIndex = 0; hAIndex < oldMatrix.height(); hAIndex++) + int l = 0; + for (Entry pair : eigenPairs.entrySet()) { - double[] row = oldMatrix.getRow(hAIndex); - double[] hA = repMatrix.getRow(hAIndex); - hAIndex = hAIndex; - //find least-squares-solution fo rdifferences between original scores and representative vectors - double[] hAlsm = leastSquaresOptimisation(repMatrix, scoresOld, hAIndex); - // update repMatrix with new hAlsm - for (int j = 0; j < repMatrix.width(); j++) - { - repMatrix.setValue(hAIndex, j, hAlsm[j]); - } - } - - // dot product of representative vecotrs yields a matrix with values approximating the correlation matrix - dotMatrix = repMatrix.postMultiply(repMatrix.transpose()); - // calculate rmsd between approximation and correlation matrix - rmsd = scoresOld.rmsd(dotMatrix); - - // calculate maximum change of representative vectors of current iteration - MatrixI diff = repMatrix.subtract(repMatrixOLD).absolute(); - double maxDiff = 0.0; - for (int i = 0; i < diff.height(); i++) - { - for (int j = 0; j < diff.width(); j++) - { - maxDiff = (diff.getValue(i, j) > maxDiff) ? diff.getValue(i, j) : maxDiff; - } + double eigenValue = pair.getKey(); + int column = pair.getValue(); + double[] eigenVector = eigenMatrix.getColumn(column); + // for 2nd and higher eigenvalues + if (l >= 1) + { + eigenValue /= correctionFactor; + } + correctedEigenValues[l] = eigenValue; + for (int j = 0; j < eigenVector.length; j++) + { + _repMatrix[j][l] = (eigenValue < 0) ? 0.0 + : -Math.sqrt(eigenValue) * eigenVector[j]; + double tmpOldScore = scoresOld.getColumn(column)[j]; + _oldMatrix[j][dim - l - 1] = (Double.isNaN(tmpOldScore)) ? 0.0 + : tmpOldScore; + } + l++; + if (l >= dim) + { + break; + } } - // calculate rmsd between current and previous estimation - double rmsdDiff = dotMatrix.rmsd(dotMatrixOLD); + System.out.println("correctedEigenValues"); + MiscMath.print(correctedEigenValues, "%2.4f "); + + repMatrix = new Matrix(_repMatrix); + repMatrix.setD(correctedEigenValues); + MatrixI oldMatrix = new Matrix(_oldMatrix); - System.out.println(String.format("%d, %8.5f, %8.5f, %8.5f", iteration, rmsd, maxDiff, rmsdDiff)); + MatrixI dotMatrix = repMatrix.postMultiply(repMatrix.transpose()); - if (!(Math.abs(maxDiff) > 1e-06)) + double rmsd = scoresOld.rmsd(dotMatrix); + + System.out.println("iteration, rmsd, maxDiff, rmsdDiff"); + System.out.println(String.format("0, %8.5f, -, -", rmsd)); + // Refine representative vectors by minimising sum-of-squared deviates + // between dotMatrix and original score matrix + for (int iteration = 1; iteration < 21; iteration++) // arbitrarily set to + // 20 { - repMatrix = repMatrixOLD.copy(); - break; + MatrixI repMatrixOLD = repMatrix.copy(); + MatrixI dotMatrixOLD = dotMatrix.copy(); + + // for all rows/hA in the original matrix + for (int hAIndex = 0; hAIndex < oldMatrix.height(); hAIndex++) + { + double[] row = oldMatrix.getRow(hAIndex); + double[] hA = repMatrix.getRow(hAIndex); + hAIndex = hAIndex; + // find least-squares-solution fo rdifferences between original scores + // and representative vectors + double[] hAlsm = leastSquaresOptimisation(repMatrix, scoresOld, + hAIndex); + // update repMatrix with new hAlsm + for (int j = 0; j < repMatrix.width(); j++) + { + repMatrix.setValue(hAIndex, j, hAlsm[j]); + } + } + + // dot product of representative vecotrs yields a matrix with values + // approximating the correlation matrix + dotMatrix = repMatrix.postMultiply(repMatrix.transpose()); + // calculate rmsd between approximation and correlation matrix + rmsd = scoresOld.rmsd(dotMatrix); + + // calculate maximum change of representative vectors of current + // iteration + MatrixI diff = repMatrix.subtract(repMatrixOLD).absolute(); + double maxDiff = 0.0; + for (int i = 0; i < diff.height(); i++) + { + for (int j = 0; j < diff.width(); j++) + { + maxDiff = (diff.getValue(i, j) > maxDiff) ? diff.getValue(i, j) + : maxDiff; + } + } + + // calculate rmsd between current and previous estimation + double rmsdDiff = dotMatrix.rmsd(dotMatrixOLD); + + System.out.println(String.format("%d, %8.5f, %8.5f, %8.5f", + iteration, rmsd, maxDiff, rmsdDiff)); + + if (!(Math.abs(maxDiff) > 1e-06)) + { + repMatrix = repMatrixOLD.copy(); + break; + } } - } - } catch (Exception q) { @@ -451,35 +490,38 @@ public class ccAnalysis } /** - * Create equations system using information on originally known - * pairwise correlation coefficients (parsed from infile) and the - * representative result vectors - * - * Each equation has the format: - * hA * hA - pairwiseCC = 0 - * with: - * hA: unknown variable - * hB: known representative vector - * pairwiseCC: known pairwise correlation coefficien - * - * The resulting equations system is overdetermined, if there are more - * equations than unknown elements - * - * @param x ~ unknown n-dimensional column-vector - * (needed for generating equations system, NOT to be specified by user). - * @param hAIndex ~ index of currently optimised representative result vector. - * @param h ~ matrix with row-wise listing of representative result vectors. - * @param originalRow ~ matrix-row of originally parsed pairwise correlation coefficients. - * - * @return - */ - private double[] originalToEquasionSystem(double[] hA, MatrixI repMatrix, MatrixI scoresOld, int hAIndex) + * Create equations system using information on originally known pairwise + * correlation coefficients (parsed from infile) and the representative result + * vectors + * + * Each equation has the format: hA * hA - pairwiseCC = 0 with: hA: unknown + * variable hB: known representative vector pairwiseCC: known pairwise + * correlation coefficien + * + * The resulting equations system is overdetermined, if there are more + * equations than unknown elements + * + * @param x + * ~ unknown n-dimensional column-vector (needed for generating + * equations system, NOT to be specified by user). + * @param hAIndex + * ~ index of currently optimised representative result vector. + * @param h + * ~ matrix with row-wise listing of representative result vectors. + * @param originalRow + * ~ matrix-row of originally parsed pairwise correlation + * coefficients. + * + * @return + */ + private double[] originalToEquasionSystem(double[] hA, MatrixI repMatrix, + MatrixI scoresOld, int hAIndex) { double[] originalRow = scoresOld.getRow(hAIndex); int nans = MiscMath.countNaN(originalRow); double[] result = new double[originalRow.length - nans]; - //for all pairwiseCC in originalRow + // for all pairwiseCC in originalRow int resultIndex = 0; for (int hBIndex = 0; hBIndex < originalRow.length; hBIndex++) { @@ -488,40 +530,48 @@ public class ccAnalysis if (!Double.isNaN(pairwiseCC)) { double[] hB = repMatrix.getRow(hBIndex); - result[resultIndex++] = MiscMath.sum(MiscMath.elementwiseMultiply(hA, hB)) - pairwiseCC; - } else { + result[resultIndex++] = MiscMath + .sum(MiscMath.elementwiseMultiply(hA, hB)) - pairwiseCC; + } + else + { } } return result; } /** - * returns the jacobian matrix - * @param repMatrix ~ matrix of representative vectors - * @param hAIndex ~ current row index - * - * @return - */ - private MatrixI approximateDerivative(MatrixI repMatrix, MatrixI scoresOld, int hAIndex) + * returns the jacobian matrix + * + * @param repMatrix + * ~ matrix of representative vectors + * @param hAIndex + * ~ current row index + * + * @return + */ + private MatrixI approximateDerivative(MatrixI repMatrix, + MatrixI scoresOld, int hAIndex) { - //hA = x0 + // hA = x0 double[] hA = repMatrix.getRow(hAIndex); - double[] f0 = originalToEquasionSystem(hA, repMatrix, scoresOld, hAIndex); + double[] f0 = originalToEquasionSystem(hA, repMatrix, scoresOld, + hAIndex); double[] signX0 = new double[hA.length]; double[] xAbs = new double[hA.length]; for (int i = 0; i < hA.length; i++) { signX0[i] = (hA[i] >= 0) ? 1 : -1; xAbs[i] = (Math.abs(hA[i]) >= 1.0) ? Math.abs(hA[i]) : 1.0; - } + } double rstep = Math.pow(Math.ulp(1.0), 0.5); - double[] h = new double [hA.length]; + double[] h = new double[hA.length]; for (int i = 0; i < hA.length; i++) { h[i] = rstep * signX0[i] * xAbs[i]; } - + int m = f0.length; int n = hA.length; double[][] jTransposed = new double[n][m]; @@ -531,11 +581,12 @@ public class ccAnalysis System.arraycopy(hA, 0, x, 0, h.length); x[i] += h[i]; double dx = x[i] - hA[i]; - double[] df = originalToEquasionSystem(x, repMatrix, scoresOld, hAIndex); + double[] df = originalToEquasionSystem(x, repMatrix, scoresOld, + hAIndex); for (int j = 0; j < df.length; j++) { - df[j] -= f0[j]; - jTransposed[i][j] = df[j] / dx; + df[j] -= f0[j]; + jTransposed[i][j] = df[j] / dx; } } MatrixI J = new Matrix(jTransposed).transpose(); @@ -543,31 +594,40 @@ public class ccAnalysis } /** - * norm of regularized (by alpha) least-squares solution minus Delta - * @param alpha - * @param suf - * @param s - * @param Delta - * - * @return - */ - private double[] phiAndDerivative(double alpha, double[] suf, double[] s, double Delta) + * norm of regularized (by alpha) least-squares solution minus Delta + * + * @param alpha + * @param suf + * @param s + * @param Delta + * + * @return + */ + private double[] phiAndDerivative(double alpha, double[] suf, double[] s, + double Delta) { - double[] denom = MiscMath.elementwiseAdd(MiscMath.elementwiseMultiply(s, s), alpha); + double[] denom = MiscMath + .elementwiseAdd(MiscMath.elementwiseMultiply(s, s), alpha); double pNorm = MiscMath.norm(MiscMath.elementwiseDivide(suf, denom)); double phi = pNorm - Delta; // - sum ( suf**2 / denom**3) / pNorm - double phiPrime = - MiscMath.sum(MiscMath.elementwiseDivide(MiscMath.elementwiseMultiply(suf, suf), MiscMath.elementwiseMultiply(MiscMath.elementwiseMultiply(denom, denom), denom))) / pNorm; - return new double[]{phi, phiPrime}; + double phiPrime = -MiscMath.sum(MiscMath.elementwiseDivide( + MiscMath.elementwiseMultiply(suf, suf), + MiscMath.elementwiseMultiply( + MiscMath.elementwiseMultiply(denom, denom), denom))) + / pNorm; + return new double[] { phi, phiPrime }; } /** - * class holding the result of solveLsqTrustRegion - */ + * class holding the result of solveLsqTrustRegion + */ private class TrustRegion { private double[] step; + private double alpha; + private int iteration; public TrustRegion(double[] step, double alpha, int iteration) @@ -586,7 +646,7 @@ public class ccAnalysis { return this.alpha; } - + public int getIteration() { return this.iteration; @@ -594,22 +654,30 @@ public class ccAnalysis } /** - * solve a trust-region problem arising in least-squares optimisation - * @param n ~ number of variables - * @param m ~ number of residuals - * @param uf - * @param s ~ singular values of J - * @param V ~ transpose of VT - * @param Delta ~ radius of a trust region - * @param alpha ~ initial guess for alpha - * - * @return - */ - private TrustRegion solveLsqTrustRegion(int n, int m, double[] uf, double[] s, MatrixI V, double Delta, double alpha) + * solve a trust-region problem arising in least-squares optimisation + * + * @param n + * ~ number of variables + * @param m + * ~ number of residuals + * @param uf + * @param s + * ~ singular values of J + * @param V + * ~ transpose of VT + * @param Delta + * ~ radius of a trust region + * @param alpha + * ~ initial guess for alpha + * + * @return + */ + private TrustRegion solveLsqTrustRegion(int n, int m, double[] uf, + double[] s, MatrixI V, double Delta, double alpha) { double[] suf = MiscMath.elementwiseMultiply(s, uf); - //check if J has full rank and tr Gauss-Newton step + // check if J has full rank and tr Gauss-Newton step boolean fullRank = false; if (m >= n) { @@ -618,7 +686,8 @@ public class ccAnalysis } if (fullRank) { - double[] p = MiscMath.elementwiseMultiply(V.sumProduct(MiscMath.elementwiseDivide(uf, s)), -1); + double[] p = MiscMath.elementwiseMultiply( + V.sumProduct(MiscMath.elementwiseDivide(uf, s)), -1); if (MiscMath.norm(p) <= Delta) { TrustRegion result = new TrustRegion(p, 0.0, 0); @@ -631,15 +700,21 @@ public class ccAnalysis if (fullRank) { double[] phiAndPrime = phiAndDerivative(0.0, suf, s, Delta); - alphaLower = - phiAndPrime[0] / phiAndPrime[1]; + alphaLower = -phiAndPrime[0] / phiAndPrime[1]; } - alpha = (!fullRank && alpha == 0.0) ? alpha = Math.max(0.001 * alphaUpper, Math.pow(alphaLower * alphaUpper, 0.5)) : alpha; + alpha = (!fullRank && alpha == 0.0) + ? alpha = Math.max(0.001 * alphaUpper, + Math.pow(alphaLower * alphaUpper, 0.5)) + : alpha; int iteration = 0; - while (iteration < 10) // 10 is default max_iter + while (iteration < 10) // 10 is default max_iter { - alpha = (alpha < alphaLower || alpha > alphaUpper) ? alpha = Math.max(0.001 * alphaUpper, Math.pow(alphaLower * alphaUpper, 0.5)) : alpha; + alpha = (alpha < alphaLower || alpha > alphaUpper) + ? alpha = Math.max(0.001 * alphaUpper, + Math.pow(alphaLower * alphaUpper, 0.5)) + : alpha; double[] phiAndPrime = phiAndDerivative(alpha, suf, s, Delta); double phi = phiAndPrime[0]; double phiPrime = phiAndPrime[1]; @@ -649,18 +724,20 @@ public class ccAnalysis alphaLower = Math.max(alphaLower, alpha - ratio); alpha -= (phi + Delta) * ratio / Delta; - if (Math.abs(phi) < 0.01 * Delta) // default rtol set to 0.01 + if (Math.abs(phi) < 0.01 * Delta) // default rtol set to 0.01 { - break; + break; } iteration++; } // p = - V.dot( suf / (s**2 + alpha)) - double[] tmp = MiscMath.elementwiseDivide(suf, MiscMath.elementwiseAdd(MiscMath.elementwiseMultiply(s, s), alpha)); + double[] tmp = MiscMath.elementwiseDivide(suf, MiscMath + .elementwiseAdd(MiscMath.elementwiseMultiply(s, s), alpha)); double[] p = MiscMath.elementwiseMultiply(V.sumProduct(tmp), -1); - // Make the norm of p equal to Delta, p is changed only slightly during this. + // Make the norm of p equal to Delta, p is changed only slightly during + // this. // It is done to prevent p lie outside of the trust region p = MiscMath.elementwiseMultiply(p, Delta / MiscMath.norm(p)); @@ -669,15 +746,18 @@ public class ccAnalysis } /** - * compute values of a quadratic function arising in least squares - * function: 0.5 * s.T * (J.T * J + diag) * s + g.T * s - * - * @param J ~ jacobian matrix - * @param g ~ gradient - * @param s ~ steps and rows - * - * @return - */ + * compute values of a quadratic function arising in least squares function: + * 0.5 * s.T * (J.T * J + diag) * s + g.T * s + * + * @param J + * ~ jacobian matrix + * @param g + * ~ gradient + * @param s + * ~ steps and rows + * + * @return + */ private double evaluateQuadratic(MatrixI J, double[] g, double[] s) { @@ -689,50 +769,64 @@ public class ccAnalysis } /** - * update the radius of a trust region based on the cost reduction - * - * @param Delta - * @param actualReduction - * @param predictedReduction - * @param stepNorm - * @param boundHit - * - * @return - */ - private double[] updateTrustRegionRadius(double Delta, double actualReduction, double predictedReduction, double stepNorm, boolean boundHit) + * update the radius of a trust region based on the cost reduction + * + * @param Delta + * @param actualReduction + * @param predictedReduction + * @param stepNorm + * @param boundHit + * + * @return + */ + private double[] updateTrustRegionRadius(double Delta, + double actualReduction, double predictedReduction, + double stepNorm, boolean boundHit) { double ratio = 0; if (predictedReduction > 0) { ratio = actualReduction / predictedReduction; - } else if (predictedReduction == 0 && actualReduction == 0) { + } + else if (predictedReduction == 0 && actualReduction == 0) + { ratio = 1; - } else { + } + else + { ratio = 0; } if (ratio < 0.25) { Delta = 0.25 * stepNorm; - } else if (ratio > 0.75 && boundHit) { + } + else if (ratio > 0.75 && boundHit) + { Delta *= 2.0; } - return new double[]{Delta, ratio}; + return new double[] { Delta, ratio }; } /** - * trust region reflective algorithm - * @param repMatrix ~ Matrix containing representative vectors - * @param scoresOld ~ Matrix containing initial observations - * @param index ~ current row index - * @param J ~ jacobian matrix - * - * @return - */ - private double[] trf(MatrixI repMatrix, MatrixI scoresOld, int index, MatrixI J) + * trust region reflective algorithm + * + * @param repMatrix + * ~ Matrix containing representative vectors + * @param scoresOld + * ~ Matrix containing initial observations + * @param index + * ~ current row index + * @param J + * ~ jacobian matrix + * + * @return + */ + private double[] trf(MatrixI repMatrix, MatrixI scoresOld, int index, + MatrixI J) { - //hA = x0 + // hA = x0 double[] hA = repMatrix.getRow(index); double[] f0 = originalToEquasionSystem(hA, repMatrix, scoresOld, index); int nfev = 1; @@ -742,7 +836,7 @@ public class ccAnalysis double[] g = J.transpose().sumProduct(f0); double Delta = MiscMath.norm(hA); int maxNfev = hA.length * 100; - double alpha = 0.0; // "Levenberg-Marquardt" parameter + double alpha = 0.0; // "Levenberg-Marquardt" parameter double gNorm = 0; boolean terminationStatus = false; @@ -753,11 +847,12 @@ public class ccAnalysis gNorm = MiscMath.norm(g); if (terminationStatus || nfev == maxNfev) { - break; + break; } - SingularValueDecomposition svd = new SingularValueDecomposition(new Array2DRowRealMatrix(J.asArray())); + SingularValueDecomposition svd = new SingularValueDecomposition( + new Array2DRowRealMatrix(J.asArray())); MatrixI U = new Matrix(svd.getU().getData()); - double[] s = svd.getSingularValues(); + double[] s = svd.getSingularValues(); MatrixI V = new Matrix(svd.getV().getData()).transpose(); double[] uf = U.transpose().sumProduct(f0); @@ -766,60 +861,67 @@ public class ccAnalysis double[] fNew = new double[f0.length]; double costNew = 0; double stepHnorm = 0; - + while (actualReduction <= 0 && nfev < maxNfev) { - TrustRegion trustRegion = solveLsqTrustRegion(n, m, uf, s, V, Delta, alpha); - double[] stepH = trustRegion.getStep(); - alpha = trustRegion.getAlpha(); - int nIterations = trustRegion.getIteration(); - double predictedReduction = - (evaluateQuadratic(J, g, stepH)); + TrustRegion trustRegion = solveLsqTrustRegion(n, m, uf, s, V, Delta, + alpha); + double[] stepH = trustRegion.getStep(); + alpha = trustRegion.getAlpha(); + int nIterations = trustRegion.getIteration(); + double predictedReduction = -(evaluateQuadratic(J, g, stepH)); xNew = MiscMath.elementwiseAdd(hA, stepH); - fNew = originalToEquasionSystem(xNew, repMatrix, scoresOld, index); - nfev++; - - stepHnorm = MiscMath.norm(stepH); + fNew = originalToEquasionSystem(xNew, repMatrix, scoresOld, index); + nfev++; - if (MiscMath.countNaN(fNew) > 0) - { - Delta = 0.25 * stepHnorm; - continue; - } + stepHnorm = MiscMath.norm(stepH); - // usual trust-region step quality estimation - costNew = 0.5 * MiscMath.dot(fNew, fNew); - actualReduction = cost - costNew; + if (MiscMath.countNaN(fNew) > 0) + { + Delta = 0.25 * stepHnorm; + continue; + } - double[] updatedTrustRegion = updateTrustRegionRadius(Delta, actualReduction, predictedReduction, stepHnorm, stepHnorm > (0.95 * Delta)); - double DeltaNew = updatedTrustRegion[0]; - double ratio = updatedTrustRegion[1]; + // usual trust-region step quality estimation + costNew = 0.5 * MiscMath.dot(fNew, fNew); + actualReduction = cost - costNew; - // default ftol and xtol = 1e-8 - boolean ftolSatisfied = actualReduction < (1e-8 * cost) && ratio > 0.25; - boolean xtolSatisfied = stepHnorm < (1e-8 * (1e-8 + MiscMath.norm(hA))); - terminationStatus = ftolSatisfied || xtolSatisfied; - if (terminationStatus) - { - break; - } + double[] updatedTrustRegion = updateTrustRegionRadius(Delta, + actualReduction, predictedReduction, stepHnorm, + stepHnorm > (0.95 * Delta)); + double DeltaNew = updatedTrustRegion[0]; + double ratio = updatedTrustRegion[1]; - alpha *= Delta / DeltaNew; - Delta = DeltaNew; + // default ftol and xtol = 1e-8 + boolean ftolSatisfied = actualReduction < (1e-8 * cost) + && ratio > 0.25; + boolean xtolSatisfied = stepHnorm < (1e-8 + * (1e-8 + MiscMath.norm(hA))); + terminationStatus = ftolSatisfied || xtolSatisfied; + if (terminationStatus) + { + break; + } + + alpha *= Delta / DeltaNew; + Delta = DeltaNew; } if (actualReduction > 0) { - hA = xNew; - f0 = fNew; - cost = costNew; + hA = xNew; + f0 = fNew; + cost = costNew; - J = approximateDerivative(repMatrix, scoresOld, index); + J = approximateDerivative(repMatrix, scoresOld, index); g = J.transpose().sumProduct(f0); - } else { + } + else + { stepHnorm = 0; - actualReduction = 0; + actualReduction = 0; } iteration++; } @@ -828,16 +930,20 @@ public class ccAnalysis } /** - * performs the least squares optimisation - * adapted from https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.least_squares.html#scipy.optimize.least_squares - * - * @param repMatrix ~ Matrix containing representative vectors - * @param scoresOld ~ Matrix containing initial observations - * @param index ~ current row index - * - * @return - */ - private double[] leastSquaresOptimisation(MatrixI repMatrix, MatrixI scoresOld, int index) + * performs the least squares optimisation adapted from + * https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.least_squares.html#scipy.optimize.least_squares + * + * @param repMatrix + * ~ Matrix containing representative vectors + * @param scoresOld + * ~ Matrix containing initial observations + * @param index + * ~ current row index + * + * @return + */ + private double[] leastSquaresOptimisation(MatrixI repMatrix, + MatrixI scoresOld, int index) { MatrixI J = approximateDerivative(repMatrix, scoresOld, index); double[] result = trf(repMatrix, scoresOld, index, J); diff --git a/src/jalview/analysis/scoremodels/DistanceScoreModel.java b/src/jalview/analysis/scoremodels/DistanceScoreModel.java index 55510bd..1bdaad6 100644 --- a/src/jalview/analysis/scoremodels/DistanceScoreModel.java +++ b/src/jalview/analysis/scoremodels/DistanceScoreModel.java @@ -57,5 +57,5 @@ public abstract class DistanceScoreModel implements ScoreModelI return similarities; } - + } diff --git a/src/jalview/analysis/scoremodels/FeatureDistanceModel.java b/src/jalview/analysis/scoremodels/FeatureDistanceModel.java index df45a72..bcc0855 100644 --- a/src/jalview/analysis/scoremodels/FeatureDistanceModel.java +++ b/src/jalview/analysis/scoremodels/FeatureDistanceModel.java @@ -235,7 +235,7 @@ public class FeatureDistanceModel extends DistanceScoreModel public boolean isProtein() { return true; - } + } @Override public String toString() diff --git a/src/jalview/analysis/scoremodels/ScoreModels.java b/src/jalview/analysis/scoremodels/ScoreModels.java index f591c8e..490ec00 100644 --- a/src/jalview/analysis/scoremodels/ScoreModels.java +++ b/src/jalview/analysis/scoremodels/ScoreModels.java @@ -40,7 +40,7 @@ public class ScoreModels private final ScoreMatrix PAM250; private final ScoreMatrix DNA; - + private final ScoreMatrix SECONDARYSTRUCTURE; private static ScoreModels instance; @@ -70,7 +70,7 @@ public class ScoreModels *
  • PAM250
  • *
  • PID
  • *
  • DNA
  • - *
  • Sequence Feature Similarity
  • * + *
  • Sequence Feature Similarity
  • * *
  • Secondary Structure Similarity
  • * */ @@ -85,8 +85,9 @@ public class ScoreModels DNA = loadScoreMatrix("scoreModel/dna.scm"); registerScoreModel(new PIDModel()); registerScoreModel(new FeatureDistanceModel()); - SECONDARYSTRUCTURE = loadScoreMatrix("scoreModel/secondarystructure.scm"); - registerScoreModel(new SecondaryStructureDistanceModel()); + SECONDARYSTRUCTURE = loadScoreMatrix( + "scoreModel/secondarystructure.scm"); + registerScoreModel(new SecondaryStructureDistanceModel()); } @@ -146,7 +147,8 @@ public class ScoreModels public void registerScoreModel(ScoreModelI sm) { - if(sm.getName().equals("SECONDARYSTRUCTURE")) { + if (sm.getName().equals("SECONDARYSTRUCTURE")) + { return; } ScoreModelI sm2 = models.get(sm.getName()); @@ -187,7 +189,7 @@ public class ScoreModels { return PAM250; } - + public ScoreMatrix getSecondaryStructureMatrix() { return SECONDARYSTRUCTURE; diff --git a/src/jalview/analysis/scoremodels/SecondaryStructureDistanceModel.java b/src/jalview/analysis/scoremodels/SecondaryStructureDistanceModel.java index ceccec0..6ed94b2 100644 --- a/src/jalview/analysis/scoremodels/SecondaryStructureDistanceModel.java +++ b/src/jalview/analysis/scoremodels/SecondaryStructureDistanceModel.java @@ -49,20 +49,19 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel private static final String NAME = "Secondary Structure Similarity"; private ScoreMatrix ssRateMatrix; - - private String description; - + + private String description; + FeatureRenderer fr; - - + /** * Constructor */ public SecondaryStructureDistanceModel() { - + } - + @Override public ScoreModelI getInstance(AlignmentViewPanel view) { @@ -89,51 +88,56 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel fr = view.cloneFeatureRenderer(); return true; } - + ArrayList ssForSeqs = null; @Override public SequenceI[] expandSeqData(SequenceI[] sequences, - AlignmentView seqData, SimilarityParamsI scoreParams,List labels) + AlignmentView seqData, SimilarityParamsI scoreParams, + List labels) { ssForSeqs = new ArrayList(); List newSequences = new ArrayList(); List newCigs = new ArrayList(); int sq = 0; - - AlignmentAnnotation[] alignAnnotList = fr.getViewport().getAlignment() - .getAlignmentAnnotation(); - - String ssSource = scoreParams.getSecondaryStructureSource(); - if(ssSource == null || ssSource == "") { + .getAlignmentAnnotation(); + + String ssSource = scoreParams.getSecondaryStructureSource(); + if (ssSource == null || ssSource == "") + { ssSource = Constants.SS_ALL_PROVIDERS; } - + /* * Add secondary structure annotations that are added to the annotation track * to the map */ - Map> ssAlignmentAnnotationForSequences - = AlignmentUtils.getSequenceAssociatedAlignmentAnnotations(alignAnnotList, ssSource); - + Map> ssAlignmentAnnotationForSequences = AlignmentUtils + .getSequenceAssociatedAlignmentAnnotations(alignAnnotList, + ssSource); + for (SeqCigar scig : seqData.getSequences()) { // get the next sequence that should be bound to this scig: may be null SequenceI alSeq = sequences[sq++]; - List ssec = ssAlignmentAnnotationForSequences.get(scig.getRefSeq()); + List ssec = ssAlignmentAnnotationForSequences + .get(scig.getRefSeq()); if (ssec == null) { // not defined newSequences.add(alSeq); - if (alSeq!=null) { + if (alSeq != null) + { labels.add("No Secondary Structure"); } - SeqCigar newSeqCigar = scig; //new SeqCigar(scig); + SeqCigar newSeqCigar = scig; // new SeqCigar(scig); newCigs.add(newSeqCigar); ssForSeqs.add(null); - } else { + } + else + { for (int i = 0; i < ssec.size(); i++) { if (alSeq != null) @@ -141,7 +145,7 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel labels.add(AlignmentUtils .extractSSSourceFromAnnotationDescription(ssec.get(i))); } - //newSequences.add(seq); + // newSequences.add(seq); newSequences.add(alSeq); SeqCigar newSeqCigar = scig; // new SeqCigar(scig); newCigs.add(newSeqCigar); @@ -156,25 +160,30 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel } /** - * Calculates distance score [i][j] between each pair of protein sequences - * based on their secondary structure annotations (H, E, C). - * The final score is normalised by the number of - * alignment columns processed, providing an average similarity score. + * Calculates distance score [i][j] between each pair of protein sequences + * based on their secondary structure annotations (H, E, C). The final score + * is normalised by the number of alignment columns processed, providing an + * average similarity score. *

    - * The parameters argument can include settings for handling gap-residue aligned - * positions and may determine if the score calculation is based on the longer or shorter - * sequence in each pair. This can be important for handling partial alignments or - * sequences of significantly different lengths. + * The parameters argument can include settings for handling gap-residue + * aligned positions and may determine if the score calculation is based on + * the longer or shorter sequence in each pair. This can be important for + * handling partial alignments or sequences of significantly different + * lengths. * - * @param seqData The aligned sequence data including secondary structure annotations. - * @param params Additional parameters for customising the scoring process, such as gap - * handling and sequence length consideration. + * @param seqData + * The aligned sequence data including secondary structure + * annotations. + * @param params + * Additional parameters for customising the scoring process, such as + * gap handling and sequence length consideration. */ @Override public MatrixI findDistances(AlignmentView seqData, SimilarityParamsI params) - { - if (ssForSeqs==null || ssForSeqs.size()!=seqData.getSequences().length) + { + if (ssForSeqs == null + || ssForSeqs.size() != seqData.getSequences().length) { // expandSeqData needs to be called to initialise the hash SequenceI[] sequences = new SequenceI[seqData.getSequences().length]; @@ -182,20 +191,21 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel expandSeqData(sequences, seqData, params, new ArrayList()); } SeqCigar[] seqs = seqData.getSequences(); - int noseqs = seqs.length; //no of sequences - int cpwidth = 0; - double[][] similarities = new double[noseqs][noseqs]; //matrix to store similarity score - //secondary structure source parameter selected by the user from the drop down. - String ssSource = params.getSecondaryStructureSource(); - if(ssSource == null || ssSource == "") { + int noseqs = seqs.length; // no of sequences + int cpwidth = 0; + double[][] similarities = new double[noseqs][noseqs]; // matrix to store + // similarity score + // secondary structure source parameter selected by the user from the drop + // down. + String ssSource = params.getSecondaryStructureSource(); + if (ssSource == null || ssSource == "") + { ssSource = Constants.SS_ALL_PROVIDERS; } ssRateMatrix = ScoreModels.getInstance().getSecondaryStructureMatrix(); - + // need to get real position for view position int[] viscont = seqData.getVisibleContigs(); - - /* * scan each column, compute and add to each similarity[i, j] @@ -204,15 +214,16 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel */ for (int vc = 0; vc < viscont.length; vc += 2) { - //Iterates for each column position - for (int cpos = viscont[vc]; cpos <= viscont[vc + 1]; cpos++) + // Iterates for each column position + for (int cpos = viscont[vc]; cpos <= viscont[vc + 1]; cpos++) { - cpwidth++; //used to normalise the similarity score + cpwidth++; // used to normalise the similarity score /* * get set of sequences without gap in the current column */ - Set seqsWithoutGapAtCol = findSeqsWithoutGapAtColumn(seqs, cpos); + Set seqsWithoutGapAtCol = findSeqsWithoutGapAtColumn(seqs, + cpos); /* * calculate similarity score for each secondary structure annotation on i'th and j'th @@ -292,30 +303,31 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel * and fill in the bottom half of the matrix */ // TODO JAL-2424 cpwidth may be out by 1 - affects scores but not tree shape - + for (int i = 0; i < noseqs; i++) { for (int j = i + 1; j < noseqs; j++) - { + { similarities[i][j] /= cpwidth; similarities[j][i] = similarities[i][j]; } } - return SimilarityScoreModel.similarityToDistance(new Matrix(similarities)); - + return SimilarityScoreModel + .similarityToDistance(new Matrix(similarities)); + } /** - * Builds and returns a set containing sequences (SeqCigar) which do not - * have a gap at the given column position. + * Builds and returns a set containing sequences (SeqCigar) which do not have + * a gap at the given column position. * * @param seqs * @param columnPosition * (0..) * @return */ - private Set findSeqsWithoutGapAtColumn( - SeqCigar[] seqs, int columnPosition) + private Set findSeqsWithoutGapAtColumn(SeqCigar[] seqs, + int columnPosition) { Set seqsWithoutGapAtCol = new HashSet<>(); for (SeqCigar seq : seqs) @@ -325,14 +337,13 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel { /* * position is not a gap - */ + */ seqsWithoutGapAtCol.add(seq); } } return seqsWithoutGapAtCol; } - @Override public String getName() { @@ -348,7 +359,7 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel @Override public boolean isDNA() { - return false; + return false; } @Override @@ -356,7 +367,7 @@ public class SecondaryStructureDistanceModel extends DistanceScoreModel { return false; } - + @Override public boolean isSecondaryStructure() { diff --git a/src/jalview/analysis/scoremodels/SimilarityParams.java b/src/jalview/analysis/scoremodels/SimilarityParams.java index 2a25fa8..40a4636 100644 --- a/src/jalview/analysis/scoremodels/SimilarityParams.java +++ b/src/jalview/analysis/scoremodels/SimilarityParams.java @@ -103,7 +103,7 @@ public class SimilarityParams implements SimilarityParamsI private boolean includeGaps; private boolean denominateByShortestLength; - + private String secondaryStructureSource; /** diff --git a/src/jalview/api/AlignViewControllerI.java b/src/jalview/api/AlignViewControllerI.java index 25e4873..098024c 100644 --- a/src/jalview/api/AlignViewControllerI.java +++ b/src/jalview/api/AlignViewControllerI.java @@ -121,7 +121,9 @@ public interface AlignViewControllerI /** * Justify alignment or currently selected region left or right - * @param left - true - means justify left + * + * @param left + * - true - means justify left * @return */ boolean justify_Region(boolean left); diff --git a/src/jalview/api/AlignViewportI.java b/src/jalview/api/AlignViewportI.java index 2cdb251..5e1b812 100644 --- a/src/jalview/api/AlignViewportI.java +++ b/src/jalview/api/AlignViewportI.java @@ -85,9 +85,9 @@ public interface AlignViewportI extends ViewStyleI boolean isValidCharWidth(); boolean isShowConsensusHistogram(); - + boolean isShowSequenceLogo(); - + boolean isNormaliseSequenceLogo(); ColourSchemeI getGlobalColourScheme(); @@ -129,9 +129,8 @@ public interface AlignViewportI extends ViewStyleI * @return */ AlignmentAnnotation getAlignmentConsensusAnnotation(); - - List getAlignmentSecondaryStructureConsensusAnnotation(); + List getAlignmentSecondaryStructureConsensusAnnotation(); /** * get the container for alignment gap annotation @@ -178,9 +177,9 @@ public interface AlignViewportI extends ViewStyleI * @param hconsensus */ void setSequenceConsensusHash(ProfilesI hconsensus); - - void setSequenceSSConsensusHash(Map hSSConsesnusProfileMap); - + + void setSequenceSSConsensusHash( + Map hSSConsesnusProfileMap); /** * Set the cDNA complement consensus for the viewport @@ -571,6 +570,7 @@ public interface AlignViewportI extends ViewStyleI * @return */ Iterator getViewAsVisibleContigs(boolean selectedRegionOnly); + /** * notify all concerned that the alignment data has changed and derived data * needs to be recalculated @@ -578,7 +578,8 @@ public interface AlignViewportI extends ViewStyleI public void notifyAlignmentChanged(); /** - * retrieve a matrix associated with the view's alignment's annotation + * retrieve a matrix associated with the view's alignment's annotation + * * @param alignmentAnnotation * @return contact matrix or NULL */ diff --git a/src/jalview/api/ViewStyleI.java b/src/jalview/api/ViewStyleI.java index bed31c4..78bd2c9 100644 --- a/src/jalview/api/ViewStyleI.java +++ b/src/jalview/api/ViewStyleI.java @@ -38,7 +38,7 @@ public interface ViewStyleI boolean getColourAppliesToAllGroups(); boolean getAbovePIDThreshold(); - + boolean getByConsensusSecondaryStructureSelected(); void setIncrement(int inc); @@ -66,9 +66,9 @@ public interface ViewStyleI boolean getScaleRightWrapped(); void setAbovePIDThreshold(boolean b); - + void setByConsensusSecondaryStructureSelected(boolean b); - + void setShowStructureProvider(boolean b); boolean isShowStructureProvider(); diff --git a/src/jalview/api/analysis/ScoreModelI.java b/src/jalview/api/analysis/ScoreModelI.java index 3613afd..d6ab555 100644 --- a/src/jalview/api/analysis/ScoreModelI.java +++ b/src/jalview/api/analysis/ScoreModelI.java @@ -65,21 +65,18 @@ public interface ScoreModelI // TODO getName, isDNA, isProtein can be static methods in Java 8 - default public boolean isSecondaryStructure() { return false; } /** - * Answers false by default - * Answers true if the data has secondary structure (so should be - * shown in menus in that context) + * Answers false by default Answers true if the data has secondary structure + * (so should be shown in menus in that context) * * @return */ - - + /** * Returns a distance score for the given sequence regions, that is, a matrix * whose value [i][j] is the distance of sequence i from sequence j by some @@ -117,13 +114,22 @@ public interface ScoreModelI ScoreModelI getInstance(AlignmentViewPanel avp); /** - * Score models may create multiple leaves for a single sequence - implement this method if you do - * @param sequences - sequences to be filtered/expanded set of leaves - * @param seqData - origin - * @param labels - strings to show instead of the SequenceI.getName() for each element of sequences attached to leaves + * Score models may create multiple leaves for a single sequence - implement + * this method if you do + * + * @param sequences + * - sequences to be filtered/expanded set of leaves + * @param seqData + * - origin + * @param labels + * - strings to show instead of the SequenceI.getName() for each + * element of sequences attached to leaves * @return filtered/expanded set of leaves to be analysed */ - default SequenceI[] expandSeqData(SequenceI[] sequences, AlignmentView seqData, SimilarityParamsI scoreParams, List labels) { - return sequences; + default SequenceI[] expandSeqData(SequenceI[] sequences, + AlignmentView seqData, SimilarityParamsI scoreParams, + List labels) + { + return sequences; }; } diff --git a/src/jalview/api/analysis/SimilarityParamsI.java b/src/jalview/api/analysis/SimilarityParamsI.java index 43f2866..2558515 100644 --- a/src/jalview/api/analysis/SimilarityParamsI.java +++ b/src/jalview/api/analysis/SimilarityParamsI.java @@ -60,7 +60,7 @@ public interface SimilarityParamsI * @return */ boolean denominateByShortestLength(); - + String getSecondaryStructureSource(); void setSecondaryStructureSource(String secondaryStructureSource); diff --git a/src/jalview/appletgui/AlignFrame.java b/src/jalview/appletgui/AlignFrame.java index 55a5364..b77ee85 100644 --- a/src/jalview/appletgui/AlignFrame.java +++ b/src/jalview/appletgui/AlignFrame.java @@ -3432,8 +3432,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener, Menu autoAnnMenu = new Menu( MessageManager.getString("label.autocalculated_annotation")); - Menu selectSS = new Menu( - MessageManager.getString("label.select_secondary_structure_source")); + Menu selectSS = new Menu(MessageManager + .getString("label.select_secondary_structure_source")); showGroupConsensus.addItemListener(this); showGroupConservation.addItemListener(this); showConsensusHistogram.addItemListener(this); diff --git a/src/jalview/bin/Cache.java b/src/jalview/bin/Cache.java index a45fc42..8c3c5dd 100755 --- a/src/jalview/bin/Cache.java +++ b/src/jalview/bin/Cache.java @@ -1489,11 +1489,10 @@ public class Cache if (customProxySet && // we have a username but no password for the scheme being // requested - (protocol.equalsIgnoreCase("http") - && (httpUser != null - && httpUser.length() > 0 - && (httpPassword == null - || httpPassword.length == 0))) + (protocol.equalsIgnoreCase("http") + && (httpUser != null && httpUser.length() > 0 + && (httpPassword == null + || httpPassword.length == 0))) || (protocol.equalsIgnoreCase("https") && (httpsUser != null && httpsUser.length() > 0 diff --git a/src/jalview/bin/JalviewLite.java b/src/jalview/bin/JalviewLite.java index 7e1296e..2e2dd49 100644 --- a/src/jalview/bin/JalviewLite.java +++ b/src/jalview/bin/JalviewLite.java @@ -2251,8 +2251,8 @@ public class JalviewLite extends Applet PDBEntry[] pdb = new PDBEntry[pdbs.size()]; String[][] chains = new String[pdbs.size()][]; String[] protocols = new String[pdbs.size()]; - for (int pdbsi = 0, - pdbsiSize = pdbs.size(); pdbsi < pdbsiSize; pdbsi++) + for (int pdbsi = 0, pdbsiSize = pdbs + .size(); pdbsi < pdbsiSize; pdbsi++) { Object[] o = (Object[]) pdbs.elementAt(pdbsi); pdb[pdbsi] = (PDBEntry) o[0]; diff --git a/src/jalview/commands/JustifyLeftOrRightCommand.java b/src/jalview/commands/JustifyLeftOrRightCommand.java index 2559662..c1eb655 100644 --- a/src/jalview/commands/JustifyLeftOrRightCommand.java +++ b/src/jalview/commands/JustifyLeftOrRightCommand.java @@ -58,8 +58,8 @@ public class JustifyLeftOrRightCommand extends EditCommand { continue; } - char[] range = seq.getSequence(from, to+1); - if (range==null || range.length==0) + char[] range = seq.getSequence(from, to + 1); + if (range == null || range.length == 0) { continue; } @@ -78,7 +78,7 @@ public class JustifyLeftOrRightCommand extends EditCommand alseq[gapstart + gp] = gc; } - for (int sqp = 0,insp=0; sqp codonFrameList; - + private void initAlignment(SequenceI[] seqs) { groups = Collections.synchronizedList(new ArrayList()); @@ -82,13 +82,12 @@ public class Alignment implements AlignmentI, AutoCloseable nucleotide = Comparison.isNucleotide(seqs); sequences = Collections.synchronizedList(new ArrayList()); - for (int i = 0; i < seqs.length; i++) { sequences.add(seqs[i]); } - + } /** diff --git a/src/jalview/datamodel/AlignmentAnnotation.java b/src/jalview/datamodel/AlignmentAnnotation.java index d660f8f..12c7225 100755 --- a/src/jalview/datamodel/AlignmentAnnotation.java +++ b/src/jalview/datamodel/AlignmentAnnotation.java @@ -57,7 +57,7 @@ public class AlignmentAnnotation public static final int CDNA_PROFILE = 2; private static long counter = 0; - + private long noOfSequencesIncluded = -1; /** diff --git a/src/jalview/datamodel/BinaryNode.java b/src/jalview/datamodel/BinaryNode.java index 2b5894a..ef543db 100755 --- a/src/jalview/datamodel/BinaryNode.java +++ b/src/jalview/datamodel/BinaryNode.java @@ -34,7 +34,7 @@ public class BinaryNode String name; - String label=null; + String label = null; BinaryNode left; @@ -366,14 +366,17 @@ public class BinaryNode return oldstate; } + /** * check if there's a label to show + * * @return true if non-empty/null string */ public boolean hasLabel() { - return label!=null && !label.isEmpty(); + return label != null && !label.isEmpty(); } + public String getLabel() { return label; @@ -402,14 +405,15 @@ public class BinaryNode public String getDisplayName() { - if (name!=null && !name.isBlank()) + if (name != null && !name.isBlank()) { - - if (hasLabel()) { - return getName()+"|"+label; + + if (hasLabel()) + { + return getName() + "|" + label; } return name; } - return hasLabel() ? label:""; + return hasLabel() ? label : ""; } } diff --git a/src/jalview/datamodel/PDBEntry.java b/src/jalview/datamodel/PDBEntry.java index fb9e96a..08f3eff 100755 --- a/src/jalview/datamodel/PDBEntry.java +++ b/src/jalview/datamodel/PDBEntry.java @@ -516,7 +516,8 @@ public class PDBEntry if (_hasProperty(AUTHORITATIVE_ID)) { Object authId = getProperty(AUTHORITATIVE_ID); - return (authId instanceof Boolean) ? (Boolean) authId : Boolean.valueOf(authId.toString()); + return (authId instanceof Boolean) ? (Boolean) authId + : Boolean.valueOf(authId.toString()); } return false; } @@ -650,9 +651,9 @@ public class PDBEntry public void setProviderCategory(String providerCategory) { - setProperty(PROVIDERCATEGORY, providerCategory); + setProperty(PROVIDERCATEGORY, providerCategory); } - + public String getProviderCategory() { return (String) getProperty(PROVIDERCATEGORY); @@ -662,5 +663,5 @@ public class PDBEntry { return _hasProperty(PROVIDERCATEGORY); } - + } diff --git a/src/jalview/datamodel/Profile.java b/src/jalview/datamodel/Profile.java index bc87204..cd892e4 100644 --- a/src/jalview/datamodel/Profile.java +++ b/src/jalview/datamodel/Profile.java @@ -32,9 +32,9 @@ public class Profile implements ProfileI * an object holding counts of symbols in the profile */ private ResidueCount counts; - + private SecondaryStructureCount ssCounts; - + private int seqWithSSCount = -1; /* @@ -51,15 +51,15 @@ public class Profile implements ProfileI * the highest count for any residue in the profile */ private int maxCount; + private int maxSSCount; - /* * the residue (e.g. K) or residues (e.g. KQW) with the * highest count in the profile */ private String modalResidue; - + private String modalSS; /** @@ -82,8 +82,9 @@ public class Profile implements ProfileI this.maxCount = max; this.modalResidue = modalRes; } - - public Profile(String modalSS, int ssCount, int gaps, int maxSSCount, int seqWithSSCount) + + public Profile(String modalSS, int ssCount, int gaps, int maxSSCount, + int seqWithSSCount) { this.height = ssCount; this.gapped = gaps; @@ -100,7 +101,7 @@ public class Profile implements ProfileI { this.counts = residueCounts; } - + @Override public void setSSCounts(SecondaryStructureCount secondaryStructureCount) { @@ -128,7 +129,7 @@ public class Profile implements ProfileI } return pid; } - + @Override public float getSSPercentageIdentity(boolean ignoreGaps) { @@ -156,7 +157,7 @@ public class Profile implements ProfileI { return counts; } - + @Override public SecondaryStructureCount getSSCounts() { @@ -189,7 +190,7 @@ public class Profile implements ProfileI { return maxCount; } - + @Override public int getMaxSSCount() { @@ -204,7 +205,7 @@ public class Profile implements ProfileI { return modalResidue; } - + @Override public String getModalSS() { diff --git a/src/jalview/datamodel/ProfileI.java b/src/jalview/datamodel/ProfileI.java index 9046f23..3e01507 100644 --- a/src/jalview/datamodel/ProfileI.java +++ b/src/jalview/datamodel/ProfileI.java @@ -29,8 +29,9 @@ public interface ProfileI * @param residueCounts */ public abstract void setCounts(ResidueCount residueCounts); - public abstract void setSSCounts(SecondaryStructureCount secondaryStructureCount); - + + public abstract void setSSCounts( + SecondaryStructureCount secondaryStructureCount); /** * Returns the percentage identity of the profile, i.e. the highest proportion @@ -41,7 +42,7 @@ public interface ProfileI * @return */ public abstract float getPercentageIdentity(boolean ignoreGaps); - + public abstract float getSSPercentageIdentity(boolean ignoreGaps); /** @@ -57,7 +58,7 @@ public interface ProfileI * @return */ public abstract int getHeight(); - + public abstract int getSeqWithSSCount(); /** @@ -74,6 +75,7 @@ public interface ProfileI * @return */ public abstract int getMaxCount(); + public abstract int getMaxSSCount(); /** @@ -83,6 +85,7 @@ public interface ProfileI * @return */ public abstract String getModalResidue(); + public abstract String getModalSS(); /** @@ -91,6 +94,7 @@ public interface ProfileI * @return */ public abstract int getNonGapped(); + SecondaryStructureCount getSSCounts(); } \ No newline at end of file diff --git a/src/jalview/datamodel/SecondaryStructureCount.java b/src/jalview/datamodel/SecondaryStructureCount.java index 52e9746..7d1b43c 100644 --- a/src/jalview/datamodel/SecondaryStructureCount.java +++ b/src/jalview/datamodel/SecondaryStructureCount.java @@ -63,7 +63,6 @@ public class SecondaryStructureCount */ private static final String SS_SYMBOLS = "HEC"; - static final int GAP_COUNT = 0; /* @@ -116,7 +115,7 @@ public class SecondaryStructureCount */ public SecondaryStructureCount() { - //isSS = true; + // isSS = true; int charsToCount = SS_SYMBOLS.length(); counts = new short[charsToCount + 1]; } @@ -419,8 +418,7 @@ public class SecondaryStructureCount { if (intCounts[i] == count) { - modal.append( - SS_SYMBOLS.charAt(i - 1)); + modal.append(SS_SYMBOLS.charAt(i - 1)); } } } @@ -430,8 +428,7 @@ public class SecondaryStructureCount { if (counts[i] == count) { - modal.append( - SS_SYMBOLS.charAt(i - 1)); + modal.append(SS_SYMBOLS.charAt(i - 1)); } } } diff --git a/src/jalview/datamodel/SequenceGroup.java b/src/jalview/datamodel/SequenceGroup.java index 38104e5..a2eaf1d 100755 --- a/src/jalview/datamodel/SequenceGroup.java +++ b/src/jalview/datamodel/SequenceGroup.java @@ -136,7 +136,6 @@ public class SequenceGroup implements AnnotatedCollectionI * consensus calculation property */ private boolean showSequenceLogo = false; - /** * flag indicating if logo should be rendered normalised @@ -154,18 +153,17 @@ public class SequenceGroup implements AnnotatedCollectionI private boolean hidecols = false; AlignmentAnnotation consensus = null; - List ssConsensus = null; - + List secondaryStructureSources = null; AlignmentAnnotation conservation = null; private boolean showConsensusHistogram; - + private AnnotatedCollectionI context; - + public Map hSSConsensusProfileMap; /** @@ -418,7 +416,7 @@ public class SequenceGroup implements AnnotatedCollectionI } return tmp.toArray(new SequenceI[tmp.size()]); } - + public List getSecondaryStructureSources() { return secondaryStructureSources; @@ -633,38 +631,39 @@ public class SequenceGroup implements AnnotatedCollectionI cs.setConsensus(cnsns); upd = true; } - + hSSConsensusProfileMap = new HashMap(); - List ssSources = new ArrayList(); + List ssSources = new ArrayList(); AnnotatedCollectionI aa = this.getContext(); - - if(aa !=null ) + + if (aa != null) { - ssSources = AlignmentUtils.extractSSSourceInAlignmentAnnotation(aa.getAlignmentAnnotation()); + ssSources = AlignmentUtils.extractSSSourceInAlignmentAnnotation( + aa.getAlignmentAnnotation()); } - if(ssSources != null) { + if (ssSources != null) + { ssSources.add(Constants.SS_ALL_PROVIDERS); - for(String ssSource : ssSources) { - ProfilesI hSSConsensus = AAFrequency.calculateSS(sequences, startRes, endRes + 1, showSequenceLogo, - ssSource); + for (String ssSource : ssSources) + { + ProfilesI hSSConsensus = AAFrequency.calculateSS(sequences, + startRes, endRes + 1, showSequenceLogo, ssSource); hSSConsensusProfileMap.put(ssSource, hSSConsensus); } } - if (ssConsensus != null) { _updateSSConsensusRow(hSSConsensusProfileMap, sequences.size()); upd = true; } - + if (cs != null) { cs.setSSConsensusProfileMap(hSSConsensusProfileMap); upd = true; } - if ((conservation != null) || (cs != null && cs.conservationApplied())) @@ -754,68 +753,82 @@ public class SequenceGroup implements AnnotatedCollectionI // for // ignoreGapsInConsensusCalculation); } - - + /** - * Updates the secondary structure consensus row based on the provided profiles map and the number of sequences. + * Updates the secondary structure consensus row based on the provided + * profiles map and the number of sequences. * - * @param hSSConsensusProfileMap A map containing secondary structure consensus profiles for each providers. - * @param nseq The number of sequences. + * @param hSSConsensusProfileMap + * A map containing secondary structure consensus profiles for each + * providers. + * @param nseq + * The number of sequences. */ - private void _updateSSConsensusRow(Map hSSConsensusProfileMap, long nseq) + private void _updateSSConsensusRow( + Map hSSConsensusProfileMap, long nseq) { // Get a list of secondary structure sources from the profile map keys - List ssSources = new ArrayList<>(hSSConsensusProfileMap.keySet()); + List ssSources = new ArrayList<>( + hSSConsensusProfileMap.keySet()); secondaryStructureSources = new ArrayList(); // Sort the secondary structure sources alphabetically Collections.sort(ssSources); - + // Initialize ssConsensus if it is null if (ssConsensus == null) { getSSConsensus(ssSources); } - + // Iterate through each alignment annotation in the ssConsensus list - for (AlignmentAnnotation aa : ssConsensus) { + for (AlignmentAnnotation aa : ssConsensus) + { ProfilesI profile = null; String ssSource = null; - - // Find the matching profile for the current annotation based on its description - for(String source : ssSources) { - if(aa.description.startsWith(source)) { + + // Find the matching profile for the current annotation based on its + // description + for (String source : ssSources) + { + if (aa.description.startsWith(source)) + { profile = hSSConsensusProfileMap.get(source); ssSource = source; } } - + // If no matching profile is found, continue to the next annotation - if(profile == null) { + if (profile == null) + { continue; } - // Update the label and description of the annotation with the source/provider - aa.label = Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL + " " + ssSource + " " + getName(); - aa.description = ssSource + Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL +" for " + getName(); - + // Update the label and description of the annotation with the + // source/provider + aa.label = Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL + " " + + ssSource + " " + getName(); + aa.description = ssSource + + Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL + " for " + + getName(); + // Get the width of the annotations array int aWidth = (aa.annotations != null) - ? (endRes < aa.annotations.length - ? aa.annotations.length + ? (endRes < aa.annotations.length ? aa.annotations.length : endRes + 1) : endRes + 1; - aa.annotations = new Annotation[aWidth]; - + aa.annotations = new Annotation[aWidth]; + // Complete the secondary structure consensus AAFrequency.completeSSConsensus(aa, profile, startRes, endRes + 1, - ignoreGapsInConsensus, showSequenceLogo, nseq); - - //Add the provider to the list if the no of sequences - //contributed to the secondary structure consensus is - //more than 0. - if(aa.getNoOfSequencesIncluded()>0 && !Constants.SS_ALL_PROVIDERS.equals(ssSource)) - { + ignoreGapsInConsensus, showSequenceLogo, nseq); + + // Add the provider to the list if the no of sequences + // contributed to the secondary structure consensus is + // more than 0. + if (aa.getNoOfSequencesIncluded() > 0 + && !Constants.SS_ALL_PROVIDERS.equals(ssSource)) + { // Remove "All" from the hidden types list{ secondaryStructureSources.add(ssSource); } @@ -1247,7 +1260,7 @@ public class SequenceGroup implements AnnotatedCollectionI consensus = aan; } } - + public void setSSConsensusRow(AlignmentAnnotation aan) { @@ -1256,10 +1269,12 @@ public class SequenceGroup implements AnnotatedCollectionI ssConsensus = new ArrayList(); ssConsensus.add(aan); } - else { + else + { boolean annotExists = ssConsensus.stream() .anyMatch(ssa -> ssa.label.equals(aan.label)); - if(!annotExists) { + if (!annotExists) + { ssConsensus.add(aan); } } @@ -1293,7 +1308,7 @@ public class SequenceGroup implements AnnotatedCollectionI } return consensus; } - + public List getSSConsensus(List ssSources) { // TODO get or calculate and get consensus annotation row for this group @@ -1305,25 +1320,29 @@ public class SequenceGroup implements AnnotatedCollectionI { return null; } - if (ssConsensus == null && ssSources!=null) + if (ssConsensus == null && ssSources != null) { ssConsensus = new ArrayList(); - - for(String ssSource : ssSources) { - AlignmentAnnotation aa = new AlignmentAnnotation("", "", new Annotation[1], 0f, - 100f, AlignmentAnnotation.BAR_GRAPH); - // Setting the annotation visibility to true of the provider is "All" + + for (String ssSource : ssSources) + { + AlignmentAnnotation aa = new AlignmentAnnotation("", "", + new Annotation[1], 0f, 100f, AlignmentAnnotation.BAR_GRAPH); + // Setting the annotation visibility to true of the provider is "All" // and false otherwise. aa.visible = Constants.SS_ALL_PROVIDERS.equals(ssSource); aa.hasText = true; aa.autoCalculated = true; aa.groupRef = this; - aa.label = Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL + " " + ssSource + " " + getName(); - aa.description = ssSource + Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL +" for " + getName(); + aa.label = Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL + " " + + ssSource + " " + getName(); + aa.description = ssSource + + Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL + " for " + + getName(); ssConsensus.add(aa); } - + } return ssConsensus; } @@ -1429,7 +1448,7 @@ public class SequenceGroup implements AnnotatedCollectionI } this.showSequenceLogo = showSequenceLogo; } - + /** * * @param showConsHist diff --git a/src/jalview/ext/jmol/JalviewJmolBinding.java b/src/jalview/ext/jmol/JalviewJmolBinding.java index 1c19854..36b2546 100644 --- a/src/jalview/ext/jmol/JalviewJmolBinding.java +++ b/src/jalview/ext/jmol/JalviewJmolBinding.java @@ -785,15 +785,21 @@ public abstract class JalviewJmolBinding extends AAStructureBindingModel } else { - PDBEntry ppe=getPdbEntry(pe); - if (ppe==null) { - Console.warn("Please report under JAL-4440: Unexpected null entry for PDBEntry for a structure (for structure "+fileName+")"); - + PDBEntry ppe = getPdbEntry(pe); + if (ppe == null) + { + Console.warn( + "Please report under JAL-4440: Unexpected null entry for PDBEntry for a structure (for structure " + + fileName + ")"); + continue; } - if (ppe.getFile()==null) + if (ppe.getFile() == null) { - Console.warn("Please report under JAL-4440: Unexpected null entry for file that we just tried to load into Jmol: pdbEntry: "+ppe.toString()+"(for structure "+fileName+")"); + Console.warn( + "Please report under JAL-4440: Unexpected null entry for file that we just tried to load into Jmol: pdbEntry: " + + ppe.toString() + "(for structure " + fileName + + ")"); continue; } File fl = new File(getPdbEntry(pe).getFile()); diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index 3885d4f..6affe38 100644 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -4255,7 +4255,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, //// *************************************************** //// TODO REFACTOR TREE I/O TO CONTROLLER/SEPARATE CLASS //// *************************************************** - + /** * DOCUMENT ME! * @@ -4362,8 +4362,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, return tp; } - public TreePanel showNewickTreeForAnnotation(NewickFile nf, String treeTitle, - AlignmentView input, int w, int h, int x, int y) + + public TreePanel showNewickTreeForAnnotation(NewickFile nf, + String treeTitle, AlignmentView input, int w, int h, int x, int y) { TreePanel tp = null; @@ -4373,7 +4374,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, if (nf.getTree() != null) { - tp = TreePanel.newTreeForAnnotations(alignPanel, nf, treeTitle, input); + tp = TreePanel.newTreeForAnnotations(alignPanel, nf, treeTitle, + input); // TODO - refactor layout code to one place for tree view methods tp.setSize(w, h); @@ -4392,7 +4394,6 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, return tp; } - public void showContactMapTree(AlignmentAnnotation aa, ContactMatrixI cm) { int x = 4, y = 5; @@ -5780,8 +5781,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, { viewport.setShowStructureProvider(showStrucProvider.getState()); alignPanel.paintAlignment(false, false); - + } + @Override protected void updateShowSecondaryStructureMenu(JMenu showSS, ButtonGroup ssButtonGroup) diff --git a/src/jalview/gui/AlignViewport.java b/src/jalview/gui/AlignViewport.java index 9430a8b..c2b77c7 100644 --- a/src/jalview/gui/AlignViewport.java +++ b/src/jalview/gui/AlignViewport.java @@ -242,7 +242,8 @@ public class AlignViewport extends AlignmentViewport .getDefault(Preferences.SHOW_AUTOCALC_ABOVE, false); viewStyle.setScaleProteinAsCdna( Cache.getDefault(Preferences.SCALE_PROTEIN_TO_CDNA, true)); - viewStyle.setShowStructureProvider(Cache.getDefault(Preferences.SHOW_STRUC_PROVIDER, false)); + viewStyle.setShowStructureProvider( + Cache.getDefault(Preferences.SHOW_STRUC_PROVIDER, false)); } void init() @@ -287,7 +288,7 @@ public class AlignViewport extends AlignmentViewport false); showGroupConsensus = Cache.getDefault("SHOW_GROUP_CONSENSUS", false); showConsensus = Cache.getDefault("SHOW_IDENTITY", true); - + showSSConsensus = Cache.getDefault("SHOW_SS_CONSENSUS", false); showOccupancy = Cache.getDefault(Preferences.SHOW_OCCUPANCY, true); diff --git a/src/jalview/gui/AnnotationLabels.java b/src/jalview/gui/AnnotationLabels.java index 9478c6f..3b968a4 100755 --- a/src/jalview/gui/AnnotationLabels.java +++ b/src/jalview/gui/AnnotationLabels.java @@ -249,13 +249,15 @@ public class AnnotationLabels extends JPanel { ap.av.getAlignment().deleteAnnotation(aa[selectedRow]); ap.av.getCalcManager().removeWorkerForAnnotation(aa[selectedRow]); - - + List workers = ap.av.getCalcManager() - .getRegisteredWorkersOfClass(SecondaryStructureConsensusThread.class); - if (!workers.isEmpty()) { - - ap.alignFrame.getViewport().getCalcManager().startWorker(workers.remove(0)); + .getRegisteredWorkersOfClass( + SecondaryStructureConsensusThread.class); + if (!workers.isEmpty()) + { + + ap.alignFrame.getViewport().getCalcManager() + .startWorker(workers.remove(0)); } } @@ -882,11 +884,11 @@ public class AnnotationLabels extends JPanel { msg.append(aa.sequenceRef.getName()).append(" : "); } - + if (aa.graphGroup == -1) { msg.append(aa.label); - if(aa.getNoOfSequencesIncluded()>=0) + if (aa.getNoOfSequencesIncluded() >= 0) { msg.append(" ("); msg.append(MessageManager.getString("label.sequence_count")); @@ -894,7 +896,7 @@ public class AnnotationLabels extends JPanel msg.append(")"); } } - + else if (anns != null) { boolean first = true; @@ -937,10 +939,10 @@ public class AnnotationLabels extends JPanel // jalview.gui.SeqPanel.mouseMoved(..) that formats sequence feature // tooltips String desc = aa.getDescription(true).trim(); - if(aa.getNoOfSequencesIncluded()>=0) { + if (aa.getNoOfSequencesIncluded() >= 0) + { desc += " (" + MessageManager.getString("label.sequence_count") - + aa.getNoOfSequencesIncluded() - + ")"; + + aa.getNoOfSequencesIncluded() + ")"; } if (!desc.toLowerCase(Locale.ROOT).startsWith(HTML_START_TAG)) { @@ -1494,11 +1496,15 @@ public class AnnotationLabels extends JPanel vertBar = true; } } - - if(isShowStructureProvider && aa[i].hasIcons && Constants.SECONDARY_STRUCTURE_LABELS.keySet().contains(aa[i].label)) { - String ssSource = AlignmentUtils.extractSSSourceFromAnnotationDescription(aa[i]); - if(ssSource != null && ssSource.length()>0) - label += " (" + ssSource + ")"; + + if (isShowStructureProvider && aa[i].hasIcons + && Constants.SECONDARY_STRUCTURE_LABELS.keySet() + .contains(aa[i].label)) + { + String ssSource = AlignmentUtils + .extractSSSourceFromAnnotationDescription(aa[i]); + if (ssSource != null && ssSource.length() > 0) + label += " (" + ssSource + ")"; } int labelWidth = fm.stringWidth(label) + 3; diff --git a/src/jalview/gui/AppJmol.java b/src/jalview/gui/AppJmol.java index 4d0de1b..d37c9c0 100644 --- a/src/jalview/gui/AppJmol.java +++ b/src/jalview/gui/AppJmol.java @@ -423,12 +423,13 @@ public class AppJmol extends StructureViewerBase public boolean isRepainting() { - if (renderPanel!=null && renderPanel.isVisible()) + if (renderPanel != null && renderPanel.isVisible()) { return renderPanel.repainting; } return false; } + /** * Outputs the Jmol viewer image as an image file, after prompting the user to * choose a file and (for EPS) choice of Text or Lineart character rendering @@ -441,10 +442,12 @@ public class AppJmol extends StructureViewerBase { while (!isRepainting()) { - try { + try + { Thread.sleep(2); } catch (Exception q) - {} + { + } } try { @@ -642,17 +645,18 @@ public class AppJmol extends StructureViewerBase } else { - repainting=true; + repainting = true; synchronized (jmb) { jmb.jmolViewer.renderScreenImage(g, currentSize.width, currentSize.height); - + } - repainting=false; + repainting = false; } } - volatile boolean repainting=false; + + volatile boolean repainting = false; } @Override diff --git a/src/jalview/gui/CalculationChooser.java b/src/jalview/gui/CalculationChooser.java index 2e4e99d..fd8745d 100644 --- a/src/jalview/gui/CalculationChooser.java +++ b/src/jalview/gui/CalculationChooser.java @@ -541,13 +541,14 @@ public class CalculationChooser extends JPanel final JComboBox comboBox = new JComboBox<>(); Object curSel = comboBox.getSelectedItem(); DefaultComboBoxModel sourcesModel = new DefaultComboBoxModel<>(); - + List ssSources = getApplicableSecondaryStructureSources(); - - if(ssSources == null) { + + if (ssSources == null) + { return comboBox; } - ssSources.add(0, MessageManager.getString("option.ss_providers_all")); + ssSources.add(0, MessageManager.getString("option.ss_providers_all")); boolean selectedIsPresent = false; for (String source : ssSources) @@ -639,8 +640,10 @@ public class CalculationChooser extends JPanel * * @param nucleotide * @param forPca - * @param ssPresent - include secondary structure similarity model - * @param forPasimap - limit to ScoreMatrix based models - allows use of AlignSeq + * @param ssPresent + * - include secondary structure similarity model + * @param forPasimap + * - limit to ScoreMatrix based models - allows use of AlignSeq * @return */ protected static List getApplicableScoreModels( @@ -652,7 +655,7 @@ public class CalculationChooser extends JPanel ScoreModels scoreModels = ScoreModels.getInstance(); for (ScoreModelI sm : scoreModels.getModels()) { - if ((!forPasimap || sm instanceof ScoreMatrix) + if ((!forPasimap || sm instanceof ScoreMatrix) && (!nucleotide && sm.isProtein() || nucleotide && sm.isDNA() || sm.isSecondaryStructure() && ssPresent)) @@ -676,9 +679,11 @@ public class CalculationChooser extends JPanel protected List getApplicableSecondaryStructureSources() { - AlignmentAnnotation[] annotations = af.getViewport().getAlignment().getAlignmentAnnotation(); - - List ssSources = AlignmentUtils.extractSSSourceInAlignmentAnnotation(annotations); + AlignmentAnnotation[] annotations = af.getViewport().getAlignment() + .getAlignmentAnnotation(); + + List ssSources = AlignmentUtils + .extractSSSourceInAlignmentAnnotation(annotations); return ssSources; } @@ -694,16 +699,18 @@ public class CalculationChooser extends JPanel : modelNames.getSelectedItem().toString(); String ssSource = null; - - if (modelName.equals(secondaryStructureModelName)) { + + if (modelName.equals(secondaryStructureModelName)) + { Object selectedItem = ssSourceDropdown.getSelectedItem(); - if (selectedItem != null) { - ssSource = selectedItem.toString(); + if (selectedItem != null) + { + ssSource = selectedItem.toString(); } } SimilarityParams params = getSimilarityParameters(doPCA); params.setSecondaryStructureSource(ssSource); - + if (doPCA) { openPcaPanel(modelName, params); diff --git a/src/jalview/gui/CutAndPasteTransfer.java b/src/jalview/gui/CutAndPasteTransfer.java index 299af6b..10aa229 100644 --- a/src/jalview/gui/CutAndPasteTransfer.java +++ b/src/jalview/gui/CutAndPasteTransfer.java @@ -94,13 +94,14 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer /** * set font size of the textarea + * * @param size */ public void setFont(Font font) { textarea.setFont(font); } - + /** * DOCUMENT ME! */ @@ -217,11 +218,12 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer { } } - + /** - * show menu for changing the font - * @param e - */ + * show menu for changing the font + * + * @param e + */ @Override public void fontSizeMenu_actionPerformed(ActionEvent e) { diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index c144268..9c542a3 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -2945,11 +2945,11 @@ public class Desktop extends jalview.jbgui.GDesktop if (progressBars.get(Long.valueOf(id)) == null) return null; - + for (Component c : progressBars.get(Long.valueOf(id)).getComponents()) { if (c.getClass() == JProgressBar.class) - return (JProgressBar) c; + return (JProgressBar) c; } return null; } diff --git a/src/jalview/gui/FontChooser.java b/src/jalview/gui/FontChooser.java index 853d4aa..1ec4881 100755 --- a/src/jalview/gui/FontChooser.java +++ b/src/jalview/gui/FontChooser.java @@ -113,8 +113,9 @@ public class FontChooser extends GFontChooser /** * Creates a new FontChooser for a CutAndPasteTransfer + * * @param cap - */ + */ public FontChooser(CutAndPasteTransfer cap) { oldFont = new Font("Monospaced", Font.PLAIN, 12); @@ -131,7 +132,7 @@ public class FontChooser extends GFontChooser if (!isCapFont()) { smoothFont.setSelected(ap.av.antiAlias); - + /* * Enable 'scale protein as cDNA' in a SplitFrame view. The selection is * stored in the ViewStyle of both dna and protein Viewport. Also enable @@ -289,6 +290,7 @@ public class FontChooser extends GFontChooser { return cap != null; } + /** * DOCUMENT ME! */ diff --git a/src/jalview/gui/PCAPanel.java b/src/jalview/gui/PCAPanel.java index 1bf1e76..42e2e40 100644 --- a/src/jalview/gui/PCAPanel.java +++ b/src/jalview/gui/PCAPanel.java @@ -133,12 +133,15 @@ public class PCAPanel extends GPCAPanel setRotatableCanvas(new RotatableCanvas(alignPanel)); - if(params.getSecondaryStructureSource()!=null ) { + if (params.getSecondaryStructureSource() != null) + { // Initialize and set subtitle text - JLabel subtitleLabel = new JLabel(" Secondary Structure Provider : " - + params.getSecondaryStructureSource(), SwingConstants.LEFT); - this.getContentPane().add(subtitleLabel, BorderLayout.NORTH); - + JLabel subtitleLabel = new JLabel( + " Secondary Structure Provider : " + + params.getSecondaryStructureSource(), + SwingConstants.LEFT); + this.getContentPane().add(subtitleLabel, BorderLayout.NORTH); + } this.getContentPane().add(getRotatableCanvas(), BorderLayout.CENTER); diff --git a/src/jalview/gui/PaSiMapPanel.java b/src/jalview/gui/PaSiMapPanel.java index 702c4f4..7926efc 100644 --- a/src/jalview/gui/PaSiMapPanel.java +++ b/src/jalview/gui/PaSiMapPanel.java @@ -101,12 +101,12 @@ public class PaSiMapPanel extends GPaSiMapPanel */ public PaSiMapPanel(AlignmentPanel alignPanel, String modelName) { - super(8); // dim = 8 + super(8); // dim = 8 this.av = alignPanel.av; this.ap = alignPanel; boolean nucleotide = av.getAlignment().isNucleotide(); - //progressBar = new ProgressBar(statusPanel, statusBar); + // progressBar = new ProgressBar(statusPanel, statusBar); addInternalFrameListener(new InternalFrameAdapter() { @@ -131,8 +131,7 @@ public class PaSiMapPanel extends GPaSiMapPanel ScoreModelI scoreModel = ScoreModels.getInstance() .getScoreModel(modelName, ap); - setPasimapModel( - new PaSiMapModel(av, seqs, nucleotide, scoreModel)); + setPasimapModel(new PaSiMapModel(av, seqs, nucleotide, scoreModel)); PaintRefresher.Register(this, av.getSequenceSetId()); setRotatableCanvas(new RotatableCanvas(alignPanel)); @@ -143,8 +142,8 @@ public class PaSiMapPanel extends GPaSiMapPanel } /** - * Ensure references to potentially very large objects (the PaSiMap matrices) are - * nulled when the frame is closed + * Ensure references to potentially very large objects (the PaSiMap matrices) + * are nulled when the frame is closed */ protected void close_actionPerformed() { @@ -193,29 +192,31 @@ public class PaSiMapPanel extends GPaSiMapPanel progressBar.setProgressBar(message, progId); try { - SequenceGroup selGroup=av.getSelectionGroup(); - - if (selGroup==null) + SequenceGroup selGroup = av.getSelectionGroup(); + + if (selGroup == null) { selGroup = new SequenceGroup(av.getAlignment().getSequences()); selGroup.setStartRes(0); - selGroup.setEndRes(av.getAlignment().getWidth()-1); + selGroup.setEndRes(av.getAlignment().getWidth() - 1); } - - if (selGroup.getSize()>MAX_PASIMAP_SEQ) + + if (selGroup.getSize() > MAX_PASIMAP_SEQ) { - int start = selGroup.getStartRes(),end=selGroup.getEndRes(); - selGroup = new SequenceGroup(selGroup.getSequences().subList(0, MAX_PASIMAP_SEQ)); - selGroup.setStartRes(start); - selGroup.setEndRes(end); - Console.warn("Truncated input sequences for PASIMAP analysis to "+MAX_PASIMAP_SEQ); + int start = selGroup.getStartRes(), end = selGroup.getEndRes(); + selGroup = new SequenceGroup( + selGroup.getSequences().subList(0, MAX_PASIMAP_SEQ)); + selGroup.setStartRes(start); + selGroup.setEndRes(end); + Console.warn("Truncated input sequences for PASIMAP analysis to " + + MAX_PASIMAP_SEQ); } - + PairwiseAlignPanel pap = new PairwiseAlignPanel(av, selGroup, true, GAP_OPEN_COST, GAP_EXTEND_COST, false, null); pap.setDiscardAlignments(true); pap.setQuiet(true); - + System.out.println(pap != null); setPairwiseAlignPanel(pap); getPasimapModel().calculate(pap); @@ -241,9 +242,9 @@ public class PaSiMapPanel extends GPaSiMapPanel repaint(); if (getParent() == null) { - Desktop.addInternalFrame( - this, MessageManager.formatMessage("label.calc_title", - "PaSiMap", ap.alignFrame.getTitle()), + Desktop.addInternalFrame(this, + MessageManager.formatMessage("label.calc_title", "PaSiMap", + ap.alignFrame.getTitle()), 475, 450); this.setMinimumSize(new Dimension(MIN_WIDTH, MIN_HEIGHT)); } @@ -251,8 +252,8 @@ public class PaSiMapPanel extends GPaSiMapPanel } /** - * Updates the PaSiMap display after a change of component to use for x, y or z - * axis + * Updates the PaSiMap display after a change of component to use for x, y or + * z axis */ @Override protected void doDimensionChange() @@ -270,8 +271,8 @@ public class PaSiMapPanel extends GPaSiMapPanel } /** - * Sets the selected checkbox item index for PaSiMap dimension (1, 2, 3...) for - * the given axis (X/Y/Z) + * Sets the selected checkbox item index for PaSiMap dimension (1, 2, 3...) + * for the given axis (X/Y/Z) * * @param index * @param axis @@ -323,8 +324,8 @@ public class PaSiMapPanel extends GPaSiMapPanel } /** - * If available, shows the data which formed the inputs for the PaSiMap as a new - * alignment + * If available, shows the data which formed the inputs for the PaSiMap as a + * new alignment */ @Override public void originalSeqData_actionPerformed() @@ -452,7 +453,7 @@ public class PaSiMapPanel extends GPaSiMapPanel } } - public void makePaSiMapImage(ImageMaker.TYPE type) throws Exception + public void makePaSiMapImage(ImageMaker.TYPE type) throws Exception { int width = getRotatableCanvas().getWidth(); int height = getRotatableCanvas().getHeight(); @@ -612,7 +613,8 @@ public class PaSiMapPanel extends GPaSiMapPanel { cap.setText(getPasimapModel().getAlignmentOutput()); Desktop.addInternalFrame(cap, MessageManager.formatMessage( - "label.pairwise_alignment_for_params", new String[] { this.getTitle() }), 500, 500); + "label.pairwise_alignment_for_params", new String[] + { this.getTitle() }), 500, 500); } catch (OutOfMemoryError oom) { new OOMWarning("exporting pairwise alignments", oom); @@ -680,7 +682,7 @@ public class PaSiMapPanel extends GPaSiMapPanel public void updateProgressBar(int lengthOfTask, int progress) { JProgressBar pBar = progressBar.getProgressBar(progId); - if (pBar==null) + if (pBar == null) { return; } @@ -692,22 +694,24 @@ public class PaSiMapPanel extends GPaSiMapPanel } updateProgressBar(progress); } + public void updateProgressBar(int progress) { JProgressBar pBar = progressBar.getProgressBar(progId); - - if (pBar==null) + + if (pBar == null) { return; } - + pBar.setValue(progress); pBar.repaint(); } /** - * adds a listener for a pairwise alignment panel's progress - * TODO: generalise for anything that can report progress ? + * adds a listener for a pairwise alignment panel's progress TODO: generalise + * for anything that can report progress ? + * * @param pap */ public void setPairwiseAlignPanel(PairwiseAlignPanel pap) @@ -794,8 +798,8 @@ public class PaSiMapPanel extends GPaSiMapPanel } /** - * Answers the selected checkbox item index for PaSiMap dimension for the X, Y or - * Z axis of the display + * Answers the selected checkbox item index for PaSiMap dimension for the X, Y + * or Z axis of the display * * @param axis * @return diff --git a/src/jalview/gui/PairwiseAlignPanel.java b/src/jalview/gui/PairwiseAlignPanel.java index 3e8fb02..77ec0f5 100755 --- a/src/jalview/gui/PairwiseAlignPanel.java +++ b/src/jalview/gui/PairwiseAlignPanel.java @@ -47,7 +47,7 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel private float[][] scores; - private float[][] alignmentScores; // scores used by PaSiMap + private float[][] alignmentScores; // scores used by PaSiMap private int GAP_OPEN_COST; @@ -60,7 +60,7 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel private String alignmentOutput; private boolean quiet; - + private boolean discardAlignments; private boolean endGaps; @@ -73,12 +73,13 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel private int total; private int progress; - + private SequenceGroup selection; + /** * input sequences */ - private SequenceI[] seqs=null; + private SequenceI[] seqs = null; private ScoreMatrix scoreMatrix; @@ -87,23 +88,31 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel * * @param viewport * contains selected sequences to align - * @param endGaps ~ toggle gaps and the beginning and end of sequences + * @param endGaps + * ~ toggle gaps and the beginning and end of sequences */ public PairwiseAlignPanel(AlignmentViewport viewport) { - this(viewport, null, false, 120, 20, true, null); // default penalties used in AlignSeq + this(viewport, null, false, 120, 20, true, null); // default penalties used + // in AlignSeq } + public PairwiseAlignPanel(AlignmentViewport viewport, ScoreMatrix params) { - this(viewport, null, false, 120, 20, true,params); // default penalties used in AlignSeq + this(viewport, null, false, 120, 20, true, params); // default penalties + // used in AlignSeq } - public PairwiseAlignPanel(AlignmentViewport viewport, boolean endGaps, int gapOpenCost, int gapExtendCost) + + public PairwiseAlignPanel(AlignmentViewport viewport, boolean endGaps, + int gapOpenCost, int gapExtendCost) { this(viewport, null, endGaps, gapOpenCost, gapExtendCost, true, null); } /** - * Create a new pairwise alignpanel with specified parameters and score model, and optionally start the calculation + * Create a new pairwise alignpanel with specified parameters and score model, + * and optionally start the calculation + * * @param viewport * @param selection * @param endGaps @@ -112,8 +121,9 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel * @param run * @param scoreMatrix */ - public PairwiseAlignPanel(AlignmentViewport viewport, SequenceGroup selection, boolean endGaps, - int gapOpenCost, int gapExtendCost, boolean run, ScoreMatrix scoreMatrix) + public PairwiseAlignPanel(AlignmentViewport viewport, + SequenceGroup selection, boolean endGaps, int gapOpenCost, + int gapExtendCost, boolean run, ScoreMatrix scoreMatrix) { super(); this.av = viewport; @@ -123,23 +133,25 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel this.selection = selection; this.total = MiscMath.combinations(av.getAlignment().getHeight(), 2); this.scoreMatrix = scoreMatrix; - if (run) { + if (run) + { calculate(); } } - + public void calculate() { calculate(scoreMatrix); } - public void calculate (ScoreMatrix sm) + + public void calculate(ScoreMatrix sm) { StringBuilder sb = new StringBuilder(1024); sequences = new Vector(); String[] seqStrings; - seqs=null; + seqs = null; if (selection != null) { @@ -169,7 +181,7 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel seqs = av.getAlignment().getSequencesArray(); } } - + String type = (av.getAlignment().isNucleotide()) ? AlignSeq.DNA : AlignSeq.PEP; @@ -177,7 +189,7 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel float[][] alignmentScores = new float[seqs.length][seqs.length]; double totscore = 0D; int count = seqs.length; - + boolean first = true; progress = 0; @@ -192,11 +204,12 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel AlignSeq as = new AlignSeq(seqs[i], seqStrings[i], seqs[j], seqStrings[j], type, GAP_OPEN_COST, GAP_EXTEND_COST); - if (sm != null) { - as.setScoreMatrix(sm); - } + if (sm != null) + { + as.setScoreMatrix(sm); + } - if (as.s1str.length() == 0 || as.s2str.length() == 0) + if (as.s1str.length() == 0 || as.s2str.length() == 0) { continue; } @@ -219,7 +232,8 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel sb.append(DASHES); } first = false; - if (!discardAlignments) { + if (!discardAlignments) + { as.printAlignment(System.out); } scores[i][j] = as.getMaxScore() / as.getASeq1().length; @@ -243,7 +257,7 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel this.scores = scores; this.alignmentScores = alignmentScores; - if (count > 2 && !quiet) + if (count > 2 && !quiet) { printScoreMatrix(seqs, scores, totscore); } @@ -344,24 +358,29 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel { return progress; } + public SequenceI[] getInputSequences() { return seqs; } + /** - * Set to true to suppress output of progress to Console.stdout or GUI - * @param quiet + * Set to true to suppress output of progress to Console.stdout or GUI + * + * @param quiet */ public void setQuiet(boolean quiet) { - this.quiet=quiet; + this.quiet = quiet; } + /** * set this if you are only interested in final alignment scores + * * @param discard */ public void setDiscardAlignments(boolean discard) { - discardAlignments=discard; + discardAlignments = discard; } } diff --git a/src/jalview/gui/PopupMenu.java b/src/jalview/gui/PopupMenu.java index a47a0a1..c03a300 100644 --- a/src/jalview/gui/PopupMenu.java +++ b/src/jalview/gui/PopupMenu.java @@ -176,9 +176,9 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener JMenuItem textColour = new JMenuItem(); - JMenu editGroupMenu = new JMenu(); + JMenu editGroupMenu = new JMenu(); - JMenu groupShowAutoCalculatedAnnotations = new JMenu(); + JMenu groupShowAutoCalculatedAnnotations = new JMenu(); JMenu groupHideAutoCalculatedAnnotations = new JMenu(); @@ -455,16 +455,18 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener final List selectedGroup = (alignPanel.av .getSelectionGroup() == null ? Collections. emptyList() - : alignPanel.av.getSelectionGroup().getSequences()); + : alignPanel.av.getSelectionGroup().getSequences()); buildAnnotationTypesMenus(groupShowAnnotationsMenu, groupHideAnnotationsMenu, selectedGroup); configureReferenceAnnotationsMenu(groupAddReferenceAnnotations, selectedGroup); - - //If a sequence group is selected, build show/hide auto calculated annotations menu + + // If a sequence group is selected, build show/hide auto calculated + // annotations menu SequenceGroup selectedSequenceGroup = alignPanel.av.getSelectionGroup(); - if(selectedSequenceGroup != null) { - buildAutoCalculatedAnnotationsMenu(groupShowAutoCalculatedAnnotations, + if (selectedSequenceGroup != null) + { + buildAutoCalculatedAnnotationsMenu(groupShowAutoCalculatedAnnotations, groupHideAutoCalculatedAnnotations, selectedSequenceGroup); } @@ -664,7 +666,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener ColourMenuHelper.setColourSelected(colourMenu, sg.getColourScheme()); conservationMenuItem.setEnabled(!sg.isNucleotide()); - + byConsensusSecondaryStructureMenuItem.setEnabled(!sg.isNucleotide()); if (sg.cs != null) @@ -677,7 +679,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener { abovePIDColour.setSelected(true); } - if(sg.cs.isConsensusSecondaryStructureColouring()) + if (sg.cs.isConsensusSecondaryStructureColouring()) { byConsensusSecondaryStructureMenuItem.setSelected(true); } @@ -736,9 +738,10 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener unGroupMenuItem.setVisible(false); editGroupMenu .setText(MessageManager.getString("action.edit_new_group")); - - // Hide show/hide auto calculated annotations menus for group if a sequence - // group is not defined. + + // Hide show/hide auto calculated annotations menus for group if a + // sequence + // group is not defined. groupShowAutoCalculatedAnnotations.setVisible(false); groupHideAutoCalculatedAnnotations.setVisible(false); } @@ -747,14 +750,18 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener createGroupMenuItem.setVisible(false); unGroupMenuItem.setVisible(true); editGroupMenu.setText(MessageManager.getString("action.edit_group")); - - // Show show/hide auto calculated annotations menus for group if a sequence - // group is defined and showGroupSSConsensus is true. Hide the menus otherwise. - if(alignPanel.av.isShowGroupSSConsensus()) { + + // Show show/hide auto calculated annotations menus for group if a + // sequence + // group is defined and showGroupSSConsensus is true. Hide the menus + // otherwise. + if (alignPanel.av.isShowGroupSSConsensus()) + { groupShowAutoCalculatedAnnotations.setVisible(true); groupHideAutoCalculatedAnnotations.setVisible(true); } - else { + else + { groupShowAutoCalculatedAnnotations.setVisible(false); groupHideAutoCalculatedAnnotations.setVisible(false); } @@ -1074,7 +1081,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener // grey out 'hide annotations' if none are shown hideMenu.setEnabled(!shownTypes.isEmpty()); } - + /** * Builds the menu for showing and hiding auto calculated annotations for a * selected sequence group. It clears existing menu items and adds menu items @@ -1127,7 +1134,8 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener AlignmentAnnotationUtils.asList(annotations), selectedSequenceGroup); - // Add code if additional auto calculated annotation types (like residue consensus, + // Add code if additional auto calculated annotation types (like residue + // consensus, // conservation, etc.) are needed for a selected group // Add currently hidden types to the show menu @@ -1151,8 +1159,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener groupShowAutoCalculatedAnnotations.setEnabled(!hiddenTypes.isEmpty()); groupHideAutoCalculatedAnnotations.setEnabled(!shownTypes.isEmpty()); } - - + /** * Adds a menu item to the provided menu for showing or hiding a specific type * of auto calculated annotation @@ -1165,8 +1172,8 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener * @param type * The type of annotation to show or hide. * @param allTypes - * Indicates if the action should apply to all annotation types. - * True if user selects "All". + * Indicates if the action should apply to all annotation types. True + * if user selects "All". * @param actionIsShow * Indicates if the item is for showing (true) or hiding (false) the * annotation type. @@ -1199,8 +1206,6 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener showOrHideAutoCalculatedAnnotationsMenu.add(item); } - - /** * Returns a list of sequences - either the current selection group (if there * is one), else the specified single sequence. @@ -1622,10 +1627,10 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener .setText(MessageManager.getString("label.show_annotations")); groupHideAnnotationsMenu .setText(MessageManager.getString("label.hide_annotations")); - groupShowAutoCalculatedAnnotations - .setText(MessageManager.getString("label.group_show_auto_calculated_annotations")); - groupHideAutoCalculatedAnnotations - .setText(MessageManager.getString("label.group_hide_auto_calculated_annotations")); + groupShowAutoCalculatedAnnotations.setText(MessageManager + .getString("label.group_show_auto_calculated_annotations")); + groupHideAutoCalculatedAnnotations.setText(MessageManager + .getString("label.group_hide_auto_calculated_annotations")); JMenuItem sequenceFeature = new JMenuItem( MessageManager.getString("label.create_sequence_feature")); sequenceFeature.addActionListener(new ActionListener() @@ -1794,18 +1799,19 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener conservationMenuItem.isSelected()); } }); - - byConsensusSecondaryStructureMenuItem.setText( - MessageManager.getString("action.by_secondary_structure_conservation")); - byConsensusSecondaryStructureMenuItem.addActionListener(new ActionListener() - { - @Override - public void actionPerformed(ActionEvent e) - { - colourByConsensusSecondaryStructureMenuItem_actionPerformed( - byConsensusSecondaryStructureMenuItem.isSelected()); - } - }); + + byConsensusSecondaryStructureMenuItem.setText(MessageManager + .getString("action.by_secondary_structure_conservation")); + byConsensusSecondaryStructureMenuItem + .addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + colourByConsensusSecondaryStructureMenuItem_actionPerformed( + byConsensusSecondaryStructureMenuItem.isSelected()); + } + }); annotationColour = new JRadioButtonMenuItem( MessageManager.getString("action.by_annotation")); @@ -1824,17 +1830,19 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener modifyConservation_actionPerformed(); } }); - - modifyConsensusSecondaryStructureThreshold.setText(MessageManager - .getString("label.modify_secondary_structure_conservation_threshold")); - modifyConsensusSecondaryStructureThreshold.addActionListener(new ActionListener() - { - @Override - public void actionPerformed(ActionEvent e) - { - modifyConsensusSecondaryStructureThreshold_actionPerformed(); - } - }); + + modifyConsensusSecondaryStructureThreshold + .setText(MessageManager.getString( + "label.modify_secondary_structure_conservation_threshold")); + modifyConsensusSecondaryStructureThreshold + .addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + modifyConsensusSecondaryStructureThreshold_actionPerformed(); + } + }); } /** @@ -1878,17 +1886,17 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener SliderPanel.showConservationSlider(); } } - + protected void modifyConsensusSecondaryStructureThreshold_actionPerformed() { SequenceGroup sg = getGroup(); if (sg.cs != null) { - SliderPanel.setConsensusSecondaryStructureSlider(ap, sg.cs, sg.getName()); + SliderPanel.setConsensusSecondaryStructureSlider(ap, sg.cs, + sg.getName()); SliderPanel.showConsensusSecondaryStructureSlider(); } } - protected void modifyPID_actionPerformed() { @@ -1971,34 +1979,36 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener { final AlignmentI alignment = this.ap.getAlignment(); AlignmentUtils.addReferenceAnnotations(candidates, alignment, null); - - if(AlignmentUtils.isSSAnnotationPresent(candidates)) { - + + if (AlignmentUtils.isSSAnnotationPresent(candidates)) + { + restartSSConsensusWorker(); ap.validateAnnotationDimensions(true); ap.fontChanged(); ap.av.alignmentChanged(ap); ap.adjustAnnotationHeight(); restartSSConsensusWorker(); - //ap.alignFrame.getViewport().getCalcManager().restartWorkers(); + // ap.alignFrame.getViewport().getCalcManager().restartWorkers(); } - + } - - - private void restartSSConsensusWorker() { - - List workers = ap.alignFrame.getViewport().getCalcManager() - .getRegisteredWorkersOfClass(SecondaryStructureConsensusThread.class); - if (!workers.isEmpty()) { - - ap.alignFrame.getViewport().getCalcManager().startWorker(workers.remove(0)); - - } - + + private void restartSSConsensusWorker() + { + + List workers = ap.alignFrame.getViewport() + .getCalcManager().getRegisteredWorkersOfClass( + SecondaryStructureConsensusThread.class); + if (!workers.isEmpty()) + { + + ap.alignFrame.getViewport().getCalcManager() + .startWorker(workers.remove(0)); + + } + } - - protected void makeReferenceSeq_actionPerformed(ActionEvent actionEvent) { @@ -2233,8 +2243,9 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener refresh(); } - - public void colourByConsensusSecondaryStructureMenuItem_actionPerformed(boolean selected) + + public void colourByConsensusSecondaryStructureMenuItem_actionPerformed( + boolean selected) { SequenceGroup sg = getGroup(); if (sg.cs == null) @@ -2244,11 +2255,11 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener if (selected) { - + sg.cs.setConsensusSecondaryStructureColouring(selected); - SliderPanel.setConsensusSecondaryStructureSlider(ap, sg.getGroupColourScheme(), - sg.getName()); + SliderPanel.setConsensusSecondaryStructureSlider(ap, + sg.getGroupColourScheme(), sg.getName()); SliderPanel.showConsensusSecondaryStructureSlider(); } else diff --git a/src/jalview/gui/ProgressBar.java b/src/jalview/gui/ProgressBar.java index 73cd496..9d2cb2c 100644 --- a/src/jalview/gui/ProgressBar.java +++ b/src/jalview/gui/ProgressBar.java @@ -274,7 +274,7 @@ public class ProgressBar implements IProgressIndicator public JProgressBar getProgressBar(long id) { Container progBar = progressBars.get(id); - if (progBar==null || progBar.getComponentCount()==0) + if (progBar == null || progBar.getComponentCount() == 0) { return null; } diff --git a/src/jalview/gui/RotatableCanvas.java b/src/jalview/gui/RotatableCanvas.java index 5261b23..03d8d87 100755 --- a/src/jalview/gui/RotatableCanvas.java +++ b/src/jalview/gui/RotatableCanvas.java @@ -119,10 +119,13 @@ public class RotatableCanvas extends JPanel private Point[] axisEndPoints; // fields for 'select rectangle' (JAL-1124) - int rectx1; - int recty1; - int rectx2; - int recty2; + int rectx1; + + int recty1; + + int rectx2; + + int recty2; AlignmentViewport av; @@ -405,11 +408,12 @@ public class RotatableCanvas extends JPanel } } // //Now the rectangle - if (rectx2 != -1 && recty2 != -1) { - g.setColor(Color.white); - - g.drawRect(rectx1,recty1,rectx2-rectx1,recty2-recty1); - } + if (rectx2 != -1 && recty2 != -1) + { + g.setColor(Color.white); + + g.drawRect(rectx1, recty1, rectx2 - rectx1, recty2 - recty1); + } } /** @@ -566,10 +570,10 @@ public class RotatableCanvas extends JPanel mouseX = x; mouseY = y; - rectx1 = x; - recty1 = y; - rectx2 = -1; - recty2 = -1; + rectx1 = x; + recty1 = y; + rectx2 = -1; + recty2 = -1; SequenceI found = findSequenceAtPoint(x, y); @@ -634,12 +638,12 @@ public class RotatableCanvas extends JPanel // Check if this is a rectangle drawing drag if ((evt.getModifiersEx() & InputEvent.BUTTON3_DOWN_MASK) != 0) { - rectx2 = evt.getX(); - recty2 = evt.getY(); - if ((rectx2 != -1) && (recty2 != -1)) - { - rectSelect(rectx1, recty1, rectx2, recty2); - } + rectx2 = evt.getX(); + recty2 = evt.getY(); + if ((rectx2 != -1) && (recty2 != -1)) + { + rectSelect(rectx1, recty1, rectx2, recty2); + } } else { @@ -649,7 +653,7 @@ public class RotatableCanvas extends JPanel mouseY = yPos; // findWidths(); } - repaint(); + repaint(); } @Override @@ -753,12 +757,10 @@ public class RotatableCanvas extends JPanel { SequencePoint sp = sequencePoints.get(i); int tmp1 = (int) (((sp.coord.x - centre[0]) * getScaleFactor()) - * (getWidth() / 3.15) - + (getWidth() / 2.0)); + * (getWidth() / 3.15) + (getWidth() / 2.0)); float pre1 = ((sp.coord.x - centre[0]) * getScaleFactor()); int tmp2 = (int) (((sp.coord.y - centre[1]) * getScaleFactor()) - * (getHeight() / 1.70) - + (getHeight() / 2.0)); + * (getHeight() / 1.70) + (getHeight() / 2.0)); float pre2 = ((sp.coord.y - centre[1]) * getScaleFactor()); if ((tmp1 > x1) && (tmp1 < x2) && (tmp2 > y1) && (tmp2 < y2)) diff --git a/src/jalview/gui/SeqPanel.java b/src/jalview/gui/SeqPanel.java index 6f3fb2d..80ab32c 100644 --- a/src/jalview/gui/SeqPanel.java +++ b/src/jalview/gui/SeqPanel.java @@ -2489,7 +2489,8 @@ public class SeqPanel extends JPanel } if (stretchGroup.cs.isConsensusSecondaryStructureColouring()) { - SliderPanel.setConsensusSecondaryStructureSlider(ap, groupColourScheme, name); + SliderPanel.setConsensusSecondaryStructureSlider(ap, + groupColourScheme, name); } } PaintRefresher.Refresh(this, av.getSequenceSetId()); diff --git a/src/jalview/gui/SliderPanel.java b/src/jalview/gui/SliderPanel.java index 5e1935d..a8d1386 100755 --- a/src/jalview/gui/SliderPanel.java +++ b/src/jalview/gui/SliderPanel.java @@ -49,7 +49,7 @@ public class SliderPanel extends GSliderPanel private static final String BACKGROUND = "Background"; static JInternalFrame conservationSlider; - + static JInternalFrame consensusSecondaryStructureSlider; static JInternalFrame PIDSlider; @@ -57,7 +57,7 @@ public class SliderPanel extends GSliderPanel AlignmentPanel ap; boolean forConservation = true; - + boolean forConsensusSecondaryStructure = false; ResidueShaderI cs; @@ -77,9 +77,11 @@ public class SliderPanel extends GSliderPanel { return (SliderPanel) PIDSlider.getContentPane(); } - if (consensusSecondaryStructureSlider != null && consensusSecondaryStructureSlider.isVisible()) + if (consensusSecondaryStructureSlider != null + && consensusSecondaryStructureSlider.isVisible()) { - return (SliderPanel) consensusSecondaryStructureSlider.getContentPane(); + return (SliderPanel) consensusSecondaryStructureSlider + .getContentPane(); } return null; } @@ -97,13 +99,14 @@ public class SliderPanel extends GSliderPanel * DOCUMENT ME! */ public SliderPanel(final AlignmentPanel ap, int value, - boolean forConserve, boolean forConsensusSS, ResidueShaderI scheme) + boolean forConserve, boolean forConsensusSS, + ResidueShaderI scheme) { this.ap = ap; this.cs = scheme; forConservation = forConserve; forConsensusSecondaryStructure = forConsensusSS; - + undoButton.setVisible(false); applyButton.setVisible(false); @@ -114,7 +117,8 @@ public class SliderPanel extends GSliderPanel slider.setMinimum(0); slider.setMaximum(100); } - if(forConsensusSS) { + if (forConsensusSS) + { label.setText(MessageManager.getString( "label.enter_value_increase_conservation_visibility")); slider.setMinimum(0); @@ -170,7 +174,8 @@ public class SliderPanel extends GSliderPanel if (conservationSlider == null) { - sliderPanel = new SliderPanel(ap, rs.getConservationInc(), true, false, rs); + sliderPanel = new SliderPanel(ap, rs.getConservationInc(), true, + false, rs); conservationSlider = new JInternalFrame(); conservationSlider.setFrameIcon(null); conservationSlider.setContentPane(sliderPanel); @@ -262,7 +267,7 @@ public class SliderPanel extends GSliderPanel conservationSlider.setLayer(JLayeredPane.PALETTE_LAYER); } } - + public static int setConsensusSecondaryStructureSlider(AlignmentPanel ap, ResidueShaderI rs, String source) { @@ -270,20 +275,25 @@ public class SliderPanel extends GSliderPanel if (consensusSecondaryStructureSlider == null) { - sliderPanel = new SliderPanel(ap, rs.getConsensusSecondaryStructureThreshold(), false, true, rs); + sliderPanel = new SliderPanel(ap, + rs.getConsensusSecondaryStructureThreshold(), false, true, + rs); consensusSecondaryStructureSlider = new JInternalFrame(); consensusSecondaryStructureSlider.setFrameIcon(null); consensusSecondaryStructureSlider.setContentPane(sliderPanel); - consensusSecondaryStructureSlider.setLayer(JLayeredPane.PALETTE_LAYER); + consensusSecondaryStructureSlider + .setLayer(JLayeredPane.PALETTE_LAYER); } else { - sliderPanel = (SliderPanel) consensusSecondaryStructureSlider.getContentPane(); - sliderPanel.valueField - .setText(String.valueOf(rs.getConsensusSecondaryStructureThreshold())); + sliderPanel = (SliderPanel) consensusSecondaryStructureSlider + .getContentPane(); + sliderPanel.valueField.setText( + String.valueOf(rs.getConsensusSecondaryStructureThreshold())); sliderPanel.cs = rs; sliderPanel.ap = ap; - sliderPanel.slider.setValue(rs.getConsensusSecondaryStructureThreshold()); + sliderPanel.slider + .setValue(rs.getConsensusSecondaryStructureThreshold()); } consensusSecondaryStructureSlider.setTitle(MessageManager.formatMessage( @@ -304,8 +314,7 @@ public class SliderPanel extends GSliderPanel return sliderPanel.getValue(); } - - + public static void hideConsensusSecondaryStructureSlider() { if (consensusSecondaryStructureSlider != null) @@ -319,8 +328,7 @@ public class SliderPanel extends GSliderPanel } } } - - + public static void showConsensusSecondaryStructureSlider() { hidePIDSlider(); @@ -329,17 +337,19 @@ public class SliderPanel extends GSliderPanel if (!consensusSecondaryStructureSlider.isVisible()) { Desktop.addInternalFrame(consensusSecondaryStructureSlider, - consensusSecondaryStructureSlider.getTitle(), true, FRAME_WIDTH, - FRAME_HEIGHT, false, true); - consensusSecondaryStructureSlider.addInternalFrameListener(new InternalFrameAdapter() - { - @Override - public void internalFrameClosed(InternalFrameEvent e) - { - consensusSecondaryStructureSlider = null; - } - }); - consensusSecondaryStructureSlider.setLayer(JLayeredPane.PALETTE_LAYER); + consensusSecondaryStructureSlider.getTitle(), true, + FRAME_WIDTH, FRAME_HEIGHT, false, true); + consensusSecondaryStructureSlider + .addInternalFrameListener(new InternalFrameAdapter() + { + @Override + public void internalFrameClosed(InternalFrameEvent e) + { + consensusSecondaryStructureSlider = null; + } + }); + consensusSecondaryStructureSlider + .setLayer(JLayeredPane.PALETTE_LAYER); } } @@ -486,7 +496,7 @@ public class SliderPanel extends GSliderPanel { scheme.setThreshold(percent, ap.av.isIgnoreGapsConsensus()); } - if(forConsensusSecondaryStructure) + if (forConsensusSecondaryStructure) { scheme.setConsensusSecondaryStructureColouring(true); scheme.setConsensusSecondaryStructureThreshold(percent); @@ -568,7 +578,7 @@ public class SliderPanel extends GSliderPanel { return getValue(PIDSlider); } - + public static int getConsensusSecondaryStructureSliderValue() { return getValue(consensusSecondaryStructureSlider); @@ -605,7 +615,7 @@ public class SliderPanel extends GSliderPanel { title = PIDSlider.getTitle(); } - else if(consensusSecondaryStructureSlider != null) + else if (consensusSecondaryStructureSlider != null) { title = consensusSecondaryStructureSlider.getTitle(); } diff --git a/src/jalview/gui/StructureChooser.java b/src/jalview/gui/StructureChooser.java index 9658a92..ce043fe 100644 --- a/src/jalview/gui/StructureChooser.java +++ b/src/jalview/gui/StructureChooser.java @@ -1347,8 +1347,9 @@ public class StructureChooser extends GStructureChooser String pdbFilename = selectedPdbFileName; // TODO - tidy up this ugly hack so we call launchStructureViewer too StructureChooser.openStructureFileForSequence(ssm, sc, ap, - selectedSequence, true, pdbFilename, tft, paeFilename,false, - true,false,getTargetedStructureViewer(ssm).getViewerType()); + selectedSequence, true, pdbFilename, tft, paeFilename, + false, true, false, + getTargetedStructureViewer(ssm).getViewerType()); } SwingUtilities.invokeLater(new Runnable() { @@ -1820,7 +1821,9 @@ public class StructureChooser extends GStructureChooser * @param forceHeadless * @param showRefAnnotations * @param doXferSettings - * @param viewerType - when not null means the viewer will be opened, providing forceHeadless/headless is not true + * @param viewerType + * - when not null means the viewer will be opened, providing + * forceHeadless/headless is not true * @return */ public static StructureViewer openStructureFileForSequence( @@ -1845,7 +1848,7 @@ public class StructureChooser extends GStructureChooser ssm = ap.getStructureSelectionManager(); StructureSelectionManager.doConfigureStructurePrefs(ssm); } - + PDBEntry fileEntry = new AssociatePdbFileWithSeq().associatePdbWithSeq( sFilename, DataSourceType.FILE, seq, prompt, Desktop.instance, tft, paeFilename, doXferSettings); @@ -1863,7 +1866,8 @@ public class StructureChooser extends GStructureChooser sc.mainFrame.dispose(); - // TODO should honor preferences - only show reference annotation that is requested - JAL-4415 JAL-3124 + // TODO should honor preferences - only show reference annotation that is + // requested - JAL-4415 JAL-3124 if (showRefAnnotations) { showReferenceAnnotationsForSequence(ap.alignFrame, seq); diff --git a/src/jalview/gui/TreeCanvas.java b/src/jalview/gui/TreeCanvas.java index 588a4f9..08ecba6 100755 --- a/src/jalview/gui/TreeCanvas.java +++ b/src/jalview/gui/TreeCanvas.java @@ -244,11 +244,9 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, has_placeholders = true; } - if (longestName.length() < lf.getDisplayName() - .length()) + if (longestName.length() < lf.getDisplayName().length()) { - longestName = TreeCanvas.PLACEHOLDER - + lf.getDisplayName(); + longestName = TreeCanvas.PLACEHOLDER + lf.getDisplayName(); } if (tp.isColumnWise() && cm != null) { @@ -443,7 +441,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, } if (node.hasLabel()) { - nodeLabel = node.getLabel()+" "+nodeLabel; + nodeLabel = node.getLabel() + " " + nodeLabel; } if (!nodeLabel.equals("")) @@ -1074,10 +1072,10 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, setColor(groups.get(i), col.brighter()); Vector l = tree.findLeaves(groups.get(i)); - gatherLabelsTo(groups.get(i),l); + gatherLabelsTo(groups.get(i), l); if (!tp.isColumnWise()) { - createSeqGroupFor(aps, l, col); + createSeqGroupFor(aps, l, col); } else { @@ -1123,7 +1121,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, private void gatherLabelsTo(BinaryNode binaryNode, Vector l) { LinkedHashSet labelsForNode = new LinkedHashSet(); - for (BinaryNode leaf:l) + for (BinaryNode leaf : l) { if (leaf.hasLabel()) { @@ -1131,13 +1129,14 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, } } StringBuilder sb = new StringBuilder(); - boolean first=true; - for (String label:labelsForNode) + boolean first = true; + for (String label : labelsForNode) { - if (!first) { + if (!first) + { sb.append(" | "); } - first=false; + first = false; sb.append(label); } binaryNode.setLabel(sb.toString()); @@ -1344,11 +1343,13 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable, c.verdict(false, viewport.getConsPercGaps()); sg.cs.setConservation(c); } - if(viewport.getResidueShading().isConsensusSecondaryStructureColouring()) + if (viewport.getResidueShading() + .isConsensusSecondaryStructureColouring()) { sg.getGroupColourScheme().setConsensusSecondaryStructureThreshold( viewport.getResidueShading().getThreshold()); - sg.getGroupColourScheme().setConsensusSecondaryStructureColouring(true); + sg.getGroupColourScheme() + .setConsensusSecondaryStructureColouring(true); } } // indicate that associated structure views will need an update diff --git a/src/jalview/gui/TreePanel.java b/src/jalview/gui/TreePanel.java index c80bf3a..bfdc119 100755 --- a/src/jalview/gui/TreePanel.java +++ b/src/jalview/gui/TreePanel.java @@ -100,7 +100,6 @@ public class TreePanel extends GTreePanel TreeModel tree; private AlignViewport av; - // New JLabel for subtitle private JLabel subtitleLabel; @@ -129,7 +128,7 @@ public class TreePanel extends GTreePanel public TreePanel(AlignmentPanel alignPanel, NewickFile newtree, String theTitle, AlignmentView inputData) { - this(alignPanel, newtree, theTitle, inputData, null,null); + this(alignPanel, newtree, theTitle, inputData, null, null); } /** @@ -138,10 +137,12 @@ public class TreePanel extends GTreePanel boolean forAnnotation = false; public TreePanel(AlignmentPanel alignPanel, NewickFile newtree, - String theTitle, AlignmentView inputData, AlignmentAnnotation[] leafAnnotations, String subTitle) + String theTitle, AlignmentView inputData, + AlignmentAnnotation[] leafAnnotations, String subTitle) { super(); - this.forAnnotation=leafAnnotations!=null && leafAnnotations.length>0; + this.forAnnotation = leafAnnotations != null + && leafAnnotations.length > 0; this.setFrameIcon(null); this.treeTitle = theTitle; initTreePanel(alignPanel, null, null, newtree, inputData, null); @@ -203,7 +204,8 @@ public class TreePanel extends GTreePanel } void initTreePanel(AlignmentPanel ap, String type, String modelName, - NewickFile newTree, AlignmentView inputData, AlignmentAnnotation[] leafAnnotations) + NewickFile newTree, AlignmentView inputData, + AlignmentAnnotation[] leafAnnotations) { av = ap.av; @@ -212,7 +214,7 @@ public class TreePanel extends GTreePanel treeCanvas = new TreeCanvas(this, ap, scrollPane); scrollPane.setViewportView(treeCanvas); - + if (similarityParams != null && similarityParams.getSecondaryStructureSource() != null) { @@ -220,9 +222,9 @@ public class TreePanel extends GTreePanel addSubtitlePanel(" Secondary Structure Provider : " + similarityParams.getSecondaryStructureSource()); } - if (leafAnnotations!=null) + if (leafAnnotations != null) { - forAnnotation=true; + forAnnotation = true; } if (columnWise) { @@ -399,12 +401,14 @@ public class TreePanel extends GTreePanel private AlignmentView odata = null; private AlignmentAnnotation[] leafAnnotations; - public TreeLoader(NewickFile newickFile, AlignmentView inputData, AlignmentAnnotation[] leafAnnotations) + + public TreeLoader(NewickFile newickFile, AlignmentView inputData, + AlignmentAnnotation[] leafAnnotations) { this.newtree = newickFile; this.odata = inputData; this.leafAnnotations = leafAnnotations; - + if (newickFile != null) { // Must be outside run(), as Jalview2XML tries to @@ -967,7 +971,8 @@ public class TreePanel extends GTreePanel NewickFile nf, String treeTitle2, AlignmentView input) { // TODO - recover subpanel name - TreePanel tp = new TreePanel(alignPanel, nf, treeTitle2, input, null, "Annotation Tree"); + TreePanel tp = new TreePanel(alignPanel, nf, treeTitle2, input, null, + "Annotation Tree"); return tp; } } diff --git a/src/jalview/gui/structurechooser/ThreeDBStructureChooserQuerySource.java b/src/jalview/gui/structurechooser/ThreeDBStructureChooserQuerySource.java index 333f995..2bd5a91 100644 --- a/src/jalview/gui/structurechooser/ThreeDBStructureChooserQuerySource.java +++ b/src/jalview/gui/structurechooser/ThreeDBStructureChooserQuerySource.java @@ -426,8 +426,9 @@ public class ThreeDBStructureChooserQuerySource String modelPage = humanUrl < 1 ? null : (String) restable.getValueAt(row, humanUrl); - String modelCategory = idx_mcat < 1 ? null :(String) restable.getValueAt(row,idx_mcat); - + String modelCategory = idx_mcat < 1 ? null + : (String) restable.getValueAt(row, idx_mcat); + String strucFormat = restable.getValueAt(row, modelformat).toString(); SequenceI selectedSeq = (SequenceI) restable.getValueAt(row, diff --git a/src/jalview/io/AnnotationFile.java b/src/jalview/io/AnnotationFile.java index 66c620b..f8783b7 100755 --- a/src/jalview/io/AnnotationFile.java +++ b/src/jalview/io/AnnotationFile.java @@ -1607,11 +1607,13 @@ public class AnnotationFile sg.cs.setThreshold(Integer.parseInt(value), true); } - else if(key.equalsIgnoreCase("secondaryStructureConservationThreshold")) + else if (key + .equalsIgnoreCase("secondaryStructureConservationThreshold")) { - sg.cs.setConsensusSecondaryStructureThreshold(Integer.parseInt(value)); + sg.cs.setConsensusSecondaryStructureThreshold( + Integer.parseInt(value)); sg.cs.setConsensusSecondaryStructureColouring(true); - + } else if (key.equalsIgnoreCase("consThreshold")) { diff --git a/src/jalview/jbgui/GAlignFrame.java b/src/jalview/jbgui/GAlignFrame.java index fa9626b..69ebd56 100755 --- a/src/jalview/jbgui/GAlignFrame.java +++ b/src/jalview/jbgui/GAlignFrame.java @@ -132,10 +132,10 @@ public class GAlignFrame extends JInternalFrame protected JCheckBoxMenuItem abovePIDThreshold; - protected JMenuItem modifyPID; + protected JMenuItem modifyPID; protected JCheckBoxMenuItem byConsensusSecondaryStructureMenuItem; - + protected JMenuItem modifyConsensusSecondaryStructureThreshold; protected JRadioButtonMenuItem annotationColour; @@ -199,18 +199,18 @@ public class GAlignFrame extends JInternalFrame protected JMenuItem gatherViews = new JMenuItem(); protected JMenuItem expandViews = new JMenuItem(); - - protected JCheckBoxMenuItem showStrucProvider = new JCheckBoxMenuItem(); - - protected JCheckBoxMenuItem showSSConsensus = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showStrucProvider = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showSSConsensus = new JCheckBoxMenuItem(); protected JCheckBoxMenuItem showGroupSSConsensus = new JCheckBoxMenuItem(); - + protected JCheckBoxMenuItem showGroupConsensus = new JCheckBoxMenuItem(); protected JCheckBoxMenuItem showGroupConservation = new JCheckBoxMenuItem(); - protected JCheckBoxMenuItem showConsensusHistogram = new JCheckBoxMenuItem(); + protected JCheckBoxMenuItem showConsensusHistogram = new JCheckBoxMenuItem(); protected JCheckBoxMenuItem showSequenceLogo = new JCheckBoxMenuItem(); @@ -684,13 +684,14 @@ public class GAlignFrame extends JInternalFrame }); showStrucProvider = new JCheckBoxMenuItem( MessageManager.getString("label.show_structure_provider")); - showStrucProvider.addActionListener(new ActionListener() { + showStrucProvider.addActionListener(new ActionListener() + { @Override public void actionPerformed(ActionEvent e) { showStructureProvider_actionPerformed(e); } - + }); colourTextMenuItem = new JCheckBoxMenuItem( MessageManager.getString("label.colour_text")); @@ -877,30 +878,30 @@ public class GAlignFrame extends JInternalFrame }); - showSSConsensus - .setText(MessageManager.getString("label.show_secondary_structure_consensus")); + showSSConsensus.setText(MessageManager + .getString("label.show_secondary_structure_consensus")); showSSConsensus.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) - { - showSSConsensus_actionPerformed(e); - } - + + @Override + public void actionPerformed(ActionEvent e) + { + showSSConsensus_actionPerformed(e); + } + }); - + showGroupSSConsensus .setText(MessageManager.getString("label.group_ss_consensus")); showGroupSSConsensus.addActionListener(new ActionListener() { - + @Override public void actionPerformed(ActionEvent e) { showGroupSSConsensus_actionPerformed(e); } - + }); showGroupConsensus @@ -926,7 +927,7 @@ public class GAlignFrame extends JInternalFrame showConsensusHistogram_actionPerformed(e); } - }); + }); showSequenceLogo .setText(MessageManager.getString("label.show_consensus_logo")); showSequenceLogo.addActionListener(new ActionListener() @@ -1833,7 +1834,7 @@ public class GAlignFrame extends JInternalFrame addMenuActionAndAccelerator(keyStroke, copyHighlighted, al); copyHighlighted.addActionListener(al); - ButtonGroup ssButtonGroup = new ButtonGroup(); + ButtonGroup ssButtonGroup = new ButtonGroup(); JMenu tooltipSettingsMenu = new JMenu( MessageManager.getString("label.sequence_id_tooltip")); @@ -1841,53 +1842,72 @@ public class GAlignFrame extends JInternalFrame MessageManager.getString("label.autocalculated_annotation")); JMenu showSS = new JMenu( - MessageManager.getString("label.show_secondary_structure")); - - JRadioButtonMenuItem radioButtonAllSS = new JRadioButtonMenuItem(MessageManager.getString("option.ss_providers_all")); - radioButtonAllSS.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - showOrHideSecondaryStructureForSource(MessageManager.getString("option.ss_providers_all"), true); - // Select all checkboxes if "All" is selected - Component[] components = showSS.getMenuComponents(); - for (Component component : components) { - if (component instanceof JCheckBoxMenuItem) { - ((JCheckBoxMenuItem) component).setSelected(true); - } + MessageManager.getString("label.show_secondary_structure")); + + JRadioButtonMenuItem radioButtonAllSS = new JRadioButtonMenuItem( + MessageManager.getString("option.ss_providers_all")); + radioButtonAllSS.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + showOrHideSecondaryStructureForSource( + MessageManager.getString("option.ss_providers_all"), true); + // Select all checkboxes if "All" is selected + Component[] components = showSS.getMenuComponents(); + for (Component component : components) + { + if (component instanceof JCheckBoxMenuItem) + { + ((JCheckBoxMenuItem) component).setSelected(true); } + } } }); ssButtonGroup.add(radioButtonAllSS); showSS.add(radioButtonAllSS); - - JRadioButtonMenuItem radioButtonNoneSS = new JRadioButtonMenuItem(MessageManager.getString("option.ss_providers_none")); - radioButtonNoneSS.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - showOrHideSecondaryStructureForSource(MessageManager.getString("option.ss_providers_none"), false); - // Remove selection of all checkboxes if "None" is selected - Component[] components = showSS.getMenuComponents(); - for (Component component : components) { - if (component instanceof JCheckBoxMenuItem) { - ((JCheckBoxMenuItem) component).setSelected(false); - } + + JRadioButtonMenuItem radioButtonNoneSS = new JRadioButtonMenuItem( + MessageManager.getString("option.ss_providers_none")); + radioButtonNoneSS.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + showOrHideSecondaryStructureForSource( + MessageManager.getString("option.ss_providers_none"), + false); + // Remove selection of all checkboxes if "None" is selected + Component[] components = showSS.getMenuComponents(); + for (Component component : components) + { + if (component instanceof JCheckBoxMenuItem) + { + ((JCheckBoxMenuItem) component).setSelected(false); } + } } }); ssButtonGroup.add(radioButtonNoneSS); showSS.add(radioButtonNoneSS); showSS.addSeparator(); - - annotationsMenu.addMouseListener(new MouseAdapter() { - + + annotationsMenu.addMouseListener(new MouseAdapter() + { + @Override - public void mouseEntered(MouseEvent e) { + public void mouseEntered(MouseEvent e) + { + + updateShowSecondaryStructureMenu(showSS, ssButtonGroup); // Update radio + // buttons + // every time + // the menu is + // clicked - updateShowSecondaryStructureMenu(showSS, ssButtonGroup); // Update radio buttons every time the menu is clicked - } }); - + JMenu exportImageMenu = new JMenu( MessageManager.getString("label.export_image")); JMenu fileMenu = new JMenu(MessageManager.getString("action.file")); @@ -1998,7 +2018,7 @@ public class GAlignFrame extends JInternalFrame autoAnnMenu.add(showConsensusHistogram); autoAnnMenu.add(showSequenceLogo); autoAnnMenu.add(normaliseSequenceLogo); - //autoAnnMenu.add(showSSConsensus); + // autoAnnMenu.add(showSSConsensus); autoAnnMenu.addSeparator(); autoAnnMenu.add(showGroupConservation); autoAnnMenu.add(showGroupConsensus); @@ -2087,13 +2107,13 @@ public class GAlignFrame extends JInternalFrame protected void showStructureProvider_actionPerformed(ActionEvent e) { // TODO Auto-generated method stub - + } protected void showSSConsensus_actionPerformed(ActionEvent e) { // TODO Auto-generated method stub - + } protected void createPNG_actionPerformed(ActionEvent object) @@ -2163,19 +2183,20 @@ public class GAlignFrame extends JInternalFrame conservationMenuItem.isSelected()); } }); - byConsensusSecondaryStructureMenuItem = new JCheckBoxMenuItem( - MessageManager.getString("action.by_secondary_structure_conservation")); - byConsensusSecondaryStructureMenuItem.addActionListener(new ActionListener() - { - @Override - public void actionPerformed(ActionEvent e) - { - colourByConsensusSecondaryStructureMenuItem_actionPerformed( - byConsensusSecondaryStructureMenuItem.isSelected()); - } - }); + MessageManager.getString( + "action.by_secondary_structure_conservation")); + byConsensusSecondaryStructureMenuItem + .addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + colourByConsensusSecondaryStructureMenuItem_actionPerformed( + byConsensusSecondaryStructureMenuItem.isSelected()); + } + }); abovePIDThreshold = new JCheckBoxMenuItem( MessageManager.getString("label.above_identity_threshold")); @@ -2207,18 +2228,19 @@ public class GAlignFrame extends JInternalFrame modifyConservation_actionPerformed(); } }); - - modifyConsensusSecondaryStructureThreshold = new JMenuItem(MessageManager - .getString("label.modify_secondary_structure_conservation_threshold")); - modifyConsensusSecondaryStructureThreshold.addActionListener(new ActionListener() - { - @Override - public void actionPerformed(ActionEvent e) - { - modifyConsensusSecondaryStructureThreshold_actionPerformed(); - } - }); - + + modifyConsensusSecondaryStructureThreshold = new JMenuItem( + MessageManager.getString( + "label.modify_secondary_structure_conservation_threshold")); + modifyConsensusSecondaryStructureThreshold + .addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + modifyConsensusSecondaryStructureThreshold_actionPerformed(); + } + }); annotationColour = new JRadioButtonMenuItem( MessageManager.getString("action.by_annotation")); @@ -2387,7 +2409,7 @@ public class GAlignFrame extends JInternalFrame // TODO Auto-generated method stub } - + protected void showGroupSSConsensus_actionPerformed(ActionEvent e) { // TODO Auto-generated method stub @@ -2581,8 +2603,9 @@ public class GAlignFrame extends JInternalFrame protected void conservationMenuItem_actionPerformed(boolean selected) { } - - public void colourByConsensusSecondaryStructureMenuItem_actionPerformed(boolean selected) + + public void colourByConsensusSecondaryStructureMenuItem_actionPerformed( + boolean selected) { } @@ -2692,7 +2715,7 @@ public class GAlignFrame extends JInternalFrame protected void modifyConservation_actionPerformed() { } - + protected void modifyConsensusSecondaryStructureThreshold_actionPerformed() { } @@ -2947,16 +2970,17 @@ public class GAlignFrame extends JInternalFrame return null; } - protected void showOrHideSecondaryStructureForSource(String ssSourceSelection, boolean visible) + protected void showOrHideSecondaryStructureForSource( + String ssSourceSelection, boolean visible) { // TODO Auto-generated method stub - + } protected void updateShowSecondaryStructureMenu(JMenu showSS, ButtonGroup ssButtonGroup) { // TODO Auto-generated method stub - + } } diff --git a/src/jalview/jbgui/GCutAndPasteTransfer.java b/src/jalview/jbgui/GCutAndPasteTransfer.java index 5daea78..106ad7c 100755 --- a/src/jalview/jbgui/GCutAndPasteTransfer.java +++ b/src/jalview/jbgui/GCutAndPasteTransfer.java @@ -198,7 +198,7 @@ public class GCutAndPasteTransfer extends JInternalFrame @Override public void actionPerformed(ActionEvent e) { - fontSizeMenu_actionPerformed(e); + fontSizeMenu_actionPerformed(e); } }); copyItem.setText(MessageManager.getString("action.copy")); @@ -256,6 +256,7 @@ public class GCutAndPasteTransfer extends JInternalFrame /** * shows a menu for changing the font + * * @param e */ public void fontSizeMenu_actionPerformed(ActionEvent e) diff --git a/src/jalview/jbgui/GPCAPanel.java b/src/jalview/jbgui/GPCAPanel.java index ec5b209..65394ed 100755 --- a/src/jalview/jbgui/GPCAPanel.java +++ b/src/jalview/jbgui/GPCAPanel.java @@ -85,6 +85,7 @@ public class GPCAPanel extends JInternalFrame zCombobox.addItem("dim " + i); } } + public GPCAPanel(int dim) { try diff --git a/src/jalview/jbgui/GPaSiMapPanel.java b/src/jalview/jbgui/GPaSiMapPanel.java index 369a005..3c7fb5a 100755 --- a/src/jalview/jbgui/GPaSiMapPanel.java +++ b/src/jalview/jbgui/GPaSiMapPanel.java @@ -85,6 +85,7 @@ public class GPaSiMapPanel extends JInternalFrame zCombobox.addItem("dim " + i); } } + public GPaSiMapPanel(int dim) { try @@ -223,8 +224,8 @@ public class GPaSiMapPanel extends JInternalFrame } }); JMenuItem outputAlignment = new JMenuItem(); - outputAlignment.setText( - MessageManager.getString("label.output_alignment")); + outputAlignment + .setText(MessageManager.getString("label.output_alignment")); outputAlignment.addActionListener(new ActionListener() { @Override diff --git a/src/jalview/jbgui/GPreferences.java b/src/jalview/jbgui/GPreferences.java index e574327..c644e3c 100755 --- a/src/jalview/jbgui/GPreferences.java +++ b/src/jalview/jbgui/GPreferences.java @@ -160,7 +160,7 @@ public class GPreferences extends JPanel protected JCheckBox conservation = new JCheckBox(); - protected JCheckBox identity = new JCheckBox(); + protected JCheckBox identity = new JCheckBox(); protected JCheckBox ssConsensus = new JCheckBox(); diff --git a/src/jalview/math/Matrix.java b/src/jalview/math/Matrix.java index 7ae4b94..f767444 100755 --- a/src/jalview/math/Matrix.java +++ b/src/jalview/math/Matrix.java @@ -123,12 +123,12 @@ public class Matrix implements MatrixI if (row != null) { value[i] = new double[row.length]; - int j = 0; - for (float oldValue : row) - { - value[i][j] = oldValue; - j++; - } + int j = 0; + for (float oldValue : row) + { + value[i][j] = oldValue; + j++; + } } i++; } @@ -191,10 +191,11 @@ public class Matrix implements MatrixI */ for (int k = 0; k < in.width(); k++) { - if (!Double.isNaN(in.getValue(i,k)) && !Double.isNaN(this.value[k][j])) - { + if (!Double.isNaN(in.getValue(i, k)) + && !Double.isNaN(this.value[k][j])) + { tmp[i][j] += (in.getValue(i, k) * this.value[k][j]); - } + } } } } @@ -833,10 +834,10 @@ public class Matrix implements MatrixI } /** - * returns the matrix as a double[][] array - * - * @return - */ + * returns the matrix as a double[][] array + * + * @return + */ @Override public double[][] asArray() { @@ -1018,7 +1019,8 @@ public class Matrix implements MatrixI /** * Add d to all entries of this matrix * - * @param d ~ value to add + * @param d + * ~ value to add */ @Override public void add(double d) @@ -1086,7 +1088,7 @@ public class Matrix implements MatrixI } /** - * Returns a copy in which every value in the matrix is its absolute + * Returns a copy in which every value in the matrix is its absolute * * @return */ @@ -1122,7 +1124,7 @@ public class Matrix implements MatrixI { if (row != null) { - mean[i++] = MiscMath.mean(row); + mean[i++] = MiscMath.mean(row); } } return mean; @@ -1142,17 +1144,17 @@ public class Matrix implements MatrixI double[] column = getColumn(j); if (column != null) { - mean[j] = MiscMath.mean(column); + mean[j] = MiscMath.mean(column); } } return mean; } /** - * return a flattened matrix containing the sum of each column - * - * @return - */ + * return a flattened matrix containing the sum of each column + * + * @return + */ @Override public double[] sumCol() { @@ -1162,17 +1164,17 @@ public class Matrix implements MatrixI double[] column = getColumn(j); if (column != null) { - sum[j] = MiscMath.sum(column); + sum[j] = MiscMath.sum(column); } - } + } return sum; } /** - * returns the mean value of the complete matrix - * - * @return - */ + * returns the mean value of the complete matrix + * + * @return + */ @Override public double mean() { @@ -1182,47 +1184,51 @@ public class Matrix implements MatrixI { for (double col : row) { - if (!Double.isNaN(col)) - { - sum += col; - } else { - nanCount++; - } + if (!Double.isNaN(col)) + { + sum += col; + } + else + { + nanCount++; + } } } return sum / (double) (this.rows * this.cols - nanCount); } /** - * fills up a diagonal matrix with its transposed copy - * !other side should be filled with 0 - * !keeps Double.NaN found in either side - * - * TODO check on which side it was diagonal and only do calculations for the other side - */ + * fills up a diagonal matrix with its transposed copy !other side should be + * filled with 0 !keeps Double.NaN found in either side + * + * TODO check on which side it was diagonal and only do calculations for the + * other side + */ @Override public void fillDiagonal() { int n = this.rows; int m = this.cols; - MatrixI copy = this.transpose(); // goes through each element in the matrix and - for (int i = 0; i < n; i++) // adds the value in the transposed copy to the original value + MatrixI copy = this.transpose(); // goes through each element in the matrix + // and + for (int i = 0; i < n; i++) // adds the value in the transposed copy to the + // original value { for (int j = 0; j < m; j++) { - if (i != j) - { - this.addValue(i, j, copy.getValue(i,j)); - } + if (i != j) + { + this.addValue(i, j, copy.getValue(i, j)); + } } } } /** - * counts the number of Double.NaN in the matrix - * - * @return - */ + * counts the number of Double.NaN in the matrix + * + * @return + */ @Override public int countNaN() { @@ -1231,117 +1237,139 @@ public class Matrix implements MatrixI { for (int j = 0; j < this.cols; j++) { - if (Double.isNaN(this.getValue(i,j))) - { - NaN++; - } + if (Double.isNaN(this.getValue(i, j))) + { + NaN++; + } } } return NaN; } /** - * performs an element-wise addition of this matrix by another matrix ~ this - m - * @param m ~ other matrix - * - * @return - */ + * performs an element-wise addition of this matrix by another matrix ~ this - + * m + * + * @param m + * ~ other matrix + * + * @return + */ @Override public MatrixI add(MatrixI m) { if (m.width() != cols || m.height() != rows) { - throw new IllegalArgumentException("Can't add a " + m.height() + "x" + m.width() + " to a " + this.rows + "x" + this.cols + " matrix"); + throw new IllegalArgumentException( + "Can't add a " + m.height() + "x" + m.width() + " to a " + + this.rows + "x" + this.cols + " matrix"); } double[][] tmp = new double[this.rows][this.cols]; for (int i = 0; i < this.rows; i++) { for (int j = 0; j < this.cols; j++) { - tmp[i][j] = this.getValue(i,j) + m.getValue(i,j); + tmp[i][j] = this.getValue(i, j) + m.getValue(i, j); } } return new Matrix(tmp); } /** - * performs an element-wise subtraction of this matrix by another matrix ~ this - m - * @param m ~ other matrix - * - * @return - */ + * performs an element-wise subtraction of this matrix by another matrix ~ + * this - m + * + * @param m + * ~ other matrix + * + * @return + */ @Override public MatrixI subtract(MatrixI m) { if (m.width() != cols || m.height() != rows) { - throw new IllegalArgumentException("Can't subtract a " + m.height() + "x" + m.width() + " from a " + this.rows + "x" + this.cols + " matrix"); + throw new IllegalArgumentException("Can't subtract a " + m.height() + + "x" + m.width() + " from a " + this.rows + "x" + this.cols + + " matrix"); } double[][] tmp = new double[this.rows][this.cols]; for (int i = 0; i < this.rows; i++) { for (int j = 0; j < this.cols; j++) { - tmp[i][j] = this.getValue(i,j) - m.getValue(i,j); + tmp[i][j] = this.getValue(i, j) - m.getValue(i, j); } } return new Matrix(tmp); } /** - * performs an element-wise multiplication of this matrix by another matrix ~ this * m - * @param m ~ other matrix - * - * @return - */ + * performs an element-wise multiplication of this matrix by another matrix ~ + * this * m + * + * @param m + * ~ other matrix + * + * @return + */ @Override public MatrixI elementwiseMultiply(MatrixI m) { if (m.width() != cols || m.height() != rows) { - throw new IllegalArgumentException("Can't multiply a " + this.rows + "x" + this.cols + " by a " + m.height() + "x" + m.width() + " matrix"); + throw new IllegalArgumentException( + "Can't multiply a " + this.rows + "x" + this.cols + " by a " + + m.height() + "x" + m.width() + " matrix"); } double[][] tmp = new double[this.rows][this.cols]; for (int i = 0; i < this.rows; i++) { for (int j = 0; j < this.cols; j++) { - tmp[i][j] = this.getValue(i, j) * m.getValue(i,j); + tmp[i][j] = this.getValue(i, j) * m.getValue(i, j); } } return new Matrix(tmp); } /** - * performs an element-wise division of this matrix by another matrix ~ this / m - * @param m ~ other matrix - * - * @return - */ + * performs an element-wise division of this matrix by another matrix ~ this / + * m + * + * @param m + * ~ other matrix + * + * @return + */ @Override public MatrixI elementwiseDivide(MatrixI m) { if (m.width() != cols || m.height() != rows) { - throw new IllegalArgumentException("Can't divide a " + this.rows + "x" + this.cols + " by a " + m.height() + "x" + m.width() + " matrix"); + throw new IllegalArgumentException( + "Can't divide a " + this.rows + "x" + this.cols + " by a " + + m.height() + "x" + m.width() + " matrix"); } double[][] tmp = new double[this.rows][this.cols]; for (int i = 0; i < this.rows; i++) { for (int j = 0; j < this.cols; j++) { - tmp[i][j] = this.getValue(i, j) / m.getValue(i,j); + tmp[i][j] = this.getValue(i, j) / m.getValue(i, j); } } return new Matrix(tmp); } /** - * calculate the root-mean-square for tow matrices - * @param m ~ other matrix - * - * @return - */ + * calculate the root-mean-square for tow matrices + * + * @param m + * ~ other matrix + * + * @return + */ @Override public double rmsd(MatrixI m) { @@ -1351,10 +1379,10 @@ public class Matrix implements MatrixI } /** - * calculates the Frobenius norm of this matrix - * - * @return - */ + * calculates the Frobenius norm of this matrix + * + * @return + */ @Override public double norm() { @@ -1363,17 +1391,17 @@ public class Matrix implements MatrixI { for (double val : row) { - result += Math.pow(val, 2); + result += Math.pow(val, 2); } } return Math.sqrt(result); } /** - * returns the sum of all values in this matrix - * - * @return - */ + * returns the sum of all values in this matrix + * + * @return + */ @Override public double sum() { @@ -1382,24 +1410,28 @@ public class Matrix implements MatrixI { for (double val : row) { - sum += (Double.isNaN(val)) ? 0.0 : val; + sum += (Double.isNaN(val)) ? 0.0 : val; } } return sum; } /** - * returns the sum-product of this matrix with vector v - * @param v ~ vector - * - * @return - */ + * returns the sum-product of this matrix with vector v + * + * @param v + * ~ vector + * + * @return + */ @Override public double[] sumProduct(double[] v) { if (v.length != cols) { - throw new IllegalArgumentException("Vector and matrix do not have the same dimension! (" + v.length + " != " + cols + ")"); + throw new IllegalArgumentException( + "Vector and matrix do not have the same dimension! (" + + v.length + " != " + cols + ")"); } double[] result = new double[rows]; for (int i = 0; i < rows; i++) @@ -1408,7 +1440,7 @@ public class Matrix implements MatrixI double sum = 0; for (int j = 0; j < row.length; j++) { - sum += row[j] * v[j]; + sum += row[j] * v[j]; } result[i] = sum; } @@ -1416,20 +1448,20 @@ public class Matrix implements MatrixI } /** - * mirrors columns of the matrix - * - * @return - */ + * mirrors columns of the matrix + * + * @return + */ @Override public MatrixI mirrorCol() { double[][] result = new double[rows][cols]; for (int i = 0; i < rows; i++) { - int k = cols - 1; // reverse col + int k = cols - 1; // reverse col for (int j = 0; j < cols; j++) { - result[i][k--] = this.getValue(i,j); + result[i][k--] = this.getValue(i, j); } } MatrixI resultMatrix = new Matrix(result); diff --git a/src/jalview/math/MatrixI.java b/src/jalview/math/MatrixI.java index 7faac73..b932b33 100644 --- a/src/jalview/math/MatrixI.java +++ b/src/jalview/math/MatrixI.java @@ -61,10 +61,10 @@ public interface MatrixI void setValue(int i, int j, double d); /** - * Returns the matrix as a double[][] array - * - * @return - */ + * Returns the matrix as a double[][] array + * + * @return + */ double[][] asArray(); /** @@ -175,10 +175,11 @@ public interface MatrixI void multiply(double d); /** - * Add d to all entries of this matrix - * - * @param d ~ value to add - */ + * Add d to all entries of this matrix + * + * @param d + * ~ value to add + */ void add(double d); /** @@ -193,7 +194,7 @@ public interface MatrixI boolean equals(MatrixI m2, double delta); /** - * Returns a copy in which every value in the matrix is its absolute + * Returns a copy in which every value in the matrix is its absolute */ MatrixI absolute(); @@ -208,110 +209,122 @@ public interface MatrixI double[] meanCol(); /** - * Returns a flattened matrix containing the sum of each column - * - * @return - */ + * Returns a flattened matrix containing the sum of each column + * + * @return + */ double[] sumCol(); /** - * returns the mean value of the complete matrix - */ + * returns the mean value of the complete matrix + */ double mean(); /** - * fills up a diagonal matrix with its transposed copy - * !other side should be filled with either 0 or Double.NaN - */ + * fills up a diagonal matrix with its transposed copy !other side should be + * filled with either 0 or Double.NaN + */ void fillDiagonal(); /** - * counts the number of Double.NaN in the matrix - * - * @return - */ + * counts the number of Double.NaN in the matrix + * + * @return + */ int countNaN(); /** - * performs an element-wise addition of this matrix by another matrix - * !matrices have to be the same size - * @param m ~ other matrix - * - * @return - * @throws IllegalArgumentException - * if this and m do not have the same dimensions - */ + * performs an element-wise addition of this matrix by another matrix + * !matrices have to be the same size + * + * @param m + * ~ other matrix + * + * @return + * @throws IllegalArgumentException + * if this and m do not have the same dimensions + */ MatrixI add(MatrixI m); /** - * performs an element-wise subtraction of this matrix by another matrix - * !matrices have to be the same size - * @param m ~ other matrix - * - * @return - * @throws IllegalArgumentException - * if this and m do not have the same dimensions - */ + * performs an element-wise subtraction of this matrix by another matrix + * !matrices have to be the same size + * + * @param m + * ~ other matrix + * + * @return + * @throws IllegalArgumentException + * if this and m do not have the same dimensions + */ MatrixI subtract(MatrixI m); - + /** - * performs an element-wise multiplication of this matrix by another matrix ~ this * m - * !matrices have to be the same size - * @param m ~ other matrix - * - * @return - * @throws IllegalArgumentException - * if this and m do not have the same dimensions - */ + * performs an element-wise multiplication of this matrix by another matrix ~ + * this * m !matrices have to be the same size + * + * @param m + * ~ other matrix + * + * @return + * @throws IllegalArgumentException + * if this and m do not have the same dimensions + */ MatrixI elementwiseMultiply(MatrixI m); /** - * performs an element-wise division of this matrix by another matrix ~ this / m - * !matrices have to be the same size - * @param m ~ other matrix - * - * @return - * @throws IllegalArgumentException - * if this and m do not have the same dimensions - */ + * performs an element-wise division of this matrix by another matrix ~ this / + * m !matrices have to be the same size + * + * @param m + * ~ other matrix + * + * @return + * @throws IllegalArgumentException + * if this and m do not have the same dimensions + */ MatrixI elementwiseDivide(MatrixI m); /** - * calculates the root-mean-square for two matrices - * @param m ~ other matrix - * - * @return - */ + * calculates the root-mean-square for two matrices + * + * @param m + * ~ other matrix + * + * @return + */ double rmsd(MatrixI m); /** - * calculates the Frobenius norm of this matrix - * - * @return - */ + * calculates the Frobenius norm of this matrix + * + * @return + */ double norm(); - + /** - * returns the sum of all values in this matrix - * - * @return - */ + * returns the sum of all values in this matrix + * + * @return + */ double sum(); /** - * returns the sum-product of this matrix with vector v - * @param v ~ vector - * - * @return - * @throws IllegalArgumentException - * if this.cols and v do not have the same length - */ + * returns the sum-product of this matrix with vector v + * + * @param v + * ~ vector + * + * @return + * @throws IllegalArgumentException + * if this.cols and v do not have the same length + */ double[] sumProduct(double[] v); /** - * mirrors the columns of this matrix - * - * @return - */ + * mirrors the columns of this matrix + * + * @return + */ MatrixI mirrorCol(); } diff --git a/src/jalview/math/MiscMath.java b/src/jalview/math/MiscMath.java index b5218d5..eee7ef8 100755 --- a/src/jalview/math/MiscMath.java +++ b/src/jalview/math/MiscMath.java @@ -27,14 +27,17 @@ import java.util.Arrays; /** * A collection of miscellaneous mathematical operations + * * @AUTHOR MorellThomas */ public class MiscMath { /** - * prints an array - * @param m ~ array - */ + * prints an array + * + * @param m + * ~ array + */ public static void print(double[] m, String format) { System.out.print("[ "); @@ -46,39 +49,43 @@ public class MiscMath } /** - * calculates the mean of an array - * - * @param m ~ array - * @return - */ + * calculates the mean of an array + * + * @param m + * ~ array + * @return + */ public static double mean(double[] m) { double sum = 0; int nanCount = 0; for (int i = 0; i < m.length; i++) { - if (!Double.isNaN(m[i])) // ignore NaN values in the array + if (!Double.isNaN(m[i])) // ignore NaN values in the array { sum += m[i]; - } else { - nanCount++; + } + else + { + nanCount++; } } return sum / (double) (m.length - nanCount); } /** - * calculates the sum of an array - * - * @param m ~ array - * @return - */ + * calculates the sum of an array + * + * @param m + * ~ array + * @return + */ public static double sum(double[] m) { double sum = 0; for (int i = 0; i < m.length; i++) { - if (!Double.isNaN(m[i])) // ignore NaN values in the array + if (!Double.isNaN(m[i])) // ignore NaN values in the array { sum += m[i]; } @@ -87,14 +94,14 @@ public class MiscMath } /** - * calculates the square root of each element in an array - * - * @param m ~ array - * - * @return - * TODO - * make general with function passed -> apply function to each element - */ + * calculates the square root of each element in an array + * + * @param m + * ~ array + * + * @return TODO make general with function passed -> apply function to each + * element + */ public static double[] sqrt(double[] m) { double[] sqrts = new double[m.length]; @@ -106,16 +113,20 @@ public class MiscMath } /** - * calculate element wise multiplication of two arrays with the same length - * - * @param a ~ array - * @param b ~ array - * - * @return - */ - public static double[] elementwiseMultiply(byte[] a, double[] b) throws RuntimeException + * calculate element wise multiplication of two arrays with the same length + * + * @param a + * ~ array + * @param b + * ~ array + * + * @return + */ + public static double[] elementwiseMultiply(byte[] a, double[] b) + throws RuntimeException { - if (a.length != b.length) // throw exception if the arrays do not have the same length + if (a.length != b.length) // throw exception if the arrays do not have the + // same length { throw new SameLengthException(a.length, b.length); } @@ -126,9 +137,12 @@ public class MiscMath } return result; } - public static double[] elementwiseMultiply(double[] a, double[] b) throws RuntimeException + + public static double[] elementwiseMultiply(double[] a, double[] b) + throws RuntimeException { - if (a.length != b.length) // throw exception if the arrays do not have the same length + if (a.length != b.length) // throw exception if the arrays do not have the + // same length { throw new SameLengthException(a.length, b.length); } @@ -139,9 +153,12 @@ public class MiscMath } return result; } - public static byte[] elementwiseMultiply(byte[] a, byte[] b) throws RuntimeException + + public static byte[] elementwiseMultiply(byte[] a, byte[] b) + throws RuntimeException { - if (a.length != b.length) // throw exception if the arrays do not have the same length + if (a.length != b.length) // throw exception if the arrays do not have the + // same length { throw new SameLengthException(a.length, b.length); } @@ -152,6 +169,7 @@ public class MiscMath } return result; } + public static double[] elementwiseMultiply(double[] a, double b) { double[] result = new double[a.length]; @@ -163,16 +181,20 @@ public class MiscMath } /** - * calculate element wise division of two arrays ~ a / b - * - * @param a ~ array - * @param b ~ array - * - * @return - */ - public static double[] elementwiseDivide(double[] a, double[] b) throws RuntimeException + * calculate element wise division of two arrays ~ a / b + * + * @param a + * ~ array + * @param b + * ~ array + * + * @return + */ + public static double[] elementwiseDivide(double[] a, double[] b) + throws RuntimeException { - if (a.length != b.length) // throw exception if the arrays do not have the same length + if (a.length != b.length) // throw exception if the arrays do not have the + // same length { throw new SameLengthException(a.length, b.length); } @@ -185,16 +207,20 @@ public class MiscMath } /** - * calculate element wise addition of two arrays - * - * @param a ~ array - * @param b ~ array - * - * @return - */ - public static double[] elementwiseAdd(double[] a, double[] b) throws RuntimeException + * calculate element wise addition of two arrays + * + * @param a + * ~ array + * @param b + * ~ array + * + * @return + */ + public static double[] elementwiseAdd(double[] a, double[] b) + throws RuntimeException { - if (a.length != b.length) // throw exception if the arrays do not have the same length + if (a.length != b.length) // throw exception if the arrays do not have the + // same length { throw new SameLengthException(a.length, b.length); } @@ -206,6 +232,7 @@ public class MiscMath } return result; } + public static double[] elementwiseAdd(double[] a, double b) { double[] result = new double[a.length]; @@ -217,41 +244,59 @@ public class MiscMath } /** - * returns true if two arrays are element wise within a tolerance - * - * @param a ~ array - * @param b ~ array - * @param rtol ~ relative tolerance - * @param atol ~ absolute tolerance - * @param equalNAN ~ whether NaN at the same position return true - * - * @return - */ - public static boolean allClose(double[] a, double[] b, double rtol, double atol, boolean equalNAN) + * returns true if two arrays are element wise within a tolerance + * + * @param a + * ~ array + * @param b + * ~ array + * @param rtol + * ~ relative tolerance + * @param atol + * ~ absolute tolerance + * @param equalNAN + * ~ whether NaN at the same position return true + * + * @return + */ + public static boolean allClose(double[] a, double[] b, double rtol, + double atol, boolean equalNAN) { boolean areEqual = true; for (int i = 0; i < a.length; i++) { - if (equalNAN && (Double.isNaN(a[i]) && Double.isNaN(b[i]))) // if equalNAN == true -> skip the NaN pair + if (equalNAN && (Double.isNaN(a[i]) && Double.isNaN(b[i]))) // if equalNAN + // == true -> + // skip the + // NaN pair { - continue; + continue; } - if (Math.abs(a[i] - b[i]) > (atol + rtol * Math.abs(b[i]))) // check for the similarity condition -> if not met -> break and return false + if (Math.abs(a[i] - b[i]) > (atol + rtol * Math.abs(b[i]))) // check for + // the + // similarity + // condition + // -> if not + // met -> + // break and + // return + // false { - areEqual = false; - break; + areEqual = false; + break; } } return areEqual; } /** - * returns the index of the maximum and the maximum value of an array - * - * @param a ~ array - * - * @return - */ + * returns the index of the maximum and the maximum value of an array + * + * @param a + * ~ array + * + * @return + */ public static int[] findMax(int[] a) { int max = 0; @@ -260,25 +305,30 @@ public class MiscMath { if (a[i] > max) { - max = a[i]; - maxIndex = i; + max = a[i]; + maxIndex = i; } } - return new int[]{maxIndex, max}; + return new int[] { maxIndex, max }; } /** - * returns the dot product of two arrays - * @param a ~ array a - * @param b ~ array b - * - * @return - */ + * returns the dot product of two arrays + * + * @param a + * ~ array a + * @param b + * ~ array b + * + * @return + */ public static double dot(double[] a, double[] b) { if (a.length != b.length) { - throw new IllegalArgumentException(String.format("Vectors do not have the same length (%d, %d)!", a.length, b.length)); + throw new IllegalArgumentException( + String.format("Vectors do not have the same length (%d, %d)!", + a.length, b.length)); } double aibi = 0; @@ -290,11 +340,13 @@ public class MiscMath } /** - * returns the euklidian norm of the vector - * @param v ~ vector - * - * @return - */ + * returns the euklidian norm of the vector + * + * @param v + * ~ vector + * + * @return + */ public static double norm(double[] v) { double result = 0; @@ -302,15 +354,17 @@ public class MiscMath { result += Math.pow(i, 2); } - return Math.sqrt(result); + return Math.sqrt(result); } /** - * returns the number of NaN in the vector - * @param v ~ vector - * - * @return - */ + * returns the number of NaN in the vector + * + * @param v + * ~ vector + * + * @return + */ public static int countNaN(double[] v) { int cnt = 0; @@ -318,20 +372,21 @@ public class MiscMath { if (Double.isNaN(i)) { - cnt++; + cnt++; } } return cnt; } /** - * recursively calculates the permutations of total n items with r items per combination - * according to n!/(n-r)! by only multiplying the relevant terms - * @param n - * @param r - * - * @return permutations - */ + * recursively calculates the permutations of total n items with r items per + * combination according to n!/(n-r)! by only multiplying the relevant terms + * + * @param n + * @param r + * + * @return permutations + */ public static long permutations(int n, int r) { if (n < r) @@ -340,13 +395,14 @@ public class MiscMath long result = 1l; for (int i = 0; i < r; i++) { - result *= (n-i); + result *= (n - i); } return result; } /** * calculate all unique combinations of n elements into r sized groups + * * @param n * @param r * @@ -357,13 +413,14 @@ public class MiscMath int result = 1; for (int i = 0; i < r; i++) { - result *= (n-1); + result *= (n - 1); } return (int) (result / MiscMath.factorial(r)); } /** * calculate the factorial of n (n >= 0) + * * @param n * * @return diff --git a/src/jalview/project/Jalview2XML.java b/src/jalview/project/Jalview2XML.java index 7729e18..32dc558 100644 --- a/src/jalview/project/Jalview2XML.java +++ b/src/jalview/project/Jalview2XML.java @@ -1490,12 +1490,15 @@ public class Jalview2XML // group has references so set its ID field jGroup.setId(groupRefs.get(sg)); } - - List groupSecondaryStructureSources = sg.getSecondaryStructureSources(); - if(groupSecondaryStructureSources != null && groupSecondaryStructureSources.size()>0) { + + List groupSecondaryStructureSources = sg + .getSecondaryStructureSources(); + if (groupSecondaryStructureSources != null + && groupSecondaryStructureSources.size() > 0) + { jGroup.getSecStrProvider().addAll(groupSecondaryStructureSources); } - + ColourSchemeI colourScheme = sg.getColourScheme(); if (colourScheme != null) { @@ -1532,16 +1535,16 @@ public class Jalview2XML } jGroup.setPidThreshold(groupColourScheme.getThreshold()); - - if(groupColourScheme.isConsensusSecondaryStructureColouring()) + + if (groupColourScheme.isConsensusSecondaryStructureColouring()) { - jGroup.setSecstrSelected( - groupColourScheme.isConsensusSecondaryStructureColouring()); + jGroup.setSecstrSelected(groupColourScheme + .isConsensusSecondaryStructureColouring()); jGroup.setSecstrThreshold(groupColourScheme .getConsensusSecondaryStructureThreshold()); } } - + jGroup.setOutlineColour(sg.getOutlineColour().getRGB()); jGroup.setDisplayBoxes(sg.getDisplayBoxes()); jGroup.setDisplayText(sg.getDisplayText()); @@ -1560,7 +1563,7 @@ public class Jalview2XML jGroup.getSeq().add(seqHash(seq)); } } - + // jms.setJGroup(groups); Object group; for (JGroup grp : groups) @@ -1660,10 +1663,11 @@ public class Jalview2XML } } view.setPidThreshold(vcs.getThreshold()); - - if(vcs.isConsensusSecondaryStructureColouring()) + + if (vcs.isConsensusSecondaryStructureColouring()) { - view.setSecstrThreshold(vcs.getConsensusSecondaryStructureThreshold()); + view.setSecstrThreshold( + vcs.getConsensusSecondaryStructureThreshold()); } } @@ -2011,13 +2015,14 @@ public class Jalview2XML } /** - * Writes PaSiMap viewer attributes and computed values to an XML model object and - * adds it to the JalviewModel. Any exceptions are reported by logging. + * Writes PaSiMap viewer attributes and computed values to an XML model object + * and adds it to the JalviewModel. Any exceptions are reported by logging. * uses the functions from PCA */ protected void savePaSiMap(PaSiMapPanel panel, JalviewModel object) { - // TODO: this should be merged with above savePCAPanel - otherwise it is essentially redundant code + // TODO: this should be merged with above savePCAPanel - otherwise it is + // essentially redundant code try { PcaViewer viewer = new PcaViewer(); @@ -2107,6 +2112,7 @@ public class Jalview2XML Console.error("Error saving PaSiMap: " + t.getMessage()); } } + /** * Stores values from a matrix into an XML element, including (if present) the * D or E vectors @@ -4381,7 +4387,7 @@ public class Jalview2XML .setConservationInc(safeInt(jGroup.getConsThreshold())); sg.getGroupColourScheme().setConsensusSecondaryStructureThreshold( safeInt(jGroup.getSecstrThreshold())); - + sg.setOutlineColour(new Color(safeInt(jGroup.getOutlineColour()))); sg.textColour = new Color(safeInt(jGroup.getTextCol1())); @@ -4814,20 +4820,23 @@ public class Jalview2XML } else { - if (false)//tree.isAnnotationAssociated()) + if (false)// tree.isAnnotationAssociated()) { // TODO - resolve annotation IDs against newick tree labels // then fix up labels so they are human readable - - tp = af.showNewickTreeForAnnotation(new NewickFile(tree.getNewick()), - tree.getTitle(), null, safeInt(tree.getWidth()), + + tp = af.showNewickTreeForAnnotation( + new NewickFile(tree.getNewick()), tree.getTitle(), + null, safeInt(tree.getWidth()), safeInt(tree.getHeight()), safeInt(tree.getXpos()), safeInt(tree.getYpos())); - } else { + } + else + { tp = af.showNewickTree(new NewickFile(tree.getNewick()), - tree.getTitle(), safeInt(tree.getWidth()), - safeInt(tree.getHeight()), safeInt(tree.getXpos()), - safeInt(tree.getYpos())); + tree.getTitle(), safeInt(tree.getWidth()), + safeInt(tree.getHeight()), safeInt(tree.getXpos()), + safeInt(tree.getYpos())); } } if (tree.getId() != null) @@ -5358,7 +5367,8 @@ public class Jalview2XML // recover view properties and display parameters viewport.setShowAnnotation(safeBoolean(view.isShowAnnotation())); - viewport.setShowStructureProvider(safeBoolean(view.isShowStructureProviders())); + viewport.setShowStructureProvider( + safeBoolean(view.isShowStructureProviders())); viewport.setAbovePIDThreshold(safeBoolean(view.isPidSelected())); final int pidThreshold = safeInt(view.getPidThreshold()); viewport.setThreshold(pidThreshold); @@ -5464,8 +5474,8 @@ public class Jalview2XML view.isIgnoreGapsinConsensus()); viewport.getResidueShading() .setConsensus(viewport.getSequenceConsensusHash()); - viewport.getResidueShading() - .setSSConsensusProfileMap(viewport.getSequenceSSConsensusHash()); + viewport.getResidueShading().setSSConsensusProfileMap( + viewport.getSequenceSSConsensusHash()); if (safeBoolean(view.isConservationSelected()) && cs != null) { viewport.getResidueShading() @@ -5473,9 +5483,8 @@ public class Jalview2XML } if (safeBoolean(view.isSecstrSelected()) && cs != null) { - viewport.getResidueShading() - .setConsensusSecondaryStructureThreshold( - safeInt(view.getSecstrThreshold())); + viewport.getResidueShading().setConsensusSecondaryStructureThreshold( + safeInt(view.getSecstrThreshold())); } af.changeColour(cs); viewport.setColourAppliesToAllGroups(true); @@ -6762,9 +6771,9 @@ public class Jalview2XML private boolean isPasimap(PcaViewer viewer) { - return viewer.getTitle().toLowerCase(Locale.ROOT) - .startsWith("pasimap"); + return viewer.getTitle().toLowerCase(Locale.ROOT).startsWith("pasimap"); } + /** * Loads any saved PaSiMAp viewers using the function from PCA * @@ -6788,7 +6797,7 @@ public class Jalview2XML viewer.isIncludeGappedColumns(), viewer.isMatchGaps(), viewer.isIncludeGaps(), viewer.isDenominateByShortestLength()); - */ + */ /* * create the panel (without computing the PaSiMAp) @@ -6815,7 +6824,8 @@ public class Jalview2XML PaSiMap pasimap = new PaSiMap(null, scoreModel, null); PcaDataType pasimapData = viewer.getPcaData(); - MatrixI pairwise = loadDoubleMatrix(pasimapData.getPairwiseMatrix()); + MatrixI pairwise = loadDoubleMatrix( + pasimapData.getPairwiseMatrix()); pasimap.setPairwiseScores(pairwise); MatrixI result = loadDoubleMatrix(pasimapData.getEigenMatrix()); diff --git a/src/jalview/renderer/AnnotationRenderer.java b/src/jalview/renderer/AnnotationRenderer.java index 4b4ef8d..58c93a4 100644 --- a/src/jalview/renderer/AnnotationRenderer.java +++ b/src/jalview/renderer/AnnotationRenderer.java @@ -92,7 +92,7 @@ public class AnnotationRenderer private HiddenColumns hiddenColumns; private ProfilesI hconsensus; - + private Map hSSconsensus; private Hashtable[] complementConsensus; @@ -433,57 +433,65 @@ public class AnnotationRenderer } } } - - if(aa.autoCalculated && aa.label.startsWith(Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL)) + + if (aa.autoCalculated && aa.label + .startsWith(Constants.SECONDARY_STRUCTURE_CONSENSUS_LABEL)) { - - if(aa.groupRef != null && aa.groupRef.hSSConsensusProfileMap != null - && aa.groupRef.isShowSequenceLogo()) { - for (String source : aa.groupRef.hSSConsensusProfileMap.keySet()) { - if(aa.description.startsWith(source)) { - - return AAFrequency.extractProfile( - aa.groupRef.hSSConsensusProfileMap.get(source).get(column), - aa.groupRef.getIgnoreGapsConsensus()); + + if (aa.groupRef != null && aa.groupRef.hSSConsensusProfileMap != null + && aa.groupRef.isShowSequenceLogo()) + { + for (String source : aa.groupRef.hSSConsensusProfileMap.keySet()) + { + if (aa.description.startsWith(source)) + { + + return AAFrequency + .extractProfile( + aa.groupRef.hSSConsensusProfileMap.get(source) + .get(column), + aa.groupRef.getIgnoreGapsConsensus()); + } } } - } - - if(hSSconsensus!=null && aa.groupRef == null) { - for (String source : hSSconsensus.keySet()) { - if(aa.description.startsWith(source)) { - - return AAFrequency.extractProfile( - hSSconsensus.get(source).get(column), - av_ignoreGapsConsensus); + + if (hSSconsensus != null && aa.groupRef == null) + { + for (String source : hSSconsensus.keySet()) + { + if (aa.description.startsWith(source)) + { + + return AAFrequency.extractProfile( + hSSconsensus.get(source).get(column), + av_ignoreGapsConsensus); + } } } - } - + } - - if (aa.autoCalculated && aa.label.startsWith("StrucConsensus")) + + if (aa.autoCalculated && aa.label.startsWith("StrucConsensus")) + { + // TODO implement group structure consensus + /* + * if (aa.groupRef != null && aa.groupRef.consensusData != null && + * aa.groupRef.isShowSequenceLogo()) { //TODO check what happens for + * group selections return StructureFrequency.extractProfile( + * aa.groupRef.consensusData[column], aa.groupRef + * .getIgnoreGapsConsensus()); } + */ + // TODO extend annotation row to enable dynamic and static profile data + // to + // be stored + if (aa.groupRef == null && aa.sequenceRef == null + && hStrucConsensus != null && hStrucConsensus.length > column) { - // TODO implement group structure consensus - /* - * if (aa.groupRef != null && aa.groupRef.consensusData != null && - * aa.groupRef.isShowSequenceLogo()) { //TODO check what happens for - * group selections return StructureFrequency.extractProfile( - * aa.groupRef.consensusData[column], aa.groupRef - * .getIgnoreGapsConsensus()); } - */ - // TODO extend annotation row to enable dynamic and static profile data - // to - // be stored - if (aa.groupRef == null && aa.sequenceRef == null - && hStrucConsensus != null - && hStrucConsensus.length > column) - { - return StructureFrequency.extractProfile(hStrucConsensus[column], - av_ignoreGapsConsensus); - } + return StructureFrequency.extractProfile(hStrucConsensus[column], + av_ignoreGapsConsensus); } - + } + return null; } @@ -570,18 +578,18 @@ public class AnnotationRenderer // settings appropriately // TODO: generalise this to have render styles for consensus/profile // data - if (row.groupRef != null && - (row == row.groupRef.getConsensus() || - (row.groupRef.getSSConsensus(null) !=null && row.groupRef.getSSConsensus(null).contains(row)))) + if (row.groupRef != null && (row == row.groupRef.getConsensus() + || (row.groupRef.getSSConsensus(null) != null + && row.groupRef.getSSConsensus(null).contains(row)))) { renderHistogram = row.groupRef.isShowConsensusHistogram(); renderProfile = row.groupRef.isShowSequenceLogo(); normaliseProfile = row.groupRef.isNormaliseSequenceLogo(); } - else if (row == consensusAnnot - || row == structConsensusAnnot - || row == complementConsensusAnnot - || (ssConsensusAnnot!=null && ssConsensusAnnot.contains(row))) + else if (row == consensusAnnot || row == structConsensusAnnot + || row == complementConsensusAnnot + || (ssConsensusAnnot != null + && ssConsensusAnnot.contains(row))) { renderHistogram = av_renderHistogram; renderProfile = av_renderProfile; @@ -1568,13 +1576,12 @@ public class AnnotationRenderer * {profile type, #values, total count, char1, pct1, char2, pct2...} */ int profl[] = getProfileFor(_aa, column); - - // just try to draw the logo if profl is not null if (profl != null && profl[2] != 0) { - // TODO do we ever have different profiles for different columns ? Move up to where we set _aa_is_dssp3 + // TODO do we ever have different profiles for different columns ? + // Move up to where we set _aa_is_dssp3 boolean isStructureProfile = profl[0] == AlignmentAnnotation.STRUCTURE_PROFILE; boolean isCdnaProfile = profl[0] == AlignmentAnnotation.CDNA_PROFILE; float ht = normaliseProfile ? y - _aa.graphHeight : y1; @@ -1651,8 +1658,11 @@ public class AnnotationRenderer .codonTranslate(s); colour = profcolour.findColour(codonTranslation.charAt(0), column, null); - } else if(_aa_is_dssp3) { - // TODO - would be nice to get rid of the special 'findSSColour' here ? + } + else if (_aa_is_dssp3) + { + // TODO - would be nice to get rid of the special 'findSSColour' + // here ? colour = profcolour.findSSColour(dc[0], column); } else diff --git a/src/jalview/renderer/ResidueShader.java b/src/jalview/renderer/ResidueShader.java index 0b191ec..1feed89 100644 --- a/src/jalview/renderer/ResidueShader.java +++ b/src/jalview/renderer/ResidueShader.java @@ -63,18 +63,18 @@ public class ResidueShader implements ResidueShaderI * the consensus data for each column */ private ProfilesI consensus; - + /* * the ss consensus data for each column for each source */ - + private Map ssConsensusProfileMap; /* * if true, apply shading of colour by conservation */ private boolean conservationColouring; - + private boolean consensusSecondaryStructureColouring; @Override @@ -106,7 +106,7 @@ public class ResidueShader implements ResidueShaderI * setting of the By Conservation slider */ private int conservationIncrement = INITIAL_CONSERVATION; - + private int consensusSecondaryStructureThreshold = 30; public ResidueShader(ColourSchemeI cs) @@ -158,7 +158,7 @@ public class ResidueShader implements ResidueShaderI public void setConsensus(ProfilesI cons) { consensus = cons; - + } /** @@ -198,13 +198,14 @@ public class ResidueShader implements ResidueShaderI } } - + @Override - public void setConsensusSecondaryStructureColouring(boolean colourByConsensusSecondaryStructure) + public void setConsensusSecondaryStructureColouring( + boolean colourByConsensusSecondaryStructure) { - + consensusSecondaryStructureColouring = colourByConsensusSecondaryStructure; - + } /** @@ -254,13 +255,13 @@ public class ResidueShader implements ResidueShaderI { consensusSecondaryStructureThreshold = i; } - + @Override public int getConsensusSecondaryStructureThreshold() { return consensusSecondaryStructureThreshold; } - + /** * @see jalview.renderer.ResidueShaderI#getThreshold() */ @@ -303,7 +304,7 @@ public class ResidueShader implements ResidueShaderI return colour; } - + @Override public Color findSSColour(char symbol, int position) { @@ -312,8 +313,9 @@ public class ResidueShader implements ResidueShaderI return Color.white; // Colour is 'None' } - Color colour = AlignmentUtils.getSecondaryStructureAnnotationColour(symbol); - + Color colour = AlignmentUtils + .getSecondaryStructureAnnotationColour(symbol); + /* * apply PID threshold and consensus fading if in force */ @@ -348,8 +350,8 @@ public class ResidueShader implements ResidueShaderI { colour = Color.white; } - - if(consensusSecondaryStructureColouring) + + if (consensusSecondaryStructureColouring) { colour = applyByConsensusSecondaryStructure(colour, column); } @@ -465,35 +467,36 @@ public class ResidueShader implements ResidueShaderI return ColorUtils.bleachColour(currentColour, bleachFactor); } - - - protected Color applyByConsensusSecondaryStructure(Color currentColour, int column) + + protected Color applyByConsensusSecondaryStructure(Color currentColour, + int column) { - if (ssConsensusProfileMap == null && - ssConsensusProfileMap.get(Constants.SS_ALL_PROVIDERS) == null) + if (ssConsensusProfileMap == null && ssConsensusProfileMap + .get(Constants.SS_ALL_PROVIDERS) == null) { return currentColour; } - - ProfilesI consensusSSProfileForAllSources = - ssConsensusProfileMap.get(Constants.SS_ALL_PROVIDERS); + + ProfilesI consensusSSProfileForAllSources = ssConsensusProfileMap + .get(Constants.SS_ALL_PROVIDERS); ProfileI profile = consensusSSProfileForAllSources.get(column); - - if(profile != null) - { - float pid = profile.getSSPercentageIdentity(ignoreGaps); - if(pid == 0) { - return Color.white; - } + if (profile != null) + { + float pid = profile.getSSPercentageIdentity(ignoreGaps); + + if (pid == 0) + { + return Color.white; + } - float bleachFactor = 1f - (pid/100); - bleachFactor *= (consensusSecondaryStructureThreshold/20); + float bleachFactor = 1f - (pid / 100); + bleachFactor *= (consensusSecondaryStructureThreshold / 20); + + return ColorUtils.bleachColour(currentColour, bleachFactor); - return ColorUtils.bleachColour(currentColour, bleachFactor); - } - + return currentColour; } @@ -521,7 +524,8 @@ public class ResidueShader implements ResidueShaderI return ssConsensusProfileMap; } - public void setSSConsensusProfileMap(Map ssConsensusProfileMap) + public void setSSConsensusProfileMap( + Map ssConsensusProfileMap) { this.ssConsensusProfileMap = ssConsensusProfileMap; } diff --git a/src/jalview/renderer/ResidueShaderI.java b/src/jalview/renderer/ResidueShaderI.java index c35f208..8e6c754 100644 --- a/src/jalview/renderer/ResidueShaderI.java +++ b/src/jalview/renderer/ResidueShaderI.java @@ -34,8 +34,9 @@ public interface ResidueShaderI { public abstract void setConsensus(ProfilesI cons); - - public abstract void setSSConsensusProfileMap(Map ssConsensusProfileMap); + + public abstract void setSSConsensusProfileMap( + Map ssConsensusProfileMap); public abstract boolean conservationApplied(); diff --git a/src/jalview/schemes/ClustalxColourScheme.java b/src/jalview/schemes/ClustalxColourScheme.java index 04097a8..8e64f8f 100755 --- a/src/jalview/schemes/ClustalxColourScheme.java +++ b/src/jalview/schemes/ClustalxColourScheme.java @@ -364,62 +364,72 @@ public class ClustalxColourScheme extends ResidueColourScheme { return false; } + public String toRuleRep() { makeColours(); - HashMap cols=new HashMap(); - for (String res:ResidueProperties.aa) { + HashMap cols = new HashMap(); + for (String res : ResidueProperties.aa) + { StringBuilder sb = new StringBuilder(); - - int rnum=ResidueProperties.aaIndex[res.charAt(0)]; - if (rnum<0 || rnum>=residueColour.length) + + int rnum = ResidueProperties.aaIndex[res.charAt(0)]; + if (rnum < 0 || rnum >= residueColour.length) { continue; } - + ConsensusColour cc = residueColour[rnum]; - if (cc==null) + if (cc == null) { continue; } - //sb.append("Residue "+res+" ("+rnum+")"); - //sb.append("\t"); + // sb.append("Residue "+res+" ("+rnum+")"); + // sb.append("\t"); sb.append(cc.c.toString()); - double f=0; + double f = 0; sb.append("\t"); - for (Consensus cons: cc.cons) { - if (cons.threshold==0 || f!=cons.threshold) + for (Consensus cons : cc.cons) + { + if (cons.threshold == 0 || f != cons.threshold) { - if (f!=0) + if (f != 0) { - sb.append("}, {"); - } else { - sb.append("{"); + sb.append("}, {"); + } + else + { + sb.append("{"); } - sb.append(cons.threshold); - sb.append(","); - f=cons.threshold; - } else { + sb.append(cons.threshold); + sb.append(","); + f = cons.threshold; + } + else + { sb.append(","); } sb.append(cons.maskstr); } sb.append("}"); - String clxrep=sb.toString(); + String clxrep = sb.toString(); String xres = cols.get(clxrep); - if (xres==null) { xres = "";} - xres+=res; + if (xres == null) + { + xres = ""; + } + xres += res; cols.put(clxrep, xres); } StringBuilder sb = new StringBuilder(); - for (String clxrep:cols.keySet()) + for (String clxrep : cols.keySet()) { sb.append(cols.get(clxrep)); sb.append("\t"); sb.append(clxrep); sb.append("\n"); - + } return sb.toString(); } diff --git a/src/jalview/schemes/ResidueProperties.java b/src/jalview/schemes/ResidueProperties.java index 2fcb95f..9d83069 100755 --- a/src/jalview/schemes/ResidueProperties.java +++ b/src/jalview/schemes/ResidueProperties.java @@ -41,7 +41,7 @@ public class ResidueProperties public static final int[] nucleotideIndex; public static final int[] purinepyrimidineIndex; - + public static final int[] secondaryStructureIndex; public static final Map aa3Hash = new HashMap<>(); @@ -197,13 +197,13 @@ public class ResidueProperties purinepyrimidineIndex['N'] = 2; purinepyrimidineIndex['n'] = 2; } - + static { secondaryStructureIndex = new int[255]; for (int i = 0; i < 255; i++) { - secondaryStructureIndex[i] = 3; + secondaryStructureIndex[i] = 3; } secondaryStructureIndex['H'] = 0; @@ -398,12 +398,12 @@ public class ResidueProperties Color.white, // all other nucleotides Color.white // Gap }; - - //Secondary structure - public static final Color[] secondarystructure = { Color.red, // H - Color.green, // E - Color.gray // C - }; + + // Secondary structure + public static final Color[] secondarystructure = { Color.red, // H + Color.green, // E + Color.gray // C + }; // Zappo public static final Color[] zappo = { Color.pink, // A diff --git a/src/jalview/structure/StructureSelectionManager.java b/src/jalview/structure/StructureSelectionManager.java index 73c4c0f..c3c3b3e 100644 --- a/src/jalview/structure/StructureSelectionManager.java +++ b/src/jalview/structure/StructureSelectionManager.java @@ -696,18 +696,22 @@ public class StructureSelectionManager StructureMapping nwMapping = getNWMappings(seq, pdbFile, maxChainId, maxChain, pdb, maxAlignseq); seqToStrucMapping.add(nwMapping); - ds.addPDBId(maxChain.sequence.getAllPDBEntries().get(0)); + ds.addPDBId(maxChain.sequence.getAllPDBEntries().get(0)); } - - //JAL-4392 TODO: Unable to match PDBProvider with Annotation without matching struct file path + + // JAL-4392 TODO: Unable to match PDBProvider with Annotation without + // matching struct file path String ssAnnotDescriptionInPDB = null; - String ssStructFilePathNameInPDB = pdb.getInFile(); //Structure file name in PDB data model - //Secondary structure annotations in pdb data model - AlignmentAnnotation[] ssAnnotationsInPDB = pdb.getSeqs().get(0).getAnnotation(Constants.SS_ANNOTATION_LABEL); - if(ssAnnotationsInPDB != null && ssAnnotationsInPDB.length>0) { + String ssStructFilePathNameInPDB = pdb.getInFile(); // Structure file name + // in PDB data model + // Secondary structure annotations in pdb data model + AlignmentAnnotation[] ssAnnotationsInPDB = pdb.getSeqs().get(0) + .getAnnotation(Constants.SS_ANNOTATION_LABEL); + if (ssAnnotationsInPDB != null && ssAnnotationsInPDB.length > 0) + { ssAnnotDescriptionInPDB = ssAnnotationsInPDB[0].description; } - + // Match the PDB entry using file path in the pdb data model and get the // provider if (ssStructFilePathNameInPDB != null @@ -729,7 +733,8 @@ public class StructureSelectionManager // Add provider value as property to the ss annotation if (provider != null) { - // TODO - JAL-2880 JAL-4441 this should be applied to all structure derived annotations, not just secondary structure! + // TODO - JAL-2880 JAL-4441 this should be applied to all structure + // derived annotations, not just secondary structure! AlignmentAnnotation[] ssAnnotList = ds .getAnnotation(Constants.SS_ANNOTATION_LABEL); if (ssAnnotList != null) @@ -751,8 +756,7 @@ public class StructureSelectionManager } } } - - + if (forStructureView) { for (StructureMapping sm : seqToStrucMapping) diff --git a/src/jalview/util/Constants.java b/src/jalview/util/Constants.java index 27513ab..5f01895 100644 --- a/src/jalview/util/Constants.java +++ b/src/jalview/util/Constants.java @@ -28,31 +28,35 @@ import java.util.Map; */ public class Constants { - - //character used to represent secondary structures + + // character used to represent secondary structures public static final char HELIX = 'H'; + public static final char SHEET = 'E'; + public static final char COIL = 'C'; - //label in secondary structure annotation data model from 3d structures + // label in secondary structure annotation data model from 3d structures public static final String SS_ANNOTATION_LABEL = "Secondary Structure"; - - //label in secondary structure annotation data model from JPred - public static final String SS_ANNOTATION_FROM_JPRED_LABEL = "jnetpred"; - + + // label in secondary structure annotation data model from JPred + public static final String SS_ANNOTATION_FROM_JPRED_LABEL = "jnetpred"; + public static final Map SECONDARY_STRUCTURE_LABELS = new HashMap<>(); - static { - SECONDARY_STRUCTURE_LABELS.put(SS_ANNOTATION_LABEL, "3D Structures"); - SECONDARY_STRUCTURE_LABELS.put(SS_ANNOTATION_FROM_JPRED_LABEL, "JPred"); - // Add other secondary structure labels here if needed - } - - public static final String SS_PROVIDER_PROPERTY = "SS_PROVIDER"; - - //generic secondary structure provider options - public static final String SS_ALL_PROVIDERS = "All"; + static + { + SECONDARY_STRUCTURE_LABELS.put(SS_ANNOTATION_LABEL, "3D Structures"); + SECONDARY_STRUCTURE_LABELS.put(SS_ANNOTATION_FROM_JPRED_LABEL, "JPred"); + // Add other secondary structure labels here if needed + } + + public static final String SS_PROVIDER_PROPERTY = "SS_PROVIDER"; + + // generic secondary structure provider options + public static final String SS_ALL_PROVIDERS = "All"; + public static final String SS_NONE_PROVIDER = "None"; - - //Secondary structure consensus label + + // Secondary structure consensus label public static final String SECONDARY_STRUCTURE_CONSENSUS_LABEL = "Secondary Structure Consensus"; } diff --git a/src/jalview/viewmodel/AlignmentViewport.java b/src/jalview/viewmodel/AlignmentViewport.java index 94a1424..80c9957 100644 --- a/src/jalview/viewmodel/AlignmentViewport.java +++ b/src/jalview/viewmodel/AlignmentViewport.java @@ -252,7 +252,7 @@ public abstract class AlignmentViewport { return viewStyle.getAbovePIDThreshold(); } - + @Override public boolean getByConsensusSecondaryStructureSelected() { @@ -287,8 +287,8 @@ public abstract class AlignmentViewport public int getIncrement() { return viewStyle.getIncrement(); - } - + } + /** * @param inc * @see jalview.api.ViewStyleI#setConsensusSecondaryStructureThreshold(int) @@ -298,7 +298,7 @@ public abstract class AlignmentViewport { viewStyle.setConsensusSecondaryStructureThreshold(val); } - + /** * @return * @see jalview.api.ViewStyleI#getConsensusSecondaryStructureThreshold() @@ -307,8 +307,7 @@ public abstract class AlignmentViewport public int getConsensusSecondaryStructureThreshold() { return viewStyle.getConsensusSecondaryStructureThreshold(); - } - + } /** * @param b @@ -409,7 +408,7 @@ public abstract class AlignmentViewport { viewStyle.setAbovePIDThreshold(b); } - + @Override public void setByConsensusSecondaryStructureSelected(boolean b) { @@ -743,7 +742,7 @@ public abstract class AlignmentViewport } protected AlignmentAnnotation consensus; - + protected List secondaryStructureConsensus; protected AlignmentAnnotation complementConsensus; @@ -757,7 +756,7 @@ public abstract class AlignmentViewport protected AlignmentAnnotation quality; protected AlignmentAnnotation[] groupConsensus; - + protected AlignmentAnnotation[] groupSSConsensus; protected AlignmentAnnotation[] groupConservation; @@ -766,10 +765,8 @@ public abstract class AlignmentViewport * results of alignment consensus analysis for visible portion of view */ protected ProfilesI hconsensus = null; - + protected Map hSSConsensusProfileMap = null; - - /** * results of cDNA complement consensus visible portion of view @@ -789,7 +786,7 @@ public abstract class AlignmentViewport { hconservation = cons; } - + @Override public List getSecondaryStructureSources() { @@ -802,15 +799,17 @@ public abstract class AlignmentViewport { viewStyle.setSecondaryStructureSources(secondaryStructureSources); } - + protected void setSecondaryStructureSources(AlignmentAnnotation[] aa) { List sources = null; - - if(aa!=null) { + + if (aa != null) + { sources = AlignmentUtils.extractSSSourceInAlignmentAnnotation(aa); - if(sources != null) { - sources.add(0,Constants.SS_ALL_PROVIDERS); + if (sources != null) + { + sources.add(0, Constants.SS_ALL_PROVIDERS); viewStyle.setSecondaryStructureSources(sources); } } @@ -833,13 +832,14 @@ public abstract class AlignmentViewport { this.hconsensus = hconsensus; } - + @Override - public void setSequenceSSConsensusHash(Map hSSConsensusProfileMap) + public void setSequenceSSConsensusHash( + Map hSSConsensusProfileMap) { this.hSSConsensusProfileMap = hSSConsensusProfileMap; } - + @Override public void setComplementConsensusHash( Hashtable[] hconsensus) @@ -858,7 +858,6 @@ public abstract class AlignmentViewport { return hSSConsensusProfileMap; } - @Override public Hashtable[] getComplementConsensusHash() @@ -898,13 +897,11 @@ public abstract class AlignmentViewport return consensus; } - @Override public List getAlignmentSecondaryStructureConsensusAnnotation() { return secondaryStructureConsensus; } - @Override public AlignmentAnnotation getAlignmentGapAnnotation() @@ -997,9 +994,6 @@ public abstract class AlignmentViewport } } } - - - /** * trigger update of Secondary Structure consensus annotation @@ -1012,21 +1006,31 @@ public abstract class AlignmentViewport return; } List ssSources = viewStyle.getSecondaryStructureSources(); - if (secondaryStructureConsensus.size() != ssSources.size()) { - - for(String source : ssSources) { + if (secondaryStructureConsensus.size() != ssSources.size()) + { + + for (String source : ssSources) + { boolean ssConsensusForSourcePresent = false; - for(AlignmentAnnotation aa : secondaryStructureConsensus) { - if(aa.description.startsWith(source)) { + for (AlignmentAnnotation aa : secondaryStructureConsensus) + { + if (aa.description.startsWith(source)) + { ssConsensusForSourcePresent = true; break; } } - - if(!ssConsensusForSourcePresent) { - AlignmentAnnotation ssConsensus = new AlignmentAnnotation(MessageManager.getString("label.ssconsensus_label") + " "+source, - source + " " + MessageManager.getString("label.ssconsensus_descr"), - new Annotation[1], 0f, 100f, AlignmentAnnotation.BAR_GRAPH); + + if (!ssConsensusForSourcePresent) + { + AlignmentAnnotation ssConsensus = new AlignmentAnnotation( + MessageManager.getString("label.ssconsensus_label") + " " + + source, + source + " " + + MessageManager + .getString("label.ssconsensus_descr"), + new Annotation[1], 0f, 100f, + AlignmentAnnotation.BAR_GRAPH); ssConsensus.hasText = true; ssConsensus.autoCalculated = true; @@ -1035,19 +1039,19 @@ public abstract class AlignmentViewport { ssConsensus.visible = true; alignment.addAnnotation(ssConsensus); - + } } } } - if (calculator - .getRegisteredWorkersOfClass(SecondaryStructureConsensusThread.class) == null) + if (calculator.getRegisteredWorkersOfClass( + SecondaryStructureConsensusThread.class) == null) { - calculator.registerWorker(new SecondaryStructureConsensusThread(this, ap)); + calculator.registerWorker( + new SecondaryStructureConsensusThread(this, ap)); } ap.adjustAnnotationHeight(); - } // --------START Structure Conservation @@ -1154,7 +1158,6 @@ public abstract class AlignmentViewport * should consensus rows be shown for groups */ protected boolean showGroupConsensus = false; - protected boolean showGroupSSConsensus = false; @@ -1162,7 +1165,7 @@ public abstract class AlignmentViewport * should consensus profile be rendered by default */ protected boolean showSequenceLogo = false; - + /** * should consensus profile be rendered normalised to row height */ @@ -1172,7 +1175,7 @@ public abstract class AlignmentViewport * should consensus histograms be rendered by default */ protected boolean showConsensusHistogram = true; - + /** * @return the showConsensusProfile */ @@ -1181,7 +1184,7 @@ public abstract class AlignmentViewport { return showSequenceLogo; } - + /** * @param showSequenceLogo * the new value @@ -1196,14 +1199,15 @@ public abstract class AlignmentViewport calculator.updateAnnotationFor(ConsensusThread.class); calculator.updateAnnotationFor(ComplementConsensusThread.class); calculator.updateAnnotationFor(StrucConsensusThread.class); - - //to do - calculator.updateAnnotationFor(SecondaryStructureConsensusThread.class); + // to do + + calculator + .updateAnnotationFor(SecondaryStructureConsensusThread.class); } this.showSequenceLogo = showSequenceLogo; } - + /** * @param showConsensusHistogram * the showConsensusHistogram to set @@ -1237,13 +1241,12 @@ public abstract class AlignmentViewport { return showGroupConsensus; } - + public boolean isShowGroupSSConsensus() { return showGroupSSConsensus; } - /** * @param showGroupConsensus * the showGroupConsensus to set @@ -1252,12 +1255,12 @@ public abstract class AlignmentViewport { this.showGroupConsensus = showGroupConsensus; } - + public void setShowGroupSSConsensus(boolean showGroupSSConsensus) { this.showGroupSSConsensus = showGroupSSConsensus; } - + /** * @param showSSConsensus * the showSSConsensus to set @@ -1266,7 +1269,7 @@ public abstract class AlignmentViewport { this.showSSConsensus = showSSConsensus; } - + /** * * @return flag to indicate if the consensus histogram should be rendered by @@ -1501,7 +1504,7 @@ public abstract class AlignmentViewport protected boolean showQuality = true; - protected boolean showConsensus = true; + protected boolean showConsensus = true; protected boolean showSSConsensus = true; @@ -2149,19 +2152,26 @@ public abstract class AlignmentViewport setSecondaryStructureSources(alignment.getAlignmentAnnotation()); List secondaryStructureSources = getSecondaryStructureSources(); - if(secondaryStructureSources!=null) { + if (secondaryStructureSources != null) + { secondaryStructureConsensus = new ArrayList(); - for (String ssSource : secondaryStructureSources) { - - AlignmentAnnotation ssConsensus = new AlignmentAnnotation(MessageManager.getString("label.ssconsensus_label") + " "+ssSource, - ssSource + " " + MessageManager.getString("label.ssconsensus_descr"), - new Annotation[1], 0f, 100f, AlignmentAnnotation.BAR_GRAPH); + for (String ssSource : secondaryStructureSources) + { + + AlignmentAnnotation ssConsensus = new AlignmentAnnotation( + MessageManager.getString("label.ssconsensus_label") + " " + + ssSource, + ssSource + " " + + MessageManager + .getString("label.ssconsensus_descr"), + new Annotation[1], 0f, 100f, + AlignmentAnnotation.BAR_GRAPH); secondaryStructureConsensus.add(ssConsensus); } - + } - + initConsensus(consensus); initSSConsensus(secondaryStructureConsensus); initGapCounts(); @@ -2169,7 +2179,6 @@ public abstract class AlignmentViewport } } - /** * If this is a protein alignment and there are mappings to cDNA, adds the * cDNA consensus annotation and returns true, else returns false. @@ -2220,21 +2229,24 @@ public abstract class AlignmentViewport alignment.addAnnotation(aa); } } - - private void initSSConsensus(List secondaryStructureConsensuses) + + private void initSSConsensus( + List secondaryStructureConsensuses) { - if(secondaryStructureConsensuses == null) { + if (secondaryStructureConsensuses == null) + { return; } - for(AlignmentAnnotation aa : secondaryStructureConsensuses) { + for (AlignmentAnnotation aa : secondaryStructureConsensuses) + { aa.hasText = true; aa.autoCalculated = true; - + if (showSSConsensus) { alignment.addAnnotation(aa); } - + } } @@ -2436,21 +2448,25 @@ public abstract class AlignmentViewport updateCalcs = true; alignment.addAnnotation(sg.getConsensus(), 0); } - if(sscons) - { + if (sscons) + { updateCalcs = true; List secondaryStructureSources = getSecondaryStructureSources(); - if(secondaryStructureSources !=null) { - List ssAa = sg.getSSConsensus(secondaryStructureSources); - if(ssAa != null) { - for(AlignmentAnnotation aa : ssAa) { + if (secondaryStructureSources != null) + { + List ssAa = sg + .getSSConsensus(secondaryStructureSources); + if (ssAa != null) + { + for (AlignmentAnnotation aa : ssAa) + { // Setting annotation visibility to true for the secondary // structure consensus for all providers if (aa.label.contains(Constants.SS_ALL_PROVIDERS)) { aa.visible = true; } - alignment.addAnnotation(aa, 0); + alignment.addAnnotation(aa, 0); } } } @@ -3243,8 +3259,8 @@ public abstract class AlignmentViewport + ((ignoreGapsInConsensusCalculation) ? " without gaps" : "")); return sq; } - - //to do jal-4386 + + // to do jal-4386 public SequenceI getSSConsensusSeq() { if (secondaryStructureConsensus == null) @@ -3256,23 +3272,23 @@ public abstract class AlignmentViewport return null; } StringBuffer seqs = new StringBuffer(); -// for (int i = 0; i < secondaryStructureConsensus.annotations.length; i++) -// { -// Annotation annotation = secondaryStructureConsensus.annotations[i]; -// if (annotation != null) -// { -// String description = annotation.description; -// if (description != null && description.startsWith("[")) -// { -// // consensus is a tie - just pick the first one -// seqs.append(description.charAt(1)); -// } -// else -// { -// seqs.append(annotation.displayCharacter); -// } -// } -// } + // for (int i = 0; i < secondaryStructureConsensus.annotations.length; i++) + // { + // Annotation annotation = secondaryStructureConsensus.annotations[i]; + // if (annotation != null) + // { + // String description = annotation.description; + // if (description != null && description.startsWith("[")) + // { + // // consensus is a tie - just pick the first one + // seqs.append(description.charAt(1)); + // } + // else + // { + // seqs.append(annotation.displayCharacter); + // } + // } + // } SequenceI sq = new Sequence("Sec Str Consensus", seqs.toString()); sq.setDescription("Percentage Identity Sec Str Consensus " diff --git a/src/jalview/viewmodel/PaSiMapModel.java b/src/jalview/viewmodel/PaSiMapModel.java index a0e5174..8568af4 100644 --- a/src/jalview/viewmodel/PaSiMapModel.java +++ b/src/jalview/viewmodel/PaSiMapModel.java @@ -69,8 +69,8 @@ public class PaSiMapModel * @param modelName * @param params */ - public PaSiMapModel(AlignmentViewport seqData, SequenceI[] sqs, boolean nuc, - ScoreModelI modelName) + public PaSiMapModel(AlignmentViewport seqData, SequenceI[] sqs, + boolean nuc, ScoreModelI modelName) { inputData = seqData; seqs = sqs; @@ -79,8 +79,8 @@ public class PaSiMapModel } /** - * Performs the PaSiMap calculation (in the same thread) and extracts result data - * needed for visualisation by PaSiMapPanel + * Performs the PaSiMap calculation (in the same thread) and extracts result + * data needed for visualisation by PaSiMapPanel */ public void calculate(PairwiseAlignPanel pap) { @@ -100,7 +100,8 @@ public class PaSiMapModel top = width; points = new Vector<>(); - Point[] scores = pasimap.getComponents(width - 1, width - 2, width - 3, 1); + Point[] scores = pasimap.getComponents(width - 1, width - 2, width - 3, + 1); for (int i = 0; i < height; i++) { @@ -142,8 +143,9 @@ public class PaSiMapModel /** * Updates the 3D coordinates for the list of points to the given dimensions. * Principal dimension is getTop(). Next greatest eigenvector is getTop()-1. - * Note - pasimap.getComponents starts counting the spectrum from rank-2 to zero, - * rather than rank-1, so getComponents(dimN ...) == updateRcView(dimN+1 ..) + * Note - pasimap.getComponents starts counting the spectrum from rank-2 to + * zero, rather than rank-1, so getComponents(dimN ...) == updateRcView(dimN+1 + * ..) * * @param dim1 * @param dim2 @@ -207,13 +209,15 @@ public class PaSiMapModel csv.append("\"" + seqs[s].getName() + "\""); if (!transformed) { - double[] fl = pasimap.component(s); - for (int d = fl.length - 1; d >= 0; d--) - { - csv.append(","); - csv.append(fl[d]); - } - } else { + double[] fl = pasimap.component(s); + for (int d = fl.length - 1; d >= 0; d--) + { + csv.append(","); + csv.append(fl[d]); + } + } + else + { Point p = points.get(s).coord; csv.append(",").append(p.x); csv.append(",").append(p.y); diff --git a/src/jalview/viewmodel/styles/ViewStyle.java b/src/jalview/viewmodel/styles/ViewStyle.java index c9a1ad3..1e803b8 100644 --- a/src/jalview/viewmodel/styles/ViewStyle.java +++ b/src/jalview/viewmodel/styles/ViewStyle.java @@ -66,7 +66,7 @@ public class ViewStyle implements ViewStyleI private boolean colourByReferenceSeq = false; boolean conservationColourSelected = false; - + boolean byConsensusSecondaryStructureSelected = false; /** @@ -75,7 +75,7 @@ public class ViewStyle implements ViewStyleI private boolean displayReferenceSeq = false; private int increment; - + private int consensusSecondaryStructureThreshold; /** @@ -193,8 +193,10 @@ public class ViewStyle implements ViewStyleI setColourAppliesToAllGroups(vs.getColourAppliesToAllGroups()); setColourByReferenceSeq(vs.isColourByReferenceSeq()); setColourText(vs.getColourText()); - setByConsensusSecondaryStructureSelected(vs.getByConsensusSecondaryStructureSelected()); - setConsensusSecondaryStructureThreshold(vs.getConsensusSecondaryStructureThreshold()); + setByConsensusSecondaryStructureSelected( + vs.getByConsensusSecondaryStructureSelected()); + setConsensusSecondaryStructureThreshold( + vs.getConsensusSecondaryStructureThreshold()); setConservationColourSelected(vs.isConservationColourSelected()); setConservationSelected(vs.getConservationSelected()); setDisplayReferenceSeq(vs.isDisplayReferenceSeq()); @@ -262,14 +264,16 @@ public class ViewStyle implements ViewStyleI && getColourText() == vs.getColourText() && isConservationColourSelected() == vs .isConservationColourSelected() - && getByConsensusSecondaryStructureSelected() == vs.getByConsensusSecondaryStructureSelected() + && getByConsensusSecondaryStructureSelected() == vs + .getByConsensusSecondaryStructureSelected() && getConservationSelected() == vs.getConservationSelected() && isDisplayReferenceSeq() == vs.isDisplayReferenceSeq() && getFontSize() == vs.getFontSize() && getFontStyle() == vs.getFontStyle() && getIdWidth() == vs.getIdWidth() && getIncrement() == vs.getIncrement() - && getConsensusSecondaryStructureThreshold() == vs.getConsensusSecondaryStructureThreshold() + && getConsensusSecondaryStructureThreshold() == vs + .getConsensusSecondaryStructureThreshold() && isRenderGaps() == vs.isRenderGaps() && isRightAlignIds() == vs.isRightAlignIds() && getScaleAboveWrapped() == vs.getScaleAboveWrapped() @@ -298,7 +302,8 @@ public class ViewStyle implements ViewStyleI && isUpperCasebold() == vs.isUpperCasebold() && getWrapAlignment() == vs.getWrapAlignment() && getWrappedWidth() == vs.getWrappedWidth() - && getSecondaryStructureSources() == vs.getSecondaryStructureSources() + && getSecondaryStructureSources() == vs + .getSecondaryStructureSources() && isShowStructureProvider() == vs.isShowStructureProvider()); /* * and compare non-primitive types; syntax below will match null with null @@ -386,11 +391,11 @@ public class ViewStyle implements ViewStyleI private boolean showComplementFeatures; private boolean showComplementFeaturesOnTop; - + /** - * secondary structure annotation rows shown in the view - */ - private List secondaryStructureSources = List.of( new String[0] ); + * secondary structure annotation rows shown in the view + */ + private List secondaryStructureSources = List.of(new String[0]); private boolean showStructureProvider; @@ -410,6 +415,7 @@ public class ViewStyle implements ViewStyleI { return byConsensusSecondaryStructureSelected; } + /** * DOCUMENT ME! * @@ -582,13 +588,12 @@ public class ViewStyle implements ViewStyleI { return threshold; } - + @Override public int getConsensusSecondaryStructureThreshold() { return consensusSecondaryStructureThreshold; } - /** * @return the thresholdTextColour @@ -708,7 +713,7 @@ public class ViewStyle implements ViewStyleI { abovePIDThreshold = b; } - + @Override public void setByConsensusSecondaryStructureSelected(boolean b) { @@ -808,7 +813,7 @@ public class ViewStyle implements ViewStyleI { increment = inc; } - + /** * * @param val @@ -820,7 +825,6 @@ public class ViewStyle implements ViewStyleI { consensusSecondaryStructureThreshold = val; } - /** * DOCUMENT ME! @@ -1195,7 +1199,7 @@ public class ViewStyle implements ViewStyleI { return showComplementFeaturesOnTop; } - + @Override public List getSecondaryStructureSources() { @@ -1203,7 +1207,8 @@ public class ViewStyle implements ViewStyleI } @Override - public void setSecondaryStructureSources(List secondaryStructureSources) + public void setSecondaryStructureSources( + List secondaryStructureSources) { this.secondaryStructureSources = secondaryStructureSources; } @@ -1211,8 +1216,9 @@ public class ViewStyle implements ViewStyleI @Override public void setShowStructureProvider(boolean showStructureProvider) { - this.showStructureProvider=showStructureProvider; + this.showStructureProvider = showStructureProvider; } + @Override public boolean isShowStructureProvider() { diff --git a/src/jalview/workers/SecondaryStructureConsensusThread.java b/src/jalview/workers/SecondaryStructureConsensusThread.java index 6629f27..13e22fd 100644 --- a/src/jalview/workers/SecondaryStructureConsensusThread.java +++ b/src/jalview/workers/SecondaryStructureConsensusThread.java @@ -92,7 +92,7 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker calcMan.workerComplete(this); return; } - + setSecondaryStructureSources(); eraseSSConsensus(aWidth); computeSSConsensus(alignment); @@ -125,7 +125,8 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker protected void eraseSSConsensus(int aWidth) { List ssConsensuses = getSSConsensusAnnotation(); - for(AlignmentAnnotation ssConsensus : ssConsensuses) { + for (AlignmentAnnotation ssConsensus : ssConsensuses) + { if (ssConsensus != null) { ssConsensus.annotations = new Annotation[aWidth]; @@ -147,13 +148,13 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker SequenceI[] aseqs = getSequences(); int width = alignment.getWidth(); Map hSSConsensusProfileMap = new HashMap(); - List ssSources = getSecondaryStructureSources(); - for(String ssSource : ssSources) { - ProfilesI hSSConsensus = AAFrequency.calculateSS(aseqs, width, 0, width, - true, ssSource); + List ssSources = getSecondaryStructureSources(); + for (String ssSource : ssSources) + { + ProfilesI hSSConsensus = AAFrequency.calculateSS(aseqs, width, 0, + width, true, ssSource); hSSConsensusProfileMap.put(ssSource, hSSConsensus); } - alignViewport.setSequenceSSConsensusHash(hSSConsensusProfileMap); setColourSchemeConsensus(hSSConsensusProfileMap); @@ -170,7 +171,8 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker /** * @param hconsensus */ - protected void setColourSchemeConsensus(Map ssConsensusProfileMap) + protected void setColourSchemeConsensus( + Map ssConsensusProfileMap) { ResidueShaderI cs = alignViewport.getResidueShading(); if (cs != null) @@ -186,9 +188,10 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker */ protected List getSSConsensusAnnotation() { - return alignViewport.getAlignmentSecondaryStructureConsensusAnnotation(); + return alignViewport + .getAlignmentSecondaryStructureConsensusAnnotation(); } - + /** * Get the Consensus annotation for the alignment * @@ -197,16 +200,19 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker protected void setSecondaryStructureSources() { List sources = null; - AlignmentAnnotation[] aa = alignViewport.getAlignment().getAlignmentAnnotation(); - if(aa!=null) { + AlignmentAnnotation[] aa = alignViewport.getAlignment() + .getAlignmentAnnotation(); + if (aa != null) + { sources = AlignmentUtils.extractSSSourceInAlignmentAnnotation(aa); - if(sources != null) { + if (sources != null) + { sources.add(0, Constants.SS_ALL_PROVIDERS); alignViewport.setSecondaryStructureSources(sources); } } } - + protected List getSecondaryStructureSources() { return alignViewport.getSecondaryStructureSources(); @@ -236,29 +242,34 @@ public class SecondaryStructureConsensusThread extends AlignCalcWorker { List ssConsensuses = getSSConsensusAnnotation(); Map ssConsensusProfileMap = getViewportSSConsensus(); - for(AlignmentAnnotation ssConsensus : ssConsensuses) { + for (AlignmentAnnotation ssConsensus : ssConsensuses) + { ProfilesI ssConsensusProfile = null; - for(String source: ssConsensusProfileMap.keySet()) { - if(ssConsensus.description.startsWith(source)) { + for (String source : ssConsensusProfileMap.keySet()) + { + if (ssConsensus.description.startsWith(source)) + { ssConsensusProfile = ssConsensusProfileMap.get(source); break; } } - if(ssConsensusProfile==null) { - continue; - } - if (immediate || !calcMan.isWorking(this) && ssConsensus != null - && ssConsensusProfile != null) - { - if(ssConsensusProfile.get(0)!=null) - ssConsensus.setNoOfSequencesIncluded(ssConsensusProfile.get(0).getSeqWithSSCount()); - deriveSSConsensus(ssConsensus, ssConsensusProfile); - AlignmentAnnotation gap = getGapAnnotation(); - if (gap != null) + if (ssConsensusProfile == null) { - deriveGap(gap, ssConsensusProfile); + continue; + } + if (immediate || !calcMan.isWorking(this) && ssConsensus != null + && ssConsensusProfile != null) + { + if (ssConsensusProfile.get(0) != null) + ssConsensus.setNoOfSequencesIncluded( + ssConsensusProfile.get(0).getSeqWithSSCount()); + deriveSSConsensus(ssConsensus, ssConsensusProfile); + AlignmentAnnotation gap = getGapAnnotation(); + if (gap != null) + { + deriveGap(gap, ssConsensusProfile); + } } - } } } diff --git a/src/jalview/xml/binding/jalview/AlcodonFrame.java b/src/jalview/xml/binding/jalview/AlcodonFrame.java index ab8fbf5..79dfb0a 100644 --- a/src/jalview/xml/binding/jalview/AlcodonFrame.java +++ b/src/jalview/xml/binding/jalview/AlcodonFrame.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.math.BigInteger; @@ -18,11 +17,16 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType>
    @@ -61,286 +65,295 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "", propOrder = {
    -    "alcodon",
    -    "alcodMap"
    -})
    +@XmlType(name = "", propOrder = { "alcodon", "alcodMap" })
     @XmlRootElement(name = "AlcodonFrame")
    -public class AlcodonFrame {
    +public class AlcodonFrame
    +{
    +
    +  protected List alcodon;
    +
    +  protected List alcodMap;
    +
    +  /**
    +   * Gets the value of the alcodon property.
    +   * 
    +   * 

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the alcodon property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getAlcodon().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link AlcodonFrame.Alcodon } + *

    + * + * + * @return The value of the alcodon property. + */ + public List getAlcodon() + { + if (alcodon == null) + { + alcodon = new ArrayList(); + } + return this.alcodon; + } + + /** + * Gets the value of the alcodMap property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the alcodMap property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getAlcodMap().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link AlcodonFrame.AlcodMap } + *

    + * + * + * @return The value of the alcodMap property. + */ + public List getAlcodMap() + { + if (alcodMap == null) + { + alcodMap = new ArrayList(); + } + return this.alcodMap; + } - protected List alcodon; - protected List alcodMap; + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element ref="{www.vamsas.ac.uk/jalview/version2}Mapping"/>
    +   *       </sequence>
    +   *       <attribute name="dnasq" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "mapping" }) + public static class AlcodMap + { /** - * Gets the value of the alcodon property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the alcodon property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getAlcodon().add(newItem);
    -     * 
    + * a Mapping entry and an associated protein sequence * + */ + @XmlElement(name = "Mapping", required = true) + protected Mapping mapping; + + /** + * internal jalview id for the dnasq for this mapping. * - *

    - * Objects of the following type(s) are allowed in the list - * {@link AlcodonFrame.Alcodon } - *

    + */ + @XmlAttribute(name = "dnasq", required = true) + protected String dnasq; + + /** + * a Mapping entry and an associated protein sequence * + * @return possible object is {@link Mapping } * - * @return - * The value of the alcodon property. */ - public List getAlcodon() { - if (alcodon == null) { - alcodon = new ArrayList(); - } - return this.alcodon; + public Mapping getMapping() + { + return mapping; } /** - * Gets the value of the alcodMap property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the alcodMap property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getAlcodMap().add(newItem);
    -     * 
    - * + * Sets the value of the mapping property. * - *

    - * Objects of the following type(s) are allowed in the list - * {@link AlcodonFrame.AlcodMap } - *

    + * @param value + * allowed object is {@link Mapping } * - * - * @return - * The value of the alcodMap property. + * @see #getMapping() */ - public List getAlcodMap() { - if (alcodMap == null) { - alcodMap = new ArrayList(); - } - return this.alcodMap; + public void setMapping(Mapping value) + { + this.mapping = value; } - /** - *

    Java class for anonymous complex type

    . + * internal jalview id for the dnasq for this mapping. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @return possible object is {@link String } * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element ref="{www.vamsas.ac.uk/jalview/version2}Mapping"/>
    -     *       </sequence>
    -     *       <attribute name="dnasq" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + */ + public String getDnasq() + { + return dnasq; + } + + /** + * Sets the value of the dnasq property. * + * @param value + * allowed object is {@link String } * + * @see #getDnasq() */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "mapping" - }) - public static class AlcodMap { + public void setDnasq(String value) + { + this.dnasq = value; + } - /** - * a Mapping entry and an associated protein - * sequence - * - */ - @XmlElement(name = "Mapping", required = true) - protected Mapping mapping; - /** - * internal jalview id for the dnasq for this - * mapping. - * - */ - @XmlAttribute(name = "dnasq", required = true) - protected String dnasq; + } - /** - * a Mapping entry and an associated protein - * sequence - * - * @return - * possible object is - * {@link Mapping } - * - */ - public Mapping getMapping() { - return mapping; - } + /** + * specifies a series of aligned codons from an associated DNA sequence + * alignment that when translated correspond to columns of a peptide + * alignment. Element may have either all pos1,2,3 attributes specified, or + * none at all (indicating a gapped column with no translated peptide). + * + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="pos1" type="{http://www.w3.org/2001/XMLSchema}integer" />
    +   *       <attribute name="pos2" type="{http://www.w3.org/2001/XMLSchema}integer" />
    +   *       <attribute name="pos3" type="{http://www.w3.org/2001/XMLSchema}integer" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class Alcodon + { - /** - * Sets the value of the mapping property. - * - * @param value - * allowed object is - * {@link Mapping } - * - * @see #getMapping() - */ - public void setMapping(Mapping value) { - this.mapping = value; - } + @XmlAttribute(name = "pos1") + protected BigInteger pos1; - /** - * internal jalview id for the dnasq for this - * mapping. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDnasq() { - return dnasq; - } + @XmlAttribute(name = "pos2") + protected BigInteger pos2; - /** - * Sets the value of the dnasq property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getDnasq() - */ - public void setDnasq(String value) { - this.dnasq = value; - } + @XmlAttribute(name = "pos3") + protected BigInteger pos3; + /** + * Gets the value of the pos1 property. + * + * @return possible object is {@link BigInteger } + * + */ + public BigInteger getPos1() + { + return pos1; } - /** - * specifies a series of aligned codons from an - * associated DNA sequence alignment that when translated - * correspond to columns of a peptide alignment. - * Element may have - * either all pos1,2,3 attributes specified, or none at all - * (indicating a gapped column with no translated peptide). + * Sets the value of the pos1 property. * - *

    Java class for anonymous complex type

    . + * @param value + * allowed object is {@link BigInteger } * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="pos1" type="{http://www.w3.org/2001/XMLSchema}integer" />
    -     *       <attribute name="pos2" type="{http://www.w3.org/2001/XMLSchema}integer" />
    -     *       <attribute name="pos3" type="{http://www.w3.org/2001/XMLSchema}integer" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + */ + public void setPos1(BigInteger value) + { + this.pos1 = value; + } + + /** + * Gets the value of the pos2 property. * + * @return possible object is {@link BigInteger } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class Alcodon { - - @XmlAttribute(name = "pos1") - protected BigInteger pos1; - @XmlAttribute(name = "pos2") - protected BigInteger pos2; - @XmlAttribute(name = "pos3") - protected BigInteger pos3; - - /** - * Gets the value of the pos1 property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getPos1() { - return pos1; - } - - /** - * Sets the value of the pos1 property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setPos1(BigInteger value) { - this.pos1 = value; - } - - /** - * Gets the value of the pos2 property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getPos2() { - return pos2; - } - - /** - * Sets the value of the pos2 property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setPos2(BigInteger value) { - this.pos2 = value; - } + public BigInteger getPos2() + { + return pos2; + } - /** - * Gets the value of the pos3 property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getPos3() { - return pos3; - } + /** + * Sets the value of the pos2 property. + * + * @param value + * allowed object is {@link BigInteger } + * + */ + public void setPos2(BigInteger value) + { + this.pos2 = value; + } - /** - * Sets the value of the pos3 property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setPos3(BigInteger value) { - this.pos3 = value; - } + /** + * Gets the value of the pos3 property. + * + * @return possible object is {@link BigInteger } + * + */ + public BigInteger getPos3() + { + return pos3; + } + /** + * Sets the value of the pos3 property. + * + * @param value + * allowed object is {@link BigInteger } + * + */ + public void setPos3(BigInteger value) + { + this.pos3 = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/Annotation.java b/src/jalview/xml/binding/jalview/Annotation.java index 4c2a9a3..f96a980 100644 --- a/src/jalview/xml/binding/jalview/Annotation.java +++ b/src/jalview/xml/binding/jalview/Annotation.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -17,11 +16,16 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType>
    @@ -70,772 +74,796 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "", propOrder = {
    -    "annotationElement",
    -    "label",
    -    "description",
    -    "thresholdLine",
    -    "contactmatrix",
    -    "property"
    -})
    +@XmlType(
    +  name = "",
    +  propOrder =
    +  { "annotationElement", "label", "description", "thresholdLine",
    +      "contactmatrix", "property" })
     @XmlRootElement(name = "Annotation")
    -public class Annotation {
    -
    -    protected List annotationElement;
    -    @XmlElement(required = true)
    +public class Annotation
    +{
    +
    +  protected List annotationElement;
    +
    +  @XmlElement(required = true)
    +  protected String label;
    +
    +  protected String description;
    +
    +  protected Annotation.ThresholdLine thresholdLine;
    +
    +  protected List contactmatrix;
    +
    +  protected List property;
    +
    +  @XmlAttribute(name = "graph", required = true)
    +  protected boolean graph;
    +
    +  @XmlAttribute(name = "graphType")
    +  protected Integer graphType;
    +
    +  @XmlAttribute(name = "sequenceRef")
    +  protected String sequenceRef;
    +
    +  @XmlAttribute(name = "groupRef")
    +  protected String groupRef;
    +
    +  @XmlAttribute(name = "graphColour")
    +  protected Integer graphColour;
    +
    +  @XmlAttribute(name = "graphGroup")
    +  protected Integer graphGroup;
    +
    +  /**
    +   * height in pixels for the graph if this is a graph-type annotation.
    +   * 
    +   */
    +  @XmlAttribute(name = "graphHeight")
    +  protected Integer graphHeight;
    +
    +  @XmlAttribute(name = "id")
    +  protected String id;
    +
    +  @XmlAttribute(name = "scoreOnly")
    +  protected Boolean scoreOnly;
    +
    +  @XmlAttribute(name = "score")
    +  protected Double score;
    +
    +  @XmlAttribute(name = "visible")
    +  protected Boolean visible;
    +
    +  @XmlAttribute(name = "centreColLabels")
    +  protected Boolean centreColLabels;
    +
    +  @XmlAttribute(name = "scaleColLabels")
    +  protected Boolean scaleColLabels;
    +
    +  @XmlAttribute(name = "showAllColLabels")
    +  protected Boolean showAllColLabels;
    +
    +  /**
    +   * is an autocalculated annotation row
    +   * 
    +   */
    +  @XmlAttribute(name = "autoCalculated")
    +  protected Boolean autoCalculated;
    +
    +  /**
    +   * is to be shown below the alignment - introduced in Jalview 2.8 for
    +   * visualizing T-COFFEE alignment scores
    +   * 
    +   */
    +  @XmlAttribute(name = "belowAlignment")
    +  protected Boolean belowAlignment;
    +
    +  /**
    +   * Optional string identifier used to group sets of annotation produced by a
    +   * particular calculation. Values are opaque strings but have semantic meaning
    +   * to Jalview's renderer, data importer and calculation system.
    +   * 
    +   */
    +  @XmlAttribute(name = "calcId")
    +  protected String calcId;
    +
    +  /**
    +   * Gets the value of the annotationElement property.
    +   * 
    +   * 

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the annotationElement property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getAnnotationElement().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link AnnotationElement } + *

    + * + * + * @return The value of the annotationElement property. + */ + public List getAnnotationElement() + { + if (annotationElement == null) + { + annotationElement = new ArrayList(); + } + return this.annotationElement; + } + + /** + * Gets the value of the label property. + * + * @return possible object is {@link String } + * + */ + public String getLabel() + { + return label; + } + + /** + * Sets the value of the label property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setLabel(String value) + { + this.label = value; + } + + /** + * Gets the value of the description property. + * + * @return possible object is {@link String } + * + */ + public String getDescription() + { + return description; + } + + /** + * Sets the value of the description property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setDescription(String value) + { + this.description = value; + } + + /** + * Gets the value of the thresholdLine property. + * + * @return possible object is {@link Annotation.ThresholdLine } + * + */ + public Annotation.ThresholdLine getThresholdLine() + { + return thresholdLine; + } + + /** + * Sets the value of the thresholdLine property. + * + * @param value + * allowed object is {@link Annotation.ThresholdLine } + * + */ + public void setThresholdLine(Annotation.ThresholdLine value) + { + this.thresholdLine = value; + } + + /** + * Gets the value of the contactmatrix property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the contactmatrix property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getContactmatrix().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link MapOnAMatrixType } + *

    + * + * + * @return The value of the contactmatrix property. + */ + public List getContactmatrix() + { + if (contactmatrix == null) + { + contactmatrix = new ArrayList(); + } + return this.contactmatrix; + } + + /** + * Gets the value of the property property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the property property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getProperty().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Property } + *

    + * + * + * @return The value of the property property. + */ + public List getProperty() + { + if (property == null) + { + property = new ArrayList(); + } + return this.property; + } + + /** + * Gets the value of the graph property. + * + */ + public boolean isGraph() + { + return graph; + } + + /** + * Sets the value of the graph property. + * + */ + public void setGraph(boolean value) + { + this.graph = value; + } + + /** + * Gets the value of the graphType property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getGraphType() + { + return graphType; + } + + /** + * Sets the value of the graphType property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setGraphType(Integer value) + { + this.graphType = value; + } + + /** + * Gets the value of the sequenceRef property. + * + * @return possible object is {@link String } + * + */ + public String getSequenceRef() + { + return sequenceRef; + } + + /** + * Sets the value of the sequenceRef property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setSequenceRef(String value) + { + this.sequenceRef = value; + } + + /** + * Gets the value of the groupRef property. + * + * @return possible object is {@link String } + * + */ + public String getGroupRef() + { + return groupRef; + } + + /** + * Sets the value of the groupRef property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setGroupRef(String value) + { + this.groupRef = value; + } + + /** + * Gets the value of the graphColour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getGraphColour() + { + return graphColour; + } + + /** + * Sets the value of the graphColour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setGraphColour(Integer value) + { + this.graphColour = value; + } + + /** + * Gets the value of the graphGroup property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getGraphGroup() + { + return graphGroup; + } + + /** + * Sets the value of the graphGroup property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setGraphGroup(Integer value) + { + this.graphGroup = value; + } + + /** + * height in pixels for the graph if this is a graph-type annotation. + * + * @return possible object is {@link Integer } + * + */ + public Integer getGraphHeight() + { + return graphHeight; + } + + /** + * Sets the value of the graphHeight property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getGraphHeight() + */ + public void setGraphHeight(Integer value) + { + this.graphHeight = value; + } + + /** + * Gets the value of the id property. + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setId(String value) + { + this.id = value; + } + + /** + * Gets the value of the scoreOnly property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isScoreOnly() + { + if (scoreOnly == null) + { + return false; + } + else + { + return scoreOnly; + } + } + + /** + * Sets the value of the scoreOnly property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setScoreOnly(Boolean value) + { + this.scoreOnly = value; + } + + /** + * Gets the value of the score property. + * + * @return possible object is {@link Double } + * + */ + public Double getScore() + { + return score; + } + + /** + * Sets the value of the score property. + * + * @param value + * allowed object is {@link Double } + * + */ + public void setScore(Double value) + { + this.score = value; + } + + /** + * Gets the value of the visible property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isVisible() + { + return visible; + } + + /** + * Sets the value of the visible property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setVisible(Boolean value) + { + this.visible = value; + } + + /** + * Gets the value of the centreColLabels property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isCentreColLabels() + { + return centreColLabels; + } + + /** + * Sets the value of the centreColLabels property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setCentreColLabels(Boolean value) + { + this.centreColLabels = value; + } + + /** + * Gets the value of the scaleColLabels property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isScaleColLabels() + { + return scaleColLabels; + } + + /** + * Sets the value of the scaleColLabels property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setScaleColLabels(Boolean value) + { + this.scaleColLabels = value; + } + + /** + * Gets the value of the showAllColLabels property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowAllColLabels() + { + return showAllColLabels; + } + + /** + * Sets the value of the showAllColLabels property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowAllColLabels(Boolean value) + { + this.showAllColLabels = value; + } + + /** + * is an autocalculated annotation row + * + * @return possible object is {@link Boolean } + * + */ + public boolean isAutoCalculated() + { + if (autoCalculated == null) + { + return false; + } + else + { + return autoCalculated; + } + } + + /** + * Sets the value of the autoCalculated property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isAutoCalculated() + */ + public void setAutoCalculated(Boolean value) + { + this.autoCalculated = value; + } + + /** + * is to be shown below the alignment - introduced in Jalview 2.8 for + * visualizing T-COFFEE alignment scores + * + * @return possible object is {@link Boolean } + * + */ + public boolean isBelowAlignment() + { + if (belowAlignment == null) + { + return true; + } + else + { + return belowAlignment; + } + } + + /** + * Sets the value of the belowAlignment property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isBelowAlignment() + */ + public void setBelowAlignment(Boolean value) + { + this.belowAlignment = value; + } + + /** + * Optional string identifier used to group sets of annotation produced by a + * particular calculation. Values are opaque strings but have semantic meaning + * to Jalview's renderer, data importer and calculation system. + * + * @return possible object is {@link String } + * + */ + public String getCalcId() + { + return calcId; + } + + /** + * Sets the value of the calcId property. + * + * @param value + * allowed object is {@link String } + * + * @see #getCalcId() + */ + public void setCalcId(String value) + { + this.calcId = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="label" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="value" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *       <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class ThresholdLine + { + + @XmlAttribute(name = "label") protected String label; - protected String description; - protected Annotation.ThresholdLine thresholdLine; - protected List contactmatrix; - protected List property; - @XmlAttribute(name = "graph", required = true) - protected boolean graph; - @XmlAttribute(name = "graphType") - protected Integer graphType; - @XmlAttribute(name = "sequenceRef") - protected String sequenceRef; - @XmlAttribute(name = "groupRef") - protected String groupRef; - @XmlAttribute(name = "graphColour") - protected Integer graphColour; - @XmlAttribute(name = "graphGroup") - protected Integer graphGroup; - /** - * height in pixels for the graph if this is a - * graph-type annotation. - * - */ - @XmlAttribute(name = "graphHeight") - protected Integer graphHeight; - @XmlAttribute(name = "id") - protected String id; - @XmlAttribute(name = "scoreOnly") - protected Boolean scoreOnly; - @XmlAttribute(name = "score") - protected Double score; - @XmlAttribute(name = "visible") - protected Boolean visible; - @XmlAttribute(name = "centreColLabels") - protected Boolean centreColLabels; - @XmlAttribute(name = "scaleColLabels") - protected Boolean scaleColLabels; - @XmlAttribute(name = "showAllColLabels") - protected Boolean showAllColLabels; - /** - * is an autocalculated annotation row - * - */ - @XmlAttribute(name = "autoCalculated") - protected Boolean autoCalculated; - /** - * is to be shown below the alignment - introduced - * in Jalview 2.8 for visualizing T-COFFEE alignment scores - * - */ - @XmlAttribute(name = "belowAlignment") - protected Boolean belowAlignment; - /** - * Optional string identifier used to group sets of - * annotation produced by a particular calculation. Values are opaque - * strings but have semantic meaning to Jalview's renderer, data - * importer and calculation system. - * - */ - @XmlAttribute(name = "calcId") - protected String calcId; - - /** - * Gets the value of the annotationElement property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the annotationElement property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getAnnotationElement().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link AnnotationElement } - *

    - * - * - * @return - * The value of the annotationElement property. - */ - public List getAnnotationElement() { - if (annotationElement == null) { - annotationElement = new ArrayList(); - } - return this.annotationElement; - } - - /** - * Gets the value of the label property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLabel() { - return label; - } - - /** - * Sets the value of the label property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLabel(String value) { - this.label = value; - } - - /** - * Gets the value of the description property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDescription() { - return description; - } - - /** - * Sets the value of the description property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDescription(String value) { - this.description = value; - } - - /** - * Gets the value of the thresholdLine property. - * - * @return - * possible object is - * {@link Annotation.ThresholdLine } - * - */ - public Annotation.ThresholdLine getThresholdLine() { - return thresholdLine; - } - - /** - * Sets the value of the thresholdLine property. - * - * @param value - * allowed object is - * {@link Annotation.ThresholdLine } - * - */ - public void setThresholdLine(Annotation.ThresholdLine value) { - this.thresholdLine = value; - } - - /** - * Gets the value of the contactmatrix property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the contactmatrix property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getContactmatrix().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link MapOnAMatrixType } - *

    - * - * - * @return - * The value of the contactmatrix property. - */ - public List getContactmatrix() { - if (contactmatrix == null) { - contactmatrix = new ArrayList(); - } - return this.contactmatrix; - } - - /** - * Gets the value of the property property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the property property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getProperty().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Property } - *

    - * - * - * @return - * The value of the property property. - */ - public List getProperty() { - if (property == null) { - property = new ArrayList(); - } - return this.property; - } - - /** - * Gets the value of the graph property. - * - */ - public boolean isGraph() { - return graph; - } - - /** - * Sets the value of the graph property. - * - */ - public void setGraph(boolean value) { - this.graph = value; - } - - /** - * Gets the value of the graphType property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getGraphType() { - return graphType; - } - - /** - * Sets the value of the graphType property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setGraphType(Integer value) { - this.graphType = value; - } - - /** - * Gets the value of the sequenceRef property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSequenceRef() { - return sequenceRef; - } - - /** - * Sets the value of the sequenceRef property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSequenceRef(String value) { - this.sequenceRef = value; - } - - /** - * Gets the value of the groupRef property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getGroupRef() { - return groupRef; - } - - /** - * Sets the value of the groupRef property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setGroupRef(String value) { - this.groupRef = value; - } - - /** - * Gets the value of the graphColour property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getGraphColour() { - return graphColour; - } - - /** - * Sets the value of the graphColour property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setGraphColour(Integer value) { - this.graphColour = value; - } - - /** - * Gets the value of the graphGroup property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getGraphGroup() { - return graphGroup; - } - - /** - * Sets the value of the graphGroup property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setGraphGroup(Integer value) { - this.graphGroup = value; - } - - /** - * height in pixels for the graph if this is a - * graph-type annotation. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getGraphHeight() { - return graphHeight; - } - - /** - * Sets the value of the graphHeight property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getGraphHeight() - */ - public void setGraphHeight(Integer value) { - this.graphHeight = value; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the scoreOnly property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isScoreOnly() { - if (scoreOnly == null) { - return false; - } else { - return scoreOnly; - } - } - - /** - * Sets the value of the scoreOnly property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setScoreOnly(Boolean value) { - this.scoreOnly = value; - } - /** - * Gets the value of the score property. - * - * @return - * possible object is - * {@link Double } - * - */ - public Double getScore() { - return score; - } + @XmlAttribute(name = "value") + protected Float value; - /** - * Sets the value of the score property. - * - * @param value - * allowed object is - * {@link Double } - * - */ - public void setScore(Double value) { - this.score = value; - } - - /** - * Gets the value of the visible property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isVisible() { - return visible; - } + @XmlAttribute(name = "colour") + protected Integer colour; /** - * Sets the value of the visible property. + * Gets the value of the label property. * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setVisible(Boolean value) { - this.visible = value; - } - - /** - * Gets the value of the centreColLabels property. + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Boolean } - * */ - public Boolean isCentreColLabels() { - return centreColLabels; + public String getLabel() + { + return label; } /** - * Sets the value of the centreColLabels property. + * Sets the value of the label property. * * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCentreColLabels(Boolean value) { - this.centreColLabels = value; - } - - /** - * Gets the value of the scaleColLabels property. + * allowed object is {@link String } * - * @return - * possible object is - * {@link Boolean } - * */ - public Boolean isScaleColLabels() { - return scaleColLabels; + public void setLabel(String value) + { + this.label = value; } /** - * Sets the value of the scaleColLabels property. + * Gets the value of the value property. * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setScaleColLabels(Boolean value) { - this.scaleColLabels = value; - } - - /** - * Gets the value of the showAllColLabels property. + * @return possible object is {@link Float } * - * @return - * possible object is - * {@link Boolean } - * */ - public Boolean isShowAllColLabels() { - return showAllColLabels; + public Float getValue() + { + return value; } /** - * Sets the value of the showAllColLabels property. + * Sets the value of the value property. * * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowAllColLabels(Boolean value) { - this.showAllColLabels = value; - } - - /** - * is an autocalculated annotation row + * allowed object is {@link Float } * - * @return - * possible object is - * {@link Boolean } - * */ - public boolean isAutoCalculated() { - if (autoCalculated == null) { - return false; - } else { - return autoCalculated; - } + public void setValue(Float value) + { + this.value = value; } /** - * Sets the value of the autoCalculated property. + * Gets the value of the colour property. * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isAutoCalculated() - */ - public void setAutoCalculated(Boolean value) { - this.autoCalculated = value; - } - - /** - * is to be shown below the alignment - introduced - * in Jalview 2.8 for visualizing T-COFFEE alignment scores + * @return possible object is {@link Integer } * - * @return - * possible object is - * {@link Boolean } - * */ - public boolean isBelowAlignment() { - if (belowAlignment == null) { - return true; - } else { - return belowAlignment; - } + public Integer getColour() + { + return colour; } /** - * Sets the value of the belowAlignment property. + * Sets the value of the colour property. * * @param value - * allowed object is - * {@link Boolean } - * - * @see #isBelowAlignment() - */ - public void setBelowAlignment(Boolean value) { - this.belowAlignment = value; - } - - /** - * Optional string identifier used to group sets of - * annotation produced by a particular calculation. Values are opaque - * strings but have semantic meaning to Jalview's renderer, data - * importer and calculation system. + * allowed object is {@link Integer } * - * @return - * possible object is - * {@link String } - * */ - public String getCalcId() { - return calcId; + public void setColour(Integer value) + { + this.colour = value; } - /** - * Sets the value of the calcId property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getCalcId() - */ - public void setCalcId(String value) { - this.calcId = value; - } - - - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="label" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="value" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *       <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class ThresholdLine { - - @XmlAttribute(name = "label") - protected String label; - @XmlAttribute(name = "value") - protected Float value; - @XmlAttribute(name = "colour") - protected Integer colour; - - /** - * Gets the value of the label property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLabel() { - return label; - } - - /** - * Sets the value of the label property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLabel(String value) { - this.label = value; - } - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setValue(Float value) { - this.value = value; - } - - /** - * Gets the value of the colour property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getColour() { - return colour; - } - - /** - * Sets the value of the colour property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setColour(Integer value) { - this.colour = value; - } - - } + } } diff --git a/src/jalview/xml/binding/jalview/AnnotationColourScheme.java b/src/jalview/xml/binding/jalview/AnnotationColourScheme.java index 4df374f..50bcf19 100644 --- a/src/jalview/xml/binding/jalview/AnnotationColourScheme.java +++ b/src/jalview/xml/binding/jalview/AnnotationColourScheme.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlAccessType; @@ -13,11 +12,16 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for AnnotationColourScheme complex type

    . + *

    + * Java class for AnnotationColourScheme complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="AnnotationColourScheme">
    @@ -40,215 +44,215 @@ import javax.xml.bind.annotation.XmlType;
      */
     @XmlAccessorType(XmlAccessType.FIELD)
     @XmlType(name = "AnnotationColourScheme", namespace = "www.jalview.org")
    -public class AnnotationColourScheme {
    -
    -    @XmlAttribute(name = "aboveThreshold")
    -    protected Integer aboveThreshold;
    -    @XmlAttribute(name = "annotation")
    -    protected String annotation;
    -    @XmlAttribute(name = "minColour")
    -    protected Integer minColour;
    -    @XmlAttribute(name = "maxColour")
    -    protected Integer maxColour;
    -    @XmlAttribute(name = "colourScheme")
    -    protected String colourScheme;
    -    @XmlAttribute(name = "threshold")
    -    protected Float threshold;
    -    @XmlAttribute(name = "perSequence")
    -    protected Boolean perSequence;
    -    @XmlAttribute(name = "predefinedColours")
    -    protected Boolean predefinedColours;
    -
    -    /**
    -     * Gets the value of the aboveThreshold property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public Integer getAboveThreshold() {
    -        return aboveThreshold;
    -    }
    -
    -    /**
    -     * Sets the value of the aboveThreshold property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public void setAboveThreshold(Integer value) {
    -        this.aboveThreshold = value;
    -    }
    -
    -    /**
    -     * Gets the value of the annotation property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getAnnotation() {
    -        return annotation;
    -    }
    -
    -    /**
    -     * Sets the value of the annotation property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setAnnotation(String value) {
    -        this.annotation = value;
    -    }
    -
    -    /**
    -     * Gets the value of the minColour property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public Integer getMinColour() {
    -        return minColour;
    -    }
    -
    -    /**
    -     * Sets the value of the minColour property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public void setMinColour(Integer value) {
    -        this.minColour = value;
    -    }
    -
    -    /**
    -     * Gets the value of the maxColour property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public Integer getMaxColour() {
    -        return maxColour;
    -    }
    -
    -    /**
    -     * Sets the value of the maxColour property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public void setMaxColour(Integer value) {
    -        this.maxColour = value;
    -    }
    -
    -    /**
    -     * Gets the value of the colourScheme property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getColourScheme() {
    -        return colourScheme;
    -    }
    -
    -    /**
    -     * Sets the value of the colourScheme property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setColourScheme(String value) {
    -        this.colourScheme = value;
    -    }
    -
    -    /**
    -     * Gets the value of the threshold property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Float }
    -     *     
    -     */
    -    public Float getThreshold() {
    -        return threshold;
    -    }
    -
    -    /**
    -     * Sets the value of the threshold property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Float }
    -     *     
    -     */
    -    public void setThreshold(Float value) {
    -        this.threshold = value;
    -    }
    -
    -    /**
    -     * Gets the value of the perSequence property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Boolean }
    -     *     
    -     */
    -    public Boolean isPerSequence() {
    -        return perSequence;
    -    }
    -
    -    /**
    -     * Sets the value of the perSequence property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Boolean }
    -     *     
    -     */
    -    public void setPerSequence(Boolean value) {
    -        this.perSequence = value;
    -    }
    -
    -    /**
    -     * Gets the value of the predefinedColours property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Boolean }
    -     *     
    -     */
    -    public Boolean isPredefinedColours() {
    -        return predefinedColours;
    -    }
    -
    -    /**
    -     * Sets the value of the predefinedColours property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Boolean }
    -     *     
    -     */
    -    public void setPredefinedColours(Boolean value) {
    -        this.predefinedColours = value;
    -    }
    +public class AnnotationColourScheme
    +{
    +
    +  @XmlAttribute(name = "aboveThreshold")
    +  protected Integer aboveThreshold;
    +
    +  @XmlAttribute(name = "annotation")
    +  protected String annotation;
    +
    +  @XmlAttribute(name = "minColour")
    +  protected Integer minColour;
    +
    +  @XmlAttribute(name = "maxColour")
    +  protected Integer maxColour;
    +
    +  @XmlAttribute(name = "colourScheme")
    +  protected String colourScheme;
    +
    +  @XmlAttribute(name = "threshold")
    +  protected Float threshold;
    +
    +  @XmlAttribute(name = "perSequence")
    +  protected Boolean perSequence;
    +
    +  @XmlAttribute(name = "predefinedColours")
    +  protected Boolean predefinedColours;
    +
    +  /**
    +   * Gets the value of the aboveThreshold property.
    +   * 
    +   * @return possible object is {@link Integer }
    +   * 
    +   */
    +  public Integer getAboveThreshold()
    +  {
    +    return aboveThreshold;
    +  }
    +
    +  /**
    +   * Sets the value of the aboveThreshold property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Integer }
    +   * 
    +   */
    +  public void setAboveThreshold(Integer value)
    +  {
    +    this.aboveThreshold = value;
    +  }
    +
    +  /**
    +   * Gets the value of the annotation property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getAnnotation()
    +  {
    +    return annotation;
    +  }
    +
    +  /**
    +   * Sets the value of the annotation property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setAnnotation(String value)
    +  {
    +    this.annotation = value;
    +  }
    +
    +  /**
    +   * Gets the value of the minColour property.
    +   * 
    +   * @return possible object is {@link Integer }
    +   * 
    +   */
    +  public Integer getMinColour()
    +  {
    +    return minColour;
    +  }
    +
    +  /**
    +   * Sets the value of the minColour property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Integer }
    +   * 
    +   */
    +  public void setMinColour(Integer value)
    +  {
    +    this.minColour = value;
    +  }
    +
    +  /**
    +   * Gets the value of the maxColour property.
    +   * 
    +   * @return possible object is {@link Integer }
    +   * 
    +   */
    +  public Integer getMaxColour()
    +  {
    +    return maxColour;
    +  }
    +
    +  /**
    +   * Sets the value of the maxColour property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Integer }
    +   * 
    +   */
    +  public void setMaxColour(Integer value)
    +  {
    +    this.maxColour = value;
    +  }
    +
    +  /**
    +   * Gets the value of the colourScheme property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getColourScheme()
    +  {
    +    return colourScheme;
    +  }
    +
    +  /**
    +   * Sets the value of the colourScheme property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setColourScheme(String value)
    +  {
    +    this.colourScheme = value;
    +  }
    +
    +  /**
    +   * Gets the value of the threshold property.
    +   * 
    +   * @return possible object is {@link Float }
    +   * 
    +   */
    +  public Float getThreshold()
    +  {
    +    return threshold;
    +  }
    +
    +  /**
    +   * Sets the value of the threshold property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Float }
    +   * 
    +   */
    +  public void setThreshold(Float value)
    +  {
    +    this.threshold = value;
    +  }
    +
    +  /**
    +   * Gets the value of the perSequence property.
    +   * 
    +   * @return possible object is {@link Boolean }
    +   * 
    +   */
    +  public Boolean isPerSequence()
    +  {
    +    return perSequence;
    +  }
    +
    +  /**
    +   * Sets the value of the perSequence property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Boolean }
    +   * 
    +   */
    +  public void setPerSequence(Boolean value)
    +  {
    +    this.perSequence = value;
    +  }
    +
    +  /**
    +   * Gets the value of the predefinedColours property.
    +   * 
    +   * @return possible object is {@link Boolean }
    +   * 
    +   */
    +  public Boolean isPredefinedColours()
    +  {
    +    return predefinedColours;
    +  }
    +
    +  /**
    +   * Sets the value of the predefinedColours property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Boolean }
    +   * 
    +   */
    +  public void setPredefinedColours(Boolean value)
    +  {
    +    this.predefinedColours = value;
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/AnnotationElement.java b/src/jalview/xml/binding/jalview/AnnotationElement.java
    index ac12f03..b52b2a3 100644
    --- a/src/jalview/xml/binding/jalview/AnnotationElement.java
    +++ b/src/jalview/xml/binding/jalview/AnnotationElement.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import javax.xml.bind.annotation.XmlAccessType;
    @@ -14,11 +13,16 @@ import javax.xml.bind.annotation.XmlAttribute;
     import javax.xml.bind.annotation.XmlRootElement;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * 

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType>
    @@ -46,158 +50,159 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "", propOrder = {
    -    "displayCharacter",
    -    "description",
    -    "secondaryStructure",
    -    "value"
    -})
    +@XmlType(
    +  name = "",
    +  propOrder =
    +  { "displayCharacter", "description", "secondaryStructure", "value" })
     @XmlRootElement(name = "annotationElement")
    -public class AnnotationElement {
    -
    -    protected String displayCharacter;
    -    protected String description;
    -    protected String secondaryStructure;
    -    protected Float value;
    -    @XmlAttribute(name = "position", required = true)
    -    protected int position;
    -    @XmlAttribute(name = "colour")
    -    protected Integer colour;
    -
    -    /**
    -     * Gets the value of the displayCharacter property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getDisplayCharacter() {
    -        return displayCharacter;
    -    }
    -
    -    /**
    -     * Sets the value of the displayCharacter property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setDisplayCharacter(String value) {
    -        this.displayCharacter = value;
    -    }
    -
    -    /**
    -     * Gets the value of the description property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getDescription() {
    -        return description;
    -    }
    -
    -    /**
    -     * Sets the value of the description property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setDescription(String value) {
    -        this.description = value;
    -    }
    -
    -    /**
    -     * Gets the value of the secondaryStructure property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getSecondaryStructure() {
    -        return secondaryStructure;
    -    }
    -
    -    /**
    -     * Sets the value of the secondaryStructure property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setSecondaryStructure(String value) {
    -        this.secondaryStructure = value;
    -    }
    -
    -    /**
    -     * Gets the value of the value property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Float }
    -     *     
    -     */
    -    public Float getValue() {
    -        return value;
    -    }
    -
    -    /**
    -     * Sets the value of the value property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Float }
    -     *     
    -     */
    -    public void setValue(Float value) {
    -        this.value = value;
    -    }
    -
    -    /**
    -     * Gets the value of the position property.
    -     * 
    -     */
    -    public int getPosition() {
    -        return position;
    -    }
    -
    -    /**
    -     * Sets the value of the position property.
    -     * 
    -     */
    -    public void setPosition(int value) {
    -        this.position = value;
    -    }
    -
    -    /**
    -     * Gets the value of the colour property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public Integer getColour() {
    -        return colour;
    -    }
    -
    -    /**
    -     * Sets the value of the colour property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Integer }
    -     *     
    -     */
    -    public void setColour(Integer value) {
    -        this.colour = value;
    -    }
    +public class AnnotationElement
    +{
    +
    +  protected String displayCharacter;
    +
    +  protected String description;
    +
    +  protected String secondaryStructure;
    +
    +  protected Float value;
    +
    +  @XmlAttribute(name = "position", required = true)
    +  protected int position;
    +
    +  @XmlAttribute(name = "colour")
    +  protected Integer colour;
    +
    +  /**
    +   * Gets the value of the displayCharacter property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getDisplayCharacter()
    +  {
    +    return displayCharacter;
    +  }
    +
    +  /**
    +   * Sets the value of the displayCharacter property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setDisplayCharacter(String value)
    +  {
    +    this.displayCharacter = value;
    +  }
    +
    +  /**
    +   * Gets the value of the description property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getDescription()
    +  {
    +    return description;
    +  }
    +
    +  /**
    +   * Sets the value of the description property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setDescription(String value)
    +  {
    +    this.description = value;
    +  }
    +
    +  /**
    +   * Gets the value of the secondaryStructure property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getSecondaryStructure()
    +  {
    +    return secondaryStructure;
    +  }
    +
    +  /**
    +   * Sets the value of the secondaryStructure property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setSecondaryStructure(String value)
    +  {
    +    this.secondaryStructure = value;
    +  }
    +
    +  /**
    +   * Gets the value of the value property.
    +   * 
    +   * @return possible object is {@link Float }
    +   * 
    +   */
    +  public Float getValue()
    +  {
    +    return value;
    +  }
    +
    +  /**
    +   * Sets the value of the value property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Float }
    +   * 
    +   */
    +  public void setValue(Float value)
    +  {
    +    this.value = value;
    +  }
    +
    +  /**
    +   * Gets the value of the position property.
    +   * 
    +   */
    +  public int getPosition()
    +  {
    +    return position;
    +  }
    +
    +  /**
    +   * Sets the value of the position property.
    +   * 
    +   */
    +  public void setPosition(int value)
    +  {
    +    this.position = value;
    +  }
    +
    +  /**
    +   * Gets the value of the colour property.
    +   * 
    +   * @return possible object is {@link Integer }
    +   * 
    +   */
    +  public Integer getColour()
    +  {
    +    return colour;
    +  }
    +
    +  /**
    +   * Sets the value of the colour property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Integer }
    +   * 
    +   */
    +  public void setColour(Integer value)
    +  {
    +    this.colour = value;
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/DoubleMatrix.java b/src/jalview/xml/binding/jalview/DoubleMatrix.java
    index 29cb972..4a59859 100644
    --- a/src/jalview/xml/binding/jalview/DoubleMatrix.java
    +++ b/src/jalview/xml/binding/jalview/DoubleMatrix.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import java.util.ArrayList;
    @@ -16,11 +15,16 @@ import javax.xml.bind.annotation.XmlAttribute;
     import javax.xml.bind.annotation.XmlElement;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * 

    Java class for DoubleMatrix complex type

    . + *

    + * Java class for DoubleMatrix complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="DoubleMatrix">
    @@ -41,149 +45,154 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "DoubleMatrix", namespace = "www.jalview.org", propOrder = {
    -    "row",
    -    "d",
    -    "e"
    -})
    -public class DoubleMatrix {
    -
    -    protected List row;
    -    @XmlElement(name = "D")
    -    protected DoubleVector d;
    -    @XmlElement(name = "E")
    -    protected DoubleVector e;
    -    @XmlAttribute(name = "rows")
    -    protected Integer rows;
    -    @XmlAttribute(name = "columns")
    -    protected Integer columns;
    -
    -    /**
    -     * Gets the value of the row property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the row property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getRow().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link DoubleVector } - *

    - * - * - * @return - * The value of the row property. - */ - public List getRow() { - if (row == null) { - row = new ArrayList(); - } - return this.row; - } - - /** - * Gets the value of the d property. - * - * @return - * possible object is - * {@link DoubleVector } - * - */ - public DoubleVector getD() { - return d; - } - - /** - * Sets the value of the d property. - * - * @param value - * allowed object is - * {@link DoubleVector } - * - */ - public void setD(DoubleVector value) { - this.d = value; - } - - /** - * Gets the value of the e property. - * - * @return - * possible object is - * {@link DoubleVector } - * - */ - public DoubleVector getE() { - return e; - } - - /** - * Sets the value of the e property. - * - * @param value - * allowed object is - * {@link DoubleVector } - * - */ - public void setE(DoubleVector value) { - this.e = value; - } - - /** - * Gets the value of the rows property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getRows() { - return rows; - } - - /** - * Sets the value of the rows property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setRows(Integer value) { - this.rows = value; - } - - /** - * Gets the value of the columns property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getColumns() { - return columns; - } - - /** - * Sets the value of the columns property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setColumns(Integer value) { - this.columns = value; +@XmlType( + name = "DoubleMatrix", + namespace = "www.jalview.org", + propOrder = + { "row", "d", "e" }) +public class DoubleMatrix +{ + + protected List row; + + @XmlElement(name = "D") + protected DoubleVector d; + + @XmlElement(name = "E") + protected DoubleVector e; + + @XmlAttribute(name = "rows") + protected Integer rows; + + @XmlAttribute(name = "columns") + protected Integer columns; + + /** + * Gets the value of the row property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the row property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getRow().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link DoubleVector } + *

    + * + * + * @return The value of the row property. + */ + public List getRow() + { + if (row == null) + { + row = new ArrayList(); } + return this.row; + } + + /** + * Gets the value of the d property. + * + * @return possible object is {@link DoubleVector } + * + */ + public DoubleVector getD() + { + return d; + } + + /** + * Sets the value of the d property. + * + * @param value + * allowed object is {@link DoubleVector } + * + */ + public void setD(DoubleVector value) + { + this.d = value; + } + + /** + * Gets the value of the e property. + * + * @return possible object is {@link DoubleVector } + * + */ + public DoubleVector getE() + { + return e; + } + + /** + * Sets the value of the e property. + * + * @param value + * allowed object is {@link DoubleVector } + * + */ + public void setE(DoubleVector value) + { + this.e = value; + } + + /** + * Gets the value of the rows property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getRows() + { + return rows; + } + + /** + * Sets the value of the rows property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setRows(Integer value) + { + this.rows = value; + } + + /** + * Gets the value of the columns property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getColumns() + { + return columns; + } + + /** + * Sets the value of the columns property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setColumns(Integer value) + { + this.columns = value; + } } diff --git a/src/jalview/xml/binding/jalview/DoubleVector.java b/src/jalview/xml/binding/jalview/DoubleVector.java index 5d5e444..0479f56 100644 --- a/src/jalview/xml/binding/jalview/DoubleVector.java +++ b/src/jalview/xml/binding/jalview/DoubleVector.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -15,11 +14,16 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for DoubleVector complex type

    . + *

    + * Java class for DoubleVector complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="DoubleVector">
    @@ -36,44 +40,50 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "DoubleVector", namespace = "www.jalview.org", propOrder = {
    -    "v"
    -})
    -public class DoubleVector {
    +@XmlType(
    +  name = "DoubleVector",
    +  namespace = "www.jalview.org",
    +  propOrder =
    +  { "v" })
    +public class DoubleVector
    +{
     
    -    @XmlElement(type = Double.class)
    -    protected List v;
    +  @XmlElement(type = Double.class)
    +  protected List v;
     
    -    /**
    -     * Gets the value of the v property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the v property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getV().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Double } - *

    - * - * - * @return - * The value of the v property. - */ - public List getV() { - if (v == null) { - v = new ArrayList(); - } - return this.v; + /** + * Gets the value of the v property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the v property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getV().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Double } + *

    + * + * + * @return The value of the v property. + */ + public List getV() + { + if (v == null) + { + v = new ArrayList(); } + return this.v; + } } diff --git a/src/jalview/xml/binding/jalview/Feature.java b/src/jalview/xml/binding/jalview/Feature.java index 7982504..9cbfc46 100644 --- a/src/jalview/xml/binding/jalview/Feature.java +++ b/src/jalview/xml/binding/jalview/Feature.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -15,11 +14,16 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for feature complex type

    . + *

    + * Java class for feature complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="feature">
    @@ -53,319 +57,337 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "feature", namespace = "www.jalview.org", propOrder = {
    -    "otherData"
    -})
    -public class Feature {
    -
    -    protected List otherData;
    -    @XmlAttribute(name = "begin", required = true)
    -    protected int begin;
    -    @XmlAttribute(name = "end", required = true)
    -    protected int end;
    -    @XmlAttribute(name = "type", required = true)
    -    protected String type;
    -    @XmlAttribute(name = "description")
    -    protected String description;
    -    @XmlAttribute(name = "status")
    -    protected String status;
    -    @XmlAttribute(name = "featureGroup")
    -    protected String featureGroup;
    -    @XmlAttribute(name = "score")
    -    protected Float score;
    -
    -    /**
    -     * Gets the value of the otherData property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the otherData property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getOtherData().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Feature.OtherData } - *

    - * - * - * @return - * The value of the otherData property. - */ - public List getOtherData() { - if (otherData == null) { - otherData = new ArrayList(); - } - return this.otherData; +@XmlType( + name = "feature", + namespace = "www.jalview.org", + propOrder = + { "otherData" }) +public class Feature +{ + + protected List otherData; + + @XmlAttribute(name = "begin", required = true) + protected int begin; + + @XmlAttribute(name = "end", required = true) + protected int end; + + @XmlAttribute(name = "type", required = true) + protected String type; + + @XmlAttribute(name = "description") + protected String description; + + @XmlAttribute(name = "status") + protected String status; + + @XmlAttribute(name = "featureGroup") + protected String featureGroup; + + @XmlAttribute(name = "score") + protected Float score; + + /** + * Gets the value of the otherData property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the otherData property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getOtherData().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link Feature.OtherData } + *

    + * + * + * @return The value of the otherData property. + */ + public List getOtherData() + { + if (otherData == null) + { + otherData = new ArrayList(); } + return this.otherData; + } + + /** + * Gets the value of the begin property. + * + */ + public int getBegin() + { + return begin; + } + + /** + * Sets the value of the begin property. + * + */ + public void setBegin(int value) + { + this.begin = value; + } + + /** + * Gets the value of the end property. + * + */ + public int getEnd() + { + return end; + } + + /** + * Sets the value of the end property. + * + */ + public void setEnd(int value) + { + this.end = value; + } + + /** + * Gets the value of the type property. + * + * @return possible object is {@link String } + * + */ + public String getType() + { + return type; + } + + /** + * Sets the value of the type property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setType(String value) + { + this.type = value; + } + + /** + * Gets the value of the description property. + * + * @return possible object is {@link String } + * + */ + public String getDescription() + { + return description; + } + + /** + * Sets the value of the description property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setDescription(String value) + { + this.description = value; + } + + /** + * Gets the value of the status property. + * + * @return possible object is {@link String } + * + */ + public String getStatus() + { + return status; + } + + /** + * Sets the value of the status property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setStatus(String value) + { + this.status = value; + } + + /** + * Gets the value of the featureGroup property. + * + * @return possible object is {@link String } + * + */ + public String getFeatureGroup() + { + return featureGroup; + } + + /** + * Sets the value of the featureGroup property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setFeatureGroup(String value) + { + this.featureGroup = value; + } + + /** + * Gets the value of the score property. + * + * @return possible object is {@link Float } + * + */ + public Float getScore() + { + return score; + } + + /** + * Sets the value of the score property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setScore(Float value) + { + this.score = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="key" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="key2" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="value" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class OtherData + { + + @XmlAttribute(name = "key", required = true) + protected String key; /** - * Gets the value of the begin property. + * key2 may be used for a sub-attribute of key * */ - public int getBegin() { - return begin; - } + @XmlAttribute(name = "key2") + protected String key2; - /** - * Sets the value of the begin property. - * - */ - public void setBegin(int value) { - this.begin = value; - } + @XmlAttribute(name = "value", required = true) + protected String value; /** - * Gets the value of the end property. + * Gets the value of the key property. * - */ - public int getEnd() { - return end; - } - - /** - * Sets the value of the end property. + * @return possible object is {@link String } * */ - public void setEnd(int value) { - this.end = value; + public String getKey() + { + return key; } /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. + * Sets the value of the key property. * * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the description property. + * allowed object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getDescription() { - return description; + public void setKey(String value) + { + this.key = value; } /** - * Sets the value of the description property. + * key2 may be used for a sub-attribute of key * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDescription(String value) { - this.description = value; - } - - /** - * Gets the value of the status property. + * @return possible object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getStatus() { - return status; + public String getKey2() + { + return key2; } /** - * Sets the value of the status property. + * Sets the value of the key2 property. * * @param value - * allowed object is - * {@link String } - * - */ - public void setStatus(String value) { - this.status = value; - } - - /** - * Gets the value of the featureGroup property. + * allowed object is {@link String } * - * @return - * possible object is - * {@link String } - * + * @see #getKey2() */ - public String getFeatureGroup() { - return featureGroup; + public void setKey2(String value) + { + this.key2 = value; } /** - * Sets the value of the featureGroup property. + * Gets the value of the value property. * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFeatureGroup(String value) { - this.featureGroup = value; - } - - /** - * Gets the value of the score property. + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Float } - * */ - public Float getScore() { - return score; + public String getValue() + { + return value; } /** - * Sets the value of the score property. + * Sets the value of the value property. * * @param value - * allowed object is - * {@link Float } - * - */ - public void setScore(Float value) { - this.score = value; - } - - - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="key" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="key2" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="value" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    - * + * allowed object is {@link String } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class OtherData { - - @XmlAttribute(name = "key", required = true) - protected String key; - /** - * key2 may be used for a sub-attribute of key - * - */ - @XmlAttribute(name = "key2") - protected String key2; - @XmlAttribute(name = "value", required = true) - protected String value; - - /** - * Gets the value of the key property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getKey() { - return key; - } - - /** - * Sets the value of the key property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setKey(String value) { - this.key = value; - } - - /** - * key2 may be used for a sub-attribute of key - * - * @return - * possible object is - * {@link String } - * - */ - public String getKey2() { - return key2; - } - - /** - * Sets the value of the key2 property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getKey2() - */ - public void setKey2(String value) { - this.key2 = value; - } - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - + public void setValue(String value) + { + this.value = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/FeatureMatcher.java b/src/jalview/xml/binding/jalview/FeatureMatcher.java index 730cb71..6daebb3 100644 --- a/src/jalview/xml/binding/jalview/FeatureMatcher.java +++ b/src/jalview/xml/binding/jalview/FeatureMatcher.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -16,11 +15,16 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for FeatureMatcher complex type

    . + *

    + * Java class for FeatureMatcher complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="FeatureMatcher">
    @@ -40,130 +44,134 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "FeatureMatcher", namespace = "www.jalview.org/colours", propOrder = {
    -    "attributeName",
    -    "condition",
    -    "value"
    -})
    -public class FeatureMatcher {
    +@XmlType(
    +  name = "FeatureMatcher",
    +  namespace = "www.jalview.org/colours",
    +  propOrder =
    +  { "attributeName", "condition", "value" })
    +public class FeatureMatcher
    +{
     
    -    /**
    -     * name of feature attribute to filter on, or attribute and sub-attribute
    -     * 
    -     */
    -    @XmlElement(namespace = "")
    -    protected List attributeName;
    -    @XmlElement(namespace = "", required = true)
    -    protected String condition;
    -    @XmlElement(namespace = "", required = true)
    -    protected String value;
    -    @XmlAttribute(name = "by")
    -    protected FilterBy by;
    +  /**
    +   * name of feature attribute to filter on, or attribute and sub-attribute
    +   * 
    +   */
    +  @XmlElement(namespace = "")
    +  protected List attributeName;
     
    -    /**
    -     * name of feature attribute to filter on, or attribute and sub-attribute
    -     * 
    -     * Gets the value of the attributeName property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the attributeName property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getAttributeName().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the attributeName property. - */ - public List getAttributeName() { - if (attributeName == null) { - attributeName = new ArrayList(); - } - return this.attributeName; - } + @XmlElement(namespace = "", required = true) + protected String condition; - /** - * Gets the value of the condition property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCondition() { - return condition; - } + @XmlElement(namespace = "", required = true) + protected String value; - /** - * Sets the value of the condition property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCondition(String value) { - this.condition = value; - } + @XmlAttribute(name = "by") + protected FilterBy by; - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; + /** + * name of feature attribute to filter on, or attribute and sub-attribute + * + * Gets the value of the attributeName property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the attributeName property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getAttributeName().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String } + *

    + * + * + * @return The value of the attributeName property. + */ + public List getAttributeName() + { + if (attributeName == null) + { + attributeName = new ArrayList(); } + return this.attributeName; + } - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } + /** + * Gets the value of the condition property. + * + * @return possible object is {@link String } + * + */ + public String getCondition() + { + return condition; + } - /** - * Gets the value of the by property. - * - * @return - * possible object is - * {@link FilterBy } - * - */ - public FilterBy getBy() { - return by; - } + /** + * Sets the value of the condition property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setCondition(String value) + { + this.condition = value; + } - /** - * Sets the value of the by property. - * - * @param value - * allowed object is - * {@link FilterBy } - * - */ - public void setBy(FilterBy value) { - this.by = value; - } + /** + * Gets the value of the value property. + * + * @return possible object is {@link String } + * + */ + public String getValue() + { + return value; + } + + /** + * Sets the value of the value property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setValue(String value) + { + this.value = value; + } + + /** + * Gets the value of the by property. + * + * @return possible object is {@link FilterBy } + * + */ + public FilterBy getBy() + { + return by; + } + + /** + * Sets the value of the by property. + * + * @param value + * allowed object is {@link FilterBy } + * + */ + public void setBy(FilterBy value) + { + this.by = value; + } } diff --git a/src/jalview/xml/binding/jalview/FeatureMatcherSet.java b/src/jalview/xml/binding/jalview/FeatureMatcherSet.java index 9656aad..8f64753 100644 --- a/src/jalview/xml/binding/jalview/FeatureMatcherSet.java +++ b/src/jalview/xml/binding/jalview/FeatureMatcherSet.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -16,13 +15,18 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; - /** * A feature match condition, which may be simple or compound * - *

    Java class for FeatureMatcherSet complex type

    . + *

    + * Java class for FeatureMatcherSet complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="FeatureMatcherSet">
    @@ -51,149 +55,161 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "FeatureMatcherSet", namespace = "www.jalview.org/colours", propOrder = {
    -    "matchCondition",
    -    "compoundMatcher"
    -})
    -public class FeatureMatcherSet {
    -
    -    @XmlElement(namespace = "")
    -    protected FeatureMatcher matchCondition;
    -    @XmlElement(namespace = "")
    -    protected FeatureMatcherSet.CompoundMatcher compoundMatcher;
    +@XmlType(
    +  name = "FeatureMatcherSet",
    +  namespace = "www.jalview.org/colours",
    +  propOrder =
    +  { "matchCondition", "compoundMatcher" })
    +public class FeatureMatcherSet
    +{
    +
    +  @XmlElement(namespace = "")
    +  protected FeatureMatcher matchCondition;
    +
    +  @XmlElement(namespace = "")
    +  protected FeatureMatcherSet.CompoundMatcher compoundMatcher;
    +
    +  /**
    +   * Gets the value of the matchCondition property.
    +   * 
    +   * @return possible object is {@link FeatureMatcher }
    +   * 
    +   */
    +  public FeatureMatcher getMatchCondition()
    +  {
    +    return matchCondition;
    +  }
    +
    +  /**
    +   * Sets the value of the matchCondition property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link FeatureMatcher }
    +   * 
    +   */
    +  public void setMatchCondition(FeatureMatcher value)
    +  {
    +    this.matchCondition = value;
    +  }
    +
    +  /**
    +   * Gets the value of the compoundMatcher property.
    +   * 
    +   * @return possible object is {@link FeatureMatcherSet.CompoundMatcher }
    +   * 
    +   */
    +  public FeatureMatcherSet.CompoundMatcher getCompoundMatcher()
    +  {
    +    return compoundMatcher;
    +  }
    +
    +  /**
    +   * Sets the value of the compoundMatcher property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link FeatureMatcherSet.CompoundMatcher }
    +   * 
    +   */
    +  public void setCompoundMatcher(FeatureMatcherSet.CompoundMatcher value)
    +  {
    +    this.compoundMatcher = value;
    +  }
    +
    +  /**
    +   * 

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" maxOccurs="2" minOccurs="2"/>
    +   *       </sequence>
    +   *       <attribute name="and" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "matcherSet" }) + public static class CompoundMatcher + { + + @XmlElement(namespace = "", required = true) + protected List matcherSet; /** - * Gets the value of the matchCondition property. + * If true, matchers are AND-ed, if false they are OR-ed * - * @return - * possible object is - * {@link FeatureMatcher } - * */ - public FeatureMatcher getMatchCondition() { - return matchCondition; - } + @XmlAttribute(name = "and", required = true) + protected boolean and; /** - * Sets the value of the matchCondition property. + * Gets the value of the matcherSet property. * - * @param value - * allowed object is - * {@link FeatureMatcher } - * - */ - public void setMatchCondition(FeatureMatcher value) { - this.matchCondition = value; - } - - /** - * Gets the value of the compoundMatcher property. + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the matcherSet property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getMatcherSet().add(newItem);
    +     * 
    * - * @return - * possible object is - * {@link FeatureMatcherSet.CompoundMatcher } - * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link FeatureMatcherSet } + *

    + * + * + * @return The value of the matcherSet property. */ - public FeatureMatcherSet.CompoundMatcher getCompoundMatcher() { - return compoundMatcher; + public List getMatcherSet() + { + if (matcherSet == null) + { + matcherSet = new ArrayList(); + } + return this.matcherSet; } /** - * Sets the value of the compoundMatcher property. + * If true, matchers are AND-ed, if false they are OR-ed * - * @param value - * allowed object is - * {@link FeatureMatcherSet.CompoundMatcher } - * */ - public void setCompoundMatcher(FeatureMatcherSet.CompoundMatcher value) { - this.compoundMatcher = value; + public boolean isAnd() + { + return and; } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" maxOccurs="2" minOccurs="2"/>
    -     *       </sequence>
    -     *       <attribute name="and" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    - * + * Sets the value of the and property. * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "matcherSet" - }) - public static class CompoundMatcher { - - @XmlElement(namespace = "", required = true) - protected List matcherSet; - /** - * If true, matchers are AND-ed, if false they are OR-ed - * - */ - @XmlAttribute(name = "and", required = true) - protected boolean and; - - /** - * Gets the value of the matcherSet property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the matcherSet property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getMatcherSet().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link FeatureMatcherSet } - *

    - * - * - * @return - * The value of the matcherSet property. - */ - public List getMatcherSet() { - if (matcherSet == null) { - matcherSet = new ArrayList(); - } - return this.matcherSet; - } - - /** - * If true, matchers are AND-ed, if false they are OR-ed - * - */ - public boolean isAnd() { - return and; - } - - /** - * Sets the value of the and property. - * - */ - public void setAnd(boolean value) { - this.and = value; - } - + public void setAnd(boolean value) + { + this.and = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/FilterBy.java b/src/jalview/xml/binding/jalview/FilterBy.java index 5704bf9..866a0c8 100644 --- a/src/jalview/xml/binding/jalview/FilterBy.java +++ b/src/jalview/xml/binding/jalview/FilterBy.java @@ -5,20 +5,25 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlEnum; import javax.xml.bind.annotation.XmlEnumValue; import javax.xml.bind.annotation.XmlType; - /** * Filter may apply to label, score or some feature attribute * - *

    Java class for FilterBy

    . + *

    + * Java class for FilterBy + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * - *

    The following schema fragment specifies the expected content contained within this class.

    *
      * <simpleType name="FilterBy">
      *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
    @@ -32,47 +37,50 @@ import javax.xml.bind.annotation.XmlType;
      */
     @XmlType(name = "FilterBy", namespace = "www.jalview.org/colours")
     @XmlEnum
    -public enum FilterBy {
    +public enum FilterBy
    +{
     
    -    @XmlEnumValue("byLabel")
    -    BY_LABEL("byLabel"),
    -    @XmlEnumValue("byScore")
    -    BY_SCORE("byScore"),
    -    @XmlEnumValue("byAttribute")
    -    BY_ATTRIBUTE("byAttribute");
    -    private final String value;
    +  @XmlEnumValue("byLabel")
    +  BY_LABEL("byLabel"), @XmlEnumValue("byScore")
    +  BY_SCORE("byScore"), @XmlEnumValue("byAttribute")
    +  BY_ATTRIBUTE("byAttribute");
     
    -    FilterBy(String v) {
    -        value = v;
    -    }
    +  private final String value;
     
    -    /**
    -     * Gets the value associated to the enum constant.
    -     * 
    -     * @return
    -     *     The value linked to the enum.
    -     */
    -    public String value() {
    -        return value;
    -    }
    +  FilterBy(String v)
    +  {
    +    value = v;
    +  }
    +
    +  /**
    +   * Gets the value associated to the enum constant.
    +   * 
    +   * @return The value linked to the enum.
    +   */
    +  public String value()
    +  {
    +    return value;
    +  }
     
    -    /**
    -     * Gets the enum associated to the value passed as parameter.
    -     * 
    -     * @param v
    -     *     The value to get the enum from.
    -     * @return
    -     *     The enum which corresponds to the value, if it exists.
    -     * @throws IllegalArgumentException
    -     *     If no value matches in the enum declaration.
    -     */
    -    public static FilterBy fromValue(String v) {
    -        for (FilterBy c: FilterBy.values()) {
    -            if (c.value.equals(v)) {
    -                return c;
    -            }
    -        }
    -        throw new IllegalArgumentException(v);
    +  /**
    +   * Gets the enum associated to the value passed as parameter.
    +   * 
    +   * @param v
    +   *          The value to get the enum from.
    +   * @return The enum which corresponds to the value, if it exists.
    +   * @throws IllegalArgumentException
    +   *           If no value matches in the enum declaration.
    +   */
    +  public static FilterBy fromValue(String v)
    +  {
    +    for (FilterBy c : FilterBy.values())
    +    {
    +      if (c.value.equals(v))
    +      {
    +        return c;
    +      }
         }
    +    throw new IllegalArgumentException(v);
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/JalviewModel.java b/src/jalview/xml/binding/jalview/JalviewModel.java
    index 3f8185c..62d74a5 100644
    --- a/src/jalview/xml/binding/jalview/JalviewModel.java
    +++ b/src/jalview/xml/binding/jalview/JalviewModel.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import java.util.ArrayList;
    @@ -22,11 +21,16 @@ import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
     import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
     import javax.xml.datatype.XMLGregorianCalendar;
     
    -
     /**
    - * 

    Java class for JalviewModel complex type

    . + *

    + * Java class for JalviewModel complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="JalviewModel">
    @@ -375,3401 +379,2741 @@ import javax.xml.datatype.XMLGregorianCalendar;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "JalviewModel", namespace = "www.jalview.org", propOrder = {
    -    "creationDate",
    -    "version",
    -    "vamsasModel",
    -    "jSeq",
    -    "jGroup",
    -    "viewport",
    -    "userColours",
    -    "tree",
    -    "pcaViewer",
    -    "featureSettings"
    -})
    -public class JalviewModel {
    -
    -    @XmlElement(required = true)
    -    @XmlSchemaType(name = "dateTime")
    -    protected XMLGregorianCalendar creationDate;
    -    @XmlElement(required = true)
    -    protected String version;
    -    @XmlElement(required = true)
    -    protected VAMSAS vamsasModel;
    -    @XmlElement(name = "JSeq")
    -    protected List jSeq;
    -    @XmlElement(name = "JGroup")
    -    protected List jGroup;
    -    @XmlElement(name = "Viewport")
    -    protected List viewport;
    -    @XmlElement(name = "UserColours")
    -    protected List userColours;
    -    protected List tree;
    -    @XmlElement(name = "PcaViewer")
    -    protected List pcaViewer;
    -    @XmlElement(name = "FeatureSettings")
    -    protected JalviewModel.FeatureSettings featureSettings;
    -
    -    /**
    -     * Gets the value of the creationDate property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link XMLGregorianCalendar }
    -     *     
    -     */
    -    public XMLGregorianCalendar getCreationDate() {
    -        return creationDate;
    -    }
    -
    -    /**
    -     * Sets the value of the creationDate property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link XMLGregorianCalendar }
    -     *     
    -     */
    -    public void setCreationDate(XMLGregorianCalendar value) {
    -        this.creationDate = value;
    +@XmlType(
    +  name = "JalviewModel",
    +  namespace = "www.jalview.org",
    +  propOrder =
    +  { "creationDate", "version", "vamsasModel", "jSeq", "jGroup", "viewport",
    +      "userColours", "tree", "pcaViewer", "featureSettings" })
    +public class JalviewModel
    +{
    +
    +  @XmlElement(required = true)
    +  @XmlSchemaType(name = "dateTime")
    +  protected XMLGregorianCalendar creationDate;
    +
    +  @XmlElement(required = true)
    +  protected String version;
    +
    +  @XmlElement(required = true)
    +  protected VAMSAS vamsasModel;
    +
    +  @XmlElement(name = "JSeq")
    +  protected List jSeq;
    +
    +  @XmlElement(name = "JGroup")
    +  protected List jGroup;
    +
    +  @XmlElement(name = "Viewport")
    +  protected List viewport;
    +
    +  @XmlElement(name = "UserColours")
    +  protected List userColours;
    +
    +  protected List tree;
    +
    +  @XmlElement(name = "PcaViewer")
    +  protected List pcaViewer;
    +
    +  @XmlElement(name = "FeatureSettings")
    +  protected JalviewModel.FeatureSettings featureSettings;
    +
    +  /**
    +   * Gets the value of the creationDate property.
    +   * 
    +   * @return possible object is {@link XMLGregorianCalendar }
    +   * 
    +   */
    +  public XMLGregorianCalendar getCreationDate()
    +  {
    +    return creationDate;
    +  }
    +
    +  /**
    +   * Sets the value of the creationDate property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link XMLGregorianCalendar }
    +   * 
    +   */
    +  public void setCreationDate(XMLGregorianCalendar value)
    +  {
    +    this.creationDate = value;
    +  }
    +
    +  /**
    +   * Gets the value of the version property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getVersion()
    +  {
    +    return version;
    +  }
    +
    +  /**
    +   * Sets the value of the version property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setVersion(String value)
    +  {
    +    this.version = value;
    +  }
    +
    +  /**
    +   * Gets the value of the vamsasModel property.
    +   * 
    +   * @return possible object is {@link VAMSAS }
    +   * 
    +   */
    +  public VAMSAS getVamsasModel()
    +  {
    +    return vamsasModel;
    +  }
    +
    +  /**
    +   * Sets the value of the vamsasModel property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link VAMSAS }
    +   * 
    +   */
    +  public void setVamsasModel(VAMSAS value)
    +  {
    +    this.vamsasModel = value;
    +  }
    +
    +  /**
    +   * Gets the value of the jSeq property.
    +   * 
    +   * 

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the jSeq property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getJSeq().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.JSeq } + *

    + * + * + * @return The value of the jSeq property. + */ + public List getJSeq() + { + if (jSeq == null) + { + jSeq = new ArrayList(); } - - /** - * Gets the value of the version property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getVersion() { - return version; + return this.jSeq; + } + + /** + * Gets the value of the jGroup property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the jGroup property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getJGroup().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.JGroup } + *

    + * + * + * @return The value of the jGroup property. + */ + public List getJGroup() + { + if (jGroup == null) + { + jGroup = new ArrayList(); } - - /** - * Sets the value of the version property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setVersion(String value) { - this.version = value; + return this.jGroup; + } + + /** + * Gets the value of the viewport property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the viewport property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getViewport().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.Viewport } + *

    + * + * + * @return The value of the viewport property. + */ + public List getViewport() + { + if (viewport == null) + { + viewport = new ArrayList(); } - - /** - * Gets the value of the vamsasModel property. - * - * @return - * possible object is - * {@link VAMSAS } - * - */ - public VAMSAS getVamsasModel() { - return vamsasModel; + return this.viewport; + } + + /** + * Gets the value of the userColours property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the userColours property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getUserColours().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.UserColours } + *

    + * + * + * @return The value of the userColours property. + */ + public List getUserColours() + { + if (userColours == null) + { + userColours = new ArrayList(); } - - /** - * Sets the value of the vamsasModel property. - * - * @param value - * allowed object is - * {@link VAMSAS } - * - */ - public void setVamsasModel(VAMSAS value) { - this.vamsasModel = value; + return this.userColours; + } + + /** + * Gets the value of the tree property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the tree property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getTree().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.Tree } + *

    + * + * + * @return The value of the tree property. + */ + public List getTree() + { + if (tree == null) + { + tree = new ArrayList(); + } + return this.tree; + } + + /** + * Gets the value of the pcaViewer property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the pcaViewer property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getPcaViewer().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.PcaViewer } + *

    + * + * + * @return The value of the pcaViewer property. + */ + public List getPcaViewer() + { + if (pcaViewer == null) + { + pcaViewer = new ArrayList(); } + return this.pcaViewer; + } + + /** + * Gets the value of the featureSettings property. + * + * @return possible object is {@link JalviewModel.FeatureSettings } + * + */ + public JalviewModel.FeatureSettings getFeatureSettings() + { + return featureSettings; + } + + /** + * Sets the value of the featureSettings property. + * + * @param value + * allowed object is {@link JalviewModel.FeatureSettings } + * + */ + public void setFeatureSettings(JalviewModel.FeatureSettings value) + { + this.featureSettings = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="setting" maxOccurs="unbounded" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <sequence>
    +   *                   <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
    +   *                   <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
    +   *                 </sequence>
    +   *                 <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                 <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *                 <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *                 <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
    +   *                 <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *                 <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *                 <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *                 <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *                 <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="group" maxOccurs="unbounded" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                 <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *       </sequence>
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "setting", "group" }) + public static class FeatureSettings + { + + @XmlElement(namespace = "www.jalview.org") + protected List setting; + + @XmlElement(namespace = "www.jalview.org") + protected List group; /** - * Gets the value of the jSeq property. + * Gets the value of the setting property. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the jSeq property.

    + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the setting property. + *

    * *

    * For example, to add a new item, do as follows: *

    + * *
    -     * getJSeq().add(newItem);
    +     * getSetting().add(newItem);
          * 
    * * *

    * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.JSeq } + * {@link JalviewModel.FeatureSettings.Setting } *

    * * - * @return - * The value of the jSeq property. + * @return The value of the setting property. */ - public List getJSeq() { - if (jSeq == null) { - jSeq = new ArrayList(); - } - return this.jSeq; + public List getSetting() + { + if (setting == null) + { + setting = new ArrayList(); + } + return this.setting; } /** - * Gets the value of the jGroup property. + * Gets the value of the group property. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the jGroup property.

    + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the group property. + *

    * *

    * For example, to add a new item, do as follows: *

    + * *
    -     * getJGroup().add(newItem);
    +     * getGroup().add(newItem);
          * 
    * * *

    * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.JGroup } + * {@link JalviewModel.FeatureSettings.Group } *

    * * - * @return - * The value of the jGroup property. + * @return The value of the group property. */ - public List getJGroup() { - if (jGroup == null) { - jGroup = new ArrayList(); - } - return this.jGroup; + public List getGroup() + { + if (group == null) + { + group = new ArrayList(); + } + return this.group; } /** - * Gets the value of the viewport property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the viewport property.

    + *

    + * Java class for anonymous complex type + *

    + * . * *

    - * For example, to add a new item, do as follows: + * The following schema fragment specifies the expected content contained + * within this class. *

    + * *
    -     * getViewport().add(newItem);
    +     * <complexType>
    +     *   <complexContent>
    +     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +     *       <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *       <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *     </restriction>
    +     *   </complexContent>
    +     * </complexType>
          * 
    * * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class Group + { + + @XmlAttribute(name = "name", required = true) + protected String name; + + @XmlAttribute(name = "display", required = true) + protected boolean display; + + /** + * Gets the value of the name property. + * + * @return possible object is {@link String } + * + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setName(String value) + { + this.name = value; + } + + /** + * Gets the value of the display property. + * + */ + public boolean isDisplay() + { + return display; + } + + /** + * Sets the value of the display property. + * + */ + public void setDisplay(boolean value) + { + this.display = value; + } + + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.Viewport } + * The following schema fragment specifies the expected content contained + * within this class. *

    * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +     *       <sequence>
    +     *         <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
    +     *         <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
    +     *       </sequence>
    +     *       <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *       <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *       <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
    +     *       <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
    +     *       <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    +     *       <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
    +     *       <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
    +     *       <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *       <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *     </restriction>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * * - * @return - * The value of the viewport property. */ - public List getViewport() { - if (viewport == null) { - viewport = new ArrayList(); + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "attributeName", "matcherSet" }) + public static class Setting + { + + /** + * name of feature attribute to colour by, or attribute and sub-attribute + * + */ + @XmlElement(namespace = "www.jalview.org") + protected List attributeName; + + /** + * optional filter(s) applied to the feature type + * + */ + @XmlElement(namespace = "www.jalview.org") + protected FeatureMatcherSet matcherSet; + + @XmlAttribute(name = "type", required = true) + protected String type; + + @XmlAttribute(name = "colour", required = true) + protected int colour; + + @XmlAttribute(name = "display", required = true) + protected boolean display; + + @XmlAttribute(name = "order") + protected Float order; + + /** + * Optional minimum colour for graduated feature colour + * + */ + @XmlAttribute(name = "mincolour") + protected Integer mincolour; + + @XmlAttribute(name = "noValueColour") + protected NoValueColour noValueColour; + + /** + * threshold value for graduated feature colour + * + */ + @XmlAttribute(name = "threshold") + protected Float threshold; + + /** + * threshold type for graduated feature colour + * + */ + @XmlAttribute(name = "threshstate") + protected Integer threshstate; + + @XmlAttribute(name = "max") + protected Float max; + + @XmlAttribute(name = "min") + protected Float min; + + @XmlAttribute(name = "colourByLabel") + protected Boolean colourByLabel; + + @XmlAttribute(name = "autoScale") + protected Boolean autoScale; + + /** + * name of feature attribute to colour by, or attribute and sub-attribute + * + * Gets the value of the attributeName property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the attributeName property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +       * getAttributeName().add(newItem);
    +       * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String + * } + *

    + * + * + * @return The value of the attributeName property. + */ + public List getAttributeName() + { + if (attributeName == null) + { + attributeName = new ArrayList(); + } + return this.attributeName; + } + + /** + * optional filter(s) applied to the feature type + * + * @return possible object is {@link FeatureMatcherSet } + * + */ + public FeatureMatcherSet getMatcherSet() + { + return matcherSet; + } + + /** + * Sets the value of the matcherSet property. + * + * @param value + * allowed object is {@link FeatureMatcherSet } + * + * @see #getMatcherSet() + */ + public void setMatcherSet(FeatureMatcherSet value) + { + this.matcherSet = value; + } + + /** + * Gets the value of the type property. + * + * @return possible object is {@link String } + * + */ + public String getType() + { + return type; + } + + /** + * Sets the value of the type property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setType(String value) + { + this.type = value; + } + + /** + * Gets the value of the colour property. + * + */ + public int getColour() + { + return colour; + } + + /** + * Sets the value of the colour property. + * + */ + public void setColour(int value) + { + this.colour = value; + } + + /** + * Gets the value of the display property. + * + */ + public boolean isDisplay() + { + return display; + } + + /** + * Sets the value of the display property. + * + */ + public void setDisplay(boolean value) + { + this.display = value; + } + + /** + * Gets the value of the order property. + * + * @return possible object is {@link Float } + * + */ + public Float getOrder() + { + return order; + } + + /** + * Sets the value of the order property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setOrder(Float value) + { + this.order = value; + } + + /** + * Optional minimum colour for graduated feature colour + * + * @return possible object is {@link Integer } + * + */ + public Integer getMincolour() + { + return mincolour; + } + + /** + * Sets the value of the mincolour property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getMincolour() + */ + public void setMincolour(Integer value) + { + this.mincolour = value; + } + + /** + * Gets the value of the noValueColour property. + * + * @return possible object is {@link NoValueColour } + * + */ + public NoValueColour getNoValueColour() + { + if (noValueColour == null) + { + return NoValueColour.MIN; } - return this.viewport; + else + { + return noValueColour; + } + } + + /** + * Sets the value of the noValueColour property. + * + * @param value + * allowed object is {@link NoValueColour } + * + */ + public void setNoValueColour(NoValueColour value) + { + this.noValueColour = value; + } + + /** + * threshold value for graduated feature colour + * + * @return possible object is {@link Float } + * + */ + public Float getThreshold() + { + return threshold; + } + + /** + * Sets the value of the threshold property. + * + * @param value + * allowed object is {@link Float } + * + * @see #getThreshold() + */ + public void setThreshold(Float value) + { + this.threshold = value; + } + + /** + * threshold type for graduated feature colour + * + * @return possible object is {@link Integer } + * + */ + public Integer getThreshstate() + { + return threshstate; + } + + /** + * Sets the value of the threshstate property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getThreshstate() + */ + public void setThreshstate(Integer value) + { + this.threshstate = value; + } + + /** + * Gets the value of the max property. + * + * @return possible object is {@link Float } + * + */ + public Float getMax() + { + return max; + } + + /** + * Sets the value of the max property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setMax(Float value) + { + this.max = value; + } + + /** + * Gets the value of the min property. + * + * @return possible object is {@link Float } + * + */ + public Float getMin() + { + return min; + } + + /** + * Sets the value of the min property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setMin(Float value) + { + this.min = value; + } + + /** + * Gets the value of the colourByLabel property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isColourByLabel() + { + return colourByLabel; + } + + /** + * Sets the value of the colourByLabel property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setColourByLabel(Boolean value) + { + this.colourByLabel = value; + } + + /** + * Gets the value of the autoScale property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isAutoScale() + { + return autoScale; + } + + /** + * Sets the value of the autoScale property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setAutoScale(Boolean value) + { + this.autoScale = value; + } + } + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="seq" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
    +   *         <element name="annotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
    +   *         <element name="SecStrProvider" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +   *       </sequence>
    +   *       <attGroup ref="{www.jalview.org}conservationShading"/>
    +   *       <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="outlineColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="displayBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="displayText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="colourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType( + name = "", + propOrder = + { "seq", "annotationColours", "secStrProvider" }) + public static class JGroup + { + + @XmlElement(namespace = "www.jalview.org", required = true) + protected List seq; + + @XmlElement(namespace = "www.jalview.org") + protected AnnotationColourScheme annotationColours; + + @XmlElement(name = "SecStrProvider", namespace = "www.jalview.org") + protected List secStrProvider; + + @XmlAttribute(name = "start") + protected Integer start; + + @XmlAttribute(name = "end") + protected Integer end; + + @XmlAttribute(name = "name") + protected String name; + + @XmlAttribute(name = "colour") + protected String colour; + + @XmlAttribute(name = "outlineColour") + protected Integer outlineColour; + + @XmlAttribute(name = "displayBoxes") + protected Boolean displayBoxes; + + @XmlAttribute(name = "displayText") + protected Boolean displayText; + + @XmlAttribute(name = "colourText") + protected Boolean colourText; + + @XmlAttribute(name = "textCol1") + protected Integer textCol1; + + @XmlAttribute(name = "textCol2") + protected Integer textCol2; + + @XmlAttribute(name = "textColThreshold") + protected Integer textColThreshold; + + @XmlAttribute(name = "showUnconserved") + protected Boolean showUnconserved; + /** - * Gets the value of the userColours property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the userColours property.

    + * Optional sequence group ID (only needs to be unique for this alignment) * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getUserColours().add(newItem);
    -     * 
    + */ + @XmlAttribute(name = "id") + protected String id; + + @XmlAttribute(name = "conservationSelected") + protected Boolean conservationSelected; + + /** + * Conservation shading increment * + */ + @XmlAttribute(name = "consThreshold") + protected Integer consThreshold; + + @XmlAttribute(name = "pidSelected") + protected Boolean pidSelected; + + /** + * Percent Identity Threshold * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.UserColours } - *

    + */ + @XmlAttribute(name = "pidThreshold") + protected Integer pidThreshold; + + /** + * Secondary structure consensus shading - since 2.11.4 * + */ + @XmlAttribute(name = "secstrSelected") + protected Boolean secstrSelected; + + /** + * Secondary structure consensus increment * - * @return - * The value of the userColours property. */ - public List getUserColours() { - if (userColours == null) { - userColours = new ArrayList(); - } - return this.userColours; - } + @XmlAttribute(name = "secstrThreshold") + protected Integer secstrThreshold; + + @XmlAttribute(name = "showConsensusHistogram") + protected Boolean showConsensusHistogram; + + @XmlAttribute(name = "showSequenceLogo") + protected Boolean showSequenceLogo; + + @XmlAttribute(name = "normaliseSequenceLogo") + protected Boolean normaliseSequenceLogo; + + @XmlAttribute(name = "ignoreGapsinConsensus") + protected Boolean ignoreGapsinConsensus; /** - * Gets the value of the tree property. + * Gets the value of the seq property. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the tree property.

    + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the seq property. + *

    * *

    * For example, to add a new item, do as follows: *

    + * *
    -     * getTree().add(newItem);
    +     * getSeq().add(newItem);
          * 
    * * *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.Tree } + * Objects of the following type(s) are allowed in the list {@link String } *

    * * - * @return - * The value of the tree property. + * @return The value of the seq property. */ - public List getTree() { - if (tree == null) { - tree = new ArrayList(); - } - return this.tree; + public List getSeq() + { + if (seq == null) + { + seq = new ArrayList(); + } + return this.seq; + } + + /** + * Gets the value of the annotationColours property. + * + * @return possible object is {@link AnnotationColourScheme } + * + */ + public AnnotationColourScheme getAnnotationColours() + { + return annotationColours; + } + + /** + * Sets the value of the annotationColours property. + * + * @param value + * allowed object is {@link AnnotationColourScheme } + * + */ + public void setAnnotationColours(AnnotationColourScheme value) + { + this.annotationColours = value; } /** - * Gets the value of the pcaViewer property. + * Gets the value of the secStrProvider property. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the pcaViewer property.

    + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the secStrProvider property. + *

    * *

    * For example, to add a new item, do as follows: *

    + * *
    -     * getPcaViewer().add(newItem);
    +     * getSecStrProvider().add(newItem);
          * 
    * * *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.PcaViewer } + * Objects of the following type(s) are allowed in the list {@link String } *

    * * - * @return - * The value of the pcaViewer property. + * @return The value of the secStrProvider property. */ - public List getPcaViewer() { - if (pcaViewer == null) { - pcaViewer = new ArrayList(); - } - return this.pcaViewer; + public List getSecStrProvider() + { + if (secStrProvider == null) + { + secStrProvider = new ArrayList(); + } + return this.secStrProvider; } /** - * Gets the value of the featureSettings property. + * Gets the value of the start property. + * + * @return possible object is {@link Integer } * - * @return - * possible object is - * {@link JalviewModel.FeatureSettings } - * */ - public JalviewModel.FeatureSettings getFeatureSettings() { - return featureSettings; + public Integer getStart() + { + return start; } /** - * Sets the value of the featureSettings property. + * Sets the value of the start property. * * @param value - * allowed object is - * {@link JalviewModel.FeatureSettings } - * + * allowed object is {@link Integer } + * */ - public void setFeatureSettings(JalviewModel.FeatureSettings value) { - this.featureSettings = value; + public void setStart(Integer value) + { + this.start = value; } - /** - *

    Java class for anonymous complex type

    . + * Gets the value of the end property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @return possible object is {@link Integer } * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="setting" maxOccurs="unbounded" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <sequence>
    -     *                   <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
    -     *                   <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
    -     *                 </sequence>
    -     *                 <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                 <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *                 <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *                 <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
    -     *                 <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *                 <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *                 <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *                 <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *                 <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="group" maxOccurs="unbounded" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                 <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *       </sequence>
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + */ + public Integer getEnd() + { + return end; + } + + /** + * Sets the value of the end property. * + * @param value + * allowed object is {@link Integer } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "setting", - "group" - }) - public static class FeatureSettings { - - @XmlElement(namespace = "www.jalview.org") - protected List setting; - @XmlElement(namespace = "www.jalview.org") - protected List group; - - /** - * Gets the value of the setting property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the setting property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getSetting().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.FeatureSettings.Setting } - *

    - * - * - * @return - * The value of the setting property. - */ - public List getSetting() { - if (setting == null) { - setting = new ArrayList(); - } - return this.setting; - } + public void setEnd(Integer value) + { + this.end = value; + } - /** - * Gets the value of the group property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the group property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getGroup().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.FeatureSettings.Group } - *

    - * - * - * @return - * The value of the group property. - */ - public List getGroup() { - if (group == null) { - group = new ArrayList(); - } - return this.group; - } + /** + * Gets the value of the name property. + * + * @return possible object is {@link String } + * + */ + public String getName() + { + return name; + } + /** + * Sets the value of the name property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setName(String value) + { + this.name = value; + } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *       <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class Group { - - @XmlAttribute(name = "name", required = true) - protected String name; - @XmlAttribute(name = "display", required = true) - protected boolean display; - - /** - * Gets the value of the name property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getName() { - return name; - } - - /** - * Sets the value of the name property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setName(String value) { - this.name = value; - } - - /** - * Gets the value of the display property. - * - */ - public boolean isDisplay() { - return display; - } - - /** - * Sets the value of the display property. - * - */ - public void setDisplay(boolean value) { - this.display = value; - } + /** + * Gets the value of the colour property. + * + * @return possible object is {@link String } + * + */ + public String getColour() + { + return colour; + } - } + /** + * Sets the value of the colour property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setColour(String value) + { + this.colour = value; + } + /** + * Gets the value of the outlineColour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getOutlineColour() + { + return outlineColour; + } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <sequence>
    -         *         <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
    -         *         <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
    -         *       </sequence>
    -         *       <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *       <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *       <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
    -         *       <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
    -         *       <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    -         *       <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
    -         *       <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
    -         *       <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *       <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "attributeName", - "matcherSet" - }) - public static class Setting { - - /** - * name of feature attribute to colour by, or attribute and sub-attribute - * - */ - @XmlElement(namespace = "www.jalview.org") - protected List attributeName; - /** - * optional filter(s) applied to the feature type - * - */ - @XmlElement(namespace = "www.jalview.org") - protected FeatureMatcherSet matcherSet; - @XmlAttribute(name = "type", required = true) - protected String type; - @XmlAttribute(name = "colour", required = true) - protected int colour; - @XmlAttribute(name = "display", required = true) - protected boolean display; - @XmlAttribute(name = "order") - protected Float order; - /** - * Optional minimum colour - * for graduated - * feature - * colour - * - */ - @XmlAttribute(name = "mincolour") - protected Integer mincolour; - @XmlAttribute(name = "noValueColour") - protected NoValueColour noValueColour; - /** - * threshold value for - * graduated feature colour - * - */ - @XmlAttribute(name = "threshold") - protected Float threshold; - /** - * threshold type for - * graduated feature colour - * - */ - @XmlAttribute(name = "threshstate") - protected Integer threshstate; - @XmlAttribute(name = "max") - protected Float max; - @XmlAttribute(name = "min") - protected Float min; - @XmlAttribute(name = "colourByLabel") - protected Boolean colourByLabel; - @XmlAttribute(name = "autoScale") - protected Boolean autoScale; - - /** - * name of feature attribute to colour by, or attribute and sub-attribute - * - * Gets the value of the attributeName property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the attributeName property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -             * getAttributeName().add(newItem);
    -             * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the attributeName property. - */ - public List getAttributeName() { - if (attributeName == null) { - attributeName = new ArrayList(); - } - return this.attributeName; - } - - /** - * optional filter(s) applied to the feature type - * - * @return - * possible object is - * {@link FeatureMatcherSet } - * - */ - public FeatureMatcherSet getMatcherSet() { - return matcherSet; - } - - /** - * Sets the value of the matcherSet property. - * - * @param value - * allowed object is - * {@link FeatureMatcherSet } - * - * @see #getMatcherSet() - */ - public void setMatcherSet(FeatureMatcherSet value) { - this.matcherSet = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the colour property. - * - */ - public int getColour() { - return colour; - } - - /** - * Sets the value of the colour property. - * - */ - public void setColour(int value) { - this.colour = value; - } - - /** - * Gets the value of the display property. - * - */ - public boolean isDisplay() { - return display; - } - - /** - * Sets the value of the display property. - * - */ - public void setDisplay(boolean value) { - this.display = value; - } - - /** - * Gets the value of the order property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getOrder() { - return order; - } - - /** - * Sets the value of the order property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setOrder(Float value) { - this.order = value; - } - - /** - * Optional minimum colour - * for graduated - * feature - * colour - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getMincolour() { - return mincolour; - } - - /** - * Sets the value of the mincolour property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getMincolour() - */ - public void setMincolour(Integer value) { - this.mincolour = value; - } - - /** - * Gets the value of the noValueColour property. - * - * @return - * possible object is - * {@link NoValueColour } - * - */ - public NoValueColour getNoValueColour() { - if (noValueColour == null) { - return NoValueColour.MIN; - } else { - return noValueColour; - } - } - - /** - * Sets the value of the noValueColour property. - * - * @param value - * allowed object is - * {@link NoValueColour } - * - */ - public void setNoValueColour(NoValueColour value) { - this.noValueColour = value; - } - - /** - * threshold value for - * graduated feature colour - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getThreshold() { - return threshold; - } - - /** - * Sets the value of the threshold property. - * - * @param value - * allowed object is - * {@link Float } - * - * @see #getThreshold() - */ - public void setThreshold(Float value) { - this.threshold = value; - } - - /** - * threshold type for - * graduated feature colour - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getThreshstate() { - return threshstate; - } - - /** - * Sets the value of the threshstate property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getThreshstate() - */ - public void setThreshstate(Integer value) { - this.threshstate = value; - } - - /** - * Gets the value of the max property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getMax() { - return max; - } - - /** - * Sets the value of the max property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setMax(Float value) { - this.max = value; - } - - /** - * Gets the value of the min property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getMin() { - return min; - } - - /** - * Sets the value of the min property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setMin(Float value) { - this.min = value; - } - - /** - * Gets the value of the colourByLabel property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isColourByLabel() { - return colourByLabel; - } - - /** - * Sets the value of the colourByLabel property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setColourByLabel(Boolean value) { - this.colourByLabel = value; - } - - /** - * Gets the value of the autoScale property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isAutoScale() { - return autoScale; - } - - /** - * Sets the value of the autoScale property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setAutoScale(Boolean value) { - this.autoScale = value; - } + /** + * Sets the value of the outlineColour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setOutlineColour(Integer value) + { + this.outlineColour = value; + } - } + /** + * Gets the value of the displayBoxes property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isDisplayBoxes() + { + return displayBoxes; + } + /** + * Sets the value of the displayBoxes property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setDisplayBoxes(Boolean value) + { + this.displayBoxes = value; } + /** + * Gets the value of the displayText property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isDisplayText() + { + return displayText; + } /** - *

    Java class for anonymous complex type

    . + * Sets the value of the displayText property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @param value + * allowed object is {@link Boolean } * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="seq" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
    -     *         <element name="annotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
    -     *         <element name="SecStrProvider" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    -     *       </sequence>
    -     *       <attGroup ref="{www.jalview.org}conservationShading"/>
    -     *       <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="outlineColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="displayBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="displayText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="colourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + */ + public void setDisplayText(Boolean value) + { + this.displayText = value; + } + + /** + * Gets the value of the colourText property. * + * @return possible object is {@link Boolean } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "seq", - "annotationColours", - "secStrProvider" - }) - public static class JGroup { - - @XmlElement(namespace = "www.jalview.org", required = true) - protected List seq; - @XmlElement(namespace = "www.jalview.org") - protected AnnotationColourScheme annotationColours; - @XmlElement(name = "SecStrProvider", namespace = "www.jalview.org") - protected List secStrProvider; - @XmlAttribute(name = "start") - protected Integer start; - @XmlAttribute(name = "end") - protected Integer end; - @XmlAttribute(name = "name") - protected String name; - @XmlAttribute(name = "colour") - protected String colour; - @XmlAttribute(name = "outlineColour") - protected Integer outlineColour; - @XmlAttribute(name = "displayBoxes") - protected Boolean displayBoxes; - @XmlAttribute(name = "displayText") - protected Boolean displayText; - @XmlAttribute(name = "colourText") - protected Boolean colourText; - @XmlAttribute(name = "textCol1") - protected Integer textCol1; - @XmlAttribute(name = "textCol2") - protected Integer textCol2; - @XmlAttribute(name = "textColThreshold") - protected Integer textColThreshold; - @XmlAttribute(name = "showUnconserved") - protected Boolean showUnconserved; - /** - * Optional sequence group ID (only - * needs to be - * unique for this - * alignment) - * - */ - @XmlAttribute(name = "id") - protected String id; - @XmlAttribute(name = "conservationSelected") - protected Boolean conservationSelected; - /** - * Conservation shading increment - * - */ - @XmlAttribute(name = "consThreshold") - protected Integer consThreshold; - @XmlAttribute(name = "pidSelected") - protected Boolean pidSelected; - /** - * Percent Identity Threshold - * - */ - @XmlAttribute(name = "pidThreshold") - protected Integer pidThreshold; - /** - * Secondary structure consensus shading - since 2.11.4 - * - */ - @XmlAttribute(name = "secstrSelected") - protected Boolean secstrSelected; - /** - * Secondary structure consensus increment - * - */ - @XmlAttribute(name = "secstrThreshold") - protected Integer secstrThreshold; - @XmlAttribute(name = "showConsensusHistogram") - protected Boolean showConsensusHistogram; - @XmlAttribute(name = "showSequenceLogo") - protected Boolean showSequenceLogo; - @XmlAttribute(name = "normaliseSequenceLogo") - protected Boolean normaliseSequenceLogo; - @XmlAttribute(name = "ignoreGapsinConsensus") - protected Boolean ignoreGapsinConsensus; + public Boolean isColourText() + { + return colourText; + } - /** - * Gets the value of the seq property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the seq property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getSeq().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the seq property. - */ - public List getSeq() { - if (seq == null) { - seq = new ArrayList(); - } - return this.seq; - } + /** + * Sets the value of the colourText property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setColourText(Boolean value) + { + this.colourText = value; + } - /** - * Gets the value of the annotationColours property. - * - * @return - * possible object is - * {@link AnnotationColourScheme } - * - */ - public AnnotationColourScheme getAnnotationColours() { - return annotationColours; - } + /** + * Gets the value of the textCol1 property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getTextCol1() + { + return textCol1; + } - /** - * Sets the value of the annotationColours property. - * - * @param value - * allowed object is - * {@link AnnotationColourScheme } - * - */ - public void setAnnotationColours(AnnotationColourScheme value) { - this.annotationColours = value; - } + /** + * Sets the value of the textCol1 property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setTextCol1(Integer value) + { + this.textCol1 = value; + } - /** - * Gets the value of the secStrProvider property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the secStrProvider property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getSecStrProvider().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the secStrProvider property. - */ - public List getSecStrProvider() { - if (secStrProvider == null) { - secStrProvider = new ArrayList(); - } - return this.secStrProvider; - } + /** + * Gets the value of the textCol2 property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getTextCol2() + { + return textCol2; + } - /** - * Gets the value of the start property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getStart() { - return start; - } + /** + * Sets the value of the textCol2 property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setTextCol2(Integer value) + { + this.textCol2 = value; + } - /** - * Sets the value of the start property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setStart(Integer value) { - this.start = value; - } + /** + * Gets the value of the textColThreshold property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getTextColThreshold() + { + return textColThreshold; + } - /** - * Gets the value of the end property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getEnd() { - return end; - } + /** + * Sets the value of the textColThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setTextColThreshold(Integer value) + { + this.textColThreshold = value; + } - /** - * Sets the value of the end property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setEnd(Integer value) { - this.end = value; - } + /** + * Gets the value of the showUnconserved property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowUnconserved() + { + return showUnconserved; + } - /** - * Gets the value of the name property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getName() { - return name; - } + /** + * Sets the value of the showUnconserved property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowUnconserved(Boolean value) + { + this.showUnconserved = value; + } - /** - * Sets the value of the name property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setName(String value) { - this.name = value; - } + /** + * Optional sequence group ID (only needs to be unique for this alignment) + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } - /** - * Gets the value of the colour property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getColour() { - return colour; - } + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + * @see #getId() + */ + public void setId(String value) + { + this.id = value; + } - /** - * Sets the value of the colour property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setColour(String value) { - this.colour = value; - } + /** + * Gets the value of the conservationSelected property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isConservationSelected() + { + return conservationSelected; + } - /** - * Gets the value of the outlineColour property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getOutlineColour() { - return outlineColour; - } + /** + * Sets the value of the conservationSelected property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setConservationSelected(Boolean value) + { + this.conservationSelected = value; + } - /** - * Sets the value of the outlineColour property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setOutlineColour(Integer value) { - this.outlineColour = value; - } + /** + * Conservation shading increment + * + * @return possible object is {@link Integer } + * + */ + public Integer getConsThreshold() + { + return consThreshold; + } - /** - * Gets the value of the displayBoxes property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isDisplayBoxes() { - return displayBoxes; - } + /** + * Sets the value of the consThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getConsThreshold() + */ + public void setConsThreshold(Integer value) + { + this.consThreshold = value; + } - /** - * Sets the value of the displayBoxes property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setDisplayBoxes(Boolean value) { - this.displayBoxes = value; - } + /** + * Gets the value of the pidSelected property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isPidSelected() + { + return pidSelected; + } - /** - * Gets the value of the displayText property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isDisplayText() { - return displayText; - } + /** + * Sets the value of the pidSelected property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setPidSelected(Boolean value) + { + this.pidSelected = value; + } - /** - * Sets the value of the displayText property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setDisplayText(Boolean value) { - this.displayText = value; - } + /** + * Percent Identity Threshold + * + * @return possible object is {@link Integer } + * + */ + public Integer getPidThreshold() + { + return pidThreshold; + } - /** - * Gets the value of the colourText property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isColourText() { - return colourText; - } + /** + * Sets the value of the pidThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getPidThreshold() + */ + public void setPidThreshold(Integer value) + { + this.pidThreshold = value; + } - /** - * Sets the value of the colourText property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setColourText(Boolean value) { - this.colourText = value; - } + /** + * Secondary structure consensus shading - since 2.11.4 + * + * @return possible object is {@link Boolean } + * + */ + public boolean isSecstrSelected() + { + if (secstrSelected == null) + { + return false; + } + else + { + return secstrSelected; + } + } - /** - * Gets the value of the textCol1 property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getTextCol1() { - return textCol1; - } + /** + * Sets the value of the secstrSelected property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isSecstrSelected() + */ + public void setSecstrSelected(Boolean value) + { + this.secstrSelected = value; + } - /** - * Sets the value of the textCol1 property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setTextCol1(Integer value) { - this.textCol1 = value; - } + /** + * Secondary structure consensus increment + * + * @return possible object is {@link Integer } + * + */ + public Integer getSecstrThreshold() + { + return secstrThreshold; + } - /** - * Gets the value of the textCol2 property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getTextCol2() { - return textCol2; - } + /** + * Sets the value of the secstrThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getSecstrThreshold() + */ + public void setSecstrThreshold(Integer value) + { + this.secstrThreshold = value; + } - /** - * Sets the value of the textCol2 property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setTextCol2(Integer value) { - this.textCol2 = value; - } - - /** - * Gets the value of the textColThreshold property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getTextColThreshold() { - return textColThreshold; - } - - /** - * Sets the value of the textColThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setTextColThreshold(Integer value) { - this.textColThreshold = value; - } - - /** - * Gets the value of the showUnconserved property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowUnconserved() { - return showUnconserved; - } - - /** - * Sets the value of the showUnconserved property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowUnconserved(Boolean value) { - this.showUnconserved = value; - } - - /** - * Optional sequence group ID (only - * needs to be - * unique for this - * alignment) - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getId() - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the conservationSelected property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isConservationSelected() { - return conservationSelected; - } - - /** - * Sets the value of the conservationSelected property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setConservationSelected(Boolean value) { - this.conservationSelected = value; - } - - /** - * Conservation shading increment - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getConsThreshold() { - return consThreshold; - } - - /** - * Sets the value of the consThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getConsThreshold() - */ - public void setConsThreshold(Integer value) { - this.consThreshold = value; - } - - /** - * Gets the value of the pidSelected property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isPidSelected() { - return pidSelected; - } + /** + * Gets the value of the showConsensusHistogram property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowConsensusHistogram() + { + if (showConsensusHistogram == null) + { + return true; + } + else + { + return showConsensusHistogram; + } + } - /** - * Sets the value of the pidSelected property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setPidSelected(Boolean value) { - this.pidSelected = value; - } + /** + * Sets the value of the showConsensusHistogram property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowConsensusHistogram(Boolean value) + { + this.showConsensusHistogram = value; + } - /** - * Percent Identity Threshold - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getPidThreshold() { - return pidThreshold; - } + /** + * Gets the value of the showSequenceLogo property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowSequenceLogo() + { + if (showSequenceLogo == null) + { + return false; + } + else + { + return showSequenceLogo; + } + } - /** - * Sets the value of the pidThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getPidThreshold() - */ - public void setPidThreshold(Integer value) { - this.pidThreshold = value; - } + /** + * Sets the value of the showSequenceLogo property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowSequenceLogo(Boolean value) + { + this.showSequenceLogo = value; + } - /** - * Secondary structure consensus shading - since 2.11.4 - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isSecstrSelected() { - if (secstrSelected == null) { - return false; - } else { - return secstrSelected; - } - } + /** + * Gets the value of the normaliseSequenceLogo property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isNormaliseSequenceLogo() + { + if (normaliseSequenceLogo == null) + { + return false; + } + else + { + return normaliseSequenceLogo; + } + } - /** - * Sets the value of the secstrSelected property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isSecstrSelected() - */ - public void setSecstrSelected(Boolean value) { - this.secstrSelected = value; - } + /** + * Sets the value of the normaliseSequenceLogo property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setNormaliseSequenceLogo(Boolean value) + { + this.normaliseSequenceLogo = value; + } - /** - * Secondary structure consensus increment - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getSecstrThreshold() { - return secstrThreshold; - } + /** + * Gets the value of the ignoreGapsinConsensus property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isIgnoreGapsinConsensus() + { + if (ignoreGapsinConsensus == null) + { + return true; + } + else + { + return ignoreGapsinConsensus; + } + } - /** - * Sets the value of the secstrThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getSecstrThreshold() - */ - public void setSecstrThreshold(Integer value) { - this.secstrThreshold = value; - } + /** + * Sets the value of the ignoreGapsinConsensus property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setIgnoreGapsinConsensus(Boolean value) + { + this.ignoreGapsinConsensus = value; + } - /** - * Gets the value of the showConsensusHistogram property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowConsensusHistogram() { - if (showConsensusHistogram == null) { - return true; - } else { - return showConsensusHistogram; - } - } + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="features" type="{www.jalview.org}feature" maxOccurs="unbounded" minOccurs="0"/>
    +   *         <element name="pdbids" maxOccurs="unbounded" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <extension base="{www.jalview.org}pdbentry">
    +   *                 <sequence>
    +   *                   <element name="structureState" maxOccurs="unbounded" minOccurs="0">
    +   *                     <complexType>
    +   *                       <simpleContent>
    +   *                         <extension base="<http://www.w3.org/2001/XMLSchema>string">
    +   *                           <attGroup ref="{www.jalview.org}swingwindow"/>
    +   *                           <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *                           <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                           <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +   *                           <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *                           <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +   *                           <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                         </extension>
    +   *                       </simpleContent>
    +   *                     </complexType>
    +   *                   </element>
    +   *                 </sequence>
    +   *               </extension>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="hiddenSequences" type="{http://www.w3.org/2001/XMLSchema}int" maxOccurs="unbounded" minOccurs="0"/>
    +   *         <element name="rnaViewer" maxOccurs="unbounded" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <sequence>
    +   *                   <element name="secondaryStructure" maxOccurs="unbounded">
    +   *                     <complexType>
    +   *                       <complexContent>
    +   *                         <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                           <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                           <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                           <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *                           <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                         </restriction>
    +   *                       </complexContent>
    +   *                     </complexType>
    +   *                   </element>
    +   *                 </sequence>
    +   *                 <attGroup ref="{www.jalview.org}swingwindow"/>
    +   *                 <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                 <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                 <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *       </sequence>
    +   *       <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="id" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="hidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="viewreference" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType( + name = "", + propOrder = + { "features", "pdbids", "hiddenSequences", "rnaViewer" }) + public static class JSeq + { + + @XmlElement(namespace = "www.jalview.org") + protected List features; + + @XmlElement(namespace = "www.jalview.org") + protected List pdbids; + + @XmlElement(namespace = "www.jalview.org", type = Integer.class) + protected List hiddenSequences; - /** - * Sets the value of the showConsensusHistogram property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowConsensusHistogram(Boolean value) { - this.showConsensusHistogram = value; - } + /** + * Reference to a viewer showing RNA structure for this sequence. Schema + * supports one viewer showing multiple annotations for multiple sequences, + * though currently only one annotation for one sequence (gapped or trimmed) + * is used + * + */ + @XmlElement(namespace = "www.jalview.org") + protected List rnaViewer; - /** - * Gets the value of the showSequenceLogo property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowSequenceLogo() { - if (showSequenceLogo == null) { - return false; - } else { - return showSequenceLogo; - } - } + @XmlAttribute(name = "colour") + protected Integer colour; - /** - * Sets the value of the showSequenceLogo property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowSequenceLogo(Boolean value) { - this.showSequenceLogo = value; - } + @XmlAttribute(name = "start", required = true) + protected int start; - /** - * Gets the value of the normaliseSequenceLogo property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isNormaliseSequenceLogo() { - if (normaliseSequenceLogo == null) { - return false; - } else { - return normaliseSequenceLogo; - } - } + @XmlAttribute(name = "end", required = true) + protected int end; - /** - * Sets the value of the normaliseSequenceLogo property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setNormaliseSequenceLogo(Boolean value) { - this.normaliseSequenceLogo = value; - } + @XmlAttribute(name = "id", required = true) + protected String id; - /** - * Gets the value of the ignoreGapsinConsensus property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isIgnoreGapsinConsensus() { - if (ignoreGapsinConsensus == null) { - return true; - } else { - return ignoreGapsinConsensus; - } - } + @XmlAttribute(name = "hidden") + protected Boolean hidden; - /** - * Sets the value of the ignoreGapsinConsensus property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIgnoreGapsinConsensus(Boolean value) { - this.ignoreGapsinConsensus = value; - } + @XmlAttribute(name = "viewreference") + protected Boolean viewreference; + /** + * Gets the value of the features property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the features property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getFeatures().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Feature } + *

    + * + * + * @return The value of the features property. + */ + public List getFeatures() + { + if (features == null) + { + features = new ArrayList(); + } + return this.features; } - /** - *

    Java class for anonymous complex type

    . + * Gets the value of the pdbids property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the pdbids property. + *

    * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * For example, to add a new item, do as follows: + *

    * *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="features" type="{www.jalview.org}feature" maxOccurs="unbounded" minOccurs="0"/>
    -     *         <element name="pdbids" maxOccurs="unbounded" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <extension base="{www.jalview.org}pdbentry">
    -     *                 <sequence>
    -     *                   <element name="structureState" maxOccurs="unbounded" minOccurs="0">
    -     *                     <complexType>
    -     *                       <simpleContent>
    -     *                         <extension base="<http://www.w3.org/2001/XMLSchema>string">
    -     *                           <attGroup ref="{www.jalview.org}swingwindow"/>
    -     *                           <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *                           <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                           <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -     *                           <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *                           <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -     *                           <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                         </extension>
    -     *                       </simpleContent>
    -     *                     </complexType>
    -     *                   </element>
    -     *                 </sequence>
    -     *               </extension>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="hiddenSequences" type="{http://www.w3.org/2001/XMLSchema}int" maxOccurs="unbounded" minOccurs="0"/>
    -     *         <element name="rnaViewer" maxOccurs="unbounded" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <sequence>
    -     *                   <element name="secondaryStructure" maxOccurs="unbounded">
    -     *                     <complexType>
    -     *                       <complexContent>
    -     *                         <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                           <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                           <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                           <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *                           <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                         </restriction>
    -     *                       </complexContent>
    -     *                     </complexType>
    -     *                   </element>
    -     *                 </sequence>
    -     *                 <attGroup ref="{www.jalview.org}swingwindow"/>
    -     *                 <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                 <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                 <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *       </sequence>
    -     *       <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="id" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="hidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="viewreference" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    +     * getPdbids().add(newItem);
          * 
    * * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.JSeq.Pdbids } + *

    + * + * + * @return The value of the pdbids property. */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "features", - "pdbids", - "hiddenSequences", - "rnaViewer" - }) - public static class JSeq { - - @XmlElement(namespace = "www.jalview.org") - protected List features; - @XmlElement(namespace = "www.jalview.org") - protected List pdbids; - @XmlElement(namespace = "www.jalview.org", type = Integer.class) - protected List hiddenSequences; - /** - * Reference to a viewer showing - * RNA structure for this sequence. - * Schema supports one viewer - * showing multiple annotations for - * multiple sequences, though - * currently only one annotation - * for one sequence (gapped or - * trimmed) is used - * - */ - @XmlElement(namespace = "www.jalview.org") - protected List rnaViewer; - @XmlAttribute(name = "colour") - protected Integer colour; - @XmlAttribute(name = "start", required = true) - protected int start; - @XmlAttribute(name = "end", required = true) - protected int end; - @XmlAttribute(name = "id", required = true) - protected String id; - @XmlAttribute(name = "hidden") - protected Boolean hidden; - @XmlAttribute(name = "viewreference") - protected Boolean viewreference; - - /** - * Gets the value of the features property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the features property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getFeatures().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Feature } - *

    - * - * - * @return - * The value of the features property. - */ - public List getFeatures() { - if (features == null) { - features = new ArrayList(); - } - return this.features; - } + public List getPdbids() + { + if (pdbids == null) + { + pdbids = new ArrayList(); + } + return this.pdbids; + } - /** - * Gets the value of the pdbids property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the pdbids property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getPdbids().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.JSeq.Pdbids } - *

    - * - * - * @return - * The value of the pdbids property. - */ - public List getPdbids() { - if (pdbids == null) { - pdbids = new ArrayList(); - } - return this.pdbids; + /** + * Gets the value of the hiddenSequences property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the hiddenSequences property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getHiddenSequences().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Integer } + *

    + * + * + * @return The value of the hiddenSequences property. + */ + public List getHiddenSequences() + { + if (hiddenSequences == null) + { + hiddenSequences = new ArrayList(); + } + return this.hiddenSequences; + } + + /** + * Reference to a viewer showing RNA structure for this sequence. Schema + * supports one viewer showing multiple annotations for multiple sequences, + * though currently only one annotation for one sequence (gapped or trimmed) + * is used + * + * Gets the value of the rnaViewer property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the rnaViewer property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getRnaViewer().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.JSeq.RnaViewer } + *

    + * + * + * @return The value of the rnaViewer property. + */ + public List getRnaViewer() + { + if (rnaViewer == null) + { + rnaViewer = new ArrayList(); + } + return this.rnaViewer; + } + + /** + * Gets the value of the colour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getColour() + { + return colour; + } + + /** + * Sets the value of the colour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setColour(Integer value) + { + this.colour = value; + } + + /** + * Gets the value of the start property. + * + */ + public int getStart() + { + return start; + } + + /** + * Sets the value of the start property. + * + */ + public void setStart(int value) + { + this.start = value; + } + + /** + * Gets the value of the end property. + * + */ + public int getEnd() + { + return end; + } + + /** + * Sets the value of the end property. + * + */ + public void setEnd(int value) + { + this.end = value; + } + + /** + * Gets the value of the id property. + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setId(String value) + { + this.id = value; + } + + /** + * Gets the value of the hidden property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isHidden() + { + return hidden; + } + + /** + * Sets the value of the hidden property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setHidden(Boolean value) + { + this.hidden = value; + } + + /** + * Gets the value of the viewreference property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isViewreference() + { + return viewreference; + } + + /** + * Sets the value of the viewreference property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setViewreference(Boolean value) + { + this.viewreference = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <extension base="{www.jalview.org}pdbentry">
    +     *       <sequence>
    +     *         <element name="structureState" maxOccurs="unbounded" minOccurs="0">
    +     *           <complexType>
    +     *             <simpleContent>
    +     *               <extension base="<http://www.w3.org/2001/XMLSchema>string">
    +     *                 <attGroup ref="{www.jalview.org}swingwindow"/>
    +     *                 <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *                 <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *                 <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +     *                 <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +     *                 <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +     *                 <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *               </extension>
    +     *             </simpleContent>
    +     *           </complexType>
    +     *         </element>
    +     *       </sequence>
    +     *     </extension>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "structureState" }) + public static class Pdbids extends Pdbentry + { + + @XmlElement(namespace = "www.jalview.org") + protected List structureState; + + /** + * Gets the value of the structureState property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the structureState property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +       * getStructureState().add(newItem);
    +       * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.JSeq.Pdbids.StructureState } + *

    + * + * + * @return The value of the structureState property. + */ + public List getStructureState() + { + if (structureState == null) + { + structureState = new ArrayList(); } + return this.structureState; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +       * <complexType>
    +       *   <simpleContent>
    +       *     <extension base="<http://www.w3.org/2001/XMLSchema>string">
    +       *       <attGroup ref="{www.jalview.org}swingwindow"/>
    +       *       <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +       *       <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +       *       <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +       *       <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +       *       <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +       *       <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
    +       *     </extension>
    +       *   </simpleContent>
    +       * </complexType>
    +       * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "value" }) + public static class StructureState + { + + @XmlValue + protected String value; + + @XmlAttribute(name = "visible") + protected Boolean visible; /** - * Gets the value of the hiddenSequences property. + * additional identifier which properly disambiguates the structure view + * from any other view with the same attributes. This is not an ID, + * because it is possible to have many references to the same physical + * structure view from different sequences in an alignment. A + * structureState element citing the same viewId will appear for each + * instance. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the hiddenSequences property.

    + */ + @XmlAttribute(name = "viewId") + protected String viewId; + + /** + * Flag set if the alignment panel containing this JSeq should be + * included in those used to perform a structure superposition (since + * Jalview 2.7). + * + */ + @XmlAttribute(name = "alignwithAlignPanel") + protected Boolean alignwithAlignPanel; + + /** + * Flag set if the alignment panel containing this JSeq should be + * included in those used to colour its associated sequences in this + * structureState(since Jalview 2.7). * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getHiddenSequences().add(newItem);
    -         * 
    + */ + @XmlAttribute(name = "colourwithAlignPanel") + protected Boolean colourwithAlignPanel; + + /** + * Flag set if the structure display is coloured by the Jmol state, + * rather than by one or more linked alignment views. * + */ + @XmlAttribute(name = "colourByJmol") + protected Boolean colourByJmol; + + /** + * An identifier for the viewer type, currently either JMOL or CHIMERA * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Integer } - *

    + */ + @XmlAttribute(name = "type") + protected String type; + + @XmlAttribute(name = "width") + protected Integer width; + + @XmlAttribute(name = "height") + protected Integer height; + + @XmlAttribute(name = "xpos") + protected Integer xpos; + + @XmlAttribute(name = "ypos") + protected Integer ypos; + + /** + * Gets the value of the value property. * + * @return possible object is {@link String } * - * @return - * The value of the hiddenSequences property. */ - public List getHiddenSequences() { - if (hiddenSequences == null) { - hiddenSequences = new ArrayList(); - } - return this.hiddenSequences; + public String getValue() + { + return value; } /** - * Reference to a viewer showing - * RNA structure for this sequence. - * Schema supports one viewer - * showing multiple annotations for - * multiple sequences, though - * currently only one annotation - * for one sequence (gapped or - * trimmed) is used - * - * Gets the value of the rnaViewer property. + * Sets the value of the value property. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the rnaViewer property.

    + * @param value + * allowed object is {@link String } * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getRnaViewer().add(newItem);
    -         * 
    + */ + public void setValue(String value) + { + this.value = value; + } + + /** + * Gets the value of the visible property. * + * @return possible object is {@link Boolean } * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.JSeq.RnaViewer } - *

    + */ + public Boolean isVisible() + { + return visible; + } + + /** + * Sets the value of the visible property. * + * @param value + * allowed object is {@link Boolean } * - * @return - * The value of the rnaViewer property. */ - public List getRnaViewer() { - if (rnaViewer == null) { - rnaViewer = new ArrayList(); - } - return this.rnaViewer; + public void setVisible(Boolean value) + { + this.visible = value; } /** - * Gets the value of the colour property. + * additional identifier which properly disambiguates the structure view + * from any other view with the same attributes. This is not an ID, + * because it is possible to have many references to the same physical + * structure view from different sequences in an alignment. A + * structureState element citing the same viewId will appear for each + * instance. + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Integer } - * */ - public Integer getColour() { - return colour; + public String getViewId() + { + return viewId; } /** - * Sets the value of the colour property. + * Sets the value of the viewId property. * * @param value - * allowed object is - * {@link Integer } - * + * allowed object is {@link String } + * + * @see #getViewId() */ - public void setColour(Integer value) { - this.colour = value; + public void setViewId(String value) + { + this.viewId = value; } /** - * Gets the value of the start property. + * Flag set if the alignment panel containing this JSeq should be + * included in those used to perform a structure superposition (since + * Jalview 2.7). + * + * @return possible object is {@link Boolean } * */ - public int getStart() { - return start; + public boolean isAlignwithAlignPanel() + { + if (alignwithAlignPanel == null) + { + return true; + } + else + { + return alignwithAlignPanel; + } } /** - * Sets the value of the start property. + * Sets the value of the alignwithAlignPanel property. + * + * @param value + * allowed object is {@link Boolean } * + * @see #isAlignwithAlignPanel() */ - public void setStart(int value) { - this.start = value; + public void setAlignwithAlignPanel(Boolean value) + { + this.alignwithAlignPanel = value; } /** - * Gets the value of the end property. + * Flag set if the alignment panel containing this JSeq should be + * included in those used to colour its associated sequences in this + * structureState(since Jalview 2.7). + * + * @return possible object is {@link Boolean } * */ - public int getEnd() { - return end; + public boolean isColourwithAlignPanel() + { + if (colourwithAlignPanel == null) + { + return false; + } + else + { + return colourwithAlignPanel; + } } /** - * Sets the value of the end property. + * Sets the value of the colourwithAlignPanel property. + * + * @param value + * allowed object is {@link Boolean } * + * @see #isColourwithAlignPanel() */ - public void setEnd(int value) { - this.end = value; + public void setColourwithAlignPanel(Boolean value) + { + this.colourwithAlignPanel = value; } /** - * Gets the value of the id property. + * Flag set if the structure display is coloured by the Jmol state, + * rather than by one or more linked alignment views. + * + * @return possible object is {@link Boolean } * - * @return - * possible object is - * {@link String } - * */ - public String getId() { - return id; + public boolean isColourByJmol() + { + if (colourByJmol == null) + { + return true; + } + else + { + return colourByJmol; + } } /** - * Sets the value of the id property. + * Sets the value of the colourByJmol property. * * @param value - * allowed object is - * {@link String } - * + * allowed object is {@link Boolean } + * + * @see #isColourByJmol() */ - public void setId(String value) { - this.id = value; + public void setColourByJmol(Boolean value) + { + this.colourByJmol = value; } /** - * Gets the value of the hidden property. + * An identifier for the viewer type, currently either JMOL or CHIMERA + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Boolean } - * */ - public Boolean isHidden() { - return hidden; + public String getType() + { + return type; } /** - * Sets the value of the hidden property. + * Sets the value of the type property. * * @param value - * allowed object is - * {@link Boolean } - * + * allowed object is {@link String } + * + * @see #getType() */ - public void setHidden(Boolean value) { - this.hidden = value; + public void setType(String value) + { + this.type = value; } /** - * Gets the value of the viewreference property. + * Gets the value of the width property. + * + * @return possible object is {@link Integer } * - * @return - * possible object is - * {@link Boolean } - * */ - public Boolean isViewreference() { - return viewreference; + public Integer getWidth() + { + return width; } /** - * Sets the value of the viewreference property. + * Sets the value of the width property. * * @param value - * allowed object is - * {@link Boolean } - * + * allowed object is {@link Integer } + * */ - public void setViewreference(Boolean value) { - this.viewreference = value; + public void setWidth(Integer value) + { + this.width = value; } - /** - *

    Java class for anonymous complex type

    . + * Gets the value of the height property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @return possible object is {@link Integer } * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <extension base="{www.jalview.org}pdbentry">
    -         *       <sequence>
    -         *         <element name="structureState" maxOccurs="unbounded" minOccurs="0">
    -         *           <complexType>
    -         *             <simpleContent>
    -         *               <extension base="<http://www.w3.org/2001/XMLSchema>string">
    -         *                 <attGroup ref="{www.jalview.org}swingwindow"/>
    -         *                 <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *                 <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *                 <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -         *                 <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -         *                 <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -         *                 <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *               </extension>
    -         *             </simpleContent>
    -         *           </complexType>
    -         *         </element>
    -         *       </sequence>
    -         *     </extension>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    + */ + public Integer getHeight() + { + return height; + } + + /** + * Sets the value of the height property. * + * @param value + * allowed object is {@link Integer } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "structureState" - }) - public static class Pdbids - extends Pdbentry + public void setHeight(Integer value) { - - @XmlElement(namespace = "www.jalview.org") - protected List structureState; - - /** - * Gets the value of the structureState property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the structureState property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -             * getStructureState().add(newItem);
    -             * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.JSeq.Pdbids.StructureState } - *

    - * - * - * @return - * The value of the structureState property. - */ - public List getStructureState() { - if (structureState == null) { - structureState = new ArrayList(); - } - return this.structureState; - } - - - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -             * <complexType>
    -             *   <simpleContent>
    -             *     <extension base="<http://www.w3.org/2001/XMLSchema>string">
    -             *       <attGroup ref="{www.jalview.org}swingwindow"/>
    -             *       <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -             *       <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -             *       <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -             *       <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -             *       <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -             *       <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
    -             *     </extension>
    -             *   </simpleContent>
    -             * </complexType>
    -             * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class StructureState { - - @XmlValue - protected String value; - @XmlAttribute(name = "visible") - protected Boolean visible; - /** - * additional - * identifier - * which - * properly - * disambiguates - * the - * structure - * view - * from - * any - * other - * view - * with - * the - * same - * attributes. - * This - * is - * not - * an - * ID, - * because - * it - * is - * possible - * to - * have - * many - * references - * to - * the - * same - * physical - * structure - * view - * from - * different - * sequences - * in - * an - * alignment. - * A - * structureState - * element - * citing - * the - * same - * viewId - * will - * appear - * for - * each - * instance. - * - */ - @XmlAttribute(name = "viewId") - protected String viewId; - /** - * Flag - * set - * if - * the - * alignment - * panel - * containing - * this - * JSeq - * should - * be - * included - * in - * those - * used - * to - * perform - * a - * structure - * superposition - * (since - * Jalview - * 2.7). - * - */ - @XmlAttribute(name = "alignwithAlignPanel") - protected Boolean alignwithAlignPanel; - /** - * Flag - * set - * if - * the - * alignment - * panel - * containing - * this - * JSeq - * should - * be - * included - * in - * those - * used - * to - * colour - * its - * associated - * sequences - * in - * this - * structureState(since - * Jalview - * 2.7). - * - */ - @XmlAttribute(name = "colourwithAlignPanel") - protected Boolean colourwithAlignPanel; - /** - * Flag - * set - * if - * the - * structure - * display - * is - * coloured - * by - * the - * Jmol - * state, - * rather - * than - * by - * one - * or - * more - * linked - * alignment - * views. - * - */ - @XmlAttribute(name = "colourByJmol") - protected Boolean colourByJmol; - /** - * An - * identifier - * for - * the - * viewer - * type, - * currently - * either - * JMOL - * or - * CHIMERA - * - */ - @XmlAttribute(name = "type") - protected String type; - @XmlAttribute(name = "width") - protected Integer width; - @XmlAttribute(name = "height") - protected Integer height; - @XmlAttribute(name = "xpos") - protected Integer xpos; - @XmlAttribute(name = "ypos") - protected Integer ypos; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the visible property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isVisible() { - return visible; - } - - /** - * Sets the value of the visible property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setVisible(Boolean value) { - this.visible = value; - } - - /** - * additional - * identifier - * which - * properly - * disambiguates - * the - * structure - * view - * from - * any - * other - * view - * with - * the - * same - * attributes. - * This - * is - * not - * an - * ID, - * because - * it - * is - * possible - * to - * have - * many - * references - * to - * the - * same - * physical - * structure - * view - * from - * different - * sequences - * in - * an - * alignment. - * A - * structureState - * element - * citing - * the - * same - * viewId - * will - * appear - * for - * each - * instance. - * - * @return - * possible object is - * {@link String } - * - */ - public String getViewId() { - return viewId; - } - - /** - * Sets the value of the viewId property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getViewId() - */ - public void setViewId(String value) { - this.viewId = value; - } - - /** - * Flag - * set - * if - * the - * alignment - * panel - * containing - * this - * JSeq - * should - * be - * included - * in - * those - * used - * to - * perform - * a - * structure - * superposition - * (since - * Jalview - * 2.7). - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isAlignwithAlignPanel() { - if (alignwithAlignPanel == null) { - return true; - } else { - return alignwithAlignPanel; - } - } - - /** - * Sets the value of the alignwithAlignPanel property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isAlignwithAlignPanel() - */ - public void setAlignwithAlignPanel(Boolean value) { - this.alignwithAlignPanel = value; - } - - /** - * Flag - * set - * if - * the - * alignment - * panel - * containing - * this - * JSeq - * should - * be - * included - * in - * those - * used - * to - * colour - * its - * associated - * sequences - * in - * this - * structureState(since - * Jalview - * 2.7). - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isColourwithAlignPanel() { - if (colourwithAlignPanel == null) { - return false; - } else { - return colourwithAlignPanel; - } - } - - /** - * Sets the value of the colourwithAlignPanel property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isColourwithAlignPanel() - */ - public void setColourwithAlignPanel(Boolean value) { - this.colourwithAlignPanel = value; - } - - /** - * Flag - * set - * if - * the - * structure - * display - * is - * coloured - * by - * the - * Jmol - * state, - * rather - * than - * by - * one - * or - * more - * linked - * alignment - * views. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isColourByJmol() { - if (colourByJmol == null) { - return true; - } else { - return colourByJmol; - } - } - - /** - * Sets the value of the colourByJmol property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isColourByJmol() - */ - public void setColourByJmol(Boolean value) { - this.colourByJmol = value; - } - - /** - * An - * identifier - * for - * the - * viewer - * type, - * currently - * either - * JMOL - * or - * CHIMERA - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getType() - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the width property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getWidth() { - return width; - } - - /** - * Sets the value of the width property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setWidth(Integer value) { - this.width = value; - } - - /** - * Gets the value of the height property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getHeight() { - return height; - } - - /** - * Sets the value of the height property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHeight(Integer value) { - this.height = value; - } - - /** - * Gets the value of the xpos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXpos() { - return xpos; - } - - /** - * Sets the value of the xpos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setXpos(Integer value) { - this.xpos = value; - } - - /** - * Gets the value of the ypos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYpos() { - return ypos; - } - - /** - * Sets the value of the ypos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYpos(Integer value) { - this.ypos = value; - } - - } - + this.height = value; } + /** + * Gets the value of the xpos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXpos() + { + return xpos; + } /** - *

    Java class for anonymous complex type

    . + * Sets the value of the xpos property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @param value + * allowed object is {@link Integer } * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <sequence>
    -         *         <element name="secondaryStructure" maxOccurs="unbounded">
    -         *           <complexType>
    -         *             <complexContent>
    -         *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *                 <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *                 <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *                 <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *                 <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *               </restriction>
    -         *             </complexContent>
    -         *           </complexType>
    -         *         </element>
    -         *       </sequence>
    -         *       <attGroup ref="{www.jalview.org}swingwindow"/>
    -         *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *       <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *       <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    + */ + public void setXpos(Integer value) + { + this.xpos = value; + } + + /** + * Gets the value of the ypos property. * + * @return possible object is {@link Integer } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "secondaryStructure" - }) - public static class RnaViewer { - - @XmlElement(namespace = "www.jalview.org", required = true) - protected List secondaryStructure; - @XmlAttribute(name = "title") - protected String title; - /** - * An id unique to the RNA - * viewer panel - * - */ - @XmlAttribute(name = "viewId") - protected String viewId; - /** - * horizontal position of - * split pane divider - * - */ - @XmlAttribute(name = "dividerLocation") - protected Integer dividerLocation; - /** - * Index of the selected - * structure in the viewer - * panel - * - */ - @XmlAttribute(name = "selectedRna") - protected Integer selectedRna; - @XmlAttribute(name = "width") - protected Integer width; - @XmlAttribute(name = "height") - protected Integer height; - @XmlAttribute(name = "xpos") - protected Integer xpos; - @XmlAttribute(name = "ypos") - protected Integer ypos; - - /** - * Gets the value of the secondaryStructure property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the secondaryStructure property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -             * getSecondaryStructure().add(newItem);
    -             * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.JSeq.RnaViewer.SecondaryStructure } - *

    - * - * - * @return - * The value of the secondaryStructure property. - */ - public List getSecondaryStructure() { - if (secondaryStructure == null) { - secondaryStructure = new ArrayList(); - } - return this.secondaryStructure; - } - - /** - * Gets the value of the title property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } - - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } - - /** - * An id unique to the RNA - * viewer panel - * - * @return - * possible object is - * {@link String } - * - */ - public String getViewId() { - return viewId; - } - - /** - * Sets the value of the viewId property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getViewId() - */ - public void setViewId(String value) { - this.viewId = value; - } - - /** - * horizontal position of - * split pane divider - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getDividerLocation() { - return dividerLocation; - } - - /** - * Sets the value of the dividerLocation property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getDividerLocation() - */ - public void setDividerLocation(Integer value) { - this.dividerLocation = value; - } - - /** - * Index of the selected - * structure in the viewer - * panel - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getSelectedRna() { - return selectedRna; - } - - /** - * Sets the value of the selectedRna property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getSelectedRna() - */ - public void setSelectedRna(Integer value) { - this.selectedRna = value; - } - - /** - * Gets the value of the width property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getWidth() { - return width; - } - - /** - * Sets the value of the width property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setWidth(Integer value) { - this.width = value; - } - - /** - * Gets the value of the height property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getHeight() { - return height; - } - - /** - * Sets the value of the height property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHeight(Integer value) { - this.height = value; - } - - /** - * Gets the value of the xpos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXpos() { - return xpos; - } - - /** - * Sets the value of the xpos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setXpos(Integer value) { - this.xpos = value; - } - - /** - * Gets the value of the ypos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYpos() { - return ypos; - } - - /** - * Sets the value of the ypos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYpos(Integer value) { - this.ypos = value; - } - - - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -             * <complexType>
    -             *   <complexContent>
    -             *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -             *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -             *       <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -             *       <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -             *       <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
    -             *     </restriction>
    -             *   </complexContent>
    -             * </complexType>
    -             * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class SecondaryStructure { - - @XmlAttribute(name = "title") - protected String title; - /** - * id attribute - * of - * Annotation - * in - * vamsasModel - * for the - * secondary - * structure - * annotation - * shown in the - * viewer - * - */ - @XmlAttribute(name = "annotationId", required = true) - protected String annotationId; - /** - * if true the - * RNA - * structure is - * shown with - * gaps, if - * false - * without - * - */ - @XmlAttribute(name = "gapped") - protected Boolean gapped; - /** - * name of the - * project jar - * entry that - * holds the - * VARNA viewer - * state for - * the - * structure - * - */ - @XmlAttribute(name = "viewerState") - protected String viewerState; - - /** - * Gets the value of the title property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } - - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } - - /** - * id attribute - * of - * Annotation - * in - * vamsasModel - * for the - * secondary - * structure - * annotation - * shown in the - * viewer - * - * @return - * possible object is - * {@link String } - * - */ - public String getAnnotationId() { - return annotationId; - } - - /** - * Sets the value of the annotationId property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getAnnotationId() - */ - public void setAnnotationId(String value) { - this.annotationId = value; - } - - /** - * if true the - * RNA - * structure is - * shown with - * gaps, if - * false - * without - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isGapped() { - return gapped; - } - - /** - * Sets the value of the gapped property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isGapped() - */ - public void setGapped(Boolean value) { - this.gapped = value; - } - - /** - * name of the - * project jar - * entry that - * holds the - * VARNA viewer - * state for - * the - * structure - * - * @return - * possible object is - * {@link String } - * - */ - public String getViewerState() { - return viewerState; - } - - /** - * Sets the value of the viewerState property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getViewerState() - */ - public void setViewerState(String value) { - this.viewerState = value; - } - - } + public Integer getYpos() + { + return ypos; + } + /** + * Sets the value of the ypos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYpos(Integer value) + { + this.ypos = value; } - } + } + } /** - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    * *
          * <complexType>
          *   <complexContent>
          *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
          *       <sequence>
    -     *         <element name="sequencePoint" maxOccurs="unbounded">
    +     *         <element name="secondaryStructure" maxOccurs="unbounded">
          *           <complexType>
          *             <complexContent>
          *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attGroup ref="{www.jalview.org}position"/>
    -     *                 <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="axis" maxOccurs="3" minOccurs="3">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attGroup ref="{www.jalview.org}position"/>
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="seqPointMin">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attGroup ref="{www.jalview.org}position"/>
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="seqPointMax">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attGroup ref="{www.jalview.org}position"/>
    +     *                 <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *                 <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *                 <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *                 <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
          *               </restriction>
          *             </complexContent>
          *           </complexType>
          *         </element>
    -     *         <element name="pcaData" type="{www.jalview.org}PcaDataType"/>
          *       </sequence>
          *       <attGroup ref="{www.jalview.org}swingwindow"/>
    -     *       <attGroup ref="{www.jalview.org}SimilarityParams"/>
          *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="scoreModelName" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="xDim" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="yDim" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="zDim" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="scaleFactor" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *       <attribute name="showLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *       <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *       <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
          *     </restriction>
          *   </complexContent>
          * </complexType>
    @@ -3778,1636 +3122,1133 @@ public class JalviewModel {
          * 
          */
         @XmlAccessorType(XmlAccessType.FIELD)
    -    @XmlType(name = "", propOrder = {
    -        "sequencePoint",
    -        "axis",
    -        "seqPointMin",
    -        "seqPointMax",
    -        "pcaData"
    -    })
    -    public static class PcaViewer {
    -
    -        @XmlElement(namespace = "www.jalview.org", required = true)
    -        protected List sequencePoint;
    -        /**
    -         * endpoints of X, Y and Z axes in that order
    -         * 
    -         */
    -        @XmlElement(namespace = "www.jalview.org", required = true)
    -        protected List axis;
    -        @XmlElement(namespace = "www.jalview.org", required = true)
    -        protected JalviewModel.PcaViewer.SeqPointMin seqPointMin;
    -        @XmlElement(namespace = "www.jalview.org", required = true)
    -        protected JalviewModel.PcaViewer.SeqPointMax seqPointMax;
    -        @XmlElement(namespace = "www.jalview.org", required = true)
    -        protected PcaDataType pcaData;
    +    @XmlType(name = "", propOrder = { "secondaryStructure" })
    +    public static class RnaViewer
    +    {
    +
    +      @XmlElement(namespace = "www.jalview.org", required = true)
    +      protected List secondaryStructure;
    +
    +      @XmlAttribute(name = "title")
    +      protected String title;
    +
    +      /**
    +       * An id unique to the RNA viewer panel
    +       * 
    +       */
    +      @XmlAttribute(name = "viewId")
    +      protected String viewId;
    +
    +      /**
    +       * horizontal position of split pane divider
    +       * 
    +       */
    +      @XmlAttribute(name = "dividerLocation")
    +      protected Integer dividerLocation;
    +
    +      /**
    +       * Index of the selected structure in the viewer panel
    +       * 
    +       */
    +      @XmlAttribute(name = "selectedRna")
    +      protected Integer selectedRna;
    +
    +      @XmlAttribute(name = "width")
    +      protected Integer width;
    +
    +      @XmlAttribute(name = "height")
    +      protected Integer height;
    +
    +      @XmlAttribute(name = "xpos")
    +      protected Integer xpos;
    +
    +      @XmlAttribute(name = "ypos")
    +      protected Integer ypos;
    +
    +      /**
    +       * Gets the value of the secondaryStructure property.
    +       * 
    +       * 

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the secondaryStructure property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +       * getSecondaryStructure().add(newItem);
    +       * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.JSeq.RnaViewer.SecondaryStructure } + *

    + * + * + * @return The value of the secondaryStructure property. + */ + public List getSecondaryStructure() + { + if (secondaryStructure == null) + { + secondaryStructure = new ArrayList(); + } + return this.secondaryStructure; + } + + /** + * Gets the value of the title property. + * + * @return possible object is {@link String } + * + */ + public String getTitle() + { + return title; + } + + /** + * Sets the value of the title property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setTitle(String value) + { + this.title = value; + } + + /** + * An id unique to the RNA viewer panel + * + * @return possible object is {@link String } + * + */ + public String getViewId() + { + return viewId; + } + + /** + * Sets the value of the viewId property. + * + * @param value + * allowed object is {@link String } + * + * @see #getViewId() + */ + public void setViewId(String value) + { + this.viewId = value; + } + + /** + * horizontal position of split pane divider + * + * @return possible object is {@link Integer } + * + */ + public Integer getDividerLocation() + { + return dividerLocation; + } + + /** + * Sets the value of the dividerLocation property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getDividerLocation() + */ + public void setDividerLocation(Integer value) + { + this.dividerLocation = value; + } + + /** + * Index of the selected structure in the viewer panel + * + * @return possible object is {@link Integer } + * + */ + public Integer getSelectedRna() + { + return selectedRna; + } + + /** + * Sets the value of the selectedRna property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getSelectedRna() + */ + public void setSelectedRna(Integer value) + { + this.selectedRna = value; + } + + /** + * Gets the value of the width property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getWidth() + { + return width; + } + + /** + * Sets the value of the width property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setWidth(Integer value) + { + this.width = value; + } + + /** + * Gets the value of the height property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getHeight() + { + return height; + } + + /** + * Sets the value of the height property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setHeight(Integer value) + { + this.height = value; + } + + /** + * Gets the value of the xpos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXpos() + { + return xpos; + } + + /** + * Sets the value of the xpos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setXpos(Integer value) + { + this.xpos = value; + } + + /** + * Gets the value of the ypos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getYpos() + { + return ypos; + } + + /** + * Sets the value of the ypos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYpos(Integer value) + { + this.ypos = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +       * <complexType>
    +       *   <complexContent>
    +       *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +       *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +       *       <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +       *       <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +       *       <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
    +       *     </restriction>
    +       *   </complexContent>
    +       * </complexType>
    +       * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class SecondaryStructure + { + @XmlAttribute(name = "title") protected String title; - @XmlAttribute(name = "scoreModelName") - protected String scoreModelName; - @XmlAttribute(name = "xDim") - protected Integer xDim; - @XmlAttribute(name = "yDim") - protected Integer yDim; - @XmlAttribute(name = "zDim") - protected Integer zDim; - @XmlAttribute(name = "bgColour") - protected Integer bgColour; - @XmlAttribute(name = "scaleFactor") - protected Float scaleFactor; - @XmlAttribute(name = "showLabels") - protected Boolean showLabels; - @XmlAttribute(name = "linkToAllViews") - protected Boolean linkToAllViews; - @XmlAttribute(name = "width") - protected Integer width; - @XmlAttribute(name = "height") - protected Integer height; - @XmlAttribute(name = "xpos") - protected Integer xpos; - @XmlAttribute(name = "ypos") - protected Integer ypos; - @XmlAttribute(name = "includeGaps") - protected Boolean includeGaps; - @XmlAttribute(name = "matchGaps") - protected Boolean matchGaps; - @XmlAttribute(name = "includeGappedColumns") - protected Boolean includeGappedColumns; - @XmlAttribute(name = "denominateByShortestLength") - protected Boolean denominateByShortestLength; - - /** - * Gets the value of the sequencePoint property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the sequencePoint property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getSequencePoint().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.PcaViewer.SequencePoint } - *

    - * - * - * @return - * The value of the sequencePoint property. - */ - public List getSequencePoint() { - if (sequencePoint == null) { - sequencePoint = new ArrayList(); - } - return this.sequencePoint; - } - - /** - * endpoints of X, Y and Z axes in that order - * - * Gets the value of the axis property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the axis property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getAxis().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.PcaViewer.Axis } - *

    - * - * - * @return - * The value of the axis property. - */ - public List getAxis() { - if (axis == null) { - axis = new ArrayList(); - } - return this.axis; - } - - /** - * Gets the value of the seqPointMin property. - * - * @return - * possible object is - * {@link JalviewModel.PcaViewer.SeqPointMin } - * - */ - public JalviewModel.PcaViewer.SeqPointMin getSeqPointMin() { - return seqPointMin; - } - - /** - * Sets the value of the seqPointMin property. - * - * @param value - * allowed object is - * {@link JalviewModel.PcaViewer.SeqPointMin } - * - */ - public void setSeqPointMin(JalviewModel.PcaViewer.SeqPointMin value) { - this.seqPointMin = value; - } - - /** - * Gets the value of the seqPointMax property. - * - * @return - * possible object is - * {@link JalviewModel.PcaViewer.SeqPointMax } - * - */ - public JalviewModel.PcaViewer.SeqPointMax getSeqPointMax() { - return seqPointMax; - } /** - * Sets the value of the seqPointMax property. + * id attribute of Annotation in vamsasModel for the secondary structure + * annotation shown in the viewer * - * @param value - * allowed object is - * {@link JalviewModel.PcaViewer.SeqPointMax } - * */ - public void setSeqPointMax(JalviewModel.PcaViewer.SeqPointMax value) { - this.seqPointMax = value; - } + @XmlAttribute(name = "annotationId", required = true) + protected String annotationId; /** - * Gets the value of the pcaData property. + * if true the RNA structure is shown with gaps, if false without * - * @return - * possible object is - * {@link PcaDataType } - * */ - public PcaDataType getPcaData() { - return pcaData; - } + @XmlAttribute(name = "gapped") + protected Boolean gapped; /** - * Sets the value of the pcaData property. + * name of the project jar entry that holds the VARNA viewer state for + * the structure * - * @param value - * allowed object is - * {@link PcaDataType } - * */ - public void setPcaData(PcaDataType value) { - this.pcaData = value; - } + @XmlAttribute(name = "viewerState") + protected String viewerState; /** * Gets the value of the title property. * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } - - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } - - /** - * Gets the value of the scoreModelName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getScoreModelName() { - return scoreModelName; - } - - /** - * Sets the value of the scoreModelName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setScoreModelName(String value) { - this.scoreModelName = value; - } - - /** - * Gets the value of the xDim property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXDim() { - return xDim; - } - - /** - * Sets the value of the xDim property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setXDim(Integer value) { - this.xDim = value; - } - - /** - * Gets the value of the yDim property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYDim() { - return yDim; - } - - /** - * Sets the value of the yDim property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYDim(Integer value) { - this.yDim = value; - } - - /** - * Gets the value of the zDim property. + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Integer } - * */ - public Integer getZDim() { - return zDim; + public String getTitle() + { + return title; } /** - * Sets the value of the zDim property. + * Sets the value of the title property. * * @param value - * allowed object is - * {@link Integer } - * - */ - public void setZDim(Integer value) { - this.zDim = value; - } - - /** - * Gets the value of the bgColour property. + * allowed object is {@link String } * - * @return - * possible object is - * {@link Integer } - * */ - public Integer getBgColour() { - return bgColour; + public void setTitle(String value) + { + this.title = value; } /** - * Sets the value of the bgColour property. + * id attribute of Annotation in vamsasModel for the secondary structure + * annotation shown in the viewer * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setBgColour(Integer value) { - this.bgColour = value; - } - - /** - * Gets the value of the scaleFactor property. + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Float } - * */ - public Float getScaleFactor() { - return scaleFactor; + public String getAnnotationId() + { + return annotationId; } /** - * Sets the value of the scaleFactor property. + * Sets the value of the annotationId property. * * @param value - * allowed object is - * {@link Float } - * - */ - public void setScaleFactor(Float value) { - this.scaleFactor = value; - } - - /** - * Gets the value of the showLabels property. + * allowed object is {@link String } * - * @return - * possible object is - * {@link Boolean } - * + * @see #getAnnotationId() */ - public Boolean isShowLabels() { - return showLabels; + public void setAnnotationId(String value) + { + this.annotationId = value; } /** - * Sets the value of the showLabels property. + * if true the RNA structure is shown with gaps, if false without * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowLabels(Boolean value) { - this.showLabels = value; - } - - /** - * Gets the value of the linkToAllViews property. + * @return possible object is {@link Boolean } * - * @return - * possible object is - * {@link Boolean } - * */ - public Boolean isLinkToAllViews() { - return linkToAllViews; + public Boolean isGapped() + { + return gapped; } /** - * Sets the value of the linkToAllViews property. + * Sets the value of the gapped property. * * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setLinkToAllViews(Boolean value) { - this.linkToAllViews = value; - } - - /** - * Gets the value of the width property. + * allowed object is {@link Boolean } * - * @return - * possible object is - * {@link Integer } - * + * @see #isGapped() */ - public Integer getWidth() { - return width; + public void setGapped(Boolean value) + { + this.gapped = value; } /** - * Sets the value of the width property. + * name of the project jar entry that holds the VARNA viewer state for + * the structure * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setWidth(Integer value) { - this.width = value; - } - - /** - * Gets the value of the height property. + * @return possible object is {@link String } * - * @return - * possible object is - * {@link Integer } - * */ - public Integer getHeight() { - return height; + public String getViewerState() + { + return viewerState; } /** - * Sets the value of the height property. + * Sets the value of the viewerState property. * * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHeight(Integer value) { - this.height = value; - } - - /** - * Gets the value of the xpos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXpos() { - return xpos; - } - - /** - * Sets the value of the xpos property. + * allowed object is {@link String } * - * @param value - * allowed object is - * {@link Integer } - * + * @see #getViewerState() */ - public void setXpos(Integer value) { - this.xpos = value; + public void setViewerState(String value) + { + this.viewerState = value; } - /** - * Gets the value of the ypos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYpos() { - return ypos; - } + } - /** - * Sets the value of the ypos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYpos(Integer value) { - this.ypos = value; - } + } - /** - * Gets the value of the includeGaps property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isIncludeGaps() { - return includeGaps; - } + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="sequencePoint" maxOccurs="unbounded">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attGroup ref="{www.jalview.org}position"/>
    +   *                 <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="axis" maxOccurs="3" minOccurs="3">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attGroup ref="{www.jalview.org}position"/>
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="seqPointMin">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attGroup ref="{www.jalview.org}position"/>
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="seqPointMax">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attGroup ref="{www.jalview.org}position"/>
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="pcaData" type="{www.jalview.org}PcaDataType"/>
    +   *       </sequence>
    +   *       <attGroup ref="{www.jalview.org}swingwindow"/>
    +   *       <attGroup ref="{www.jalview.org}SimilarityParams"/>
    +   *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="scoreModelName" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="xDim" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="yDim" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="zDim" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="scaleFactor" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *       <attribute name="showLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType( + name = "", + propOrder = + { "sequencePoint", "axis", "seqPointMin", "seqPointMax", "pcaData" }) + public static class PcaViewer + { + + @XmlElement(namespace = "www.jalview.org", required = true) + protected List sequencePoint; - /** - * Sets the value of the includeGaps property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIncludeGaps(Boolean value) { - this.includeGaps = value; - } + /** + * endpoints of X, Y and Z axes in that order + * + */ + @XmlElement(namespace = "www.jalview.org", required = true) + protected List axis; - /** - * Gets the value of the matchGaps property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isMatchGaps() { - return matchGaps; - } + @XmlElement(namespace = "www.jalview.org", required = true) + protected JalviewModel.PcaViewer.SeqPointMin seqPointMin; - /** - * Sets the value of the matchGaps property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setMatchGaps(Boolean value) { - this.matchGaps = value; - } + @XmlElement(namespace = "www.jalview.org", required = true) + protected JalviewModel.PcaViewer.SeqPointMax seqPointMax; - /** - * Gets the value of the includeGappedColumns property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isIncludeGappedColumns() { - return includeGappedColumns; - } + @XmlElement(namespace = "www.jalview.org", required = true) + protected PcaDataType pcaData; - /** - * Sets the value of the includeGappedColumns property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIncludeGappedColumns(Boolean value) { - this.includeGappedColumns = value; - } + @XmlAttribute(name = "title") + protected String title; - /** - * Gets the value of the denominateByShortestLength property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isDenominateByShortestLength() { - return denominateByShortestLength; - } + @XmlAttribute(name = "scoreModelName") + protected String scoreModelName; - /** - * Sets the value of the denominateByShortestLength property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setDenominateByShortestLength(Boolean value) { - this.denominateByShortestLength = value; - } + @XmlAttribute(name = "xDim") + protected Integer xDim; + @XmlAttribute(name = "yDim") + protected Integer yDim; - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attGroup ref="{www.jalview.org}position"/>
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class Axis { - - @XmlAttribute(name = "xPos") - protected Float xPos; - @XmlAttribute(name = "yPos") - protected Float yPos; - @XmlAttribute(name = "zPos") - protected Float zPos; - - /** - * Gets the value of the xPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getXPos() { - return xPos; - } - - /** - * Sets the value of the xPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setXPos(Float value) { - this.xPos = value; - } - - /** - * Gets the value of the yPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getYPos() { - return yPos; - } - - /** - * Sets the value of the yPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setYPos(Float value) { - this.yPos = value; - } - - /** - * Gets the value of the zPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getZPos() { - return zPos; - } - - /** - * Sets the value of the zPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setZPos(Float value) { - this.zPos = value; - } + @XmlAttribute(name = "zDim") + protected Integer zDim; - } + @XmlAttribute(name = "bgColour") + protected Integer bgColour; + @XmlAttribute(name = "scaleFactor") + protected Float scaleFactor; - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attGroup ref="{www.jalview.org}position"/>
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class SeqPointMax { - - @XmlAttribute(name = "xPos") - protected Float xPos; - @XmlAttribute(name = "yPos") - protected Float yPos; - @XmlAttribute(name = "zPos") - protected Float zPos; - - /** - * Gets the value of the xPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getXPos() { - return xPos; - } - - /** - * Sets the value of the xPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setXPos(Float value) { - this.xPos = value; - } - - /** - * Gets the value of the yPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getYPos() { - return yPos; - } - - /** - * Sets the value of the yPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setYPos(Float value) { - this.yPos = value; - } - - /** - * Gets the value of the zPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getZPos() { - return zPos; - } - - /** - * Sets the value of the zPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setZPos(Float value) { - this.zPos = value; - } + @XmlAttribute(name = "showLabels") + protected Boolean showLabels; - } + @XmlAttribute(name = "linkToAllViews") + protected Boolean linkToAllViews; + @XmlAttribute(name = "width") + protected Integer width; - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attGroup ref="{www.jalview.org}position"/>
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class SeqPointMin { - - @XmlAttribute(name = "xPos") - protected Float xPos; - @XmlAttribute(name = "yPos") - protected Float yPos; - @XmlAttribute(name = "zPos") - protected Float zPos; - - /** - * Gets the value of the xPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getXPos() { - return xPos; - } - - /** - * Sets the value of the xPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setXPos(Float value) { - this.xPos = value; - } - - /** - * Gets the value of the yPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getYPos() { - return yPos; - } - - /** - * Sets the value of the yPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setYPos(Float value) { - this.yPos = value; - } - - /** - * Gets the value of the zPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getZPos() { - return zPos; - } - - /** - * Sets the value of the zPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setZPos(Float value) { - this.zPos = value; - } + @XmlAttribute(name = "height") + protected Integer height; - } + @XmlAttribute(name = "xpos") + protected Integer xpos; + @XmlAttribute(name = "ypos") + protected Integer ypos; - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attGroup ref="{www.jalview.org}position"/>
    -         *       <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class SequencePoint { - - @XmlAttribute(name = "sequenceRef") - protected String sequenceRef; - @XmlAttribute(name = "xPos") - protected Float xPos; - @XmlAttribute(name = "yPos") - protected Float yPos; - @XmlAttribute(name = "zPos") - protected Float zPos; - - /** - * Gets the value of the sequenceRef property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSequenceRef() { - return sequenceRef; - } - - /** - * Sets the value of the sequenceRef property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSequenceRef(String value) { - this.sequenceRef = value; - } - - /** - * Gets the value of the xPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getXPos() { - return xPos; - } - - /** - * Sets the value of the xPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setXPos(Float value) { - this.xPos = value; - } - - /** - * Gets the value of the yPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getYPos() { - return yPos; - } - - /** - * Sets the value of the yPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setYPos(Float value) { - this.yPos = value; - } - - /** - * Gets the value of the zPos property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getZPos() { - return zPos; - } - - /** - * Sets the value of the zPos property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setZPos(Float value) { - this.zPos = value; - } + @XmlAttribute(name = "includeGaps") + protected Boolean includeGaps; - } + @XmlAttribute(name = "matchGaps") + protected Boolean matchGaps; - } + @XmlAttribute(name = "includeGappedColumns") + protected Boolean includeGappedColumns; + @XmlAttribute(name = "denominateByShortestLength") + protected Boolean denominateByShortestLength; /** - *

    Java class for anonymous complex type

    . + * Gets the value of the sequencePoint property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the sequencePoint property. + *

    * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence minOccurs="0">
    -     *         <element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
    -     *         <element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
    -     *       </sequence>
    -     *       <attGroup ref="{www.jalview.org}swingwindow"/>
    -     *       <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *       <attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="columnWise" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="columnReference" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
    -     *       <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    +     * 

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getSequencePoint().add(newItem);
          * 
    * * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.PcaViewer.SequencePoint } + *

    + * + * + * @return The value of the sequencePoint property. */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "title", - "newick" - }) - public static class Tree { + public List getSequencePoint() + { + if (sequencePoint == null) + { + sequencePoint = new ArrayList(); + } + return this.sequencePoint; + } - @XmlElement(namespace = "www.jalview.org") - protected String title; - @XmlElement(namespace = "www.jalview.org") - protected String newick; - @XmlAttribute(name = "fontName") - protected String fontName; - @XmlAttribute(name = "fontSize") - protected Integer fontSize; - @XmlAttribute(name = "fontStyle") - protected Integer fontStyle; - @XmlAttribute(name = "threshold") - protected Float threshold; - @XmlAttribute(name = "showBootstrap") - protected Boolean showBootstrap; - @XmlAttribute(name = "showDistances") - protected Boolean showDistances; - @XmlAttribute(name = "markUnlinked") - protected Boolean markUnlinked; - @XmlAttribute(name = "fitToWindow") - protected Boolean fitToWindow; - @XmlAttribute(name = "currentTree") - protected Boolean currentTree; - /** - * Set for trees associated with columns of an alignment, sequence or annotation row - * - */ - @XmlAttribute(name = "columnWise") - protected Boolean columnWise; - /** - * Refers to annotation row the tree is provided by - * - */ - @XmlAttribute(name = "columnReference") - protected String columnReference; - /** - * Tree ID added for binding tree - * visualization - * settings to vamsas - * document trees in jalview 2.4.1 - * - */ - @XmlAttribute(name = "id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - @XmlAttribute(name = "linkToAllViews") - protected Boolean linkToAllViews; - @XmlAttribute(name = "width") - protected Integer width; - @XmlAttribute(name = "height") - protected Integer height; - @XmlAttribute(name = "xpos") - protected Integer xpos; - @XmlAttribute(name = "ypos") - protected Integer ypos; + /** + * endpoints of X, Y and Z axes in that order + * + * Gets the value of the axis property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the axis property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getAxis().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.PcaViewer.Axis } + *

    + * + * + * @return The value of the axis property. + */ + public List getAxis() + { + if (axis == null) + { + axis = new ArrayList(); + } + return this.axis; + } - /** - * Gets the value of the title property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } + /** + * Gets the value of the seqPointMin property. + * + * @return possible object is {@link JalviewModel.PcaViewer.SeqPointMin } + * + */ + public JalviewModel.PcaViewer.SeqPointMin getSeqPointMin() + { + return seqPointMin; + } - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } + /** + * Sets the value of the seqPointMin property. + * + * @param value + * allowed object is {@link JalviewModel.PcaViewer.SeqPointMin } + * + */ + public void setSeqPointMin(JalviewModel.PcaViewer.SeqPointMin value) + { + this.seqPointMin = value; + } - /** - * Gets the value of the newick property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getNewick() { - return newick; - } + /** + * Gets the value of the seqPointMax property. + * + * @return possible object is {@link JalviewModel.PcaViewer.SeqPointMax } + * + */ + public JalviewModel.PcaViewer.SeqPointMax getSeqPointMax() + { + return seqPointMax; + } - /** - * Sets the value of the newick property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setNewick(String value) { - this.newick = value; - } + /** + * Sets the value of the seqPointMax property. + * + * @param value + * allowed object is {@link JalviewModel.PcaViewer.SeqPointMax } + * + */ + public void setSeqPointMax(JalviewModel.PcaViewer.SeqPointMax value) + { + this.seqPointMax = value; + } - /** - * Gets the value of the fontName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFontName() { - return fontName; - } + /** + * Gets the value of the pcaData property. + * + * @return possible object is {@link PcaDataType } + * + */ + public PcaDataType getPcaData() + { + return pcaData; + } - /** - * Sets the value of the fontName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFontName(String value) { - this.fontName = value; - } + /** + * Sets the value of the pcaData property. + * + * @param value + * allowed object is {@link PcaDataType } + * + */ + public void setPcaData(PcaDataType value) + { + this.pcaData = value; + } - /** - * Gets the value of the fontSize property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getFontSize() { - return fontSize; - } + /** + * Gets the value of the title property. + * + * @return possible object is {@link String } + * + */ + public String getTitle() + { + return title; + } - /** - * Sets the value of the fontSize property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setFontSize(Integer value) { - this.fontSize = value; - } + /** + * Sets the value of the title property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setTitle(String value) + { + this.title = value; + } - /** - * Gets the value of the fontStyle property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getFontStyle() { - return fontStyle; - } + /** + * Gets the value of the scoreModelName property. + * + * @return possible object is {@link String } + * + */ + public String getScoreModelName() + { + return scoreModelName; + } - /** - * Sets the value of the fontStyle property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setFontStyle(Integer value) { - this.fontStyle = value; - } + /** + * Sets the value of the scoreModelName property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setScoreModelName(String value) + { + this.scoreModelName = value; + } - /** - * Gets the value of the threshold property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getThreshold() { - return threshold; - } + /** + * Gets the value of the xDim property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXDim() + { + return xDim; + } - /** - * Sets the value of the threshold property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setThreshold(Float value) { - this.threshold = value; - } + /** + * Sets the value of the xDim property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setXDim(Integer value) + { + this.xDim = value; + } - /** - * Gets the value of the showBootstrap property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowBootstrap() { - return showBootstrap; - } + /** + * Gets the value of the yDim property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getYDim() + { + return yDim; + } - /** - * Sets the value of the showBootstrap property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowBootstrap(Boolean value) { - this.showBootstrap = value; - } + /** + * Sets the value of the yDim property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYDim(Integer value) + { + this.yDim = value; + } - /** - * Gets the value of the showDistances property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowDistances() { - return showDistances; - } + /** + * Gets the value of the zDim property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getZDim() + { + return zDim; + } - /** - * Sets the value of the showDistances property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowDistances(Boolean value) { - this.showDistances = value; - } + /** + * Sets the value of the zDim property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setZDim(Integer value) + { + this.zDim = value; + } - /** - * Gets the value of the markUnlinked property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isMarkUnlinked() { - return markUnlinked; - } + /** + * Gets the value of the bgColour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getBgColour() + { + return bgColour; + } - /** - * Sets the value of the markUnlinked property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setMarkUnlinked(Boolean value) { - this.markUnlinked = value; - } + /** + * Sets the value of the bgColour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setBgColour(Integer value) + { + this.bgColour = value; + } - /** - * Gets the value of the fitToWindow property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isFitToWindow() { - return fitToWindow; - } + /** + * Gets the value of the scaleFactor property. + * + * @return possible object is {@link Float } + * + */ + public Float getScaleFactor() + { + return scaleFactor; + } - /** - * Sets the value of the fitToWindow property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setFitToWindow(Boolean value) { - this.fitToWindow = value; - } + /** + * Sets the value of the scaleFactor property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setScaleFactor(Float value) + { + this.scaleFactor = value; + } - /** - * Gets the value of the currentTree property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isCurrentTree() { - return currentTree; - } + /** + * Gets the value of the showLabels property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowLabels() + { + return showLabels; + } - /** - * Sets the value of the currentTree property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCurrentTree(Boolean value) { - this.currentTree = value; - } + /** + * Sets the value of the showLabels property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowLabels(Boolean value) + { + this.showLabels = value; + } - /** - * Set for trees associated with columns of an alignment, sequence or annotation row - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isColumnWise() { - if (columnWise == null) { - return false; - } else { - return columnWise; - } - } + /** + * Gets the value of the linkToAllViews property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isLinkToAllViews() + { + return linkToAllViews; + } - /** - * Sets the value of the columnWise property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isColumnWise() - */ - public void setColumnWise(Boolean value) { - this.columnWise = value; - } + /** + * Sets the value of the linkToAllViews property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setLinkToAllViews(Boolean value) + { + this.linkToAllViews = value; + } - /** - * Refers to annotation row the tree is provided by - * - * @return - * possible object is - * {@link String } - * - */ - public String getColumnReference() { - return columnReference; - } + /** + * Gets the value of the width property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getWidth() + { + return width; + } - /** - * Sets the value of the columnReference property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getColumnReference() - */ - public void setColumnReference(String value) { - this.columnReference = value; - } + /** + * Sets the value of the width property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setWidth(Integer value) + { + this.width = value; + } - /** - * Tree ID added for binding tree - * visualization - * settings to vamsas - * document trees in jalview 2.4.1 - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } + /** + * Gets the value of the height property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getHeight() + { + return height; + } - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getId() - */ - public void setId(String value) { - this.id = value; - } + /** + * Sets the value of the height property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setHeight(Integer value) + { + this.height = value; + } - /** - * Gets the value of the linkToAllViews property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isLinkToAllViews() { - if (linkToAllViews == null) { - return false; - } else { - return linkToAllViews; - } - } + /** + * Gets the value of the xpos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXpos() + { + return xpos; + } - /** - * Sets the value of the linkToAllViews property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setLinkToAllViews(Boolean value) { - this.linkToAllViews = value; - } + /** + * Sets the value of the xpos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setXpos(Integer value) + { + this.xpos = value; + } - /** - * Gets the value of the width property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getWidth() { - return width; - } + /** + * Gets the value of the ypos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getYpos() + { + return ypos; + } - /** - * Sets the value of the width property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setWidth(Integer value) { - this.width = value; - } + /** + * Sets the value of the ypos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYpos(Integer value) + { + this.ypos = value; + } - /** - * Gets the value of the height property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getHeight() { - return height; - } + /** + * Gets the value of the includeGaps property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isIncludeGaps() + { + return includeGaps; + } - /** - * Sets the value of the height property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHeight(Integer value) { - this.height = value; - } + /** + * Sets the value of the includeGaps property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setIncludeGaps(Boolean value) + { + this.includeGaps = value; + } - /** - * Gets the value of the xpos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXpos() { - return xpos; - } + /** + * Gets the value of the matchGaps property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isMatchGaps() + { + return matchGaps; + } - /** - * Sets the value of the xpos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setXpos(Integer value) { - this.xpos = value; - } + /** + * Sets the value of the matchGaps property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setMatchGaps(Boolean value) + { + this.matchGaps = value; + } - /** - * Gets the value of the ypos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYpos() { - return ypos; - } + /** + * Gets the value of the includeGappedColumns property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isIncludeGappedColumns() + { + return includeGappedColumns; + } - /** - * Sets the value of the ypos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYpos(Integer value) { - this.ypos = value; - } + /** + * Sets the value of the includeGappedColumns property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setIncludeGappedColumns(Boolean value) + { + this.includeGappedColumns = value; + } + /** + * Gets the value of the denominateByShortestLength property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isDenominateByShortestLength() + { + return denominateByShortestLength; } + /** + * Sets the value of the denominateByShortestLength property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setDenominateByShortestLength(Boolean value) + { + this.denominateByShortestLength = value; + } /** - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    * *
          * <complexType>
          *   <complexContent>
          *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="UserColourScheme" type="{www.jalview.org/colours}JalviewUserColours"/>
    -     *       </sequence>
    -     *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *       <attGroup ref="{www.jalview.org}position"/>
          *     </restriction>
          *   </complexContent>
          * </complexType>
    @@ -5416,158 +4257,214 @@ public class JalviewModel {
          * 
          */
         @XmlAccessorType(XmlAccessType.FIELD)
    -    @XmlType(name = "", propOrder = {
    -        "userColourScheme"
    -    })
    -    public static class UserColours {
    -
    -        @XmlElement(name = "UserColourScheme", namespace = "www.jalview.org", required = true)
    -        protected JalviewUserColours userColourScheme;
    -        @XmlAttribute(name = "id")
    -        protected String id;
    -
    -        /**
    -         * Gets the value of the userColourScheme property.
    -         * 
    -         * @return
    -         *     possible object is
    -         *     {@link JalviewUserColours }
    -         *     
    -         */
    -        public JalviewUserColours getUserColourScheme() {
    -            return userColourScheme;
    -        }
    +    @XmlType(name = "")
    +    public static class Axis
    +    {
    +
    +      @XmlAttribute(name = "xPos")
    +      protected Float xPos;
    +
    +      @XmlAttribute(name = "yPos")
    +      protected Float yPos;
    +
    +      @XmlAttribute(name = "zPos")
    +      protected Float zPos;
    +
    +      /**
    +       * Gets the value of the xPos property.
    +       * 
    +       * @return possible object is {@link Float }
    +       * 
    +       */
    +      public Float getXPos()
    +      {
    +        return xPos;
    +      }
    +
    +      /**
    +       * Sets the value of the xPos property.
    +       * 
    +       * @param value
    +       *          allowed object is {@link Float }
    +       * 
    +       */
    +      public void setXPos(Float value)
    +      {
    +        this.xPos = value;
    +      }
    +
    +      /**
    +       * Gets the value of the yPos property.
    +       * 
    +       * @return possible object is {@link Float }
    +       * 
    +       */
    +      public Float getYPos()
    +      {
    +        return yPos;
    +      }
    +
    +      /**
    +       * Sets the value of the yPos property.
    +       * 
    +       * @param value
    +       *          allowed object is {@link Float }
    +       * 
    +       */
    +      public void setYPos(Float value)
    +      {
    +        this.yPos = value;
    +      }
    +
    +      /**
    +       * Gets the value of the zPos property.
    +       * 
    +       * @return possible object is {@link Float }
    +       * 
    +       */
    +      public Float getZPos()
    +      {
    +        return zPos;
    +      }
    +
    +      /**
    +       * Sets the value of the zPos property.
    +       * 
    +       * @param value
    +       *          allowed object is {@link Float }
    +       * 
    +       */
    +      public void setZPos(Float value)
    +      {
    +        this.zPos = value;
    +      }
     
    -        /**
    -         * Sets the value of the userColourScheme property.
    -         * 
    -         * @param value
    -         *     allowed object is
    -         *     {@link JalviewUserColours }
    -         *     
    -         */
    -        public void setUserColourScheme(JalviewUserColours value) {
    -            this.userColourScheme = value;
    -        }
    -
    -        /**
    -         * Gets the value of the id property.
    -         * 
    -         * @return
    -         *     possible object is
    -         *     {@link String }
    -         *     
    -         */
    -        public String getId() {
    -            return id;
    -        }
    +    }
     
    -        /**
    -         * Sets the value of the id property.
    -         * 
    -         * @param value
    -         *     allowed object is
    -         *     {@link String }
    -         *     
    -         */
    -        public void setId(String value) {
    -            this.id = value;
    -        }
    +    /**
    +     * 

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +     *       <attGroup ref="{www.jalview.org}position"/>
    +     *     </restriction>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class SeqPointMax + { + + @XmlAttribute(name = "xPos") + protected Float xPos; + + @XmlAttribute(name = "yPos") + protected Float yPos; + + @XmlAttribute(name = "zPos") + protected Float zPos; + + /** + * Gets the value of the xPos property. + * + * @return possible object is {@link Float } + * + */ + public Float getXPos() + { + return xPos; + } + + /** + * Sets the value of the xPos property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setXPos(Float value) + { + this.xPos = value; + } + + /** + * Gets the value of the yPos property. + * + * @return possible object is {@link Float } + * + */ + public Float getYPos() + { + return yPos; + } + + /** + * Sets the value of the yPos property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setYPos(Float value) + { + this.yPos = value; + } + + /** + * Gets the value of the zPos property. + * + * @return possible object is {@link Float } + * + */ + public Float getZPos() + { + return zPos; + } + + /** + * Sets the value of the zPos property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setZPos(Float value) + { + this.zPos = value; + } } - /** - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    * *
          * <complexType>
          *   <complexContent>
          *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="AnnotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
    -     *         <element name="hiddenColumns" maxOccurs="unbounded" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="calcIdParam" maxOccurs="unbounded" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
    -     *                 <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *                 <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *                 <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *               </extension>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="overview" minOccurs="0">
    -     *           <complexType>
    -     *             <complexContent>
    -     *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *                 <attGroup ref="{www.jalview.org}swingwindow"/>
    -     *                 <attribute name="showHidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *                 <attribute name="residueColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="gapColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="hiddenColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *                 <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *               </restriction>
    -     *             </complexContent>
    -     *           </complexType>
    -     *         </element>
    -     *         <element name="SecStrProvider" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    -     *       </sequence>
    -     *       <attGroup ref="{www.jalview.org}swingwindow"/>
    -     *       <attGroup ref="{www.jalview.org}conservationShading"/>
    -     *       <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="showFullId" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="rightAlignIds" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showColourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="showBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="wrapAlignment" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="renderGaps" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showSequenceFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showNPfeatureTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showDbRefTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="followHighlight" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -     *       <attribute name="followSelection" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -     *       <attribute name="showAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="showStructureProviders" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="centreColumnLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="showGroupConservation" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="showGroupConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="showGroupSecStrConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="startRes" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="startSeq" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="charWidth" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="charHeight" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="idWidth" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="idWidthManuallyAdjusted" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="scaleProteinAsCdna" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    -     *       <attribute name="viewName" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="sequenceSetId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="gatheredViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
    -     *       <attribute name="complementId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="showComplementFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="showComplementFeaturesOnTop" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +     *       <attGroup ref="{www.jalview.org}position"/>
          *     </restriction>
          *   </complexContent>
          * </complexType>
    @@ -5576,2181 +4473,3242 @@ public class JalviewModel {
          * 
          */
         @XmlAccessorType(XmlAccessType.FIELD)
    -    @XmlType(name = "", propOrder = {
    -        "annotationColours",
    -        "hiddenColumns",
    -        "calcIdParam",
    -        "overview",
    -        "secStrProvider"
    -    })
    -    public static class Viewport {
    -
    -        @XmlElement(name = "AnnotationColours", namespace = "www.jalview.org")
    -        protected AnnotationColourScheme annotationColours;
    -        @XmlElement(namespace = "www.jalview.org")
    -        protected List hiddenColumns;
    -        @XmlElement(namespace = "www.jalview.org")
    -        protected List calcIdParam;
    -        @XmlElement(namespace = "www.jalview.org")
    -        protected JalviewModel.Viewport.Overview overview;
    -        @XmlElement(name = "SecStrProvider", namespace = "www.jalview.org")
    -        protected List secStrProvider;
    -        @XmlAttribute(name = "bgColour")
    -        protected String bgColour;
    -        @XmlAttribute(name = "title")
    -        protected String title;
    -        @XmlAttribute(name = "showFullId")
    -        protected Boolean showFullId;
    -        @XmlAttribute(name = "rightAlignIds")
    -        protected Boolean rightAlignIds;
    -        @XmlAttribute(name = "showText")
    -        protected Boolean showText;
    -        @XmlAttribute(name = "showColourText")
    -        protected Boolean showColourText;
    -        @XmlAttribute(name = "showUnconserved")
    -        protected Boolean showUnconserved;
    -        @XmlAttribute(name = "showBoxes")
    -        protected Boolean showBoxes;
    -        @XmlAttribute(name = "wrapAlignment")
    -        protected Boolean wrapAlignment;
    -        @XmlAttribute(name = "renderGaps")
    -        protected Boolean renderGaps;
    -        @XmlAttribute(name = "showSequenceFeatures")
    -        protected Boolean showSequenceFeatures;
    -        @XmlAttribute(name = "showNPfeatureTooltip")
    -        protected Boolean showNPfeatureTooltip;
    -        @XmlAttribute(name = "showDbRefTooltip")
    -        protected Boolean showDbRefTooltip;
    -        @XmlAttribute(name = "followHighlight")
    -        protected Boolean followHighlight;
    -        @XmlAttribute(name = "followSelection")
    -        protected Boolean followSelection;
    -        @XmlAttribute(name = "showAnnotation")
    -        protected Boolean showAnnotation;
    -        @XmlAttribute(name = "showStructureProviders")
    -        protected Boolean showStructureProviders;
    -        @XmlAttribute(name = "centreColumnLabels")
    -        protected Boolean centreColumnLabels;
    -        /**
    -         * whether a new group has conservation displayed by default
    -         * 
    -         */
    -        @XmlAttribute(name = "showGroupConservation")
    -        protected Boolean showGroupConservation;
    -        /**
    -         * whether a new group has consensus displayed by default
    -         * 
    -         */
    -        @XmlAttribute(name = "showGroupConsensus")
    -        protected Boolean showGroupConsensus;
    -        /**
    -         * whether a new group has secondary structure consensus displayed by default
    -         * 
    -         */
    -        @XmlAttribute(name = "showGroupSecStrConsensus")
    -        protected Boolean showGroupSecStrConsensus;
    -        @XmlAttribute(name = "startRes")
    -        protected Integer startRes;
    -        @XmlAttribute(name = "startSeq")
    -        protected Integer startSeq;
    -        @XmlAttribute(name = "charWidth")
    -        protected Integer charWidth;
    -        @XmlAttribute(name = "charHeight")
    -        protected Integer charHeight;
    -        @XmlAttribute(name = "fontName")
    -        protected String fontName;
    -        @XmlAttribute(name = "fontSize")
    -        protected Integer fontSize;
    -        @XmlAttribute(name = "fontStyle")
    -        protected Integer fontStyle;
    -        @XmlAttribute(name = "idWidth")
    -        protected Integer idWidth;
    -        @XmlAttribute(name = "idWidthManuallyAdjusted")
    -        protected Boolean idWidthManuallyAdjusted;
    -        @XmlAttribute(name = "scaleProteinAsCdna")
    -        protected Boolean scaleProteinAsCdna;
    -        @XmlAttribute(name = "viewName")
    -        protected String viewName;
    -        @XmlAttribute(name = "sequenceSetId")
    -        protected String sequenceSetId;
    -        @XmlAttribute(name = "gatheredViews")
    -        protected Boolean gatheredViews;
    -        @XmlAttribute(name = "textCol1")
    -        protected Integer textCol1;
    -        @XmlAttribute(name = "textCol2")
    -        protected Integer textCol2;
    -        @XmlAttribute(name = "textColThreshold")
    -        protected Integer textColThreshold;
    -        /**
    -         * unique id used by jalview to
    -         * 									synchronize
    -         * 									between stored and
    -         * 									instantiated views
    -         * 
    -         */
    -        @XmlAttribute(name = "id")
    -        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    -        @XmlID
    -        @XmlSchemaType(name = "ID")
    -        protected String id;
    -        /**
    -         * The viewport id of this viewport's
    -         * 									(cdna/protein) coding complement, if any
    -         * 
    -         */
    -        @XmlAttribute(name = "complementId")
    -        protected String complementId;
    -        @XmlAttribute(name = "showComplementFeatures")
    -        protected Boolean showComplementFeatures;
    -        @XmlAttribute(name = "showComplementFeaturesOnTop")
    -        protected Boolean showComplementFeaturesOnTop;
    -        @XmlAttribute(name = "width")
    -        protected Integer width;
    -        @XmlAttribute(name = "height")
    -        protected Integer height;
    -        @XmlAttribute(name = "xpos")
    -        protected Integer xpos;
    -        @XmlAttribute(name = "ypos")
    -        protected Integer ypos;
    -        @XmlAttribute(name = "conservationSelected")
    -        protected Boolean conservationSelected;
    -        /**
    -         * Conservation shading increment
    -         * 
    -         */
    -        @XmlAttribute(name = "consThreshold")
    -        protected Integer consThreshold;
    -        @XmlAttribute(name = "pidSelected")
    -        protected Boolean pidSelected;
    -        /**
    -         * Percent Identity Threshold
    -         * 
    -         */
    -        @XmlAttribute(name = "pidThreshold")
    -        protected Integer pidThreshold;
    -        /**
    -         * Secondary structure consensus shading - since 2.11.4
    -         * 
    -         */
    -        @XmlAttribute(name = "secstrSelected")
    -        protected Boolean secstrSelected;
    -        /**
    -         * Secondary structure consensus increment
    -         * 
    -         */
    -        @XmlAttribute(name = "secstrThreshold")
    -        protected Integer secstrThreshold;
    -        @XmlAttribute(name = "showConsensusHistogram")
    -        protected Boolean showConsensusHistogram;
    -        @XmlAttribute(name = "showSequenceLogo")
    -        protected Boolean showSequenceLogo;
    -        @XmlAttribute(name = "normaliseSequenceLogo")
    -        protected Boolean normaliseSequenceLogo;
    -        @XmlAttribute(name = "ignoreGapsinConsensus")
    -        protected Boolean ignoreGapsinConsensus;
    +    @XmlType(name = "")
    +    public static class SeqPointMin
    +    {
    +
    +      @XmlAttribute(name = "xPos")
    +      protected Float xPos;
    +
    +      @XmlAttribute(name = "yPos")
    +      protected Float yPos;
    +
    +      @XmlAttribute(name = "zPos")
    +      protected Float zPos;
    +
    +      /**
    +       * Gets the value of the xPos property.
    +       * 
    +       * @return possible object is {@link Float }
    +       * 
    +       */
    +      public Float getXPos()
    +      {
    +        return xPos;
    +      }
    +
    +      /**
    +       * Sets the value of the xPos property.
    +       * 
    +       * @param value
    +       *          allowed object is {@link Float }
    +       * 
    +       */
    +      public void setXPos(Float value)
    +      {
    +        this.xPos = value;
    +      }
    +
    +      /**
    +       * Gets the value of the yPos property.
    +       * 
    +       * @return possible object is {@link Float }
    +       * 
    +       */
    +      public Float getYPos()
    +      {
    +        return yPos;
    +      }
    +
    +      /**
    +       * Sets the value of the yPos property.
    +       * 
    +       * @param value
    +       *          allowed object is {@link Float }
    +       * 
    +       */
    +      public void setYPos(Float value)
    +      {
    +        this.yPos = value;
    +      }
    +
    +      /**
    +       * Gets the value of the zPos property.
    +       * 
    +       * @return possible object is {@link Float }
    +       * 
    +       */
    +      public Float getZPos()
    +      {
    +        return zPos;
    +      }
    +
    +      /**
    +       * Sets the value of the zPos property.
    +       * 
    +       * @param value
    +       *          allowed object is {@link Float }
    +       * 
    +       */
    +      public void setZPos(Float value)
    +      {
    +        this.zPos = value;
    +      }
     
    -        /**
    -         * Gets the value of the annotationColours property.
    -         * 
    -         * @return
    -         *     possible object is
    -         *     {@link AnnotationColourScheme }
    -         *     
    -         */
    -        public AnnotationColourScheme getAnnotationColours() {
    -            return annotationColours;
    -        }
    +    }
     
    -        /**
    -         * Sets the value of the annotationColours property.
    -         * 
    -         * @param value
    -         *     allowed object is
    -         *     {@link AnnotationColourScheme }
    -         *     
    -         */
    -        public void setAnnotationColours(AnnotationColourScheme value) {
    -            this.annotationColours = value;
    -        }
    +    /**
    +     * 

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +     *       <attGroup ref="{www.jalview.org}position"/>
    +     *       <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *     </restriction>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class SequencePoint + { + + @XmlAttribute(name = "sequenceRef") + protected String sequenceRef; + + @XmlAttribute(name = "xPos") + protected Float xPos; + + @XmlAttribute(name = "yPos") + protected Float yPos; + + @XmlAttribute(name = "zPos") + protected Float zPos; + + /** + * Gets the value of the sequenceRef property. + * + * @return possible object is {@link String } + * + */ + public String getSequenceRef() + { + return sequenceRef; + } + + /** + * Sets the value of the sequenceRef property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setSequenceRef(String value) + { + this.sequenceRef = value; + } + + /** + * Gets the value of the xPos property. + * + * @return possible object is {@link Float } + * + */ + public Float getXPos() + { + return xPos; + } + + /** + * Sets the value of the xPos property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setXPos(Float value) + { + this.xPos = value; + } + + /** + * Gets the value of the yPos property. + * + * @return possible object is {@link Float } + * + */ + public Float getYPos() + { + return yPos; + } + + /** + * Sets the value of the yPos property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setYPos(Float value) + { + this.yPos = value; + } + + /** + * Gets the value of the zPos property. + * + * @return possible object is {@link Float } + * + */ + public Float getZPos() + { + return zPos; + } + + /** + * Sets the value of the zPos property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setZPos(Float value) + { + this.zPos = value; + } - /** - * Gets the value of the hiddenColumns property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the hiddenColumns property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getHiddenColumns().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.Viewport.HiddenColumns } - *

    - * - * - * @return - * The value of the hiddenColumns property. - */ - public List getHiddenColumns() { - if (hiddenColumns == null) { - hiddenColumns = new ArrayList(); - } - return this.hiddenColumns; - } + } - /** - * Gets the value of the calcIdParam property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the calcIdParam property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getCalcIdParam().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewModel.Viewport.CalcIdParam } - *

    - * - * - * @return - * The value of the calcIdParam property. - */ - public List getCalcIdParam() { - if (calcIdParam == null) { - calcIdParam = new ArrayList(); - } - return this.calcIdParam; - } + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence minOccurs="0">
    +   *         <element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
    +   *         <element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
    +   *       </sequence>
    +   *       <attGroup ref="{www.jalview.org}swingwindow"/>
    +   *       <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *       <attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="columnWise" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="columnReference" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
    +   *       <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "title", "newick" }) + public static class Tree + { + + @XmlElement(namespace = "www.jalview.org") + protected String title; + + @XmlElement(namespace = "www.jalview.org") + protected String newick; + + @XmlAttribute(name = "fontName") + protected String fontName; + + @XmlAttribute(name = "fontSize") + protected Integer fontSize; + + @XmlAttribute(name = "fontStyle") + protected Integer fontStyle; + + @XmlAttribute(name = "threshold") + protected Float threshold; + + @XmlAttribute(name = "showBootstrap") + protected Boolean showBootstrap; + + @XmlAttribute(name = "showDistances") + protected Boolean showDistances; + + @XmlAttribute(name = "markUnlinked") + protected Boolean markUnlinked; + + @XmlAttribute(name = "fitToWindow") + protected Boolean fitToWindow; + + @XmlAttribute(name = "currentTree") + protected Boolean currentTree; - /** - * Gets the value of the overview property. - * - * @return - * possible object is - * {@link JalviewModel.Viewport.Overview } - * - */ - public JalviewModel.Viewport.Overview getOverview() { - return overview; - } + /** + * Set for trees associated with columns of an alignment, sequence or + * annotation row + * + */ + @XmlAttribute(name = "columnWise") + protected Boolean columnWise; - /** - * Sets the value of the overview property. - * - * @param value - * allowed object is - * {@link JalviewModel.Viewport.Overview } - * - */ - public void setOverview(JalviewModel.Viewport.Overview value) { - this.overview = value; - } + /** + * Refers to annotation row the tree is provided by + * + */ + @XmlAttribute(name = "columnReference") + protected String columnReference; - /** - * Gets the value of the secStrProvider property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the secStrProvider property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getSecStrProvider().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the secStrProvider property. - */ - public List getSecStrProvider() { - if (secStrProvider == null) { - secStrProvider = new ArrayList(); - } - return this.secStrProvider; - } + /** + * Tree ID added for binding tree visualization settings to vamsas document + * trees in jalview 2.4.1 + * + */ + @XmlAttribute(name = "id") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlID + @XmlSchemaType(name = "ID") + protected String id; - /** - * Gets the value of the bgColour property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getBgColour() { - return bgColour; - } + @XmlAttribute(name = "linkToAllViews") + protected Boolean linkToAllViews; - /** - * Sets the value of the bgColour property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setBgColour(String value) { - this.bgColour = value; - } + @XmlAttribute(name = "width") + protected Integer width; - /** - * Gets the value of the title property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } + @XmlAttribute(name = "height") + protected Integer height; - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } + @XmlAttribute(name = "xpos") + protected Integer xpos; - /** - * Gets the value of the showFullId property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowFullId() { - return showFullId; - } + @XmlAttribute(name = "ypos") + protected Integer ypos; - /** - * Sets the value of the showFullId property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowFullId(Boolean value) { - this.showFullId = value; - } + /** + * Gets the value of the title property. + * + * @return possible object is {@link String } + * + */ + public String getTitle() + { + return title; + } - /** - * Gets the value of the rightAlignIds property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isRightAlignIds() { - return rightAlignIds; - } + /** + * Sets the value of the title property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setTitle(String value) + { + this.title = value; + } - /** - * Sets the value of the rightAlignIds property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setRightAlignIds(Boolean value) { - this.rightAlignIds = value; - } + /** + * Gets the value of the newick property. + * + * @return possible object is {@link String } + * + */ + public String getNewick() + { + return newick; + } - /** - * Gets the value of the showText property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowText() { - return showText; - } + /** + * Sets the value of the newick property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setNewick(String value) + { + this.newick = value; + } - /** - * Sets the value of the showText property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowText(Boolean value) { - this.showText = value; - } + /** + * Gets the value of the fontName property. + * + * @return possible object is {@link String } + * + */ + public String getFontName() + { + return fontName; + } - /** - * Gets the value of the showColourText property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowColourText() { - return showColourText; - } + /** + * Sets the value of the fontName property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setFontName(String value) + { + this.fontName = value; + } - /** - * Sets the value of the showColourText property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowColourText(Boolean value) { - this.showColourText = value; - } + /** + * Gets the value of the fontSize property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getFontSize() + { + return fontSize; + } - /** - * Gets the value of the showUnconserved property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowUnconserved() { - if (showUnconserved == null) { - return false; - } else { - return showUnconserved; - } - } + /** + * Sets the value of the fontSize property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setFontSize(Integer value) + { + this.fontSize = value; + } - /** - * Sets the value of the showUnconserved property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowUnconserved(Boolean value) { - this.showUnconserved = value; - } + /** + * Gets the value of the fontStyle property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getFontStyle() + { + return fontStyle; + } - /** - * Gets the value of the showBoxes property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowBoxes() { - return showBoxes; - } + /** + * Sets the value of the fontStyle property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setFontStyle(Integer value) + { + this.fontStyle = value; + } - /** - * Sets the value of the showBoxes property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowBoxes(Boolean value) { - this.showBoxes = value; - } + /** + * Gets the value of the threshold property. + * + * @return possible object is {@link Float } + * + */ + public Float getThreshold() + { + return threshold; + } - /** - * Gets the value of the wrapAlignment property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isWrapAlignment() { - return wrapAlignment; - } + /** + * Sets the value of the threshold property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setThreshold(Float value) + { + this.threshold = value; + } - /** - * Sets the value of the wrapAlignment property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setWrapAlignment(Boolean value) { - this.wrapAlignment = value; - } + /** + * Gets the value of the showBootstrap property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowBootstrap() + { + return showBootstrap; + } - /** - * Gets the value of the renderGaps property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isRenderGaps() { - return renderGaps; - } + /** + * Sets the value of the showBootstrap property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowBootstrap(Boolean value) + { + this.showBootstrap = value; + } - /** - * Sets the value of the renderGaps property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setRenderGaps(Boolean value) { - this.renderGaps = value; - } + /** + * Gets the value of the showDistances property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowDistances() + { + return showDistances; + } - /** - * Gets the value of the showSequenceFeatures property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowSequenceFeatures() { - return showSequenceFeatures; - } + /** + * Sets the value of the showDistances property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowDistances(Boolean value) + { + this.showDistances = value; + } - /** - * Sets the value of the showSequenceFeatures property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowSequenceFeatures(Boolean value) { - this.showSequenceFeatures = value; - } + /** + * Gets the value of the markUnlinked property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isMarkUnlinked() + { + return markUnlinked; + } - /** - * Gets the value of the showNPfeatureTooltip property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowNPfeatureTooltip() { - return showNPfeatureTooltip; - } + /** + * Sets the value of the markUnlinked property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setMarkUnlinked(Boolean value) + { + this.markUnlinked = value; + } + + /** + * Gets the value of the fitToWindow property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isFitToWindow() + { + return fitToWindow; + } + + /** + * Sets the value of the fitToWindow property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setFitToWindow(Boolean value) + { + this.fitToWindow = value; + } + + /** + * Gets the value of the currentTree property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isCurrentTree() + { + return currentTree; + } + + /** + * Sets the value of the currentTree property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setCurrentTree(Boolean value) + { + this.currentTree = value; + } + + /** + * Set for trees associated with columns of an alignment, sequence or + * annotation row + * + * @return possible object is {@link Boolean } + * + */ + public boolean isColumnWise() + { + if (columnWise == null) + { + return false; + } + else + { + return columnWise; + } + } + + /** + * Sets the value of the columnWise property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isColumnWise() + */ + public void setColumnWise(Boolean value) + { + this.columnWise = value; + } + + /** + * Refers to annotation row the tree is provided by + * + * @return possible object is {@link String } + * + */ + public String getColumnReference() + { + return columnReference; + } + + /** + * Sets the value of the columnReference property. + * + * @param value + * allowed object is {@link String } + * + * @see #getColumnReference() + */ + public void setColumnReference(String value) + { + this.columnReference = value; + } + + /** + * Tree ID added for binding tree visualization settings to vamsas document + * trees in jalview 2.4.1 + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + * @see #getId() + */ + public void setId(String value) + { + this.id = value; + } + + /** + * Gets the value of the linkToAllViews property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isLinkToAllViews() + { + if (linkToAllViews == null) + { + return false; + } + else + { + return linkToAllViews; + } + } + + /** + * Sets the value of the linkToAllViews property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setLinkToAllViews(Boolean value) + { + this.linkToAllViews = value; + } + + /** + * Gets the value of the width property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getWidth() + { + return width; + } + + /** + * Sets the value of the width property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setWidth(Integer value) + { + this.width = value; + } + + /** + * Gets the value of the height property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getHeight() + { + return height; + } + + /** + * Sets the value of the height property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setHeight(Integer value) + { + this.height = value; + } + + /** + * Gets the value of the xpos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXpos() + { + return xpos; + } + + /** + * Sets the value of the xpos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setXpos(Integer value) + { + this.xpos = value; + } + + /** + * Gets the value of the ypos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getYpos() + { + return ypos; + } + + /** + * Sets the value of the ypos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYpos(Integer value) + { + this.ypos = value; + } + + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="UserColourScheme" type="{www.jalview.org/colours}JalviewUserColours"/>
    +   *       </sequence>
    +   *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "userColourScheme" }) + public static class UserColours + { + + @XmlElement( + name = "UserColourScheme", + namespace = "www.jalview.org", + required = true) + protected JalviewUserColours userColourScheme; + + @XmlAttribute(name = "id") + protected String id; + + /** + * Gets the value of the userColourScheme property. + * + * @return possible object is {@link JalviewUserColours } + * + */ + public JalviewUserColours getUserColourScheme() + { + return userColourScheme; + } + + /** + * Sets the value of the userColourScheme property. + * + * @param value + * allowed object is {@link JalviewUserColours } + * + */ + public void setUserColourScheme(JalviewUserColours value) + { + this.userColourScheme = value; + } + + /** + * Gets the value of the id property. + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setId(String value) + { + this.id = value; + } + + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="AnnotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
    +   *         <element name="hiddenColumns" maxOccurs="unbounded" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="calcIdParam" maxOccurs="unbounded" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
    +   *                 <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *                 <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *                 <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *               </extension>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="overview" minOccurs="0">
    +   *           <complexType>
    +   *             <complexContent>
    +   *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *                 <attGroup ref="{www.jalview.org}swingwindow"/>
    +   *                 <attribute name="showHidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *                 <attribute name="residueColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="gapColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="hiddenColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *                 <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *               </restriction>
    +   *             </complexContent>
    +   *           </complexType>
    +   *         </element>
    +   *         <element name="SecStrProvider" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
    +   *       </sequence>
    +   *       <attGroup ref="{www.jalview.org}swingwindow"/>
    +   *       <attGroup ref="{www.jalview.org}conservationShading"/>
    +   *       <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="showFullId" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="rightAlignIds" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showColourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="showBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="wrapAlignment" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="renderGaps" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showSequenceFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showNPfeatureTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showDbRefTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="followHighlight" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +   *       <attribute name="followSelection" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +   *       <attribute name="showAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="showStructureProviders" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="centreColumnLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="showGroupConservation" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="showGroupConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="showGroupSecStrConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="startRes" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="startSeq" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="charWidth" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="charHeight" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="idWidth" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="idWidthManuallyAdjusted" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="scaleProteinAsCdna" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
    +   *       <attribute name="viewName" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="sequenceSetId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="gatheredViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
    +   *       <attribute name="complementId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="showComplementFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="showComplementFeaturesOnTop" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType( + name = "", + propOrder = + { "annotationColours", "hiddenColumns", "calcIdParam", "overview", + "secStrProvider" }) + public static class Viewport + { + + @XmlElement(name = "AnnotationColours", namespace = "www.jalview.org") + protected AnnotationColourScheme annotationColours; + + @XmlElement(namespace = "www.jalview.org") + protected List hiddenColumns; + + @XmlElement(namespace = "www.jalview.org") + protected List calcIdParam; + + @XmlElement(namespace = "www.jalview.org") + protected JalviewModel.Viewport.Overview overview; + + @XmlElement(name = "SecStrProvider", namespace = "www.jalview.org") + protected List secStrProvider; + + @XmlAttribute(name = "bgColour") + protected String bgColour; + + @XmlAttribute(name = "title") + protected String title; + + @XmlAttribute(name = "showFullId") + protected Boolean showFullId; + + @XmlAttribute(name = "rightAlignIds") + protected Boolean rightAlignIds; + + @XmlAttribute(name = "showText") + protected Boolean showText; + + @XmlAttribute(name = "showColourText") + protected Boolean showColourText; + + @XmlAttribute(name = "showUnconserved") + protected Boolean showUnconserved; + + @XmlAttribute(name = "showBoxes") + protected Boolean showBoxes; + + @XmlAttribute(name = "wrapAlignment") + protected Boolean wrapAlignment; + + @XmlAttribute(name = "renderGaps") + protected Boolean renderGaps; + + @XmlAttribute(name = "showSequenceFeatures") + protected Boolean showSequenceFeatures; + + @XmlAttribute(name = "showNPfeatureTooltip") + protected Boolean showNPfeatureTooltip; + + @XmlAttribute(name = "showDbRefTooltip") + protected Boolean showDbRefTooltip; + + @XmlAttribute(name = "followHighlight") + protected Boolean followHighlight; + + @XmlAttribute(name = "followSelection") + protected Boolean followSelection; + + @XmlAttribute(name = "showAnnotation") + protected Boolean showAnnotation; + + @XmlAttribute(name = "showStructureProviders") + protected Boolean showStructureProviders; + + @XmlAttribute(name = "centreColumnLabels") + protected Boolean centreColumnLabels; + + /** + * whether a new group has conservation displayed by default + * + */ + @XmlAttribute(name = "showGroupConservation") + protected Boolean showGroupConservation; + + /** + * whether a new group has consensus displayed by default + * + */ + @XmlAttribute(name = "showGroupConsensus") + protected Boolean showGroupConsensus; + + /** + * whether a new group has secondary structure consensus displayed by + * default + * + */ + @XmlAttribute(name = "showGroupSecStrConsensus") + protected Boolean showGroupSecStrConsensus; + + @XmlAttribute(name = "startRes") + protected Integer startRes; + + @XmlAttribute(name = "startSeq") + protected Integer startSeq; + + @XmlAttribute(name = "charWidth") + protected Integer charWidth; + + @XmlAttribute(name = "charHeight") + protected Integer charHeight; + + @XmlAttribute(name = "fontName") + protected String fontName; + + @XmlAttribute(name = "fontSize") + protected Integer fontSize; + + @XmlAttribute(name = "fontStyle") + protected Integer fontStyle; + + @XmlAttribute(name = "idWidth") + protected Integer idWidth; + + @XmlAttribute(name = "idWidthManuallyAdjusted") + protected Boolean idWidthManuallyAdjusted; + + @XmlAttribute(name = "scaleProteinAsCdna") + protected Boolean scaleProteinAsCdna; + + @XmlAttribute(name = "viewName") + protected String viewName; + + @XmlAttribute(name = "sequenceSetId") + protected String sequenceSetId; + + @XmlAttribute(name = "gatheredViews") + protected Boolean gatheredViews; + + @XmlAttribute(name = "textCol1") + protected Integer textCol1; + + @XmlAttribute(name = "textCol2") + protected Integer textCol2; + + @XmlAttribute(name = "textColThreshold") + protected Integer textColThreshold; + + /** + * unique id used by jalview to synchronize between stored and instantiated + * views + * + */ + @XmlAttribute(name = "id") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlID + @XmlSchemaType(name = "ID") + protected String id; + + /** + * The viewport id of this viewport's (cdna/protein) coding complement, if + * any + * + */ + @XmlAttribute(name = "complementId") + protected String complementId; + + @XmlAttribute(name = "showComplementFeatures") + protected Boolean showComplementFeatures; + + @XmlAttribute(name = "showComplementFeaturesOnTop") + protected Boolean showComplementFeaturesOnTop; + + @XmlAttribute(name = "width") + protected Integer width; + + @XmlAttribute(name = "height") + protected Integer height; + + @XmlAttribute(name = "xpos") + protected Integer xpos; + + @XmlAttribute(name = "ypos") + protected Integer ypos; + + @XmlAttribute(name = "conservationSelected") + protected Boolean conservationSelected; + + /** + * Conservation shading increment + * + */ + @XmlAttribute(name = "consThreshold") + protected Integer consThreshold; + + @XmlAttribute(name = "pidSelected") + protected Boolean pidSelected; + + /** + * Percent Identity Threshold + * + */ + @XmlAttribute(name = "pidThreshold") + protected Integer pidThreshold; + + /** + * Secondary structure consensus shading - since 2.11.4 + * + */ + @XmlAttribute(name = "secstrSelected") + protected Boolean secstrSelected; + + /** + * Secondary structure consensus increment + * + */ + @XmlAttribute(name = "secstrThreshold") + protected Integer secstrThreshold; + + @XmlAttribute(name = "showConsensusHistogram") + protected Boolean showConsensusHistogram; + + @XmlAttribute(name = "showSequenceLogo") + protected Boolean showSequenceLogo; + + @XmlAttribute(name = "normaliseSequenceLogo") + protected Boolean normaliseSequenceLogo; + + @XmlAttribute(name = "ignoreGapsinConsensus") + protected Boolean ignoreGapsinConsensus; + + /** + * Gets the value of the annotationColours property. + * + * @return possible object is {@link AnnotationColourScheme } + * + */ + public AnnotationColourScheme getAnnotationColours() + { + return annotationColours; + } + + /** + * Sets the value of the annotationColours property. + * + * @param value + * allowed object is {@link AnnotationColourScheme } + * + */ + public void setAnnotationColours(AnnotationColourScheme value) + { + this.annotationColours = value; + } + + /** + * Gets the value of the hiddenColumns property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the hiddenColumns property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getHiddenColumns().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.Viewport.HiddenColumns } + *

    + * + * + * @return The value of the hiddenColumns property. + */ + public List getHiddenColumns() + { + if (hiddenColumns == null) + { + hiddenColumns = new ArrayList(); + } + return this.hiddenColumns; + } + + /** + * Gets the value of the calcIdParam property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the calcIdParam property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getCalcIdParam().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewModel.Viewport.CalcIdParam } + *

    + * + * + * @return The value of the calcIdParam property. + */ + public List getCalcIdParam() + { + if (calcIdParam == null) + { + calcIdParam = new ArrayList(); + } + return this.calcIdParam; + } + + /** + * Gets the value of the overview property. + * + * @return possible object is {@link JalviewModel.Viewport.Overview } + * + */ + public JalviewModel.Viewport.Overview getOverview() + { + return overview; + } + + /** + * Sets the value of the overview property. + * + * @param value + * allowed object is {@link JalviewModel.Viewport.Overview } + * + */ + public void setOverview(JalviewModel.Viewport.Overview value) + { + this.overview = value; + } + + /** + * Gets the value of the secStrProvider property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the secStrProvider property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +     * getSecStrProvider().add(newItem);
    +     * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String } + *

    + * + * + * @return The value of the secStrProvider property. + */ + public List getSecStrProvider() + { + if (secStrProvider == null) + { + secStrProvider = new ArrayList(); + } + return this.secStrProvider; + } + + /** + * Gets the value of the bgColour property. + * + * @return possible object is {@link String } + * + */ + public String getBgColour() + { + return bgColour; + } + + /** + * Sets the value of the bgColour property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setBgColour(String value) + { + this.bgColour = value; + } + + /** + * Gets the value of the title property. + * + * @return possible object is {@link String } + * + */ + public String getTitle() + { + return title; + } + + /** + * Sets the value of the title property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setTitle(String value) + { + this.title = value; + } + + /** + * Gets the value of the showFullId property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowFullId() + { + return showFullId; + } + + /** + * Sets the value of the showFullId property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowFullId(Boolean value) + { + this.showFullId = value; + } + + /** + * Gets the value of the rightAlignIds property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isRightAlignIds() + { + return rightAlignIds; + } + + /** + * Sets the value of the rightAlignIds property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setRightAlignIds(Boolean value) + { + this.rightAlignIds = value; + } + + /** + * Gets the value of the showText property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowText() + { + return showText; + } + + /** + * Sets the value of the showText property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowText(Boolean value) + { + this.showText = value; + } + + /** + * Gets the value of the showColourText property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowColourText() + { + return showColourText; + } + + /** + * Sets the value of the showColourText property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowColourText(Boolean value) + { + this.showColourText = value; + } + + /** + * Gets the value of the showUnconserved property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowUnconserved() + { + if (showUnconserved == null) + { + return false; + } + else + { + return showUnconserved; + } + } - /** - * Sets the value of the showNPfeatureTooltip property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowNPfeatureTooltip(Boolean value) { - this.showNPfeatureTooltip = value; - } + /** + * Sets the value of the showUnconserved property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowUnconserved(Boolean value) + { + this.showUnconserved = value; + } - /** - * Gets the value of the showDbRefTooltip property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowDbRefTooltip() { - return showDbRefTooltip; - } + /** + * Gets the value of the showBoxes property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowBoxes() + { + return showBoxes; + } - /** - * Sets the value of the showDbRefTooltip property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowDbRefTooltip(Boolean value) { - this.showDbRefTooltip = value; - } + /** + * Sets the value of the showBoxes property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowBoxes(Boolean value) + { + this.showBoxes = value; + } - /** - * Gets the value of the followHighlight property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isFollowHighlight() { - if (followHighlight == null) { - return true; - } else { - return followHighlight; - } - } + /** + * Gets the value of the wrapAlignment property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isWrapAlignment() + { + return wrapAlignment; + } - /** - * Sets the value of the followHighlight property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setFollowHighlight(Boolean value) { - this.followHighlight = value; - } + /** + * Sets the value of the wrapAlignment property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setWrapAlignment(Boolean value) + { + this.wrapAlignment = value; + } - /** - * Gets the value of the followSelection property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isFollowSelection() { - if (followSelection == null) { - return true; - } else { - return followSelection; - } - } + /** + * Gets the value of the renderGaps property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isRenderGaps() + { + return renderGaps; + } - /** - * Sets the value of the followSelection property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setFollowSelection(Boolean value) { - this.followSelection = value; - } + /** + * Sets the value of the renderGaps property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setRenderGaps(Boolean value) + { + this.renderGaps = value; + } - /** - * Gets the value of the showAnnotation property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowAnnotation() { - return showAnnotation; - } + /** + * Gets the value of the showSequenceFeatures property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowSequenceFeatures() + { + return showSequenceFeatures; + } - /** - * Sets the value of the showAnnotation property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowAnnotation(Boolean value) { - this.showAnnotation = value; - } + /** + * Sets the value of the showSequenceFeatures property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowSequenceFeatures(Boolean value) + { + this.showSequenceFeatures = value; + } - /** - * Gets the value of the showStructureProviders property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowStructureProviders() { - return showStructureProviders; - } + /** + * Gets the value of the showNPfeatureTooltip property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowNPfeatureTooltip() + { + return showNPfeatureTooltip; + } - /** - * Sets the value of the showStructureProviders property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowStructureProviders(Boolean value) { - this.showStructureProviders = value; - } + /** + * Sets the value of the showNPfeatureTooltip property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowNPfeatureTooltip(Boolean value) + { + this.showNPfeatureTooltip = value; + } - /** - * Gets the value of the centreColumnLabels property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isCentreColumnLabels() { - if (centreColumnLabels == null) { - return false; - } else { - return centreColumnLabels; - } - } + /** + * Gets the value of the showDbRefTooltip property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowDbRefTooltip() + { + return showDbRefTooltip; + } - /** - * Sets the value of the centreColumnLabels property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setCentreColumnLabels(Boolean value) { - this.centreColumnLabels = value; - } + /** + * Sets the value of the showDbRefTooltip property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowDbRefTooltip(Boolean value) + { + this.showDbRefTooltip = value; + } - /** - * whether a new group has conservation displayed by default - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowGroupConservation() { - if (showGroupConservation == null) { - return false; - } else { - return showGroupConservation; - } - } + /** + * Gets the value of the followHighlight property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isFollowHighlight() + { + if (followHighlight == null) + { + return true; + } + else + { + return followHighlight; + } + } - /** - * Sets the value of the showGroupConservation property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isShowGroupConservation() - */ - public void setShowGroupConservation(Boolean value) { - this.showGroupConservation = value; - } + /** + * Sets the value of the followHighlight property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setFollowHighlight(Boolean value) + { + this.followHighlight = value; + } - /** - * whether a new group has consensus displayed by default - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowGroupConsensus() { - if (showGroupConsensus == null) { - return false; - } else { - return showGroupConsensus; - } - } + /** + * Gets the value of the followSelection property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isFollowSelection() + { + if (followSelection == null) + { + return true; + } + else + { + return followSelection; + } + } - /** - * Sets the value of the showGroupConsensus property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isShowGroupConsensus() - */ - public void setShowGroupConsensus(Boolean value) { - this.showGroupConsensus = value; - } + /** + * Sets the value of the followSelection property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setFollowSelection(Boolean value) + { + this.followSelection = value; + } - /** - * whether a new group has secondary structure consensus displayed by default - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowGroupSecStrConsensus() { - if (showGroupSecStrConsensus == null) { - return false; - } else { - return showGroupSecStrConsensus; - } - } + /** + * Gets the value of the showAnnotation property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowAnnotation() + { + return showAnnotation; + } - /** - * Sets the value of the showGroupSecStrConsensus property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isShowGroupSecStrConsensus() - */ - public void setShowGroupSecStrConsensus(Boolean value) { - this.showGroupSecStrConsensus = value; - } + /** + * Sets the value of the showAnnotation property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowAnnotation(Boolean value) + { + this.showAnnotation = value; + } - /** - * Gets the value of the startRes property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getStartRes() { - return startRes; - } + /** + * Gets the value of the showStructureProviders property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowStructureProviders() + { + return showStructureProviders; + } - /** - * Sets the value of the startRes property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setStartRes(Integer value) { - this.startRes = value; - } + /** + * Sets the value of the showStructureProviders property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowStructureProviders(Boolean value) + { + this.showStructureProviders = value; + } - /** - * Gets the value of the startSeq property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getStartSeq() { - return startSeq; - } + /** + * Gets the value of the centreColumnLabels property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isCentreColumnLabels() + { + if (centreColumnLabels == null) + { + return false; + } + else + { + return centreColumnLabels; + } + } - /** - * Sets the value of the startSeq property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setStartSeq(Integer value) { - this.startSeq = value; - } + /** + * Sets the value of the centreColumnLabels property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setCentreColumnLabels(Boolean value) + { + this.centreColumnLabels = value; + } - /** - * Gets the value of the charWidth property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getCharWidth() { - return charWidth; - } + /** + * whether a new group has conservation displayed by default + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowGroupConservation() + { + if (showGroupConservation == null) + { + return false; + } + else + { + return showGroupConservation; + } + } - /** - * Sets the value of the charWidth property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setCharWidth(Integer value) { - this.charWidth = value; - } + /** + * Sets the value of the showGroupConservation property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isShowGroupConservation() + */ + public void setShowGroupConservation(Boolean value) + { + this.showGroupConservation = value; + } + + /** + * whether a new group has consensus displayed by default + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowGroupConsensus() + { + if (showGroupConsensus == null) + { + return false; + } + else + { + return showGroupConsensus; + } + } - /** - * Gets the value of the charHeight property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getCharHeight() { - return charHeight; - } + /** + * Sets the value of the showGroupConsensus property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isShowGroupConsensus() + */ + public void setShowGroupConsensus(Boolean value) + { + this.showGroupConsensus = value; + } - /** - * Sets the value of the charHeight property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setCharHeight(Integer value) { - this.charHeight = value; - } + /** + * whether a new group has secondary structure consensus displayed by + * default + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowGroupSecStrConsensus() + { + if (showGroupSecStrConsensus == null) + { + return false; + } + else + { + return showGroupSecStrConsensus; + } + } - /** - * Gets the value of the fontName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFontName() { - return fontName; - } + /** + * Sets the value of the showGroupSecStrConsensus property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isShowGroupSecStrConsensus() + */ + public void setShowGroupSecStrConsensus(Boolean value) + { + this.showGroupSecStrConsensus = value; + } - /** - * Sets the value of the fontName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFontName(String value) { - this.fontName = value; - } + /** + * Gets the value of the startRes property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getStartRes() + { + return startRes; + } - /** - * Gets the value of the fontSize property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getFontSize() { - return fontSize; - } + /** + * Sets the value of the startRes property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setStartRes(Integer value) + { + this.startRes = value; + } - /** - * Sets the value of the fontSize property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setFontSize(Integer value) { - this.fontSize = value; - } + /** + * Gets the value of the startSeq property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getStartSeq() + { + return startSeq; + } - /** - * Gets the value of the fontStyle property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getFontStyle() { - return fontStyle; - } + /** + * Sets the value of the startSeq property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setStartSeq(Integer value) + { + this.startSeq = value; + } - /** - * Sets the value of the fontStyle property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setFontStyle(Integer value) { - this.fontStyle = value; - } + /** + * Gets the value of the charWidth property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getCharWidth() + { + return charWidth; + } - /** - * Gets the value of the idWidth property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getIdWidth() { - return idWidth; - } + /** + * Sets the value of the charWidth property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setCharWidth(Integer value) + { + this.charWidth = value; + } - /** - * Sets the value of the idWidth property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setIdWidth(Integer value) { - this.idWidth = value; - } + /** + * Gets the value of the charHeight property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getCharHeight() + { + return charHeight; + } - /** - * Gets the value of the idWidthManuallyAdjusted property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isIdWidthManuallyAdjusted() { - return idWidthManuallyAdjusted; - } + /** + * Sets the value of the charHeight property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setCharHeight(Integer value) + { + this.charHeight = value; + } - /** - * Sets the value of the idWidthManuallyAdjusted property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIdWidthManuallyAdjusted(Boolean value) { - this.idWidthManuallyAdjusted = value; - } + /** + * Gets the value of the fontName property. + * + * @return possible object is {@link String } + * + */ + public String getFontName() + { + return fontName; + } - /** - * Gets the value of the scaleProteinAsCdna property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isScaleProteinAsCdna() { - if (scaleProteinAsCdna == null) { - return true; - } else { - return scaleProteinAsCdna; - } - } + /** + * Sets the value of the fontName property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setFontName(String value) + { + this.fontName = value; + } - /** - * Sets the value of the scaleProteinAsCdna property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setScaleProteinAsCdna(Boolean value) { - this.scaleProteinAsCdna = value; - } + /** + * Gets the value of the fontSize property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getFontSize() + { + return fontSize; + } - /** - * Gets the value of the viewName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getViewName() { - return viewName; - } + /** + * Sets the value of the fontSize property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setFontSize(Integer value) + { + this.fontSize = value; + } - /** - * Sets the value of the viewName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setViewName(String value) { - this.viewName = value; - } + /** + * Gets the value of the fontStyle property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getFontStyle() + { + return fontStyle; + } - /** - * Gets the value of the sequenceSetId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSequenceSetId() { - return sequenceSetId; - } + /** + * Sets the value of the fontStyle property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setFontStyle(Integer value) + { + this.fontStyle = value; + } - /** - * Sets the value of the sequenceSetId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSequenceSetId(String value) { - this.sequenceSetId = value; - } + /** + * Gets the value of the idWidth property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getIdWidth() + { + return idWidth; + } - /** - * Gets the value of the gatheredViews property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isGatheredViews() { - return gatheredViews; - } + /** + * Sets the value of the idWidth property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setIdWidth(Integer value) + { + this.idWidth = value; + } - /** - * Sets the value of the gatheredViews property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setGatheredViews(Boolean value) { - this.gatheredViews = value; - } + /** + * Gets the value of the idWidthManuallyAdjusted property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isIdWidthManuallyAdjusted() + { + return idWidthManuallyAdjusted; + } - /** - * Gets the value of the textCol1 property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getTextCol1() { - return textCol1; - } + /** + * Sets the value of the idWidthManuallyAdjusted property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setIdWidthManuallyAdjusted(Boolean value) + { + this.idWidthManuallyAdjusted = value; + } - /** - * Sets the value of the textCol1 property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setTextCol1(Integer value) { - this.textCol1 = value; - } + /** + * Gets the value of the scaleProteinAsCdna property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isScaleProteinAsCdna() + { + if (scaleProteinAsCdna == null) + { + return true; + } + else + { + return scaleProteinAsCdna; + } + } - /** - * Gets the value of the textCol2 property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getTextCol2() { - return textCol2; - } + /** + * Sets the value of the scaleProteinAsCdna property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setScaleProteinAsCdna(Boolean value) + { + this.scaleProteinAsCdna = value; + } - /** - * Sets the value of the textCol2 property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setTextCol2(Integer value) { - this.textCol2 = value; - } + /** + * Gets the value of the viewName property. + * + * @return possible object is {@link String } + * + */ + public String getViewName() + { + return viewName; + } - /** - * Gets the value of the textColThreshold property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getTextColThreshold() { - return textColThreshold; - } + /** + * Sets the value of the viewName property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setViewName(String value) + { + this.viewName = value; + } + + /** + * Gets the value of the sequenceSetId property. + * + * @return possible object is {@link String } + * + */ + public String getSequenceSetId() + { + return sequenceSetId; + } - /** - * Sets the value of the textColThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setTextColThreshold(Integer value) { - this.textColThreshold = value; - } + /** + * Sets the value of the sequenceSetId property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setSequenceSetId(String value) + { + this.sequenceSetId = value; + } - /** - * unique id used by jalview to - * synchronize - * between stored and - * instantiated views - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } + /** + * Gets the value of the gatheredViews property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isGatheredViews() + { + return gatheredViews; + } - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getId() - */ - public void setId(String value) { - this.id = value; - } + /** + * Sets the value of the gatheredViews property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setGatheredViews(Boolean value) + { + this.gatheredViews = value; + } - /** - * The viewport id of this viewport's - * (cdna/protein) coding complement, if any - * - * @return - * possible object is - * {@link String } - * - */ - public String getComplementId() { - return complementId; - } + /** + * Gets the value of the textCol1 property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getTextCol1() + { + return textCol1; + } - /** - * Sets the value of the complementId property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getComplementId() - */ - public void setComplementId(String value) { - this.complementId = value; - } + /** + * Sets the value of the textCol1 property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setTextCol1(Integer value) + { + this.textCol1 = value; + } - /** - * Gets the value of the showComplementFeatures property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowComplementFeatures() { - if (showComplementFeatures == null) { - return false; - } else { - return showComplementFeatures; - } - } + /** + * Gets the value of the textCol2 property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getTextCol2() + { + return textCol2; + } - /** - * Sets the value of the showComplementFeatures property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowComplementFeatures(Boolean value) { - this.showComplementFeatures = value; - } + /** + * Sets the value of the textCol2 property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setTextCol2(Integer value) + { + this.textCol2 = value; + } - /** - * Gets the value of the showComplementFeaturesOnTop property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowComplementFeaturesOnTop() { - if (showComplementFeaturesOnTop == null) { - return false; - } else { - return showComplementFeaturesOnTop; - } - } + /** + * Gets the value of the textColThreshold property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getTextColThreshold() + { + return textColThreshold; + } - /** - * Sets the value of the showComplementFeaturesOnTop property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowComplementFeaturesOnTop(Boolean value) { - this.showComplementFeaturesOnTop = value; - } + /** + * Sets the value of the textColThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setTextColThreshold(Integer value) + { + this.textColThreshold = value; + } - /** - * Gets the value of the width property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getWidth() { - return width; - } + /** + * unique id used by jalview to synchronize between stored and instantiated + * views + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } - /** - * Sets the value of the width property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setWidth(Integer value) { - this.width = value; - } + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + * @see #getId() + */ + public void setId(String value) + { + this.id = value; + } - /** - * Gets the value of the height property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getHeight() { - return height; - } + /** + * The viewport id of this viewport's (cdna/protein) coding complement, if + * any + * + * @return possible object is {@link String } + * + */ + public String getComplementId() + { + return complementId; + } - /** - * Sets the value of the height property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHeight(Integer value) { - this.height = value; - } + /** + * Sets the value of the complementId property. + * + * @param value + * allowed object is {@link String } + * + * @see #getComplementId() + */ + public void setComplementId(String value) + { + this.complementId = value; + } - /** - * Gets the value of the xpos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXpos() { - return xpos; - } + /** + * Gets the value of the showComplementFeatures property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowComplementFeatures() + { + if (showComplementFeatures == null) + { + return false; + } + else + { + return showComplementFeatures; + } + } - /** - * Sets the value of the xpos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setXpos(Integer value) { - this.xpos = value; - } + /** + * Sets the value of the showComplementFeatures property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowComplementFeatures(Boolean value) + { + this.showComplementFeatures = value; + } - /** - * Gets the value of the ypos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYpos() { - return ypos; - } + /** + * Gets the value of the showComplementFeaturesOnTop property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowComplementFeaturesOnTop() + { + if (showComplementFeaturesOnTop == null) + { + return false; + } + else + { + return showComplementFeaturesOnTop; + } + } - /** - * Sets the value of the ypos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYpos(Integer value) { - this.ypos = value; - } + /** + * Sets the value of the showComplementFeaturesOnTop property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowComplementFeaturesOnTop(Boolean value) + { + this.showComplementFeaturesOnTop = value; + } - /** - * Gets the value of the conservationSelected property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isConservationSelected() { - return conservationSelected; - } + /** + * Gets the value of the width property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getWidth() + { + return width; + } - /** - * Sets the value of the conservationSelected property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setConservationSelected(Boolean value) { - this.conservationSelected = value; - } + /** + * Sets the value of the width property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setWidth(Integer value) + { + this.width = value; + } - /** - * Conservation shading increment - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getConsThreshold() { - return consThreshold; - } + /** + * Gets the value of the height property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getHeight() + { + return height; + } - /** - * Sets the value of the consThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getConsThreshold() - */ - public void setConsThreshold(Integer value) { - this.consThreshold = value; - } + /** + * Sets the value of the height property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setHeight(Integer value) + { + this.height = value; + } - /** - * Gets the value of the pidSelected property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isPidSelected() { - return pidSelected; - } + /** + * Gets the value of the xpos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXpos() + { + return xpos; + } - /** - * Sets the value of the pidSelected property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setPidSelected(Boolean value) { - this.pidSelected = value; - } + /** + * Sets the value of the xpos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setXpos(Integer value) + { + this.xpos = value; + } - /** - * Percent Identity Threshold - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getPidThreshold() { - return pidThreshold; - } + /** + * Gets the value of the ypos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getYpos() + { + return ypos; + } + + /** + * Sets the value of the ypos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYpos(Integer value) + { + this.ypos = value; + } - /** - * Sets the value of the pidThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getPidThreshold() - */ - public void setPidThreshold(Integer value) { - this.pidThreshold = value; - } + /** + * Gets the value of the conservationSelected property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isConservationSelected() + { + return conservationSelected; + } - /** - * Secondary structure consensus shading - since 2.11.4 - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isSecstrSelected() { - if (secstrSelected == null) { - return false; - } else { - return secstrSelected; - } - } + /** + * Sets the value of the conservationSelected property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setConservationSelected(Boolean value) + { + this.conservationSelected = value; + } - /** - * Sets the value of the secstrSelected property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isSecstrSelected() - */ - public void setSecstrSelected(Boolean value) { - this.secstrSelected = value; - } + /** + * Conservation shading increment + * + * @return possible object is {@link Integer } + * + */ + public Integer getConsThreshold() + { + return consThreshold; + } - /** - * Secondary structure consensus increment - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getSecstrThreshold() { - return secstrThreshold; - } + /** + * Sets the value of the consThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getConsThreshold() + */ + public void setConsThreshold(Integer value) + { + this.consThreshold = value; + } - /** - * Sets the value of the secstrThreshold property. - * - * @param value - * allowed object is - * {@link Integer } - * - * @see #getSecstrThreshold() - */ - public void setSecstrThreshold(Integer value) { - this.secstrThreshold = value; - } + /** + * Gets the value of the pidSelected property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isPidSelected() + { + return pidSelected; + } - /** - * Gets the value of the showConsensusHistogram property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowConsensusHistogram() { - if (showConsensusHistogram == null) { - return true; - } else { - return showConsensusHistogram; - } - } + /** + * Sets the value of the pidSelected property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setPidSelected(Boolean value) + { + this.pidSelected = value; + } - /** - * Sets the value of the showConsensusHistogram property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowConsensusHistogram(Boolean value) { - this.showConsensusHistogram = value; - } + /** + * Percent Identity Threshold + * + * @return possible object is {@link Integer } + * + */ + public Integer getPidThreshold() + { + return pidThreshold; + } - /** - * Gets the value of the showSequenceLogo property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isShowSequenceLogo() { - if (showSequenceLogo == null) { - return false; - } else { - return showSequenceLogo; - } - } + /** + * Sets the value of the pidThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getPidThreshold() + */ + public void setPidThreshold(Integer value) + { + this.pidThreshold = value; + } - /** - * Sets the value of the showSequenceLogo property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowSequenceLogo(Boolean value) { - this.showSequenceLogo = value; - } + /** + * Secondary structure consensus shading - since 2.11.4 + * + * @return possible object is {@link Boolean } + * + */ + public boolean isSecstrSelected() + { + if (secstrSelected == null) + { + return false; + } + else + { + return secstrSelected; + } + } - /** - * Gets the value of the normaliseSequenceLogo property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isNormaliseSequenceLogo() { - if (normaliseSequenceLogo == null) { - return false; - } else { - return normaliseSequenceLogo; - } - } + /** + * Sets the value of the secstrSelected property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isSecstrSelected() + */ + public void setSecstrSelected(Boolean value) + { + this.secstrSelected = value; + } - /** - * Sets the value of the normaliseSequenceLogo property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setNormaliseSequenceLogo(Boolean value) { - this.normaliseSequenceLogo = value; - } + /** + * Secondary structure consensus increment + * + * @return possible object is {@link Integer } + * + */ + public Integer getSecstrThreshold() + { + return secstrThreshold; + } - /** - * Gets the value of the ignoreGapsinConsensus property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isIgnoreGapsinConsensus() { - if (ignoreGapsinConsensus == null) { - return true; - } else { - return ignoreGapsinConsensus; - } - } + /** + * Sets the value of the secstrThreshold property. + * + * @param value + * allowed object is {@link Integer } + * + * @see #getSecstrThreshold() + */ + public void setSecstrThreshold(Integer value) + { + this.secstrThreshold = value; + } - /** - * Sets the value of the ignoreGapsinConsensus property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setIgnoreGapsinConsensus(Boolean value) { - this.ignoreGapsinConsensus = value; - } + /** + * Gets the value of the showConsensusHistogram property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowConsensusHistogram() + { + if (showConsensusHistogram == null) + { + return true; + } + else + { + return showConsensusHistogram; + } + } + /** + * Sets the value of the showConsensusHistogram property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowConsensusHistogram(Boolean value) + { + this.showConsensusHistogram = value; + } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
    -         *       <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *       <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -         *       <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *     </extension>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class CalcIdParam - extends WebServiceParameterSet - { + /** + * Gets the value of the showSequenceLogo property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isShowSequenceLogo() + { + if (showSequenceLogo == null) + { + return false; + } + else + { + return showSequenceLogo; + } + } - /** - * handle for the calculation which uses - * this parameter set - * - */ - @XmlAttribute(name = "calcId", required = true) - protected String calcId; - /** - * should the calculation be performed - * immediately after loading in order to refresh results - * - */ - @XmlAttribute(name = "needsUpdate") - protected Boolean needsUpdate; - /** - * should the calculation be automatically - * performed on edits - * - */ - @XmlAttribute(name = "autoUpdate", required = true) - protected boolean autoUpdate; - - /** - * handle for the calculation which uses - * this parameter set - * - * @return - * possible object is - * {@link String } - * - */ - public String getCalcId() { - return calcId; - } - - /** - * Sets the value of the calcId property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getCalcId() - */ - public void setCalcId(String value) { - this.calcId = value; - } - - /** - * should the calculation be performed - * immediately after loading in order to refresh results - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isNeedsUpdate() { - if (needsUpdate == null) { - return false; - } else { - return needsUpdate; - } - } - - /** - * Sets the value of the needsUpdate property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isNeedsUpdate() - */ - public void setNeedsUpdate(Boolean value) { - this.needsUpdate = value; - } - - /** - * should the calculation be automatically - * performed on edits - * - */ - public boolean isAutoUpdate() { - return autoUpdate; - } - - /** - * Sets the value of the autoUpdate property. - * - */ - public void setAutoUpdate(boolean value) { - this.autoUpdate = value; - } + /** + * Sets the value of the showSequenceLogo property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowSequenceLogo(Boolean value) + { + this.showSequenceLogo = value; + } - } + /** + * Gets the value of the normaliseSequenceLogo property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isNormaliseSequenceLogo() + { + if (normaliseSequenceLogo == null) + { + return false; + } + else + { + return normaliseSequenceLogo; + } + } + /** + * Sets the value of the normaliseSequenceLogo property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setNormaliseSequenceLogo(Boolean value) + { + this.normaliseSequenceLogo = value; + } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class HiddenColumns { - - @XmlAttribute(name = "start") - protected Integer start; - @XmlAttribute(name = "end") - protected Integer end; - - /** - * Gets the value of the start property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getStart() { - return start; - } - - /** - * Sets the value of the start property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setStart(Integer value) { - this.start = value; - } - - /** - * Gets the value of the end property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getEnd() { - return end; - } - - /** - * Sets the value of the end property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setEnd(Integer value) { - this.end = value; - } + /** + * Gets the value of the ignoreGapsinConsensus property. + * + * @return possible object is {@link Boolean } + * + */ + public boolean isIgnoreGapsinConsensus() + { + if (ignoreGapsinConsensus == null) + { + return true; + } + else + { + return ignoreGapsinConsensus; + } + } + + /** + * Sets the value of the ignoreGapsinConsensus property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setIgnoreGapsinConsensus(Boolean value) + { + this.ignoreGapsinConsensus = value; + } + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
    +     *       <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *       <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +     *       <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *     </extension>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class CalcIdParam extends WebServiceParameterSet + { + + /** + * handle for the calculation which uses this parameter set + * + */ + @XmlAttribute(name = "calcId", required = true) + protected String calcId; + + /** + * should the calculation be performed immediately after loading in order + * to refresh results + * + */ + @XmlAttribute(name = "needsUpdate") + protected Boolean needsUpdate; + + /** + * should the calculation be automatically performed on edits + * + */ + @XmlAttribute(name = "autoUpdate", required = true) + protected boolean autoUpdate; + + /** + * handle for the calculation which uses this parameter set + * + * @return possible object is {@link String } + * + */ + public String getCalcId() + { + return calcId; + } + + /** + * Sets the value of the calcId property. + * + * @param value + * allowed object is {@link String } + * + * @see #getCalcId() + */ + public void setCalcId(String value) + { + this.calcId = value; + } + + /** + * should the calculation be performed immediately after loading in order + * to refresh results + * + * @return possible object is {@link Boolean } + * + */ + public boolean isNeedsUpdate() + { + if (needsUpdate == null) + { + return false; } + else + { + return needsUpdate; + } + } + + /** + * Sets the value of the needsUpdate property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isNeedsUpdate() + */ + public void setNeedsUpdate(Boolean value) + { + this.needsUpdate = value; + } + + /** + * should the calculation be automatically performed on edits + * + */ + public boolean isAutoUpdate() + { + return autoUpdate; + } + + /** + * Sets the value of the autoUpdate property. + * + */ + public void setAutoUpdate(boolean value) + { + this.autoUpdate = value; + } + } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -         * <complexType>
    -         *   <complexContent>
    -         *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -         *       <attGroup ref="{www.jalview.org}swingwindow"/>
    -         *       <attribute name="showHidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -         *       <attribute name="residueColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="gapColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="hiddenColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    -         *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    -         *     </restriction>
    -         *   </complexContent>
    -         * </complexType>
    -         * 
    - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class Overview { - - @XmlAttribute(name = "showHidden") - protected Boolean showHidden; - @XmlAttribute(name = "residueColour") - protected Integer residueColour; - @XmlAttribute(name = "gapColour") - protected Integer gapColour; - @XmlAttribute(name = "hiddenColour") - protected Integer hiddenColour; - @XmlAttribute(name = "title") - protected String title; - @XmlAttribute(name = "width") - protected Integer width; - @XmlAttribute(name = "height") - protected Integer height; - @XmlAttribute(name = "xpos") - protected Integer xpos; - @XmlAttribute(name = "ypos") - protected Integer ypos; - - /** - * Gets the value of the showHidden property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isShowHidden() { - return showHidden; - } - - /** - * Sets the value of the showHidden property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setShowHidden(Boolean value) { - this.showHidden = value; - } - - /** - * Gets the value of the residueColour property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getResidueColour() { - return residueColour; - } - - /** - * Sets the value of the residueColour property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setResidueColour(Integer value) { - this.residueColour = value; - } - - /** - * Gets the value of the gapColour property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getGapColour() { - return gapColour; - } - - /** - * Sets the value of the gapColour property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setGapColour(Integer value) { - this.gapColour = value; - } - - /** - * Gets the value of the hiddenColour property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getHiddenColour() { - return hiddenColour; - } - - /** - * Sets the value of the hiddenColour property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHiddenColour(Integer value) { - this.hiddenColour = value; - } - - /** - * Gets the value of the title property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTitle() { - return title; - } - - /** - * Sets the value of the title property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTitle(String value) { - this.title = value; - } - - /** - * Gets the value of the width property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getWidth() { - return width; - } - - /** - * Sets the value of the width property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setWidth(Integer value) { - this.width = value; - } - - /** - * Gets the value of the height property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getHeight() { - return height; - } - - /** - * Sets the value of the height property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setHeight(Integer value) { - this.height = value; - } - - /** - * Gets the value of the xpos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getXpos() { - return xpos; - } - - /** - * Sets the value of the xpos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setXpos(Integer value) { - this.xpos = value; - } - - /** - * Gets the value of the ypos property. - * - * @return - * possible object is - * {@link Integer } - * - */ - public Integer getYpos() { - return ypos; - } - - /** - * Sets the value of the ypos property. - * - * @param value - * allowed object is - * {@link Integer } - * - */ - public void setYpos(Integer value) { - this.ypos = value; - } + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +     *       <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *     </restriction>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class HiddenColumns + { + + @XmlAttribute(name = "start") + protected Integer start; + + @XmlAttribute(name = "end") + protected Integer end; + + /** + * Gets the value of the start property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getStart() + { + return start; + } + + /** + * Sets the value of the start property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setStart(Integer value) + { + this.start = value; + } + + /** + * Gets the value of the end property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getEnd() + { + return end; + } + + /** + * Sets the value of the end property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setEnd(Integer value) + { + this.end = value; + } - } + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +     * <complexType>
    +     *   <complexContent>
    +     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +     *       <attGroup ref="{www.jalview.org}swingwindow"/>
    +     *       <attribute name="showHidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +     *       <attribute name="residueColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="gapColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="hiddenColour" type="{http://www.w3.org/2001/XMLSchema}int" />
    +     *       <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
    +     *     </restriction>
    +     *   </complexContent>
    +     * </complexType>
    +     * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class Overview + { + + @XmlAttribute(name = "showHidden") + protected Boolean showHidden; + + @XmlAttribute(name = "residueColour") + protected Integer residueColour; + + @XmlAttribute(name = "gapColour") + protected Integer gapColour; + + @XmlAttribute(name = "hiddenColour") + protected Integer hiddenColour; + + @XmlAttribute(name = "title") + protected String title; + + @XmlAttribute(name = "width") + protected Integer width; + + @XmlAttribute(name = "height") + protected Integer height; + + @XmlAttribute(name = "xpos") + protected Integer xpos; + + @XmlAttribute(name = "ypos") + protected Integer ypos; + + /** + * Gets the value of the showHidden property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isShowHidden() + { + return showHidden; + } + + /** + * Sets the value of the showHidden property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setShowHidden(Boolean value) + { + this.showHidden = value; + } + + /** + * Gets the value of the residueColour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getResidueColour() + { + return residueColour; + } + + /** + * Sets the value of the residueColour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setResidueColour(Integer value) + { + this.residueColour = value; + } + + /** + * Gets the value of the gapColour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getGapColour() + { + return gapColour; + } + + /** + * Sets the value of the gapColour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setGapColour(Integer value) + { + this.gapColour = value; + } + + /** + * Gets the value of the hiddenColour property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getHiddenColour() + { + return hiddenColour; + } + + /** + * Sets the value of the hiddenColour property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setHiddenColour(Integer value) + { + this.hiddenColour = value; + } + + /** + * Gets the value of the title property. + * + * @return possible object is {@link String } + * + */ + public String getTitle() + { + return title; + } + + /** + * Sets the value of the title property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setTitle(String value) + { + this.title = value; + } + + /** + * Gets the value of the width property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getWidth() + { + return width; + } + + /** + * Sets the value of the width property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setWidth(Integer value) + { + this.width = value; + } + + /** + * Gets the value of the height property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getHeight() + { + return height; + } + + /** + * Sets the value of the height property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setHeight(Integer value) + { + this.height = value; + } + + /** + * Gets the value of the xpos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getXpos() + { + return xpos; + } + + /** + * Sets the value of the xpos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setXpos(Integer value) + { + this.xpos = value; + } + + /** + * Gets the value of the ypos property. + * + * @return possible object is {@link Integer } + * + */ + public Integer getYpos() + { + return ypos; + } + + /** + * Sets the value of the ypos property. + * + * @param value + * allowed object is {@link Integer } + * + */ + public void setYpos(Integer value) + { + this.ypos = value; + } } + } + } diff --git a/src/jalview/xml/binding/jalview/JalviewUserColours.java b/src/jalview/xml/binding/jalview/JalviewUserColours.java index b48ca13..f7bac13 100644 --- a/src/jalview/xml/binding/jalview/JalviewUserColours.java +++ b/src/jalview/xml/binding/jalview/JalviewUserColours.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -16,11 +15,16 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for JalviewUserColours complex type

    . + *

    + * Java class for JalviewUserColours complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="JalviewUserColours">
    @@ -71,567 +75,592 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "JalviewUserColours", namespace = "www.jalview.org/colours", propOrder = {
    -    "version",
    -    "colour",
    -    "filter"
    -})
    -public class JalviewUserColours {
    +@XmlType(
    +  name = "JalviewUserColours",
    +  namespace = "www.jalview.org/colours",
    +  propOrder =
    +  { "version", "colour", "filter" })
    +public class JalviewUserColours
    +{
    +
    +  /**
    +   * Jalview colour scheme document version.
    +   * 
    +   */
    +  @XmlElement(name = "Version", namespace = "")
    +  protected String version;
    +
    +  @XmlElement(namespace = "")
    +  protected List colour;
    +
    +  @XmlElement(namespace = "")
    +  protected List filter;
    +
    +  @XmlAttribute(name = "schemeName")
    +  protected String schemeName;
    +
    +  /**
    +   * Jalview colour scheme document version.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getVersion()
    +  {
    +    return version;
    +  }
    +
    +  /**
    +   * Sets the value of the version property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   * @see #getVersion()
    +   */
    +  public void setVersion(String value)
    +  {
    +    this.version = value;
    +  }
    +
    +  /**
    +   * Gets the value of the colour property.
    +   * 
    +   * 

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the colour property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getColour().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewUserColours.Colour } + *

    + * + * + * @return The value of the colour property. + */ + public List getColour() + { + if (colour == null) + { + colour = new ArrayList(); + } + return this.colour; + } + + /** + * Gets the value of the filter property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the filter property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getFilter().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link JalviewUserColours.Filter } + *

    + * + * + * @return The value of the filter property. + */ + public List getFilter() + { + if (filter == null) + { + filter = new ArrayList(); + } + return this.filter; + } + + /** + * Gets the value of the schemeName property. + * + * @return possible object is {@link String } + * + */ + public String getSchemeName() + { + return schemeName; + } + + /** + * Sets the value of the schemeName property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setSchemeName(String value) + { + this.schemeName = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
    +   *       </sequence>
    +   *       <attribute name="Name" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="RGB" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="minRGB" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
    +   *       <attribute name="threshType" type="{www.jalview.org/colours}ThresholdType" />
    +   *       <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *       <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *       <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
    +   *       <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *       <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "attributeName" }) + public static class Colour + { /** - * Jalview colour scheme document version. + * name of feature attribute to colour by, or attribute and sub-attribute * */ - @XmlElement(name = "Version", namespace = "") - protected String version; - @XmlElement(namespace = "") - protected List colour; @XmlElement(namespace = "") - protected List filter; - @XmlAttribute(name = "schemeName") - protected String schemeName; + protected List attributeName; /** - * Jalview colour scheme document version. + * Single letter residue code for an alignment colour scheme, or feature + * type for a feature colour scheme * - * @return - * possible object is - * {@link String } - * */ - public String getVersion() { - return version; - } + @XmlAttribute(name = "Name") + protected String name; - /** - * Sets the value of the version property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getVersion() - */ - public void setVersion(String value) { - this.version = value; - } + @XmlAttribute(name = "RGB", required = true) + protected String rgb; + + @XmlAttribute(name = "minRGB") + protected String minRGB; + + @XmlAttribute(name = "noValueColour") + protected NoValueColour noValueColour; + + @XmlAttribute(name = "threshType") + protected ThresholdType threshType; + + @XmlAttribute(name = "threshold") + protected Float threshold; + + @XmlAttribute(name = "max") + protected Float max; + + @XmlAttribute(name = "min") + protected Float min; + + @XmlAttribute(name = "colourByLabel") + protected Boolean colourByLabel; + + @XmlAttribute(name = "autoScale") + protected Boolean autoScale; /** - * Gets the value of the colour property. + * name of feature attribute to colour by, or attribute and sub-attribute * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the colour property.

    + * Gets the value of the attributeName property. + * + *

    + * This accessor method returns a reference to the live list, not a + * snapshot. Therefore any modification you make to the returned list will + * be present inside the JAXB object. This is why there is not a + * set method for the attributeName property. + *

    * *

    * For example, to add a new item, do as follows: *

    + * *
    -     * getColour().add(newItem);
    +     * getAttributeName().add(newItem);
          * 
    * * *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewUserColours.Colour } + * Objects of the following type(s) are allowed in the list {@link String } *

    * * - * @return - * The value of the colour property. + * @return The value of the attributeName property. */ - public List getColour() { - if (colour == null) { - colour = new ArrayList(); - } - return this.colour; + public List getAttributeName() + { + if (attributeName == null) + { + attributeName = new ArrayList(); + } + return this.attributeName; } /** - * Gets the value of the filter property. + * Single letter residue code for an alignment colour scheme, or feature + * type for a feature colour scheme * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the filter property.

    + * @return possible object is {@link String } * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getFilter().add(newItem);
    -     * 
    + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the name property. * + * @param value + * allowed object is {@link String } * - *

    - * Objects of the following type(s) are allowed in the list - * {@link JalviewUserColours.Filter } - *

    + * @see #getName() + */ + public void setName(String value) + { + this.name = value; + } + + /** + * Gets the value of the rgb property. + * + * @return possible object is {@link String } + * + */ + public String getRGB() + { + return rgb; + } + + /** + * Sets the value of the rgb property. * + * @param value + * allowed object is {@link String } * - * @return - * The value of the filter property. */ - public List getFilter() { - if (filter == null) { - filter = new ArrayList(); - } - return this.filter; + public void setRGB(String value) + { + this.rgb = value; } /** - * Gets the value of the schemeName property. + * Gets the value of the minRGB property. + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getSchemeName() { - return schemeName; + public String getMinRGB() + { + return minRGB; } /** - * Sets the value of the schemeName property. + * Sets the value of the minRGB property. * * @param value - * allowed object is - * {@link String } - * + * allowed object is {@link String } + * */ - public void setSchemeName(String value) { - this.schemeName = value; + public void setMinRGB(String value) + { + this.minRGB = value; } + /** + * Gets the value of the noValueColour property. + * + * @return possible object is {@link NoValueColour } + * + */ + public NoValueColour getNoValueColour() + { + if (noValueColour == null) + { + return NoValueColour.MIN; + } + else + { + return noValueColour; + } + } /** - *

    Java class for anonymous complex type

    . + * Sets the value of the noValueColour property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @param value + * allowed object is {@link NoValueColour } * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
    -     *       </sequence>
    -     *       <attribute name="Name" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="RGB" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="minRGB" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
    -     *       <attribute name="threshType" type="{www.jalview.org/colours}ThresholdType" />
    -     *       <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *       <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *       <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
    -     *       <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *       <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + */ + public void setNoValueColour(NoValueColour value) + { + this.noValueColour = value; + } + + /** + * Gets the value of the threshType property. * + * @return possible object is {@link ThresholdType } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "attributeName" - }) - public static class Colour { - - /** - * name of feature attribute to colour by, or attribute and sub-attribute - * - */ - @XmlElement(namespace = "") - protected List attributeName; - /** - * Single letter residue code for an alignment colour scheme, or feature type for a feature colour scheme - * - */ - @XmlAttribute(name = "Name") - protected String name; - @XmlAttribute(name = "RGB", required = true) - protected String rgb; - @XmlAttribute(name = "minRGB") - protected String minRGB; - @XmlAttribute(name = "noValueColour") - protected NoValueColour noValueColour; - @XmlAttribute(name = "threshType") - protected ThresholdType threshType; - @XmlAttribute(name = "threshold") - protected Float threshold; - @XmlAttribute(name = "max") - protected Float max; - @XmlAttribute(name = "min") - protected Float min; - @XmlAttribute(name = "colourByLabel") - protected Boolean colourByLabel; - @XmlAttribute(name = "autoScale") - protected Boolean autoScale; - - /** - * name of feature attribute to colour by, or attribute and sub-attribute - * - * Gets the value of the attributeName property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the attributeName property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -         * getAttributeName().add(newItem);
    -         * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the attributeName property. - */ - public List getAttributeName() { - if (attributeName == null) { - attributeName = new ArrayList(); - } - return this.attributeName; - } - - /** - * Single letter residue code for an alignment colour scheme, or feature type for a feature colour scheme - * - * @return - * possible object is - * {@link String } - * - */ - public String getName() { - return name; - } - - /** - * Sets the value of the name property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getName() - */ - public void setName(String value) { - this.name = value; - } - - /** - * Gets the value of the rgb property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRGB() { - return rgb; - } - - /** - * Sets the value of the rgb property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRGB(String value) { - this.rgb = value; - } - - /** - * Gets the value of the minRGB property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMinRGB() { - return minRGB; - } - - /** - * Sets the value of the minRGB property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMinRGB(String value) { - this.minRGB = value; - } - - /** - * Gets the value of the noValueColour property. - * - * @return - * possible object is - * {@link NoValueColour } - * - */ - public NoValueColour getNoValueColour() { - if (noValueColour == null) { - return NoValueColour.MIN; - } else { - return noValueColour; - } - } - - /** - * Sets the value of the noValueColour property. - * - * @param value - * allowed object is - * {@link NoValueColour } - * - */ - public void setNoValueColour(NoValueColour value) { - this.noValueColour = value; - } - - /** - * Gets the value of the threshType property. - * - * @return - * possible object is - * {@link ThresholdType } - * - */ - public ThresholdType getThreshType() { - return threshType; - } - - /** - * Sets the value of the threshType property. - * - * @param value - * allowed object is - * {@link ThresholdType } - * - */ - public void setThreshType(ThresholdType value) { - this.threshType = value; - } - - /** - * Gets the value of the threshold property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getThreshold() { - return threshold; - } - - /** - * Sets the value of the threshold property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setThreshold(Float value) { - this.threshold = value; - } - - /** - * Gets the value of the max property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getMax() { - return max; - } - - /** - * Sets the value of the max property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setMax(Float value) { - this.max = value; - } - - /** - * Gets the value of the min property. - * - * @return - * possible object is - * {@link Float } - * - */ - public Float getMin() { - return min; - } - - /** - * Sets the value of the min property. - * - * @param value - * allowed object is - * {@link Float } - * - */ - public void setMin(Float value) { - this.min = value; - } - - /** - * Gets the value of the colourByLabel property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isColourByLabel() { - return colourByLabel; - } - - /** - * Sets the value of the colourByLabel property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setColourByLabel(Boolean value) { - this.colourByLabel = value; - } - - /** - * Gets the value of the autoScale property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isAutoScale() { - return autoScale; - } - - /** - * Sets the value of the autoScale property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setAutoScale(Boolean value) { - this.autoScale = value; - } + public ThresholdType getThreshType() + { + return threshType; + } + /** + * Sets the value of the threshType property. + * + * @param value + * allowed object is {@link ThresholdType } + * + */ + public void setThreshType(ThresholdType value) + { + this.threshType = value; } + /** + * Gets the value of the threshold property. + * + * @return possible object is {@link Float } + * + */ + public Float getThreshold() + { + return threshold; + } /** - *

    Java class for anonymous complex type

    . + * Sets the value of the threshold property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @param value + * allowed object is {@link Float } * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet"/>
    -     *       </sequence>
    -     *       <attribute name="featureType" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + */ + public void setThreshold(Float value) + { + this.threshold = value; + } + + /** + * Gets the value of the max property. + * + * @return possible object is {@link Float } + * + */ + public Float getMax() + { + return max; + } + + /** + * Sets the value of the max property. + * + * @param value + * allowed object is {@link Float } + * + */ + public void setMax(Float value) + { + this.max = value; + } + + /** + * Gets the value of the min property. + * + * @return possible object is {@link Float } + * + */ + public Float getMin() + { + return min; + } + + /** + * Sets the value of the min property. * + * @param value + * allowed object is {@link Float } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "matcherSet" - }) - public static class Filter { - - @XmlElement(namespace = "", required = true) - protected FeatureMatcherSet matcherSet; - @XmlAttribute(name = "featureType", required = true) - protected String featureType; - - /** - * Gets the value of the matcherSet property. - * - * @return - * possible object is - * {@link FeatureMatcherSet } - * - */ - public FeatureMatcherSet getMatcherSet() { - return matcherSet; - } - - /** - * Sets the value of the matcherSet property. - * - * @param value - * allowed object is - * {@link FeatureMatcherSet } - * - */ - public void setMatcherSet(FeatureMatcherSet value) { - this.matcherSet = value; - } - - /** - * Gets the value of the featureType property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFeatureType() { - return featureType; - } - - /** - * Sets the value of the featureType property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFeatureType(String value) { - this.featureType = value; - } + public void setMin(Float value) + { + this.min = value; + } + /** + * Gets the value of the colourByLabel property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isColourByLabel() + { + return colourByLabel; } + /** + * Sets the value of the colourByLabel property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setColourByLabel(Boolean value) + { + this.colourByLabel = value; + } + + /** + * Gets the value of the autoScale property. + * + * @return possible object is {@link Boolean } + * + */ + public Boolean isAutoScale() + { + return autoScale; + } + + /** + * Sets the value of the autoScale property. + * + * @param value + * allowed object is {@link Boolean } + * + */ + public void setAutoScale(Boolean value) + { + this.autoScale = value; + } + + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet"/>
    +   *       </sequence>
    +   *       <attribute name="featureType" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "matcherSet" }) + public static class Filter + { + + @XmlElement(namespace = "", required = true) + protected FeatureMatcherSet matcherSet; + + @XmlAttribute(name = "featureType", required = true) + protected String featureType; + + /** + * Gets the value of the matcherSet property. + * + * @return possible object is {@link FeatureMatcherSet } + * + */ + public FeatureMatcherSet getMatcherSet() + { + return matcherSet; + } + + /** + * Sets the value of the matcherSet property. + * + * @param value + * allowed object is {@link FeatureMatcherSet } + * + */ + public void setMatcherSet(FeatureMatcherSet value) + { + this.matcherSet = value; + } + + /** + * Gets the value of the featureType property. + * + * @return possible object is {@link String } + * + */ + public String getFeatureType() + { + return featureType; + } + + /** + * Sets the value of the featureType property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setFeatureType(String value) + { + this.featureType = value; + } + + } + } diff --git a/src/jalview/xml/binding/jalview/MapListType.java b/src/jalview/xml/binding/jalview/MapListType.java index 72fada5..e6e6125 100644 --- a/src/jalview/xml/binding/jalview/MapListType.java +++ b/src/jalview/xml/binding/jalview/MapListType.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.math.BigInteger; @@ -18,14 +17,18 @@ import javax.xml.bind.annotation.XmlSchemaType; import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.bind.annotation.XmlType; - /** - * This effectively represents a java.util.MapList - * object + * This effectively represents a java.util.MapList object * - *

    Java class for mapListType complex type

    . + *

    + * Java class for mapListType complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="mapListType">
    @@ -63,312 +66,323 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "mapListType", propOrder = {
    -    "mapListFrom",
    -    "mapListTo"
    -})
    -@XmlSeeAlso({
    -    Mapping.class
    -})
    -public class MapListType {
    +@XmlType(name = "mapListType", propOrder = { "mapListFrom", "mapListTo" })
    +@XmlSeeAlso({ Mapping.class })
    +public class MapListType
    +{
     
    -    /**
    -     * a region from start to end inclusive
    -     * 
    -     */
    -    protected List mapListFrom;
    -    /**
    -     * a region from start to end inclusive
    -     * 
    -     */
    -    protected List mapListTo;
    -    /**
    -     * number of dictionary symbol widths involved in
    -     * 					each
    -     * 					mapped position on this sequence (for example, 3 for a dna
    -     * 					sequence exon
    -     * 					region that is being mapped to a protein sequence).
    -     * 					This is optional,
    -     * 					since the unit can be usually be inferred from the
    -     * 					dictionary type of
    -     * 					each sequence involved in the mapping.
    -     * 
    -     */
    -    @XmlAttribute(name = "mapFromUnit", required = true)
    -    @XmlSchemaType(name = "positiveInteger")
    -    protected BigInteger mapFromUnit;
    -    /**
    -     * number of dictionary symbol widths involved in
    -     * 					each
    -     * 					mapped position on this sequence (for example, 3 for a dna
    -     * 					sequence exon
    -     * 					region that is being mapped to a protein sequence).
    -     * 					This is optional,
    -     * 					since the unit can be usually be inferred from the
    -     * 					dictionary type of
    -     * 					each sequence involved in the mapping.
    -     * 
    -     */
    -    @XmlAttribute(name = "mapToUnit", required = true)
    -    @XmlSchemaType(name = "positiveInteger")
    -    protected BigInteger mapToUnit;
    +  /**
    +   * a region from start to end inclusive
    +   * 
    +   */
    +  protected List mapListFrom;
    +
    +  /**
    +   * a region from start to end inclusive
    +   * 
    +   */
    +  protected List mapListTo;
    +
    +  /**
    +   * number of dictionary symbol widths involved in each mapped position on this
    +   * sequence (for example, 3 for a dna sequence exon region that is being
    +   * mapped to a protein sequence). This is optional, since the unit can be
    +   * usually be inferred from the dictionary type of each sequence involved in
    +   * the mapping.
    +   * 
    +   */
    +  @XmlAttribute(name = "mapFromUnit", required = true)
    +  @XmlSchemaType(name = "positiveInteger")
    +  protected BigInteger mapFromUnit;
    +
    +  /**
    +   * number of dictionary symbol widths involved in each mapped position on this
    +   * sequence (for example, 3 for a dna sequence exon region that is being
    +   * mapped to a protein sequence). This is optional, since the unit can be
    +   * usually be inferred from the dictionary type of each sequence involved in
    +   * the mapping.
    +   * 
    +   */
    +  @XmlAttribute(name = "mapToUnit", required = true)
    +  @XmlSchemaType(name = "positiveInteger")
    +  protected BigInteger mapToUnit;
    +
    +  /**
    +   * a region from start to end inclusive
    +   * 
    +   * Gets the value of the mapListFrom property.
    +   * 
    +   * 

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the mapListFrom property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getMapListFrom().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link MapListType.MapListFrom } + *

    + * + * + * @return The value of the mapListFrom property. + */ + public List getMapListFrom() + { + if (mapListFrom == null) + { + mapListFrom = new ArrayList(); + } + return this.mapListFrom; + } + + /** + * a region from start to end inclusive + * + * Gets the value of the mapListTo property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the mapListTo property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getMapListTo().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link MapListType.MapListTo } + *

    + * + * + * @return The value of the mapListTo property. + */ + public List getMapListTo() + { + if (mapListTo == null) + { + mapListTo = new ArrayList(); + } + return this.mapListTo; + } + + /** + * number of dictionary symbol widths involved in each mapped position on this + * sequence (for example, 3 for a dna sequence exon region that is being + * mapped to a protein sequence). This is optional, since the unit can be + * usually be inferred from the dictionary type of each sequence involved in + * the mapping. + * + * @return possible object is {@link BigInteger } + * + */ + public BigInteger getMapFromUnit() + { + return mapFromUnit; + } + + /** + * Sets the value of the mapFromUnit property. + * + * @param value + * allowed object is {@link BigInteger } + * + * @see #getMapFromUnit() + */ + public void setMapFromUnit(BigInteger value) + { + this.mapFromUnit = value; + } + + /** + * number of dictionary symbol widths involved in each mapped position on this + * sequence (for example, 3 for a dna sequence exon region that is being + * mapped to a protein sequence). This is optional, since the unit can be + * usually be inferred from the dictionary type of each sequence involved in + * the mapping. + * + * @return possible object is {@link BigInteger } + * + */ + public BigInteger getMapToUnit() + { + return mapToUnit; + } + + /** + * Sets the value of the mapToUnit property. + * + * @param value + * allowed object is {@link BigInteger } + * + * @see #getMapToUnit() + */ + public void setMapToUnit(BigInteger value) + { + this.mapToUnit = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class MapListFrom + { + + @XmlAttribute(name = "start", required = true) + protected int start; + + @XmlAttribute(name = "end", required = true) + protected int end; /** - * a region from start to end inclusive - * - * Gets the value of the mapListFrom property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the mapListFrom property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getMapListFrom().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link MapListType.MapListFrom } - *

    + * Gets the value of the start property. * - * - * @return - * The value of the mapListFrom property. */ - public List getMapListFrom() { - if (mapListFrom == null) { - mapListFrom = new ArrayList(); - } - return this.mapListFrom; + public int getStart() + { + return start; } /** - * a region from start to end inclusive - * - * Gets the value of the mapListTo property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the mapListTo property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getMapListTo().add(newItem);
    -     * 
    + * Sets the value of the start property. * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link MapListType.MapListTo } - *

    - * - * - * @return - * The value of the mapListTo property. */ - public List getMapListTo() { - if (mapListTo == null) { - mapListTo = new ArrayList(); - } - return this.mapListTo; + public void setStart(int value) + { + this.start = value; } /** - * number of dictionary symbol widths involved in - * each - * mapped position on this sequence (for example, 3 for a dna - * sequence exon - * region that is being mapped to a protein sequence). - * This is optional, - * since the unit can be usually be inferred from the - * dictionary type of - * each sequence involved in the mapping. + * Gets the value of the end property. * - * @return - * possible object is - * {@link BigInteger } - * */ - public BigInteger getMapFromUnit() { - return mapFromUnit; + public int getEnd() + { + return end; } /** - * Sets the value of the mapFromUnit property. + * Sets the value of the end property. * - * @param value - * allowed object is - * {@link BigInteger } - * - * @see #getMapFromUnit() */ - public void setMapFromUnit(BigInteger value) { - this.mapFromUnit = value; + public void setEnd(int value) + { + this.end = value; } + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *       <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class MapListTo + { + + @XmlAttribute(name = "start", required = true) + protected int start; + + @XmlAttribute(name = "end", required = true) + protected int end; + /** - * number of dictionary symbol widths involved in - * each - * mapped position on this sequence (for example, 3 for a dna - * sequence exon - * region that is being mapped to a protein sequence). - * This is optional, - * since the unit can be usually be inferred from the - * dictionary type of - * each sequence involved in the mapping. + * Gets the value of the start property. * - * @return - * possible object is - * {@link BigInteger } - * */ - public BigInteger getMapToUnit() { - return mapToUnit; + public int getStart() + { + return start; } /** - * Sets the value of the mapToUnit property. + * Sets the value of the start property. * - * @param value - * allowed object is - * {@link BigInteger } - * - * @see #getMapToUnit() */ - public void setMapToUnit(BigInteger value) { - this.mapToUnit = value; + public void setStart(int value) + { + this.start = value; } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    - * + * Gets the value of the end property. * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class MapListFrom { - - @XmlAttribute(name = "start", required = true) - protected int start; - @XmlAttribute(name = "end", required = true) - protected int end; - - /** - * Gets the value of the start property. - * - */ - public int getStart() { - return start; - } - - /** - * Sets the value of the start property. - * - */ - public void setStart(int value) { - this.start = value; - } - - /** - * Gets the value of the end property. - * - */ - public int getEnd() { - return end; - } - - /** - * Sets the value of the end property. - * - */ - public void setEnd(int value) { - this.end = value; - } - + public int getEnd() + { + return end; } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *       <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    - * + * Sets the value of the end property. * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class MapListTo { - - @XmlAttribute(name = "start", required = true) - protected int start; - @XmlAttribute(name = "end", required = true) - protected int end; - - /** - * Gets the value of the start property. - * - */ - public int getStart() { - return start; - } - - /** - * Sets the value of the start property. - * - */ - public void setStart(int value) { - this.start = value; - } - - /** - * Gets the value of the end property. - * - */ - public int getEnd() { - return end; - } - - /** - * Sets the value of the end property. - * - */ - public void setEnd(int value) { - this.end = value; - } - + public void setEnd(int value) + { + this.end = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/MapOnAMatrixType.java b/src/jalview/xml/binding/jalview/MapOnAMatrixType.java index b4b1105..c7e9e33 100644 --- a/src/jalview/xml/binding/jalview/MapOnAMatrixType.java +++ b/src/jalview/xml/binding/jalview/MapOnAMatrixType.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -15,14 +14,19 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlType; - /** - * Defines a mapping from the local frame to a matrix - * and its associated data specified by MatrixType + * Defines a mapping from the local frame to a matrix and its associated data + * specified by MatrixType * - *

    Java class for MapOnAMatrixType complex type

    . + *

    + * Java class for MapOnAMatrixType complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="MapOnAMatrixType">
    @@ -42,135 +46,134 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "MapOnAMatrixType", propOrder = {
    -    "property",
    -    "mapping"
    -})
    -public class MapOnAMatrixType {
    +@XmlType(name = "MapOnAMatrixType", propOrder = { "property", "mapping" })
    +public class MapOnAMatrixType
    +{
     
    -    protected List property;
    -    /**
    -     * mapping from the matrix row and column positions
    -     * 						to
    -     * 						associated reference frame
    -     * 
    -     */
    -    protected MapListType mapping;
    -    /**
    -     * reference to the matrix type this Map refers to
    -     * 
    -     */
    -    @XmlAttribute(name = "matrix", required = true)
    -    protected String matrix;
    -    @XmlAttribute(name = "id")
    -    protected String id;
    +  protected List property;
     
    -    /**
    -     * Gets the value of the property property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the property property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getProperty().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Property } - *

    - * - * - * @return - * The value of the property property. - */ - public List getProperty() { - if (property == null) { - property = new ArrayList(); - } - return this.property; - } + /** + * mapping from the matrix row and column positions to associated reference + * frame + * + */ + protected MapListType mapping; - /** - * mapping from the matrix row and column positions - * to - * associated reference frame - * - * @return - * possible object is - * {@link MapListType } - * - */ - public MapListType getMapping() { - return mapping; - } + /** + * reference to the matrix type this Map refers to + * + */ + @XmlAttribute(name = "matrix", required = true) + protected String matrix; - /** - * Sets the value of the mapping property. - * - * @param value - * allowed object is - * {@link MapListType } - * - * @see #getMapping() - */ - public void setMapping(MapListType value) { - this.mapping = value; - } + @XmlAttribute(name = "id") + protected String id; - /** - * reference to the matrix type this Map refers to - * - * @return - * possible object is - * {@link String } - * - */ - public String getMatrix() { - return matrix; + /** + * Gets the value of the property property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the property property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getProperty().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Property } + *

    + * + * + * @return The value of the property property. + */ + public List getProperty() + { + if (property == null) + { + property = new ArrayList(); } + return this.property; + } - /** - * Sets the value of the matrix property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getMatrix() - */ - public void setMatrix(String value) { - this.matrix = value; - } + /** + * mapping from the matrix row and column positions to associated reference + * frame + * + * @return possible object is {@link MapListType } + * + */ + public MapListType getMapping() + { + return mapping; + } - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } + /** + * Sets the value of the mapping property. + * + * @param value + * allowed object is {@link MapListType } + * + * @see #getMapping() + */ + public void setMapping(MapListType value) + { + this.mapping = value; + } - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } + /** + * reference to the matrix type this Map refers to + * + * @return possible object is {@link String } + * + */ + public String getMatrix() + { + return matrix; + } + + /** + * Sets the value of the matrix property. + * + * @param value + * allowed object is {@link String } + * + * @see #getMatrix() + */ + public void setMatrix(String value) + { + this.matrix = value; + } + + /** + * Gets the value of the id property. + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setId(String value) + { + this.id = value; + } } diff --git a/src/jalview/xml/binding/jalview/Mapping.java b/src/jalview/xml/binding/jalview/Mapping.java index fcfd7e4..0e7cfff 100644 --- a/src/jalview/xml/binding/jalview/Mapping.java +++ b/src/jalview/xml/binding/jalview/Mapping.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlAccessType; @@ -15,18 +14,20 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; - /** - * Represent the jalview.datamodel.Mapping object - - * it also provides - * a way of storing sequences that are mapped 'to' - * without adding them - * to the sequence set (which will mean they are - * then added to the alignment too). + * Represent the jalview.datamodel.Mapping object - it also provides a way of + * storing sequences that are mapped 'to' without adding them to the sequence + * set (which will mean they are then added to the alignment too). * - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType>
    @@ -52,96 +53,91 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "", propOrder = {
    -    "sequence",
    -    "dseqFor"
    -})
    +@XmlType(name = "", propOrder = { "sequence", "dseqFor" })
     @XmlRootElement(name = "Mapping")
    -public class Mapping
    -    extends MapListType
    +public class Mapping extends MapListType
     {
     
    -    @XmlElement(name = "Sequence")
    -    protected Sequence sequence;
    -    protected String dseqFor;
    -    /**
    -     * Biotype of the mapping e.g. CdsToPeptide
    -     * 
    -     */
    -    @XmlAttribute(name = "mappingType")
    -    protected String mappingType;
    +  @XmlElement(name = "Sequence")
    +  protected Sequence sequence;
    +
    +  protected String dseqFor;
    +
    +  /**
    +   * Biotype of the mapping e.g. CdsToPeptide
    +   * 
    +   */
    +  @XmlAttribute(name = "mappingType")
    +  protected String mappingType;
     
    -    /**
    -     * Gets the value of the sequence property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link Sequence }
    -     *     
    -     */
    -    public Sequence getSequence() {
    -        return sequence;
    -    }
    +  /**
    +   * Gets the value of the sequence property.
    +   * 
    +   * @return possible object is {@link Sequence }
    +   * 
    +   */
    +  public Sequence getSequence()
    +  {
    +    return sequence;
    +  }
     
    -    /**
    -     * Sets the value of the sequence property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link Sequence }
    -     *     
    -     */
    -    public void setSequence(Sequence value) {
    -        this.sequence = value;
    -    }
    +  /**
    +   * Sets the value of the sequence property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link Sequence }
    +   * 
    +   */
    +  public void setSequence(Sequence value)
    +  {
    +    this.sequence = value;
    +  }
     
    -    /**
    -     * Gets the value of the dseqFor property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getDseqFor() {
    -        return dseqFor;
    -    }
    +  /**
    +   * Gets the value of the dseqFor property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getDseqFor()
    +  {
    +    return dseqFor;
    +  }
     
    -    /**
    -     * Sets the value of the dseqFor property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setDseqFor(String value) {
    -        this.dseqFor = value;
    -    }
    +  /**
    +   * Sets the value of the dseqFor property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setDseqFor(String value)
    +  {
    +    this.dseqFor = value;
    +  }
     
    -    /**
    -     * Biotype of the mapping e.g. CdsToPeptide
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getMappingType() {
    -        return mappingType;
    -    }
    +  /**
    +   * Biotype of the mapping e.g. CdsToPeptide
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getMappingType()
    +  {
    +    return mappingType;
    +  }
     
    -    /**
    -     * Sets the value of the mappingType property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     * @see #getMappingType()
    -     */
    -    public void setMappingType(String value) {
    -        this.mappingType = value;
    -    }
    +  /**
    +   * Sets the value of the mappingType property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   * @see #getMappingType()
    +   */
    +  public void setMappingType(String value)
    +  {
    +    this.mappingType = value;
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/MatrixType.java b/src/jalview/xml/binding/jalview/MatrixType.java
    index 0fd8ef5..b781bea 100644
    --- a/src/jalview/xml/binding/jalview/MatrixType.java
    +++ b/src/jalview/xml/binding/jalview/MatrixType.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import java.math.BigInteger;
    @@ -17,16 +16,19 @@ import javax.xml.bind.annotation.XmlAttribute;
     import javax.xml.bind.annotation.XmlElement;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * Represents matrix data imported to Jalview, and the
    - * 				results of any derived calculations (independent of a particular
    - * 				view
    - * 				on the matrix).
    + * Represents matrix data imported to Jalview, and the results of any derived
    + * calculations (independent of a particular view on the matrix).
      * 
    - * 

    Java class for MatrixType complex type

    . + *

    + * Java class for MatrixType complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="MatrixType">
    @@ -52,315 +54,325 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "MatrixType", propOrder = {
    -    "elements",
    -    "groups",
    -    "newick",
    -    "property"
    -})
    -public class MatrixType {
    +@XmlType(
    +  name = "MatrixType",
    +  propOrder =
    +  { "elements", "groups", "newick", "property" })
    +public class MatrixType
    +{
     
    -    /**
    -     * serialised representation of matrix as one or
    -     * 						more sets of comma separated values
    -     * 
    -     */
    -    @XmlElement(required = true)
    -    protected String elements;
    -    /**
    -     * Comma separated series of longs formed from
    -     * 						bitsets defining partitions on the rows/columns of the matrix
    -     * 
    -     */
    -    protected List groups;
    -    /**
    -     * tree computed for this
    -     * 
    -     */
    -    protected List newick;
    -    protected List property;
    -    @XmlAttribute(name = "type", required = true)
    -    protected String type;
    -    @XmlAttribute(name = "rows", required = true)
    -    protected BigInteger rows;
    -    @XmlAttribute(name = "cols", required = true)
    -    protected BigInteger cols;
    -    @XmlAttribute(name = "treeMethod")
    -    protected String treeMethod;
    -    @XmlAttribute(name = "cutHeight")
    -    protected Double cutHeight;
    -    @XmlAttribute(name = "id", required = true)
    -    protected String id;
    +  /**
    +   * serialised representation of matrix as one or more sets of comma separated
    +   * values
    +   * 
    +   */
    +  @XmlElement(required = true)
    +  protected String elements;
     
    -    /**
    -     * serialised representation of matrix as one or
    -     * 						more sets of comma separated values
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getElements() {
    -        return elements;
    -    }
    +  /**
    +   * Comma separated series of longs formed from bitsets defining partitions on
    +   * the rows/columns of the matrix
    +   * 
    +   */
    +  protected List groups;
     
    -    /**
    -     * Sets the value of the elements property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     * @see #getElements()
    -     */
    -    public void setElements(String value) {
    -        this.elements = value;
    -    }
    +  /**
    +   * tree computed for this
    +   * 
    +   */
    +  protected List newick;
     
    -    /**
    -     * Comma separated series of longs formed from
    -     * 						bitsets defining partitions on the rows/columns of the matrix
    -     * 
    -     * Gets the value of the groups property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the groups property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getGroups().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the groups property. - */ - public List getGroups() { - if (groups == null) { - groups = new ArrayList(); - } - return this.groups; - } + protected List property; - /** - * tree computed for this - * - * Gets the value of the newick property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the newick property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getNewick().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the newick property. - */ - public List getNewick() { - if (newick == null) { - newick = new ArrayList(); - } - return this.newick; - } + @XmlAttribute(name = "type", required = true) + protected String type; - /** - * Gets the value of the property property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the property property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getProperty().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Property } - *

    - * - * - * @return - * The value of the property property. - */ - public List getProperty() { - if (property == null) { - property = new ArrayList(); - } - return this.property; - } + @XmlAttribute(name = "rows", required = true) + protected BigInteger rows; - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } + @XmlAttribute(name = "cols", required = true) + protected BigInteger cols; - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } + @XmlAttribute(name = "treeMethod") + protected String treeMethod; - /** - * Gets the value of the rows property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getRows() { - return rows; - } + @XmlAttribute(name = "cutHeight") + protected Double cutHeight; - /** - * Sets the value of the rows property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setRows(BigInteger value) { - this.rows = value; - } + @XmlAttribute(name = "id", required = true) + protected String id; - /** - * Gets the value of the cols property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getCols() { - return cols; - } + /** + * serialised representation of matrix as one or more sets of comma separated + * values + * + * @return possible object is {@link String } + * + */ + public String getElements() + { + return elements; + } - /** - * Sets the value of the cols property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setCols(BigInteger value) { - this.cols = value; - } + /** + * Sets the value of the elements property. + * + * @param value + * allowed object is {@link String } + * + * @see #getElements() + */ + public void setElements(String value) + { + this.elements = value; + } - /** - * Gets the value of the treeMethod property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTreeMethod() { - return treeMethod; + /** + * Comma separated series of longs formed from bitsets defining partitions on + * the rows/columns of the matrix + * + * Gets the value of the groups property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the groups property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getGroups().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String } + *

    + * + * + * @return The value of the groups property. + */ + public List getGroups() + { + if (groups == null) + { + groups = new ArrayList(); } + return this.groups; + } - /** - * Sets the value of the treeMethod property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTreeMethod(String value) { - this.treeMethod = value; + /** + * tree computed for this + * + * Gets the value of the newick property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the newick property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getNewick().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String } + *

    + * + * + * @return The value of the newick property. + */ + public List getNewick() + { + if (newick == null) + { + newick = new ArrayList(); } + return this.newick; + } - /** - * Gets the value of the cutHeight property. - * - * @return - * possible object is - * {@link Double } - * - */ - public Double getCutHeight() { - return cutHeight; + /** + * Gets the value of the property property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the property property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getProperty().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Property } + *

    + * + * + * @return The value of the property property. + */ + public List getProperty() + { + if (property == null) + { + property = new ArrayList(); } + return this.property; + } - /** - * Sets the value of the cutHeight property. - * - * @param value - * allowed object is - * {@link Double } - * - */ - public void setCutHeight(Double value) { - this.cutHeight = value; - } + /** + * Gets the value of the type property. + * + * @return possible object is {@link String } + * + */ + public String getType() + { + return type; + } - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } + /** + * Sets the value of the type property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setType(String value) + { + this.type = value; + } - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } + /** + * Gets the value of the rows property. + * + * @return possible object is {@link BigInteger } + * + */ + public BigInteger getRows() + { + return rows; + } + + /** + * Sets the value of the rows property. + * + * @param value + * allowed object is {@link BigInteger } + * + */ + public void setRows(BigInteger value) + { + this.rows = value; + } + + /** + * Gets the value of the cols property. + * + * @return possible object is {@link BigInteger } + * + */ + public BigInteger getCols() + { + return cols; + } + + /** + * Sets the value of the cols property. + * + * @param value + * allowed object is {@link BigInteger } + * + */ + public void setCols(BigInteger value) + { + this.cols = value; + } + + /** + * Gets the value of the treeMethod property. + * + * @return possible object is {@link String } + * + */ + public String getTreeMethod() + { + return treeMethod; + } + + /** + * Sets the value of the treeMethod property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setTreeMethod(String value) + { + this.treeMethod = value; + } + + /** + * Gets the value of the cutHeight property. + * + * @return possible object is {@link Double } + * + */ + public Double getCutHeight() + { + return cutHeight; + } + + /** + * Sets the value of the cutHeight property. + * + * @param value + * allowed object is {@link Double } + * + */ + public void setCutHeight(Double value) + { + this.cutHeight = value; + } + + /** + * Gets the value of the id property. + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setId(String value) + { + this.id = value; + } } diff --git a/src/jalview/xml/binding/jalview/NoValueColour.java b/src/jalview/xml/binding/jalview/NoValueColour.java index baa9eed..29d8d1f 100644 --- a/src/jalview/xml/binding/jalview/NoValueColour.java +++ b/src/jalview/xml/binding/jalview/NoValueColour.java @@ -5,20 +5,25 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlEnum; import javax.xml.bind.annotation.XmlEnumValue; import javax.xml.bind.annotation.XmlType; - /** * Graduated feature colour if no score (or attribute) value * - *

    Java class for NoValueColour

    . + *

    + * Java class for NoValueColour + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * - *

    The following schema fragment specifies the expected content contained within this class.

    *
      * <simpleType name="NoValueColour">
      *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
    @@ -32,47 +37,50 @@ import javax.xml.bind.annotation.XmlType;
      */
     @XmlType(name = "NoValueColour", namespace = "www.jalview.org/colours")
     @XmlEnum
    -public enum NoValueColour {
    +public enum NoValueColour
    +{
     
    -    @XmlEnumValue("None")
    -    NONE("None"),
    -    @XmlEnumValue("Min")
    -    MIN("Min"),
    -    @XmlEnumValue("Max")
    -    MAX("Max");
    -    private final String value;
    +  @XmlEnumValue("None")
    +  NONE("None"), @XmlEnumValue("Min")
    +  MIN("Min"), @XmlEnumValue("Max")
    +  MAX("Max");
     
    -    NoValueColour(String v) {
    -        value = v;
    -    }
    +  private final String value;
     
    -    /**
    -     * Gets the value associated to the enum constant.
    -     * 
    -     * @return
    -     *     The value linked to the enum.
    -     */
    -    public String value() {
    -        return value;
    -    }
    +  NoValueColour(String v)
    +  {
    +    value = v;
    +  }
    +
    +  /**
    +   * Gets the value associated to the enum constant.
    +   * 
    +   * @return The value linked to the enum.
    +   */
    +  public String value()
    +  {
    +    return value;
    +  }
     
    -    /**
    -     * Gets the enum associated to the value passed as parameter.
    -     * 
    -     * @param v
    -     *     The value to get the enum from.
    -     * @return
    -     *     The enum which corresponds to the value, if it exists.
    -     * @throws IllegalArgumentException
    -     *     If no value matches in the enum declaration.
    -     */
    -    public static NoValueColour fromValue(String v) {
    -        for (NoValueColour c: NoValueColour.values()) {
    -            if (c.value.equals(v)) {
    -                return c;
    -            }
    -        }
    -        throw new IllegalArgumentException(v);
    +  /**
    +   * Gets the enum associated to the value passed as parameter.
    +   * 
    +   * @param v
    +   *          The value to get the enum from.
    +   * @return The enum which corresponds to the value, if it exists.
    +   * @throws IllegalArgumentException
    +   *           If no value matches in the enum declaration.
    +   */
    +  public static NoValueColour fromValue(String v)
    +  {
    +    for (NoValueColour c : NoValueColour.values())
    +    {
    +      if (c.value.equals(v))
    +      {
    +        return c;
    +      }
         }
    +    throw new IllegalArgumentException(v);
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/ObjectFactory.java b/src/jalview/xml/binding/jalview/ObjectFactory.java
    index 8ac2701..31706a5 100644
    --- a/src/jalview/xml/binding/jalview/ObjectFactory.java
    +++ b/src/jalview/xml/binding/jalview/ObjectFactory.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import javax.xml.bind.JAXBElement;
    @@ -13,512 +12,588 @@ import javax.xml.bind.annotation.XmlElementDecl;
     import javax.xml.bind.annotation.XmlRegistry;
     import javax.xml.namespace.QName;
     
    -
     /**
    - * This object contains factory methods for each 
    - * Java content interface and Java element interface 
    - * generated in the jalview.xml.binding.jalview package. 
    - * 

    An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. + * This object contains factory methods for each Java content interface and Java + * element interface generated in the jalview.xml.binding.jalview package. + *

    + * An ObjectFactory allows you to programatically construct new instances of the + * Java representation for XML content. The Java representation of XML content + * can consist of schema derived interfaces and classes representing the binding + * of schema type definitions, element declarations and model groups. Factory + * methods for each of these are provided in this class. * */ @XmlRegistry -public class ObjectFactory { - - private static final QName _JalviewModel_QNAME = new QName("www.jalview.org", "JalviewModel"); - private static final QName _JalviewUserColours_QNAME = new QName("www.jalview.org/colours", "JalviewUserColours"); - private static final QName _WebServiceParameterSet_QNAME = new QName("www.jalview.org/xml/wsparamset", "WebServiceParameterSet"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: jalview.xml.binding.jalview - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link MapListType } - * - */ - public MapListType createMapListType() { - return new MapListType(); - } - - /** - * Create an instance of {@link Sequence } - * - */ - public Sequence createSequence() { - return new Sequence(); - } - - /** - * Create an instance of {@link AlcodonFrame } - * - */ - public AlcodonFrame createAlcodonFrame() { - return new AlcodonFrame(); - } - - /** - * Create an instance of {@link Annotation } - * - */ - public Annotation createAnnotation() { - return new Annotation(); - } - - /** - * Create an instance of {@link SequenceSet } - * - */ - public SequenceSet createSequenceSet() { - return new SequenceSet(); - } - - /** - * Create an instance of {@link FeatureMatcherSet } - * - */ - public FeatureMatcherSet createFeatureMatcherSet() { - return new FeatureMatcherSet(); - } - - /** - * Create an instance of {@link JalviewUserColours } - * - */ - public JalviewUserColours createJalviewUserColours() { - return new JalviewUserColours(); - } - - /** - * Create an instance of {@link Pdbentry } - * - */ - public Pdbentry createPdbentry() { - return new Pdbentry(); - } - - /** - * Create an instance of {@link Feature } - * - */ - public Feature createFeature() { - return new Feature(); - } - - /** - * Create an instance of {@link JalviewModel } - * - */ - public JalviewModel createJalviewModel() { - return new JalviewModel(); - } - - /** - * Create an instance of {@link JalviewModel.FeatureSettings } - * - */ - public JalviewModel.FeatureSettings createJalviewModelFeatureSettings() { - return new JalviewModel.FeatureSettings(); - } - - /** - * Create an instance of {@link JalviewModel.PcaViewer } - * - */ - public JalviewModel.PcaViewer createJalviewModelPcaViewer() { - return new JalviewModel.PcaViewer(); - } - - /** - * Create an instance of {@link JalviewModel.Viewport } - * - */ - public JalviewModel.Viewport createJalviewModelViewport() { - return new JalviewModel.Viewport(); - } - - /** - * Create an instance of {@link JalviewModel.JSeq } - * - */ - public JalviewModel.JSeq createJalviewModelJSeq() { - return new JalviewModel.JSeq(); - } - - /** - * Create an instance of {@link JalviewModel.JSeq.RnaViewer } - * - */ - public JalviewModel.JSeq.RnaViewer createJalviewModelJSeqRnaViewer() { - return new JalviewModel.JSeq.RnaViewer(); - } - - /** - * Create an instance of {@link JalviewModel.JSeq.Pdbids } - * - */ - public JalviewModel.JSeq.Pdbids createJalviewModelJSeqPdbids() { - return new JalviewModel.JSeq.Pdbids(); - } - - /** - * Create an instance of {@link AnnotationColourScheme } - * - */ - public AnnotationColourScheme createAnnotationColourScheme() { - return new AnnotationColourScheme(); - } - - /** - * Create an instance of {@link PcaDataType } - * - */ - public PcaDataType createPcaDataType() { - return new PcaDataType(); - } - - /** - * Create an instance of {@link DoubleVector } - * - */ - public DoubleVector createDoubleVector() { - return new DoubleVector(); - } - - /** - * Create an instance of {@link DoubleMatrix } - * - */ - public DoubleMatrix createDoubleMatrix() { - return new DoubleMatrix(); - } - - /** - * Create an instance of {@link Mapping } - * - */ - public Mapping createMapping() { - return new Mapping(); - } - - /** - * Create an instance of {@link MapListType.MapListFrom } - * - */ - public MapListType.MapListFrom createMapListTypeMapListFrom() { - return new MapListType.MapListFrom(); - } - - /** - * Create an instance of {@link MapListType.MapListTo } - * - */ - public MapListType.MapListTo createMapListTypeMapListTo() { - return new MapListType.MapListTo(); - } - - /** - * Create an instance of {@link SequenceType } - * - */ - public SequenceType createSequenceType() { - return new SequenceType(); - } - - /** - * Create an instance of {@link Sequence.DBRef } - * - */ - public Sequence.DBRef createSequenceDBRef() { - return new Sequence.DBRef(); - } - - /** - * Create an instance of {@link AlcodonFrame.Alcodon } - * - */ - public AlcodonFrame.Alcodon createAlcodonFrameAlcodon() { - return new AlcodonFrame.Alcodon(); - } - - /** - * Create an instance of {@link AlcodonFrame.AlcodMap } - * - */ - public AlcodonFrame.AlcodMap createAlcodonFrameAlcodMap() { - return new AlcodonFrame.AlcodMap(); - } - - /** - * Create an instance of {@link AnnotationElement } - * - */ - public AnnotationElement createAnnotationElement() { - return new AnnotationElement(); - } - - /** - * Create an instance of {@link Annotation.ThresholdLine } - * - */ - public Annotation.ThresholdLine createAnnotationThresholdLine() { - return new Annotation.ThresholdLine(); - } - - /** - * Create an instance of {@link MapOnAMatrixType } - * - */ - public MapOnAMatrixType createMapOnAMatrixType() { - return new MapOnAMatrixType(); - } - - /** - * Create an instance of {@link jalview.xml.binding.jalview.Property } - * - */ - public jalview.xml.binding.jalview.Property createProperty() { - return new jalview.xml.binding.jalview.Property(); - } - - /** - * Create an instance of {@link SequenceSet.SequenceSetProperties } - * - */ - public SequenceSet.SequenceSetProperties createSequenceSetSequenceSetProperties() { - return new SequenceSet.SequenceSetProperties(); - } - - /** - * Create an instance of {@link MatrixType } - * - */ - public MatrixType createMatrixType() { - return new MatrixType(); - } - - /** - * Create an instance of {@link VAMSAS } - * - */ - public VAMSAS createVAMSAS() { - return new VAMSAS(); - } - - /** - * Create an instance of {@link FeatureMatcher } - * - */ - public FeatureMatcher createFeatureMatcher() { - return new FeatureMatcher(); - } - - /** - * Create an instance of {@link WebServiceParameterSet } - * - */ - public WebServiceParameterSet createWebServiceParameterSet() { - return new WebServiceParameterSet(); - } - - /** - * Create an instance of {@link FeatureMatcherSet.CompoundMatcher } - * - */ - public FeatureMatcherSet.CompoundMatcher createFeatureMatcherSetCompoundMatcher() { - return new FeatureMatcherSet.CompoundMatcher(); - } - - /** - * Create an instance of {@link JalviewUserColours.Colour } - * - */ - public JalviewUserColours.Colour createJalviewUserColoursColour() { - return new JalviewUserColours.Colour(); - } - - /** - * Create an instance of {@link JalviewUserColours.Filter } - * - */ - public JalviewUserColours.Filter createJalviewUserColoursFilter() { - return new JalviewUserColours.Filter(); - } - - /** - * Create an instance of {@link Pdbentry.Property } - * - */ - public Pdbentry.Property createPdbentryProperty() { - return new Pdbentry.Property(); - } - - /** - * Create an instance of {@link Feature.OtherData } - * - */ - public Feature.OtherData createFeatureOtherData() { - return new Feature.OtherData(); - } - - /** - * Create an instance of {@link JalviewModel.JGroup } - * - */ - public JalviewModel.JGroup createJalviewModelJGroup() { - return new JalviewModel.JGroup(); - } - - /** - * Create an instance of {@link JalviewModel.UserColours } - * - */ - public JalviewModel.UserColours createJalviewModelUserColours() { - return new JalviewModel.UserColours(); - } - - /** - * Create an instance of {@link JalviewModel.Tree } - * - */ - public JalviewModel.Tree createJalviewModelTree() { - return new JalviewModel.Tree(); - } - - /** - * Create an instance of {@link JalviewModel.FeatureSettings.Setting } - * - */ - public JalviewModel.FeatureSettings.Setting createJalviewModelFeatureSettingsSetting() { - return new JalviewModel.FeatureSettings.Setting(); - } - - /** - * Create an instance of {@link JalviewModel.FeatureSettings.Group } - * - */ - public JalviewModel.FeatureSettings.Group createJalviewModelFeatureSettingsGroup() { - return new JalviewModel.FeatureSettings.Group(); - } - - /** - * Create an instance of {@link JalviewModel.PcaViewer.SequencePoint } - * - */ - public JalviewModel.PcaViewer.SequencePoint createJalviewModelPcaViewerSequencePoint() { - return new JalviewModel.PcaViewer.SequencePoint(); - } - - /** - * Create an instance of {@link JalviewModel.PcaViewer.Axis } - * - */ - public JalviewModel.PcaViewer.Axis createJalviewModelPcaViewerAxis() { - return new JalviewModel.PcaViewer.Axis(); - } - - /** - * Create an instance of {@link JalviewModel.PcaViewer.SeqPointMin } - * - */ - public JalviewModel.PcaViewer.SeqPointMin createJalviewModelPcaViewerSeqPointMin() { - return new JalviewModel.PcaViewer.SeqPointMin(); - } - - /** - * Create an instance of {@link JalviewModel.PcaViewer.SeqPointMax } - * - */ - public JalviewModel.PcaViewer.SeqPointMax createJalviewModelPcaViewerSeqPointMax() { - return new JalviewModel.PcaViewer.SeqPointMax(); - } - - /** - * Create an instance of {@link JalviewModel.Viewport.HiddenColumns } - * - */ - public JalviewModel.Viewport.HiddenColumns createJalviewModelViewportHiddenColumns() { - return new JalviewModel.Viewport.HiddenColumns(); - } - - /** - * Create an instance of {@link JalviewModel.Viewport.CalcIdParam } - * - */ - public JalviewModel.Viewport.CalcIdParam createJalviewModelViewportCalcIdParam() { - return new JalviewModel.Viewport.CalcIdParam(); - } - - /** - * Create an instance of {@link JalviewModel.Viewport.Overview } - * - */ - public JalviewModel.Viewport.Overview createJalviewModelViewportOverview() { - return new JalviewModel.Viewport.Overview(); - } - - /** - * Create an instance of {@link JalviewModel.JSeq.RnaViewer.SecondaryStructure } - * - */ - public JalviewModel.JSeq.RnaViewer.SecondaryStructure createJalviewModelJSeqRnaViewerSecondaryStructure() { - return new JalviewModel.JSeq.RnaViewer.SecondaryStructure(); - } - - /** - * Create an instance of {@link JalviewModel.JSeq.Pdbids.StructureState } - * - */ - public JalviewModel.JSeq.Pdbids.StructureState createJalviewModelJSeqPdbidsStructureState() { - return new JalviewModel.JSeq.Pdbids.StructureState(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link JalviewModel }{@code >} - * - * @param value - * Java instance representing xml element's value. - * @return - * the new instance of {@link JAXBElement }{@code <}{@link JalviewModel }{@code >} - */ - @XmlElementDecl(namespace = "www.jalview.org", name = "JalviewModel") - public JAXBElement createJalviewModel(JalviewModel value) { - return new JAXBElement(_JalviewModel_QNAME, JalviewModel.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link JalviewUserColours }{@code >} - * - * @param value - * Java instance representing xml element's value. - * @return - * the new instance of {@link JAXBElement }{@code <}{@link JalviewUserColours }{@code >} - */ - @XmlElementDecl(namespace = "www.jalview.org/colours", name = "JalviewUserColours") - public JAXBElement createJalviewUserColours(JalviewUserColours value) { - return new JAXBElement(_JalviewUserColours_QNAME, JalviewUserColours.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link WebServiceParameterSet }{@code >} - * - * @param value - * Java instance representing xml element's value. - * @return - * the new instance of {@link JAXBElement }{@code <}{@link WebServiceParameterSet }{@code >} - */ - @XmlElementDecl(namespace = "www.jalview.org/xml/wsparamset", name = "WebServiceParameterSet") - public JAXBElement createWebServiceParameterSet(WebServiceParameterSet value) { - return new JAXBElement(_WebServiceParameterSet_QNAME, WebServiceParameterSet.class, null, value); - } +public class ObjectFactory +{ + + private static final QName _JalviewModel_QNAME = new QName( + "www.jalview.org", "JalviewModel"); + + private static final QName _JalviewUserColours_QNAME = new QName( + "www.jalview.org/colours", "JalviewUserColours"); + + private static final QName _WebServiceParameterSet_QNAME = new QName( + "www.jalview.org/xml/wsparamset", "WebServiceParameterSet"); + + /** + * Create a new ObjectFactory that can be used to create new instances of + * schema derived classes for package: jalview.xml.binding.jalview + * + */ + public ObjectFactory() + { + } + + /** + * Create an instance of {@link MapListType } + * + */ + public MapListType createMapListType() + { + return new MapListType(); + } + + /** + * Create an instance of {@link Sequence } + * + */ + public Sequence createSequence() + { + return new Sequence(); + } + + /** + * Create an instance of {@link AlcodonFrame } + * + */ + public AlcodonFrame createAlcodonFrame() + { + return new AlcodonFrame(); + } + + /** + * Create an instance of {@link Annotation } + * + */ + public Annotation createAnnotation() + { + return new Annotation(); + } + + /** + * Create an instance of {@link SequenceSet } + * + */ + public SequenceSet createSequenceSet() + { + return new SequenceSet(); + } + + /** + * Create an instance of {@link FeatureMatcherSet } + * + */ + public FeatureMatcherSet createFeatureMatcherSet() + { + return new FeatureMatcherSet(); + } + + /** + * Create an instance of {@link JalviewUserColours } + * + */ + public JalviewUserColours createJalviewUserColours() + { + return new JalviewUserColours(); + } + + /** + * Create an instance of {@link Pdbentry } + * + */ + public Pdbentry createPdbentry() + { + return new Pdbentry(); + } + + /** + * Create an instance of {@link Feature } + * + */ + public Feature createFeature() + { + return new Feature(); + } + + /** + * Create an instance of {@link JalviewModel } + * + */ + public JalviewModel createJalviewModel() + { + return new JalviewModel(); + } + + /** + * Create an instance of {@link JalviewModel.FeatureSettings } + * + */ + public JalviewModel.FeatureSettings createJalviewModelFeatureSettings() + { + return new JalviewModel.FeatureSettings(); + } + + /** + * Create an instance of {@link JalviewModel.PcaViewer } + * + */ + public JalviewModel.PcaViewer createJalviewModelPcaViewer() + { + return new JalviewModel.PcaViewer(); + } + + /** + * Create an instance of {@link JalviewModel.Viewport } + * + */ + public JalviewModel.Viewport createJalviewModelViewport() + { + return new JalviewModel.Viewport(); + } + + /** + * Create an instance of {@link JalviewModel.JSeq } + * + */ + public JalviewModel.JSeq createJalviewModelJSeq() + { + return new JalviewModel.JSeq(); + } + + /** + * Create an instance of {@link JalviewModel.JSeq.RnaViewer } + * + */ + public JalviewModel.JSeq.RnaViewer createJalviewModelJSeqRnaViewer() + { + return new JalviewModel.JSeq.RnaViewer(); + } + + /** + * Create an instance of {@link JalviewModel.JSeq.Pdbids } + * + */ + public JalviewModel.JSeq.Pdbids createJalviewModelJSeqPdbids() + { + return new JalviewModel.JSeq.Pdbids(); + } + + /** + * Create an instance of {@link AnnotationColourScheme } + * + */ + public AnnotationColourScheme createAnnotationColourScheme() + { + return new AnnotationColourScheme(); + } + + /** + * Create an instance of {@link PcaDataType } + * + */ + public PcaDataType createPcaDataType() + { + return new PcaDataType(); + } + + /** + * Create an instance of {@link DoubleVector } + * + */ + public DoubleVector createDoubleVector() + { + return new DoubleVector(); + } + + /** + * Create an instance of {@link DoubleMatrix } + * + */ + public DoubleMatrix createDoubleMatrix() + { + return new DoubleMatrix(); + } + + /** + * Create an instance of {@link Mapping } + * + */ + public Mapping createMapping() + { + return new Mapping(); + } + + /** + * Create an instance of {@link MapListType.MapListFrom } + * + */ + public MapListType.MapListFrom createMapListTypeMapListFrom() + { + return new MapListType.MapListFrom(); + } + + /** + * Create an instance of {@link MapListType.MapListTo } + * + */ + public MapListType.MapListTo createMapListTypeMapListTo() + { + return new MapListType.MapListTo(); + } + + /** + * Create an instance of {@link SequenceType } + * + */ + public SequenceType createSequenceType() + { + return new SequenceType(); + } + + /** + * Create an instance of {@link Sequence.DBRef } + * + */ + public Sequence.DBRef createSequenceDBRef() + { + return new Sequence.DBRef(); + } + + /** + * Create an instance of {@link AlcodonFrame.Alcodon } + * + */ + public AlcodonFrame.Alcodon createAlcodonFrameAlcodon() + { + return new AlcodonFrame.Alcodon(); + } + + /** + * Create an instance of {@link AlcodonFrame.AlcodMap } + * + */ + public AlcodonFrame.AlcodMap createAlcodonFrameAlcodMap() + { + return new AlcodonFrame.AlcodMap(); + } + + /** + * Create an instance of {@link AnnotationElement } + * + */ + public AnnotationElement createAnnotationElement() + { + return new AnnotationElement(); + } + + /** + * Create an instance of {@link Annotation.ThresholdLine } + * + */ + public Annotation.ThresholdLine createAnnotationThresholdLine() + { + return new Annotation.ThresholdLine(); + } + + /** + * Create an instance of {@link MapOnAMatrixType } + * + */ + public MapOnAMatrixType createMapOnAMatrixType() + { + return new MapOnAMatrixType(); + } + + /** + * Create an instance of {@link jalview.xml.binding.jalview.Property } + * + */ + public jalview.xml.binding.jalview.Property createProperty() + { + return new jalview.xml.binding.jalview.Property(); + } + + /** + * Create an instance of {@link SequenceSet.SequenceSetProperties } + * + */ + public SequenceSet.SequenceSetProperties createSequenceSetSequenceSetProperties() + { + return new SequenceSet.SequenceSetProperties(); + } + + /** + * Create an instance of {@link MatrixType } + * + */ + public MatrixType createMatrixType() + { + return new MatrixType(); + } + + /** + * Create an instance of {@link VAMSAS } + * + */ + public VAMSAS createVAMSAS() + { + return new VAMSAS(); + } + + /** + * Create an instance of {@link FeatureMatcher } + * + */ + public FeatureMatcher createFeatureMatcher() + { + return new FeatureMatcher(); + } + + /** + * Create an instance of {@link WebServiceParameterSet } + * + */ + public WebServiceParameterSet createWebServiceParameterSet() + { + return new WebServiceParameterSet(); + } + + /** + * Create an instance of {@link FeatureMatcherSet.CompoundMatcher } + * + */ + public FeatureMatcherSet.CompoundMatcher createFeatureMatcherSetCompoundMatcher() + { + return new FeatureMatcherSet.CompoundMatcher(); + } + + /** + * Create an instance of {@link JalviewUserColours.Colour } + * + */ + public JalviewUserColours.Colour createJalviewUserColoursColour() + { + return new JalviewUserColours.Colour(); + } + + /** + * Create an instance of {@link JalviewUserColours.Filter } + * + */ + public JalviewUserColours.Filter createJalviewUserColoursFilter() + { + return new JalviewUserColours.Filter(); + } + + /** + * Create an instance of {@link Pdbentry.Property } + * + */ + public Pdbentry.Property createPdbentryProperty() + { + return new Pdbentry.Property(); + } + + /** + * Create an instance of {@link Feature.OtherData } + * + */ + public Feature.OtherData createFeatureOtherData() + { + return new Feature.OtherData(); + } + + /** + * Create an instance of {@link JalviewModel.JGroup } + * + */ + public JalviewModel.JGroup createJalviewModelJGroup() + { + return new JalviewModel.JGroup(); + } + + /** + * Create an instance of {@link JalviewModel.UserColours } + * + */ + public JalviewModel.UserColours createJalviewModelUserColours() + { + return new JalviewModel.UserColours(); + } + + /** + * Create an instance of {@link JalviewModel.Tree } + * + */ + public JalviewModel.Tree createJalviewModelTree() + { + return new JalviewModel.Tree(); + } + + /** + * Create an instance of {@link JalviewModel.FeatureSettings.Setting } + * + */ + public JalviewModel.FeatureSettings.Setting createJalviewModelFeatureSettingsSetting() + { + return new JalviewModel.FeatureSettings.Setting(); + } + + /** + * Create an instance of {@link JalviewModel.FeatureSettings.Group } + * + */ + public JalviewModel.FeatureSettings.Group createJalviewModelFeatureSettingsGroup() + { + return new JalviewModel.FeatureSettings.Group(); + } + + /** + * Create an instance of {@link JalviewModel.PcaViewer.SequencePoint } + * + */ + public JalviewModel.PcaViewer.SequencePoint createJalviewModelPcaViewerSequencePoint() + { + return new JalviewModel.PcaViewer.SequencePoint(); + } + + /** + * Create an instance of {@link JalviewModel.PcaViewer.Axis } + * + */ + public JalviewModel.PcaViewer.Axis createJalviewModelPcaViewerAxis() + { + return new JalviewModel.PcaViewer.Axis(); + } + + /** + * Create an instance of {@link JalviewModel.PcaViewer.SeqPointMin } + * + */ + public JalviewModel.PcaViewer.SeqPointMin createJalviewModelPcaViewerSeqPointMin() + { + return new JalviewModel.PcaViewer.SeqPointMin(); + } + + /** + * Create an instance of {@link JalviewModel.PcaViewer.SeqPointMax } + * + */ + public JalviewModel.PcaViewer.SeqPointMax createJalviewModelPcaViewerSeqPointMax() + { + return new JalviewModel.PcaViewer.SeqPointMax(); + } + + /** + * Create an instance of {@link JalviewModel.Viewport.HiddenColumns } + * + */ + public JalviewModel.Viewport.HiddenColumns createJalviewModelViewportHiddenColumns() + { + return new JalviewModel.Viewport.HiddenColumns(); + } + + /** + * Create an instance of {@link JalviewModel.Viewport.CalcIdParam } + * + */ + public JalviewModel.Viewport.CalcIdParam createJalviewModelViewportCalcIdParam() + { + return new JalviewModel.Viewport.CalcIdParam(); + } + + /** + * Create an instance of {@link JalviewModel.Viewport.Overview } + * + */ + public JalviewModel.Viewport.Overview createJalviewModelViewportOverview() + { + return new JalviewModel.Viewport.Overview(); + } + + /** + * Create an instance of + * {@link JalviewModel.JSeq.RnaViewer.SecondaryStructure } + * + */ + public JalviewModel.JSeq.RnaViewer.SecondaryStructure createJalviewModelJSeqRnaViewerSecondaryStructure() + { + return new JalviewModel.JSeq.RnaViewer.SecondaryStructure(); + } + + /** + * Create an instance of {@link JalviewModel.JSeq.Pdbids.StructureState } + * + */ + public JalviewModel.JSeq.Pdbids.StructureState createJalviewModelJSeqPdbidsStructureState() + { + return new JalviewModel.JSeq.Pdbids.StructureState(); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link JalviewModel + * }{@code >} + * + * @param value + * Java instance representing xml element's value. + * @return the new instance of {@link JAXBElement + * }{@code <}{@link JalviewModel }{@code >} + */ + @XmlElementDecl(namespace = "www.jalview.org", name = "JalviewModel") + public JAXBElement createJalviewModel(JalviewModel value) + { + return new JAXBElement(_JalviewModel_QNAME, + JalviewModel.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement + * }{@code <}{@link JalviewUserColours }{@code >} + * + * @param value + * Java instance representing xml element's value. + * @return the new instance of {@link JAXBElement + * }{@code <}{@link JalviewUserColours }{@code >} + */ + @XmlElementDecl( + namespace = "www.jalview.org/colours", + name = "JalviewUserColours") + public JAXBElement createJalviewUserColours( + JalviewUserColours value) + { + return new JAXBElement(_JalviewUserColours_QNAME, + JalviewUserColours.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement + * }{@code <}{@link WebServiceParameterSet }{@code >} + * + * @param value + * Java instance representing xml element's value. + * @return the new instance of {@link JAXBElement + * }{@code <}{@link WebServiceParameterSet }{@code >} + */ + @XmlElementDecl( + namespace = "www.jalview.org/xml/wsparamset", + name = "WebServiceParameterSet") + public JAXBElement createWebServiceParameterSet( + WebServiceParameterSet value) + { + return new JAXBElement( + _WebServiceParameterSet_QNAME, WebServiceParameterSet.class, + null, value); + } } diff --git a/src/jalview/xml/binding/jalview/PcaDataType.java b/src/jalview/xml/binding/jalview/PcaDataType.java index b807190..dc175e2 100644 --- a/src/jalview/xml/binding/jalview/PcaDataType.java +++ b/src/jalview/xml/binding/jalview/PcaDataType.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlAccessType; @@ -13,13 +12,18 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; - /** * The results of a PCA calculation * - *

    Java class for PcaDataType complex type

    . + *

    + * Java class for PcaDataType complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="PcaDataType">
    @@ -38,90 +42,90 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "PcaDataType", namespace = "www.jalview.org", propOrder = {
    -    "pairwiseMatrix",
    -    "tridiagonalMatrix",
    -    "eigenMatrix"
    -})
    -public class PcaDataType {
    +@XmlType(
    +  name = "PcaDataType",
    +  namespace = "www.jalview.org",
    +  propOrder =
    +  { "pairwiseMatrix", "tridiagonalMatrix", "eigenMatrix" })
    +public class PcaDataType
    +{
    +
    +  @XmlElement(required = true)
    +  protected DoubleMatrix pairwiseMatrix;
    +
    +  @XmlElement(required = true)
    +  protected DoubleMatrix tridiagonalMatrix;
     
    -    @XmlElement(required = true)
    -    protected DoubleMatrix pairwiseMatrix;
    -    @XmlElement(required = true)
    -    protected DoubleMatrix tridiagonalMatrix;
    -    @XmlElement(required = true)
    -    protected DoubleMatrix eigenMatrix;
    +  @XmlElement(required = true)
    +  protected DoubleMatrix eigenMatrix;
     
    -    /**
    -     * Gets the value of the pairwiseMatrix property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link DoubleMatrix }
    -     *     
    -     */
    -    public DoubleMatrix getPairwiseMatrix() {
    -        return pairwiseMatrix;
    -    }
    +  /**
    +   * Gets the value of the pairwiseMatrix property.
    +   * 
    +   * @return possible object is {@link DoubleMatrix }
    +   * 
    +   */
    +  public DoubleMatrix getPairwiseMatrix()
    +  {
    +    return pairwiseMatrix;
    +  }
     
    -    /**
    -     * Sets the value of the pairwiseMatrix property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link DoubleMatrix }
    -     *     
    -     */
    -    public void setPairwiseMatrix(DoubleMatrix value) {
    -        this.pairwiseMatrix = value;
    -    }
    +  /**
    +   * Sets the value of the pairwiseMatrix property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link DoubleMatrix }
    +   * 
    +   */
    +  public void setPairwiseMatrix(DoubleMatrix value)
    +  {
    +    this.pairwiseMatrix = value;
    +  }
     
    -    /**
    -     * Gets the value of the tridiagonalMatrix property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link DoubleMatrix }
    -     *     
    -     */
    -    public DoubleMatrix getTridiagonalMatrix() {
    -        return tridiagonalMatrix;
    -    }
    +  /**
    +   * Gets the value of the tridiagonalMatrix property.
    +   * 
    +   * @return possible object is {@link DoubleMatrix }
    +   * 
    +   */
    +  public DoubleMatrix getTridiagonalMatrix()
    +  {
    +    return tridiagonalMatrix;
    +  }
     
    -    /**
    -     * Sets the value of the tridiagonalMatrix property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link DoubleMatrix }
    -     *     
    -     */
    -    public void setTridiagonalMatrix(DoubleMatrix value) {
    -        this.tridiagonalMatrix = value;
    -    }
    +  /**
    +   * Sets the value of the tridiagonalMatrix property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link DoubleMatrix }
    +   * 
    +   */
    +  public void setTridiagonalMatrix(DoubleMatrix value)
    +  {
    +    this.tridiagonalMatrix = value;
    +  }
     
    -    /**
    -     * Gets the value of the eigenMatrix property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link DoubleMatrix }
    -     *     
    -     */
    -    public DoubleMatrix getEigenMatrix() {
    -        return eigenMatrix;
    -    }
    +  /**
    +   * Gets the value of the eigenMatrix property.
    +   * 
    +   * @return possible object is {@link DoubleMatrix }
    +   * 
    +   */
    +  public DoubleMatrix getEigenMatrix()
    +  {
    +    return eigenMatrix;
    +  }
     
    -    /**
    -     * Sets the value of the eigenMatrix property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link DoubleMatrix }
    -     *     
    -     */
    -    public void setEigenMatrix(DoubleMatrix value) {
    -        this.eigenMatrix = value;
    -    }
    +  /**
    +   * Sets the value of the eigenMatrix property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link DoubleMatrix }
    +   * 
    +   */
    +  public void setEigenMatrix(DoubleMatrix value)
    +  {
    +    this.eigenMatrix = value;
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/Pdbentry.java b/src/jalview/xml/binding/jalview/Pdbentry.java
    index f7e4d73..032b932 100644
    --- a/src/jalview/xml/binding/jalview/Pdbentry.java
    +++ b/src/jalview/xml/binding/jalview/Pdbentry.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import java.util.ArrayList;
    @@ -16,11 +15,16 @@ import javax.xml.bind.annotation.XmlAttribute;
     import javax.xml.bind.annotation.XmlSeeAlso;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * 

    Java class for pdbentry complex type

    . + *

    + * Java class for pdbentry complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="pdbentry">
    @@ -49,202 +53,212 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "pdbentry", namespace = "www.jalview.org", propOrder = {
    -    "property"
    -})
    -@XmlSeeAlso({
    -    jalview.xml.binding.jalview.JalviewModel.JSeq.Pdbids.class
    -})
    -public class Pdbentry {
    -
    -    protected List property;
    -    @XmlAttribute(name = "id", required = true)
    -    protected String id;
    -    @XmlAttribute(name = "type")
    -    protected String type;
    -    @XmlAttribute(name = "file")
    -    protected String file;
    +@XmlType(
    +  name = "pdbentry",
    +  namespace = "www.jalview.org",
    +  propOrder =
    +  { "property" })
    +@XmlSeeAlso({ jalview.xml.binding.jalview.JalviewModel.JSeq.Pdbids.class })
    +public class Pdbentry
    +{
     
    -    /**
    -     * Gets the value of the property property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the property property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getProperty().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Pdbentry.Property } - *

    - * - * - * @return - * The value of the property property. - */ - public List getProperty() { - if (property == null) { - property = new ArrayList(); - } - return this.property; - } + protected List property; - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } + @XmlAttribute(name = "id", required = true) + protected String id; - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; + @XmlAttribute(name = "type") + protected String type; + + @XmlAttribute(name = "file") + protected String file; + + /** + * Gets the value of the property property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the property property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getProperty().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link Pdbentry.Property } + *

    + * + * + * @return The value of the property property. + */ + public List getProperty() + { + if (property == null) + { + property = new ArrayList(); } + return this.property; + } + + /** + * Gets the value of the id property. + * + * @return possible object is {@link String } + * + */ + public String getId() + { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setId(String value) + { + this.id = value; + } + + /** + * Gets the value of the type property. + * + * @return possible object is {@link String } + * + */ + public String getType() + { + return type; + } + + /** + * Sets the value of the type property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setType(String value) + { + this.type = value; + } + + /** + * Gets the value of the file property. + * + * @return possible object is {@link String } + * + */ + public String getFile() + { + return file; + } + + /** + * Sets the value of the file property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setFile(String value) + { + this.file = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="value" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class Property + { + + @XmlAttribute(name = "name", required = true) + protected String name; + + @XmlAttribute(name = "value", required = true) + protected String value; /** - * Gets the value of the type property. + * Gets the value of the name property. + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getType() { - return type; + public String getName() + { + return name; } /** - * Sets the value of the type property. + * Sets the value of the name property. * * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the file property. + * allowed object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getFile() { - return file; + public void setName(String value) + { + this.name = value; } /** - * Sets the value of the file property. + * Gets the value of the value property. + * + * @return possible object is {@link String } * - * @param value - * allowed object is - * {@link String } - * */ - public void setFile(String value) { - this.file = value; + public String getValue() + { + return value; } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="value" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + * Sets the value of the value property. * + * @param value + * allowed object is {@link String } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class Property { - - @XmlAttribute(name = "name", required = true) - protected String name; - @XmlAttribute(name = "value", required = true) - protected String value; - - /** - * Gets the value of the name property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getName() { - return name; - } - - /** - * Sets the value of the name property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setName(String value) { - this.name = value; - } - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - + public void setValue(String value) + { + this.value = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/Property.java b/src/jalview/xml/binding/jalview/Property.java index d63c051..7807e1e 100644 --- a/src/jalview/xml/binding/jalview/Property.java +++ b/src/jalview/xml/binding/jalview/Property.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlAccessType; @@ -13,11 +12,16 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for property complex type

    . + *

    + * Java class for property complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="property">
    @@ -34,59 +38,59 @@ import javax.xml.bind.annotation.XmlType;
      */
     @XmlAccessorType(XmlAccessType.FIELD)
     @XmlType(name = "property")
    -public class Property {
    +public class Property
    +{
    +
    +  @XmlAttribute(name = "name")
    +  protected String name;
     
    -    @XmlAttribute(name = "name")
    -    protected String name;
    -    @XmlAttribute(name = "value")
    -    protected String value;
    +  @XmlAttribute(name = "value")
    +  protected String value;
     
    -    /**
    -     * Gets the value of the name property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getName() {
    -        return name;
    -    }
    +  /**
    +   * Gets the value of the name property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getName()
    +  {
    +    return name;
    +  }
     
    -    /**
    -     * Sets the value of the name property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setName(String value) {
    -        this.name = value;
    -    }
    +  /**
    +   * Sets the value of the name property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setName(String value)
    +  {
    +    this.name = value;
    +  }
     
    -    /**
    -     * Gets the value of the value property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getValue() {
    -        return value;
    -    }
    +  /**
    +   * Gets the value of the value property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getValue()
    +  {
    +    return value;
    +  }
     
    -    /**
    -     * Sets the value of the value property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setValue(String value) {
    -        this.value = value;
    -    }
    +  /**
    +   * Sets the value of the value property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setValue(String value)
    +  {
    +    this.value = value;
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/Sequence.java b/src/jalview/xml/binding/jalview/Sequence.java
    index 3b9e3f5..09a68df 100644
    --- a/src/jalview/xml/binding/jalview/Sequence.java
    +++ b/src/jalview/xml/binding/jalview/Sequence.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import java.util.ArrayList;
    @@ -17,11 +16,16 @@ import javax.xml.bind.annotation.XmlElement;
     import javax.xml.bind.annotation.XmlRootElement;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * 

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType>
    @@ -55,325 +59,333 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "", propOrder = {
    -    "dbRef"
    -})
    +@XmlType(name = "", propOrder = { "dbRef" })
     @XmlRootElement(name = "Sequence")
    -public class Sequence
    -    extends SequenceType
    +public class Sequence extends SequenceType
     {
     
    -    @XmlElement(name = "DBRef")
    -    protected List dbRef;
    +  @XmlElement(name = "DBRef")
    +  protected List dbRef;
    +
    +  /**
    +   * dataset sequence id for this sequence. Will be created as union of
    +   * sequences.
    +   * 
    +   */
    +  @XmlAttribute(name = "dsseqid")
    +  protected String dsseqid;
    +
    +  /**
    +   * Biotype of the sequence (if known)
    +   * 
    +   */
    +  @XmlAttribute(name = "biotype")
    +  protected String biotype;
    +
    +  /**
    +   * Gets the value of the dbRef property.
    +   * 
    +   * 

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the dbRef property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getDBRef().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link Sequence.DBRef } + *

    + * + * + * @return The value of the dbRef property. + */ + public List getDBRef() + { + if (dbRef == null) + { + dbRef = new ArrayList(); + } + return this.dbRef; + } + + /** + * dataset sequence id for this sequence. Will be created as union of + * sequences. + * + * @return possible object is {@link String } + * + */ + public String getDsseqid() + { + return dsseqid; + } + + /** + * Sets the value of the dsseqid property. + * + * @param value + * allowed object is {@link String } + * + * @see #getDsseqid() + */ + public void setDsseqid(String value) + { + this.dsseqid = value; + } + + /** + * Biotype of the sequence (if known) + * + * @return possible object is {@link String } + * + */ + public String getBiotype() + { + return biotype; + } + + /** + * Sets the value of the biotype property. + * + * @param value + * allowed object is {@link String } + * + * @see #getBiotype() + */ + public void setBiotype(String value) + { + this.biotype = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <sequence>
    +   *         <element ref="{www.vamsas.ac.uk/jalview/version2}Mapping" minOccurs="0"/>
    +   *       </sequence>
    +   *       <attribute name="source" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="version" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="accessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="locus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *       <attribute name="canonical" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { "mapping" }) + public static class DBRef + { + + @XmlElement(name = "Mapping") + protected Mapping mapping; + + @XmlAttribute(name = "source") + protected String source; + + @XmlAttribute(name = "version") + protected String version; + + @XmlAttribute(name = "accessionId") + protected String accessionId; + /** - * dataset sequence id for this sequence. Will be - * created as union of sequences. + * true for gene locus mapping, source=species, version=assembly, + * accession=chromosome * */ - @XmlAttribute(name = "dsseqid") - protected String dsseqid; + @XmlAttribute(name = "locus") + protected Boolean locus; + /** - * Biotype of the sequence (if known) + * true for the representative accession for databases where multiple + * accessions map to the same entry (eg. Uniprot) * */ - @XmlAttribute(name = "biotype") - protected String biotype; + @XmlAttribute(name = "canonical") + protected Boolean canonical; /** - * Gets the value of the dbRef property. + * Gets the value of the mapping property. * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the dbRef property.

    + * @return possible object is {@link Mapping } * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getDBRef().add(newItem);
    -     * 
    + */ + public Mapping getMapping() + { + return mapping; + } + + /** + * Sets the value of the mapping property. + * + * @param value + * allowed object is {@link Mapping } + * + */ + public void setMapping(Mapping value) + { + this.mapping = value; + } + + /** + * Gets the value of the source property. * + * @return possible object is {@link String } * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Sequence.DBRef } - *

    + */ + public String getSource() + { + return source; + } + + /** + * Sets the value of the source property. * + * @param value + * allowed object is {@link String } * - * @return - * The value of the dbRef property. */ - public List getDBRef() { - if (dbRef == null) { - dbRef = new ArrayList(); - } - return this.dbRef; + public void setSource(String value) + { + this.source = value; } /** - * dataset sequence id for this sequence. Will be - * created as union of sequences. + * Gets the value of the version property. + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getDsseqid() { - return dsseqid; + public String getVersion() + { + return version; } /** - * Sets the value of the dsseqid property. + * Sets the value of the version property. * * @param value - * allowed object is - * {@link String } - * - * @see #getDsseqid() + * allowed object is {@link String } + * */ - public void setDsseqid(String value) { - this.dsseqid = value; + public void setVersion(String value) + { + this.version = value; } /** - * Biotype of the sequence (if known) + * Gets the value of the accessionId property. + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getBiotype() { - return biotype; + public String getAccessionId() + { + return accessionId; } /** - * Sets the value of the biotype property. + * Sets the value of the accessionId property. * * @param value - * allowed object is - * {@link String } - * - * @see #getBiotype() + * allowed object is {@link String } + * */ - public void setBiotype(String value) { - this.biotype = value; + public void setAccessionId(String value) + { + this.accessionId = value; } + /** + * true for gene locus mapping, source=species, version=assembly, + * accession=chromosome + * + * @return possible object is {@link Boolean } + * + */ + public boolean isLocus() + { + if (locus == null) + { + return false; + } + else + { + return locus; + } + } /** - *

    Java class for anonymous complex type

    . + * Sets the value of the locus property. * - *

    The following schema fragment specifies the expected content contained within this class.

    + * @param value + * allowed object is {@link Boolean } * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <sequence>
    -     *         <element ref="{www.vamsas.ac.uk/jalview/version2}Mapping" minOccurs="0"/>
    -     *       </sequence>
    -     *       <attribute name="source" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="version" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="accessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="locus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *       <attribute name="canonical" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + * @see #isLocus() + */ + public void setLocus(Boolean value) + { + this.locus = value; + } + + /** + * true for the representative accession for databases where multiple + * accessions map to the same entry (eg. Uniprot) * + * @return possible object is {@link Boolean } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "mapping" - }) - public static class DBRef { - - @XmlElement(name = "Mapping") - protected Mapping mapping; - @XmlAttribute(name = "source") - protected String source; - @XmlAttribute(name = "version") - protected String version; - @XmlAttribute(name = "accessionId") - protected String accessionId; - /** - * true for gene locus mapping, source=species, - * version=assembly, accession=chromosome - * - */ - @XmlAttribute(name = "locus") - protected Boolean locus; - /** - * true for the representative accession for - * databases where multiple accessions map to the same entry - * (eg. Uniprot) - * - */ - @XmlAttribute(name = "canonical") - protected Boolean canonical; - - /** - * Gets the value of the mapping property. - * - * @return - * possible object is - * {@link Mapping } - * - */ - public Mapping getMapping() { - return mapping; - } - - /** - * Sets the value of the mapping property. - * - * @param value - * allowed object is - * {@link Mapping } - * - */ - public void setMapping(Mapping value) { - this.mapping = value; - } - - /** - * Gets the value of the source property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSource() { - return source; - } - - /** - * Sets the value of the source property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSource(String value) { - this.source = value; - } - - /** - * Gets the value of the version property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getVersion() { - return version; - } - - /** - * Sets the value of the version property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setVersion(String value) { - this.version = value; - } - - /** - * Gets the value of the accessionId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAccessionId() { - return accessionId; - } - - /** - * Sets the value of the accessionId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAccessionId(String value) { - this.accessionId = value; - } - - /** - * true for gene locus mapping, source=species, - * version=assembly, accession=chromosome - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isLocus() { - if (locus == null) { - return false; - } else { - return locus; - } - } - - /** - * Sets the value of the locus property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isLocus() - */ - public void setLocus(Boolean value) { - this.locus = value; - } - - /** - * true for the representative accession for - * databases where multiple accessions map to the same entry - * (eg. Uniprot) - * - * @return - * possible object is - * {@link Boolean } - * - */ - public boolean isCanonical() { - if (canonical == null) { - return false; - } else { - return canonical; - } - } - - /** - * Sets the value of the canonical property. - * - * @param value - * allowed object is - * {@link Boolean } - * - * @see #isCanonical() - */ - public void setCanonical(Boolean value) { - this.canonical = value; - } + public boolean isCanonical() + { + if (canonical == null) + { + return false; + } + else + { + return canonical; + } + } + /** + * Sets the value of the canonical property. + * + * @param value + * allowed object is {@link Boolean } + * + * @see #isCanonical() + */ + public void setCanonical(Boolean value) + { + this.canonical = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/SequenceSet.java b/src/jalview/xml/binding/jalview/SequenceSet.java index 8629a7e..46c7007 100644 --- a/src/jalview/xml/binding/jalview/SequenceSet.java +++ b/src/jalview/xml/binding/jalview/SequenceSet.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -17,11 +16,16 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for anonymous complex type

    . + *

    + * Java class for anonymous complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType>
    @@ -53,327 +57,354 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "", propOrder = {
    -    "sequence",
    -    "annotation",
    -    "sequenceSetProperties",
    -    "alcodonFrame",
    -    "matrix"
    -})
    +@XmlType(
    +  name = "",
    +  propOrder =
    +  { "sequence", "annotation", "sequenceSetProperties", "alcodonFrame",
    +      "matrix" })
     @XmlRootElement(name = "SequenceSet")
    -public class SequenceSet {
    +public class SequenceSet
    +{
     
    -    @XmlElement(name = "Sequence")
    -    protected List sequence;
    -    @XmlElement(name = "Annotation")
    -    protected List annotation;
    -    protected List sequenceSetProperties;
    -    @XmlElement(name = "AlcodonFrame")
    -    protected List alcodonFrame;
    -    /**
    -     * Matrices referred to by this set of sequences.
    -     * 
    -     */
    -    @XmlElement(name = "Matrix")
    -    protected List matrix;
    -    @XmlAttribute(name = "gapChar", required = true)
    -    protected String gapChar;
    -    /**
    -     * reference to set where jalview will gather the
    -     * 						dataset sequences for all sequences in the set.
    -     * 
    -     */
    -    @XmlAttribute(name = "datasetId")
    -    protected String datasetId;
    +  @XmlElement(name = "Sequence")
    +  protected List sequence;
     
    -    /**
    -     * Gets the value of the sequence property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the sequence property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getSequence().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Sequence } - *

    - * - * - * @return - * The value of the sequence property. - */ - public List getSequence() { - if (sequence == null) { - sequence = new ArrayList(); - } - return this.sequence; + @XmlElement(name = "Annotation") + protected List annotation; + + protected List sequenceSetProperties; + + @XmlElement(name = "AlcodonFrame") + protected List alcodonFrame; + + /** + * Matrices referred to by this set of sequences. + * + */ + @XmlElement(name = "Matrix") + protected List matrix; + + @XmlAttribute(name = "gapChar", required = true) + protected String gapChar; + + /** + * reference to set where jalview will gather the dataset sequences for all + * sequences in the set. + * + */ + @XmlAttribute(name = "datasetId") + protected String datasetId; + + /** + * Gets the value of the sequence property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the sequence property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getSequence().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Sequence } + *

    + * + * + * @return The value of the sequence property. + */ + public List getSequence() + { + if (sequence == null) + { + sequence = new ArrayList(); } + return this.sequence; + } - /** - * Gets the value of the annotation property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the annotation property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getAnnotation().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link Annotation } - *

    - * - * - * @return - * The value of the annotation property. - */ - public List getAnnotation() { - if (annotation == null) { - annotation = new ArrayList(); - } - return this.annotation; + /** + * Gets the value of the annotation property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the annotation property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getAnnotation().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link Annotation + * } + *

    + * + * + * @return The value of the annotation property. + */ + public List getAnnotation() + { + if (annotation == null) + { + annotation = new ArrayList(); } + return this.annotation; + } - /** - * Gets the value of the sequenceSetProperties property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the sequenceSetProperties property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getSequenceSetProperties().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link SequenceSet.SequenceSetProperties } - *

    - * - * - * @return - * The value of the sequenceSetProperties property. - */ - public List getSequenceSetProperties() { - if (sequenceSetProperties == null) { - sequenceSetProperties = new ArrayList(); - } - return this.sequenceSetProperties; + /** + * Gets the value of the sequenceSetProperties property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the sequenceSetProperties property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getSequenceSetProperties().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link SequenceSet.SequenceSetProperties } + *

    + * + * + * @return The value of the sequenceSetProperties property. + */ + public List getSequenceSetProperties() + { + if (sequenceSetProperties == null) + { + sequenceSetProperties = new ArrayList(); } + return this.sequenceSetProperties; + } - /** - * Gets the value of the alcodonFrame property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the alcodonFrame property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getAlcodonFrame().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link AlcodonFrame } - *

    - * - * - * @return - * The value of the alcodonFrame property. - */ - public List getAlcodonFrame() { - if (alcodonFrame == null) { - alcodonFrame = new ArrayList(); - } - return this.alcodonFrame; + /** + * Gets the value of the alcodonFrame property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the alcodonFrame property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getAlcodonFrame().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list + * {@link AlcodonFrame } + *

    + * + * + * @return The value of the alcodonFrame property. + */ + public List getAlcodonFrame() + { + if (alcodonFrame == null) + { + alcodonFrame = new ArrayList(); } + return this.alcodonFrame; + } - /** - * Matrices referred to by this set of sequences. - * - * Gets the value of the matrix property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the matrix property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getMatrix().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link MatrixType } - *

    - * - * - * @return - * The value of the matrix property. - */ - public List getMatrix() { - if (matrix == null) { - matrix = new ArrayList(); - } - return this.matrix; + /** + * Matrices referred to by this set of sequences. + * + * Gets the value of the matrix property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the matrix property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getMatrix().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link MatrixType + * } + *

    + * + * + * @return The value of the matrix property. + */ + public List getMatrix() + { + if (matrix == null) + { + matrix = new ArrayList(); } + return this.matrix; + } + + /** + * Gets the value of the gapChar property. + * + * @return possible object is {@link String } + * + */ + public String getGapChar() + { + return gapChar; + } + + /** + * Sets the value of the gapChar property. + * + * @param value + * allowed object is {@link String } + * + */ + public void setGapChar(String value) + { + this.gapChar = value; + } + + /** + * reference to set where jalview will gather the dataset sequences for all + * sequences in the set. + * + * @return possible object is {@link String } + * + */ + public String getDatasetId() + { + return datasetId; + } + + /** + * Sets the value of the datasetId property. + * + * @param value + * allowed object is {@link String } + * + * @see #getDatasetId() + */ + public void setDatasetId(String value) + { + this.datasetId = value; + } + + /** + *

    + * Java class for anonymous complex type + *

    + * . + * + *

    + * The following schema fragment specifies the expected content contained + * within this class. + *

    + * + *
    +   * <complexType>
    +   *   <complexContent>
    +   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    +   *       <attribute name="key" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *       <attribute name="value" type="{http://www.w3.org/2001/XMLSchema}string" />
    +   *     </restriction>
    +   *   </complexContent>
    +   * </complexType>
    +   * 
    + * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class SequenceSetProperties + { + + @XmlAttribute(name = "key") + protected String key; + + @XmlAttribute(name = "value") + protected String value; /** - * Gets the value of the gapChar property. + * Gets the value of the key property. + * + * @return possible object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getGapChar() { - return gapChar; + public String getKey() + { + return key; } /** - * Sets the value of the gapChar property. + * Sets the value of the key property. * * @param value - * allowed object is - * {@link String } - * - */ - public void setGapChar(String value) { - this.gapChar = value; - } - - /** - * reference to set where jalview will gather the - * dataset sequences for all sequences in the set. + * allowed object is {@link String } * - * @return - * possible object is - * {@link String } - * */ - public String getDatasetId() { - return datasetId; + public void setKey(String value) + { + this.key = value; } /** - * Sets the value of the datasetId property. + * Gets the value of the value property. + * + * @return possible object is {@link String } * - * @param value - * allowed object is - * {@link String } - * - * @see #getDatasetId() */ - public void setDatasetId(String value) { - this.datasetId = value; + public String getValue() + { + return value; } - /** - *

    Java class for anonymous complex type

    . - * - *

    The following schema fragment specifies the expected content contained within this class.

    - * - *
    -     * <complexType>
    -     *   <complexContent>
    -     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    -     *       <attribute name="key" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *       <attribute name="value" type="{http://www.w3.org/2001/XMLSchema}string" />
    -     *     </restriction>
    -     *   </complexContent>
    -     * </complexType>
    -     * 
    + * Sets the value of the value property. * + * @param value + * allowed object is {@link String } * */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class SequenceSetProperties { - - @XmlAttribute(name = "key") - protected String key; - @XmlAttribute(name = "value") - protected String value; - - /** - * Gets the value of the key property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getKey() { - return key; - } - - /** - * Sets the value of the key property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setKey(String value) { - this.key = value; - } - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - + public void setValue(String value) + { + this.value = value; } + } + } diff --git a/src/jalview/xml/binding/jalview/SequenceType.java b/src/jalview/xml/binding/jalview/SequenceType.java index 590ea6d..703d9f0 100644 --- a/src/jalview/xml/binding/jalview/SequenceType.java +++ b/src/jalview/xml/binding/jalview/SequenceType.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import javax.xml.bind.annotation.XmlAccessType; @@ -14,11 +13,16 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for SequenceType complex type

    . + *

    + * Java class for SequenceType complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="SequenceType">
    @@ -38,116 +42,111 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "SequenceType", propOrder = {
    -    "sequence",
    -    "name"
    -})
    -@XmlSeeAlso({
    -    Sequence.class
    -})
    -public class SequenceType {
    -
    -    protected String sequence;
    -    protected String name;
    -    @XmlAttribute(name = "id")
    -    protected String id;
    -    @XmlAttribute(name = "description")
    -    protected String description;
    -
    -    /**
    -     * Gets the value of the sequence property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getSequence() {
    -        return sequence;
    -    }
    -
    -    /**
    -     * Sets the value of the sequence property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setSequence(String value) {
    -        this.sequence = value;
    -    }
    -
    -    /**
    -     * Gets the value of the name property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getName() {
    -        return name;
    -    }
    -
    -    /**
    -     * Sets the value of the name property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setName(String value) {
    -        this.name = value;
    -    }
    -
    -    /**
    -     * Gets the value of the id property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getId() {
    -        return id;
    -    }
    -
    -    /**
    -     * Sets the value of the id property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setId(String value) {
    -        this.id = value;
    -    }
    -
    -    /**
    -     * Gets the value of the description property.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getDescription() {
    -        return description;
    -    }
    -
    -    /**
    -     * Sets the value of the description property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     */
    -    public void setDescription(String value) {
    -        this.description = value;
    -    }
    +@XmlType(name = "SequenceType", propOrder = { "sequence", "name" })
    +@XmlSeeAlso({ Sequence.class })
    +public class SequenceType
    +{
    +
    +  protected String sequence;
    +
    +  protected String name;
    +
    +  @XmlAttribute(name = "id")
    +  protected String id;
    +
    +  @XmlAttribute(name = "description")
    +  protected String description;
    +
    +  /**
    +   * Gets the value of the sequence property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getSequence()
    +  {
    +    return sequence;
    +  }
    +
    +  /**
    +   * Sets the value of the sequence property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setSequence(String value)
    +  {
    +    this.sequence = value;
    +  }
    +
    +  /**
    +   * Gets the value of the name property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getName()
    +  {
    +    return name;
    +  }
    +
    +  /**
    +   * Sets the value of the name property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setName(String value)
    +  {
    +    this.name = value;
    +  }
    +
    +  /**
    +   * Gets the value of the id property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getId()
    +  {
    +    return id;
    +  }
    +
    +  /**
    +   * Sets the value of the id property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setId(String value)
    +  {
    +    this.id = value;
    +  }
    +
    +  /**
    +   * Gets the value of the description property.
    +   * 
    +   * @return possible object is {@link String }
    +   * 
    +   */
    +  public String getDescription()
    +  {
    +    return description;
    +  }
    +
    +  /**
    +   * Sets the value of the description property.
    +   * 
    +   * @param value
    +   *          allowed object is {@link String }
    +   * 
    +   */
    +  public void setDescription(String value)
    +  {
    +    this.description = value;
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/ThresholdType.java b/src/jalview/xml/binding/jalview/ThresholdType.java
    index 345ede6..fd5a31a 100644
    --- a/src/jalview/xml/binding/jalview/ThresholdType.java
    +++ b/src/jalview/xml/binding/jalview/ThresholdType.java
    @@ -5,20 +5,24 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import javax.xml.bind.annotation.XmlEnum;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * Whether filter has a threshold, and if so is it
    - * 				above or below
    + * Whether filter has a threshold, and if so is it above or below
    + * 
    + * 

    + * Java class for ThresholdType + *

    + * . * - *

    Java class for ThresholdType

    . + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * - *

    The following schema fragment specifies the expected content contained within this class.

    *
      * <simpleType name="ThresholdType">
      *   <restriction base="{http://www.w3.org/2001/XMLSchema}string">
    @@ -32,18 +36,19 @@ import javax.xml.bind.annotation.XmlType;
      */
     @XmlType(name = "ThresholdType", namespace = "www.jalview.org/colours")
     @XmlEnum
    -public enum ThresholdType {
    +public enum ThresholdType
    +{
     
    -    NONE,
    -    ABOVE,
    -    BELOW;
    +  NONE, ABOVE, BELOW;
     
    -    public String value() {
    -        return name();
    -    }
    +  public String value()
    +  {
    +    return name();
    +  }
     
    -    public static ThresholdType fromValue(String v) {
    -        return valueOf(v);
    -    }
    +  public static ThresholdType fromValue(String v)
    +  {
    +    return valueOf(v);
    +  }
     
     }
    diff --git a/src/jalview/xml/binding/jalview/VAMSAS.java b/src/jalview/xml/binding/jalview/VAMSAS.java
    index bd17cc2..621339a 100644
    --- a/src/jalview/xml/binding/jalview/VAMSAS.java
    +++ b/src/jalview/xml/binding/jalview/VAMSAS.java
    @@ -5,7 +5,6 @@
     // Generated on: 2024.07.25 at 04:43:38 PM BST 
     //
     
    -
     package jalview.xml.binding.jalview;
     
     import java.util.ArrayList;
    @@ -15,11 +14,16 @@ import javax.xml.bind.annotation.XmlAccessorType;
     import javax.xml.bind.annotation.XmlElement;
     import javax.xml.bind.annotation.XmlType;
     
    -
     /**
    - * 

    Java class for VAMSAS complex type

    . + *

    + * Java class for VAMSAS complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="VAMSAS">
    @@ -37,79 +41,85 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "VAMSAS", propOrder = {
    -    "tree",
    -    "sequenceSet"
    -})
    -public class VAMSAS {
    +@XmlType(name = "VAMSAS", propOrder = { "tree", "sequenceSet" })
    +public class VAMSAS
    +{
    +
    +  @XmlElement(name = "Tree")
    +  protected List tree;
     
    -    @XmlElement(name = "Tree")
    -    protected List tree;
    -    @XmlElement(name = "SequenceSet")
    -    protected List sequenceSet;
    +  @XmlElement(name = "SequenceSet")
    +  protected List sequenceSet;
     
    -    /**
    -     * Gets the value of the tree property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the tree property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getTree().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the tree property. - */ - public List getTree() { - if (tree == null) { - tree = new ArrayList(); - } - return this.tree; + /** + * Gets the value of the tree property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the tree property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getTree().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String } + *

    + * + * + * @return The value of the tree property. + */ + public List getTree() + { + if (tree == null) + { + tree = new ArrayList(); } + return this.tree; + } - /** - * Gets the value of the sequenceSet property. - * - *

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the sequenceSet property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getSequenceSet().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link SequenceSet } - *

    - * - * - * @return - * The value of the sequenceSet property. - */ - public List getSequenceSet() { - if (sequenceSet == null) { - sequenceSet = new ArrayList(); - } - return this.sequenceSet; + /** + * Gets the value of the sequenceSet property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the sequenceSet property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getSequenceSet().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link SequenceSet + * } + *

    + * + * + * @return The value of the sequenceSet property. + */ + public List getSequenceSet() + { + if (sequenceSet == null) + { + sequenceSet = new ArrayList(); } + return this.sequenceSet; + } } diff --git a/src/jalview/xml/binding/jalview/WebServiceParameterSet.java b/src/jalview/xml/binding/jalview/WebServiceParameterSet.java index 78833f6..4489516 100644 --- a/src/jalview/xml/binding/jalview/WebServiceParameterSet.java +++ b/src/jalview/xml/binding/jalview/WebServiceParameterSet.java @@ -5,7 +5,6 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // - package jalview.xml.binding.jalview; import java.util.ArrayList; @@ -18,11 +17,16 @@ import javax.xml.bind.annotation.XmlSchemaType; import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.bind.annotation.XmlType; - /** - *

    Java class for WebServiceParameterSet complex type

    . + *

    + * Java class for WebServiceParameterSet complex type + *

    + * . * - *

    The following schema fragment specifies the expected content contained within this class.

    + *

    + * The following schema fragment specifies the expected content contained within + * this class. + *

    * *
      * <complexType name="WebServiceParameterSet">
    @@ -43,201 +47,197 @@ import javax.xml.bind.annotation.XmlType;
      * 
      */
     @XmlAccessorType(XmlAccessType.FIELD)
    -@XmlType(name = "WebServiceParameterSet", namespace = "www.jalview.org/xml/wsparamset", propOrder = {
    -    "version",
    -    "description",
    -    "serviceURL",
    -    "parameters"
    -})
    +@XmlType(
    +  name = "WebServiceParameterSet",
    +  namespace = "www.jalview.org/xml/wsparamset",
    +  propOrder =
    +  { "version", "description", "serviceURL", "parameters" })
     @XmlSeeAlso({
    -    jalview.xml.binding.jalview.JalviewModel.Viewport.CalcIdParam.class
    -})
    -public class WebServiceParameterSet {
    -
    -    /**
    -     * A Jalview Web Service Parameter Set container
    -     * 						version number.
    -     * 						Version 1 created for storing Jaba user presets.
    -     * 
    -     */
    -    @XmlElement(name = "Version", namespace = "")
    -    protected String version;
    -    /**
    -     * Short description - as utf8 encoded text. This is
    -     * 						usually displayed
    -     * 						in the body of an HTML capable tooltip, so HTML tags may be embedded
    -     * 						using standard UTF8 encoding.
    -     * 
    -     */
    -    @XmlElement(namespace = "")
    -    protected String description;
    -    /**
    -     * URL for which the parameter set is valid. Jalview will use it to
    -     * 						match up parameter sets to service instances that can parse the
    -     * 						parameter set payload.
    -     * 
    -     */
    -    @XmlElement(namespace = "", required = true)
    -    @XmlSchemaType(name = "anyURI")
    -    protected List serviceURL;
    -    /**
    -     * UTF8 encoded string to be processed into a specific web services'
    -     * 						parameter set. Note - newlines may be important to the structure
    -     * 						of this file.
    -     * 
    -     */
    -    @XmlElement(namespace = "", required = true)
    -    protected String parameters;
    -    /**
    -     * The short name for the parameter set. This will be shown amongst the
    -     * 					other presets for the web service.
    -     * 
    -     */
    -    @XmlAttribute(name = "name", required = true)
    -    protected String name;
    -
    -    /**
    -     * A Jalview Web Service Parameter Set container
    -     * 						version number.
    -     * 						Version 1 created for storing Jaba user presets.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getVersion() {
    -        return version;
    -    }
    -
    -    /**
    -     * Sets the value of the version property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     * @see #getVersion()
    -     */
    -    public void setVersion(String value) {
    -        this.version = value;
    -    }
    -
    -    /**
    -     * Short description - as utf8 encoded text. This is
    -     * 						usually displayed
    -     * 						in the body of an HTML capable tooltip, so HTML tags may be embedded
    -     * 						using standard UTF8 encoding.
    -     * 
    -     * @return
    -     *     possible object is
    -     *     {@link String }
    -     *     
    -     */
    -    public String getDescription() {
    -        return description;
    -    }
    -
    -    /**
    -     * Sets the value of the description property.
    -     * 
    -     * @param value
    -     *     allowed object is
    -     *     {@link String }
    -     *     
    -     * @see #getDescription()
    -     */
    -    public void setDescription(String value) {
    -        this.description = value;
    -    }
    -
    -    /**
    -     * URL for which the parameter set is valid. Jalview will use it to
    -     * 						match up parameter sets to service instances that can parse the
    -     * 						parameter set payload.
    -     * 
    -     * Gets the value of the serviceURL property.
    -     * 
    -     * 

    This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the serviceURL property.

    - * - *

    - * For example, to add a new item, do as follows: - *

    - *
    -     * getServiceURL().add(newItem);
    -     * 
    - * - * - *

    - * Objects of the following type(s) are allowed in the list - * {@link String } - *

    - * - * - * @return - * The value of the serviceURL property. - */ - public List getServiceURL() { - if (serviceURL == null) { - serviceURL = new ArrayList(); - } - return this.serviceURL; - } - - /** - * UTF8 encoded string to be processed into a specific web services' - * parameter set. Note - newlines may be important to the structure - * of this file. - * - * @return - * possible object is - * {@link String } - * - */ - public String getParameters() { - return parameters; - } - - /** - * Sets the value of the parameters property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getParameters() - */ - public void setParameters(String value) { - this.parameters = value; - } - - /** - * The short name for the parameter set. This will be shown amongst the - * other presets for the web service. - * - * @return - * possible object is - * {@link String } - * - */ - public String getName() { - return name; - } - - /** - * Sets the value of the name property. - * - * @param value - * allowed object is - * {@link String } - * - * @see #getName() - */ - public void setName(String value) { - this.name = value; + jalview.xml.binding.jalview.JalviewModel.Viewport.CalcIdParam.class }) +public class WebServiceParameterSet +{ + + /** + * A Jalview Web Service Parameter Set container version number. Version 1 + * created for storing Jaba user presets. + * + */ + @XmlElement(name = "Version", namespace = "") + protected String version; + + /** + * Short description - as utf8 encoded text. This is usually displayed in the + * body of an HTML capable tooltip, so HTML tags may be embedded using + * standard UTF8 encoding. + * + */ + @XmlElement(namespace = "") + protected String description; + + /** + * URL for which the parameter set is valid. Jalview will use it to match up + * parameter sets to service instances that can parse the parameter set + * payload. + * + */ + @XmlElement(namespace = "", required = true) + @XmlSchemaType(name = "anyURI") + protected List serviceURL; + + /** + * UTF8 encoded string to be processed into a specific web services' parameter + * set. Note - newlines may be important to the structure of this file. + * + */ + @XmlElement(namespace = "", required = true) + protected String parameters; + + /** + * The short name for the parameter set. This will be shown amongst the other + * presets for the web service. + * + */ + @XmlAttribute(name = "name", required = true) + protected String name; + + /** + * A Jalview Web Service Parameter Set container version number. Version 1 + * created for storing Jaba user presets. + * + * @return possible object is {@link String } + * + */ + public String getVersion() + { + return version; + } + + /** + * Sets the value of the version property. + * + * @param value + * allowed object is {@link String } + * + * @see #getVersion() + */ + public void setVersion(String value) + { + this.version = value; + } + + /** + * Short description - as utf8 encoded text. This is usually displayed in the + * body of an HTML capable tooltip, so HTML tags may be embedded using + * standard UTF8 encoding. + * + * @return possible object is {@link String } + * + */ + public String getDescription() + { + return description; + } + + /** + * Sets the value of the description property. + * + * @param value + * allowed object is {@link String } + * + * @see #getDescription() + */ + public void setDescription(String value) + { + this.description = value; + } + + /** + * URL for which the parameter set is valid. Jalview will use it to match up + * parameter sets to service instances that can parse the parameter set + * payload. + * + * Gets the value of the serviceURL property. + * + *

    + * This accessor method returns a reference to the live list, not a snapshot. + * Therefore any modification you make to the returned list will be present + * inside the JAXB object. This is why there is not a set method + * for the serviceURL property. + *

    + * + *

    + * For example, to add a new item, do as follows: + *

    + * + *
    +   * getServiceURL().add(newItem);
    +   * 
    + * + * + *

    + * Objects of the following type(s) are allowed in the list {@link String } + *

    + * + * + * @return The value of the serviceURL property. + */ + public List getServiceURL() + { + if (serviceURL == null) + { + serviceURL = new ArrayList(); } + return this.serviceURL; + } + + /** + * UTF8 encoded string to be processed into a specific web services' parameter + * set. Note - newlines may be important to the structure of this file. + * + * @return possible object is {@link String } + * + */ + public String getParameters() + { + return parameters; + } + + /** + * Sets the value of the parameters property. + * + * @param value + * allowed object is {@link String } + * + * @see #getParameters() + */ + public void setParameters(String value) + { + this.parameters = value; + } + + /** + * The short name for the parameter set. This will be shown amongst the other + * presets for the web service. + * + * @return possible object is {@link String } + * + */ + public String getName() + { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is {@link String } + * + * @see #getName() + */ + public void setName(String value) + { + this.name = value; + } } diff --git a/src/jalview/xml/binding/jalview/package-info.java b/src/jalview/xml/binding/jalview/package-info.java index cdebe06..d2cfb8b 100644 --- a/src/jalview/xml/binding/jalview/package-info.java +++ b/src/jalview/xml/binding/jalview/package-info.java @@ -5,5 +5,7 @@ // Generated on: 2024.07.25 at 04:43:38 PM BST // -@javax.xml.bind.annotation.XmlSchema(namespace = "www.vamsas.ac.uk/jalview/version2", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +@javax.xml.bind.annotation.XmlSchema( + namespace = "www.vamsas.ac.uk/jalview/version2", + elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package jalview.xml.binding.jalview; diff --git a/test/jalview/analysis/AlignSeqTest.java b/test/jalview/analysis/AlignSeqTest.java index 03bdd0b..1f94601 100644 --- a/test/jalview/analysis/AlignSeqTest.java +++ b/test/jalview/analysis/AlignSeqTest.java @@ -76,16 +76,18 @@ public class AlignSeqTest String s = "aArRnNzZxX *.-?"; assertArrayEquals(expected, as.indexEncode(s)); } - @Test(groups= {"Functional"}) + + @Test(groups = { "Functional" }) public void testGlobalAlignment() { - String seq1="CAGCTAGCG",seq2="CCATACGA"; - Sequence sq1=new Sequence("s1",seq1),sq2=new Sequence("s2",seq2); + String seq1 = "CAGCTAGCG", seq2 = "CCATACGA"; + Sequence sq1 = new Sequence("s1", seq1), sq2 = new Sequence("s2", seq2); // AlignSeq doesn't report the unaligned regions at either end of sequences - //String alseq1="-CAGCTAGCG-",alseq2="CCA--TA-CGA"; + // String alseq1="-CAGCTAGCG-",alseq2="CCA--TA-CGA"; // so we check we have the aligned segment correct only - String alseq1="CAGCTAGCG",alseq2="CA--TA-CG"; - AlignSeq as = AlignSeq.doGlobalNWAlignment(sq1,sq2,AlignSeq.DNA); - assertEquals(as.getAStr1()+"\n"+as.getAStr2(),alseq1+"\n"+alseq2); + String alseq1 = "CAGCTAGCG", alseq2 = "CA--TA-CG"; + AlignSeq as = AlignSeq.doGlobalNWAlignment(sq1, sq2, AlignSeq.DNA); + assertEquals(as.getAStr1() + "\n" + as.getAStr2(), + alseq1 + "\n" + alseq2); } } diff --git a/test/jalview/analysis/AlignmentUtilsTests.java b/test/jalview/analysis/AlignmentUtilsTests.java index 1cf9a80..fc2a577 100644 --- a/test/jalview/analysis/AlignmentUtilsTests.java +++ b/test/jalview/analysis/AlignmentUtilsTests.java @@ -83,25 +83,29 @@ public class AlignmentUtilsTests { JvOptionPane.setInteractiveMode(false); JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); - - AlignmentAnnotation ann1 = new AlignmentAnnotation("Secondary Structure", "Secondary Structure", - new Annotation[] {}); - AlignmentAnnotation ann2 = new AlignmentAnnotation("jnetpred", "jnetpred", + + AlignmentAnnotation ann1 = new AlignmentAnnotation( + "Secondary Structure", "Secondary Structure", new Annotation[] {}); + AlignmentAnnotation ann2 = new AlignmentAnnotation("jnetpred", + "jnetpred", new Annotation[] {}); AlignmentAnnotation ann3 = new AlignmentAnnotation("Temp", "Temp", new Annotation[] {}); AlignmentAnnotation ann4 = new AlignmentAnnotation("Temp", "Temp", new Annotation[] {}); - - AlignmentAnnotation[] anns1 = new AlignmentAnnotation[] {ann1, ann3, ann4}; - AlignmentAnnotation[] anns2 = new AlignmentAnnotation[] {ann2, ann3, ann4}; - - AlignmentAnnotation[] anns3 = new AlignmentAnnotation[] {ann3, ann4}; - + AlignmentAnnotation[] anns1 = new AlignmentAnnotation[] { ann1, ann3, + ann4 }; + + AlignmentAnnotation[] anns2 = new AlignmentAnnotation[] { ann2, ann3, + ann4 }; + + AlignmentAnnotation[] anns3 = new AlignmentAnnotation[] { ann3, ann4 }; + AlignmentAnnotation[] anns4 = new AlignmentAnnotation[0]; - - AlignmentAnnotation[] anns5 = new AlignmentAnnotation[] {ann1, ann2, ann3, ann4}; + + AlignmentAnnotation[] anns5 = new AlignmentAnnotation[] { ann1, ann2, + ann3, ann4 }; } @Test(groups = { "Functional" }) @@ -2775,139 +2779,179 @@ public class AlignmentUtilsTests && al.getAlignmentAnnotation().length == 2); } - - @Test(groups = "Functional", dataProvider = "SecondaryStructureAnnotations") - public void testSecondaryStructurePresentAndSources(AlignmentAnnotation[] annotations, boolean expectedSSPresent, ArrayList expectedSSSources) { - Assert.assertEquals(expectedSSPresent, AlignmentUtils.isSecondaryStructurePresent(annotations)); - } - @DataProvider(name = "SecondaryStructureAnnotations") - public static Object[][] provideSecondaryStructureAnnotations() { - AlignmentAnnotation ann1 = new AlignmentAnnotation("Secondary Structure", "Secondary Structure", new Annotation[]{}); - AlignmentAnnotation ann2 = new AlignmentAnnotation("jnetpred", "jnetpred", new Annotation[]{}); - AlignmentAnnotation ann3 = new AlignmentAnnotation("Temp", "Temp", new Annotation[]{}); - AlignmentAnnotation ann4 = new AlignmentAnnotation("Temp", "Temp", new Annotation[]{}); - - List ssSources1 = new ArrayList<>(Arrays.asList("3D Structures")); - List ssSources2 = new ArrayList<>(Arrays.asList("JPred")); - List ssSources3 = new ArrayList<>(Arrays.asList("3D Structures", "JPred")); - List ssSources4 = new ArrayList<>(); - - return new Object[][]{ - {new AlignmentAnnotation[]{ann1, ann3, ann4}, true, ssSources1}, - {new AlignmentAnnotation[]{ann2, ann3, ann4}, true, ssSources2}, - {new AlignmentAnnotation[]{ann3, ann4}, false, ssSources4}, - {new AlignmentAnnotation[]{}, false, ssSources4}, - {new AlignmentAnnotation[]{ann1, ann2, ann3, ann4}, true, ssSources3} - }; - } - - @Test(dataProvider = "SecondaryStructureAnnotationColours") - public void testSecondaryStructureAnnotationColour(char symbol, Color expectedColor) { - Color actualColor = AlignmentUtils.getSecondaryStructureAnnotationColour(symbol); - Assert.assertEquals(actualColor, expectedColor); - } + @Test( + groups = "Functional", + dataProvider = "SecondaryStructureAnnotations") + public void testSecondaryStructurePresentAndSources( + AlignmentAnnotation[] annotations, boolean expectedSSPresent, + ArrayList expectedSSSources) + { + Assert.assertEquals(expectedSSPresent, + AlignmentUtils.isSecondaryStructurePresent(annotations)); + } - @DataProvider(name = "SecondaryStructureAnnotationColours") - public static Object[][] provideSecondaryStructureAnnotationColours() { - return new Object[][]{ - {'C', Color.gray}, - {'E', Color.green}, - {'H', Color.red}, - {'-', Color.gray} - }; - } - - @Test(dataProvider = "SSAnnotationPresence") - public void testIsSSAnnotationPresent(Map> annotations, boolean expectedPresence) { - boolean actualPresence = AlignmentUtils.isSSAnnotationPresent(annotations); - Assert.assertEquals(actualPresence, expectedPresence); - } + @DataProvider(name = "SecondaryStructureAnnotations") + public static Object[][] provideSecondaryStructureAnnotations() + { + AlignmentAnnotation ann1 = new AlignmentAnnotation( + "Secondary Structure", "Secondary Structure", + new Annotation[] {}); + AlignmentAnnotation ann2 = new AlignmentAnnotation("jnetpred", + "jnetpred", new Annotation[] {}); + AlignmentAnnotation ann3 = new AlignmentAnnotation("Temp", "Temp", + new Annotation[] {}); + AlignmentAnnotation ann4 = new AlignmentAnnotation("Temp", "Temp", + new Annotation[] {}); - @DataProvider(name = "SSAnnotationPresence") - public static Object[][] provideSSAnnotationPresence() { - Map> annotations1 = new HashMap<>(); - SequenceI seq1 = new Sequence("Seq1", "ASD---ASD---ASD", 37, 45); - List annotationsList1 = new ArrayList<>(); - annotationsList1.add(new AlignmentAnnotation("Secondary Structure", "Secondary Structure", new Annotation[]{})); - annotations1.put(seq1, annotationsList1); // Annotation present secondary structure for seq1 - - Map> annotations2 = new HashMap<>(); - SequenceI seq2 = new Sequence("Seq2", "ASD---ASD------", 37, 42); - List annotationsList2 = new ArrayList<>(); - annotationsList2.add(new AlignmentAnnotation("Other Annotation", "Other Annotation", new Annotation[]{})); - annotations2.put(seq2, annotationsList2); // Annotation not related to any of secondary structure for seq2 - - Map> annotations3 = new HashMap<>(); - // Empty annotation map - - Map> annotations4 = new HashMap<>(); - SequenceI seq4 = new Sequence("Seq4", "ASD---ASD---AS-", 37, 44); - List annotationsList4 = new ArrayList<>(); - annotationsList4.add(new AlignmentAnnotation("jnetpred", "jnetpred", new Annotation[]{})); - annotations4.put(seq4, annotationsList4); // Annotation present from JPred for seq4 - - - return new Object[][]{ - {annotations1, true}, // Annotations present secondary structure present - {annotations2, false}, // No annotations related to any of the secondary structure present - {annotations3, false}, // Empty annotation map - {annotations4, true}, // Annotations present from JPred secondary structure present - }; - } - - @Test - public void testGetSSSourceFromAnnotationDescription(AlignmentAnnotation[] annotations, String expectedSSSource) { - List actualSSSource = AlignmentUtils.extractSSSourceInAlignmentAnnotation(annotations); - Assert.assertEquals(actualSSSource, expectedSSSource); - } - - @DataProvider(name = "SSSourceFromAnnotationDescription") - public static Object[][] provideSSSourceFromAnnotationDescription() { - Map> annotations1 = new HashMap<>(); - SequenceI seq1 = new Sequence("Seq1", "ASD---ASD---ASD", 37, 45); - List annotationsList1 = new ArrayList<>(); - annotationsList1.add(new AlignmentAnnotation("jnetpred", "JPred Output", new Annotation[]{})); - annotations1.put(seq1, annotationsList1); // Annotation present from JPred for seq1 - - Map> annotations2 = new HashMap<>(); - SequenceI seq2 = new Sequence("Seq2", "ASD---ASD------", 37, 42); - List annotationsList2 = new ArrayList<>(); - annotationsList2.add(new AlignmentAnnotation("Secondary Structure", - "Secondary Structure for af-q43517-f1A", new Annotation[]{})); - annotations2.put(seq2, annotationsList2); // Annotation present secondary structure from Alphafold for seq2 - - Map> annotations3 = new HashMap<>(); - // Empty annotation map - - Map> annotations4 = new HashMap<>(); - SequenceI seq4 = new Sequence("Seq4", "ASD---ASD---AS-", 37, 44); - List annotationsList4 = new ArrayList<>(); - annotationsList4.add(new AlignmentAnnotation("Secondary Structure", - "Secondary Structure for 4zhpA", new Annotation[]{})); - annotations4.put(seq4, annotationsList4); // Annotation present secondary structure from pdb for seq4 - - Map> annotations5 = new HashMap<>(); - SequenceI seq5 = new Sequence("Seq5", "ASD---ASD---AS-", 37, 44); - List annotationsList5 = new ArrayList<>(); - annotationsList5.add(new AlignmentAnnotation("Secondary Structure", - "Secondary Structure for p09911_54-147__3a7wzn.1.p3502557454997462030P", - new Annotation[]{})); - annotations5.put(seq5, annotationsList5); // Annotation present secondary structure from Swiss model for seq5 - - - //JPred Output - JPred - //Secondary Structure for af-q43517-f1A - Alphafold - //Secondary Structure for 4zhpA - Experimental - //Secondary Structure for p09911_54-147__3a7wzn.1.p3502557454997462030P - Swiss Model - - return new Object[][]{ - {annotations1, "JPred"}, - {annotations2, "Alphafold"}, - {annotations3, null}, - {annotations4, "PDB"}, - {annotations5, "Swiss Model"} - }; - } + List ssSources1 = new ArrayList<>( + Arrays.asList("3D Structures")); + List ssSources2 = new ArrayList<>(Arrays.asList("JPred")); + List ssSources3 = new ArrayList<>( + Arrays.asList("3D Structures", "JPred")); + List ssSources4 = new ArrayList<>(); + + return new Object[][] { + { new AlignmentAnnotation[] + { ann1, ann3, ann4 }, true, ssSources1 }, + { new AlignmentAnnotation[] + { ann2, ann3, ann4 }, true, ssSources2 }, + { new AlignmentAnnotation[] + { ann3, ann4 }, false, ssSources4 }, + { new AlignmentAnnotation[] {}, false, ssSources4 }, + { new AlignmentAnnotation[] + { ann1, ann2, ann3, ann4 }, true, ssSources3 } }; + } + + @Test(dataProvider = "SecondaryStructureAnnotationColours") + public void testSecondaryStructureAnnotationColour(char symbol, + Color expectedColor) + { + Color actualColor = AlignmentUtils + .getSecondaryStructureAnnotationColour(symbol); + Assert.assertEquals(actualColor, expectedColor); + } + + @DataProvider(name = "SecondaryStructureAnnotationColours") + public static Object[][] provideSecondaryStructureAnnotationColours() + { + return new Object[][] { { 'C', Color.gray }, { 'E', Color.green }, + { 'H', Color.red }, + { '-', Color.gray } }; + } + + @Test(dataProvider = "SSAnnotationPresence") + public void testIsSSAnnotationPresent( + Map> annotations, + boolean expectedPresence) + { + boolean actualPresence = AlignmentUtils + .isSSAnnotationPresent(annotations); + Assert.assertEquals(actualPresence, expectedPresence); + } + + @DataProvider(name = "SSAnnotationPresence") + public static Object[][] provideSSAnnotationPresence() + { + Map> annotations1 = new HashMap<>(); + SequenceI seq1 = new Sequence("Seq1", "ASD---ASD---ASD", 37, 45); + List annotationsList1 = new ArrayList<>(); + annotationsList1.add(new AlignmentAnnotation("Secondary Structure", + "Secondary Structure", new Annotation[] {})); + annotations1.put(seq1, annotationsList1); // Annotation present secondary + // structure for seq1 + + Map> annotations2 = new HashMap<>(); + SequenceI seq2 = new Sequence("Seq2", "ASD---ASD------", 37, 42); + List annotationsList2 = new ArrayList<>(); + annotationsList2.add(new AlignmentAnnotation("Other Annotation", + "Other Annotation", new Annotation[] {})); + annotations2.put(seq2, annotationsList2); // Annotation not related to any + // of secondary structure for seq2 + + Map> annotations3 = new HashMap<>(); + // Empty annotation map + + Map> annotations4 = new HashMap<>(); + SequenceI seq4 = new Sequence("Seq4", "ASD---ASD---AS-", 37, 44); + List annotationsList4 = new ArrayList<>(); + annotationsList4.add(new AlignmentAnnotation("jnetpred", "jnetpred", + new Annotation[] {})); + annotations4.put(seq4, annotationsList4); // Annotation present from JPred + // for seq4 + + return new Object[][] { { annotations1, true }, // Annotations present + // secondary structure + // present + { annotations2, false }, // No annotations related to any of the + // secondary structure present + { annotations3, false }, // Empty annotation map + { annotations4, true }, // Annotations present from JPred secondary + // structure present + }; + } + + @Test + public void testGetSSSourceFromAnnotationDescription( + AlignmentAnnotation[] annotations, String expectedSSSource) + { + List actualSSSource = AlignmentUtils + .extractSSSourceInAlignmentAnnotation(annotations); + Assert.assertEquals(actualSSSource, expectedSSSource); + } + + @DataProvider(name = "SSSourceFromAnnotationDescription") + public static Object[][] provideSSSourceFromAnnotationDescription() + { + Map> annotations1 = new HashMap<>(); + SequenceI seq1 = new Sequence("Seq1", "ASD---ASD---ASD", 37, 45); + List annotationsList1 = new ArrayList<>(); + annotationsList1.add(new AlignmentAnnotation("jnetpred", "JPred Output", + new Annotation[] {})); + annotations1.put(seq1, annotationsList1); // Annotation present from JPred + // for seq1 + + Map> annotations2 = new HashMap<>(); + SequenceI seq2 = new Sequence("Seq2", "ASD---ASD------", 37, 42); + List annotationsList2 = new ArrayList<>(); + annotationsList2.add(new AlignmentAnnotation("Secondary Structure", + "Secondary Structure for af-q43517-f1A", new Annotation[] {})); + annotations2.put(seq2, annotationsList2); // Annotation present secondary + // structure from Alphafold for + // seq2 + + Map> annotations3 = new HashMap<>(); + // Empty annotation map + + Map> annotations4 = new HashMap<>(); + SequenceI seq4 = new Sequence("Seq4", "ASD---ASD---AS-", 37, 44); + List annotationsList4 = new ArrayList<>(); + annotationsList4.add(new AlignmentAnnotation("Secondary Structure", + "Secondary Structure for 4zhpA", new Annotation[] {})); + annotations4.put(seq4, annotationsList4); // Annotation present secondary + // structure from pdb for seq4 + + Map> annotations5 = new HashMap<>(); + SequenceI seq5 = new Sequence("Seq5", "ASD---ASD---AS-", 37, 44); + List annotationsList5 = new ArrayList<>(); + annotationsList5.add(new AlignmentAnnotation("Secondary Structure", + "Secondary Structure for p09911_54-147__3a7wzn.1.p3502557454997462030P", + new Annotation[] {})); + annotations5.put(seq5, annotationsList5); // Annotation present secondary + // structure from Swiss model for + // seq5 + + // JPred Output - JPred + // Secondary Structure for af-q43517-f1A - Alphafold + // Secondary Structure for 4zhpA - Experimental + // Secondary Structure for p09911_54-147__3a7wzn.1.p3502557454997462030P - + // Swiss Model + + return new Object[][] { { annotations1, "JPred" }, + { annotations2, "Alphafold" }, + { annotations3, null }, + { annotations4, "PDB" }, + { annotations5, "Swiss Model" } }; + } } diff --git a/test/jalview/analysis/scoremodels/ScoreModelsTest.java b/test/jalview/analysis/scoremodels/ScoreModelsTest.java index d0a8047..f82a18a 100644 --- a/test/jalview/analysis/scoremodels/ScoreModelsTest.java +++ b/test/jalview/analysis/scoremodels/ScoreModelsTest.java @@ -83,7 +83,7 @@ public class ScoreModelsTest assertFalse(sm instanceof PairwiseScoreModelI); assertTrue(sm instanceof DistanceScoreModel); assertEquals(sm.getName(), "Sequence Feature Similarity"); - + sm = models.next(); assertFalse(sm instanceof SimilarityScoreModel); assertFalse(sm instanceof PairwiseScoreModelI); diff --git a/test/jalview/analysis/scoremodels/SecondaryStructureDistanceModelTest.java b/test/jalview/analysis/scoremodels/SecondaryStructureDistanceModelTest.java index f32be37..03dcdc7 100644 --- a/test/jalview/analysis/scoremodels/SecondaryStructureDistanceModelTest.java +++ b/test/jalview/analysis/scoremodels/SecondaryStructureDistanceModelTest.java @@ -48,7 +48,7 @@ import org.testng.annotations.Test; // This class tests methods in Class SecondaryStructureDistanceModel public class SecondaryStructureDistanceModelTest { - + /** * Verify computed distances of sequences with gap */ @@ -62,7 +62,7 @@ public class SecondaryStructureDistanceModelTest ScoreModelI sm = new SecondaryStructureDistanceModel(); sm = ScoreModels.getInstance().getScoreModel(sm.getName(), af.alignPanel); - + /* * feature distance model always normalises by region width * gap-gap is always included (but scores zero) @@ -73,27 +73,28 @@ public class SecondaryStructureDistanceModelTest * include gaps * score = 0 + 0 + 1 + 0 = 1/4 */ - SimilarityParamsI params = new SimilarityParams(false, true, true, true); + SimilarityParamsI params = new SimilarityParams(false, true, true, + true); params.setSecondaryStructureSource("3D Structures"); MatrixI distances = sm.findDistances(view, params); assertEquals(distances.getValue(0, 0), 1d); assertEquals(distances.getValue(1, 1), 1d); - assertEquals(distances.getValue(0, 1), 0d); + assertEquals(distances.getValue(0, 1), 0d); assertEquals(distances.getValue(1, 0), 0d); - + /* * exclude gaps * score = 0 + 0 + 0 + 0 = 0/4 */ - - SimilarityParamsI params2 = new SimilarityParams(false, true, false, true); + + SimilarityParamsI params2 = new SimilarityParams(false, true, false, + true); params2.setSecondaryStructureSource("3D Structures"); MatrixI distances2 = sm.findDistances(view, params2); - assertEquals(distances2.getValue(0, 1), 0d); + assertEquals(distances2.getValue(0, 1), 0d); assertEquals(distances2.getValue(1, 0), 0d); } - - + /** * Verify computed distances of sequences with gap */ @@ -107,7 +108,7 @@ public class SecondaryStructureDistanceModelTest ScoreModelI sm = new SecondaryStructureDistanceModel(); sm = ScoreModels.getInstance().getScoreModel(sm.getName(), af.alignPanel); - + /* * feature distance model always normalises by region width * gap-gap is always included (but scores zero) @@ -118,27 +119,28 @@ public class SecondaryStructureDistanceModelTest * include gaps * score = 0 + 0 + 2 + 2 = 2/4 */ - SimilarityParamsI params = new SimilarityParams(false, true, true, true); + SimilarityParamsI params = new SimilarityParams(false, true, true, + true); params.setSecondaryStructureSource("3D Structures"); MatrixI distances = sm.findDistances(view, params); assertEquals(distances.getValue(0, 0), 1d); assertEquals(distances.getValue(1, 1), 1d); - assertEquals(distances.getValue(0, 1), 0d); + assertEquals(distances.getValue(0, 1), 0d); assertEquals(distances.getValue(1, 0), 0d); - + /* * exclude gaps * score = 0 + 0 + 2 + 2 = 2/4 */ - - SimilarityParamsI params2 = new SimilarityParams(false, true, false, true); + + SimilarityParamsI params2 = new SimilarityParams(false, true, false, + true); params2.setSecondaryStructureSource("3D Structures"); MatrixI distances2 = sm.findDistances(view, params2); - assertEquals(distances2.getValue(0, 1), 0d); + assertEquals(distances2.getValue(0, 1), 0d); assertEquals(distances2.getValue(1, 0), 0d); } - /** * Verify computed distances of sequences with gap */ @@ -152,7 +154,7 @@ public class SecondaryStructureDistanceModelTest ScoreModelI sm = new SecondaryStructureDistanceModel(); sm = ScoreModels.getInstance().getScoreModel(sm.getName(), af.alignPanel); - + /* * feature distance model always normalises by region width * gap-gap is always included (but scores zero) @@ -163,28 +165,28 @@ public class SecondaryStructureDistanceModelTest * include gaps * score = 0 + 0 + 2 + 2 = 2/4 */ - SimilarityParamsI params = new SimilarityParams(false, true, true, true); + SimilarityParamsI params = new SimilarityParams(false, true, true, + true); params.setSecondaryStructureSource("3D Structures"); MatrixI distances = sm.findDistances(view, params); assertEquals(distances.getValue(0, 0), 1d); assertEquals(distances.getValue(1, 1), 1d); - assertEquals(distances.getValue(0, 1), 0d); + assertEquals(distances.getValue(0, 1), 0d); assertEquals(distances.getValue(1, 0), 0d); - + /* * exclude gaps * score = 0 + 0 + 2 + 2 = 2/4 */ - - SimilarityParamsI params2 = new SimilarityParams(false, true, false, true); + + SimilarityParamsI params2 = new SimilarityParams(false, true, false, + true); params2.setSecondaryStructureSource("3D Structures"); MatrixI distances2 = sm.findDistances(view, params2); - assertEquals(distances2.getValue(0, 1), 0d); + assertEquals(distances2.getValue(0, 1), 0d); assertEquals(distances2.getValue(1, 0), 0d); } - - /** *
        * Set up
    @@ -214,18 +216,17 @@ public class SecondaryStructureDistanceModelTest
                 new SequenceFeature("metal", null, 1, 4, 0f, null));
         s2.addSequenceFeature(
                 new SequenceFeature("Pfam", null, 1, 4, 0f, null));
    -    
    -    
    +
         /*
          * Set up secondary structure annotations
          */
    -    Annotation ssE = new Annotation("","",'E',0);
    -    Annotation ssH = new Annotation("","",'H',0);
    -    Annotation ssC = new Annotation(".","",' ',0);
    -    
    +    Annotation ssE = new Annotation("", "", 'E', 0);
    +    Annotation ssH = new Annotation("", "", 'H', 0);
    +    Annotation ssC = new Annotation(".", "", ' ', 0);
    +
         Annotation[] anns1;
         Annotation[] anns2;
    -    
    +
         /* All secondary structure annotations are similar for each column
          * Set up
         *   column      1 2 3 4 
    @@ -235,13 +236,14 @@ public class SecondaryStructureDistanceModelTest
         *        seq s2 F S J L
         *        	 ss E H S E
         */
    -    if(similar == "All Similar") {
    -    
    -    	anns1 = new Annotation[] { ssE, ssH, ssC, ssE};
    -    	anns2 = new Annotation[] { ssE, ssH, ssC, ssE};
    -    
    +    if (similar == "All Similar")
    +    {
    +
    +      anns1 = new Annotation[] { ssE, ssH, ssC, ssE };
    +      anns2 = new Annotation[] { ssE, ssH, ssC, ssE };
    +
         }
    -    
    +
         /* All secondary structure annotations are dissimilar for each column
          * Set up
          *   column      1 2 3 4 
    @@ -251,13 +253,14 @@ public class SecondaryStructureDistanceModelTest
          *        seq s2 F S J L
          *        	  ss H E E C
          */
    -    else if(similar == "Not Similar") {
    -        
    -    	anns1 = new Annotation[] { ssE, ssE, ssC, ssE};
    -    	anns2 = new Annotation[] { ssH, ssH, ssE, ssC};
    -    
    +    else if (similar == "Not Similar")
    +    {
    +
    +      anns1 = new Annotation[] { ssE, ssE, ssC, ssE };
    +      anns2 = new Annotation[] { ssH, ssH, ssE, ssC };
    +
         }
    -    
    +
         /* All secondary structure annotations are dissimilar for each column
          * Set up
          *   column      1 2 3 4 
    @@ -267,13 +270,14 @@ public class SecondaryStructureDistanceModelTest
          *        seq s2 F S J L
          *            ss H E E C
          */
    -    else if(similar == "With Coil") {
    -        
    -      anns1 = new Annotation[] { ssE, ssE, null, ssE};
    -      anns2 = new Annotation[] { ssH, ssH, ssE, null};
    -    
    +    else if (similar == "With Coil")
    +    {
    +
    +      anns1 = new Annotation[] { ssE, ssE, null, ssE };
    +      anns2 = new Annotation[] { ssH, ssH, ssE, null };
    +
         }
    -    
    +
         /*  Set up
          *   column      1 2 3 4 
          *        seq s1 F R K S
    @@ -282,28 +286,27 @@ public class SecondaryStructureDistanceModelTest
          *        seq s2 F S J L
          *        	  ss H E E C
          */
    -    else {
    -    	
    -    	anns1 = new Annotation[] { ssH, ssE, ssC, ssE};
    -    	anns2 = new Annotation[] { ssH, ssE, ssE, ssC};
    +    else
    +    {
    +
    +      anns1 = new Annotation[] { ssH, ssE, ssC, ssE };
    +      anns2 = new Annotation[] { ssH, ssE, ssE, ssC };
         }
    -    
    -    
    -    AlignmentAnnotation ann1 = new AlignmentAnnotation("Secondary Structure",
    -            "Secondary Structure", anns1);
    -    AlignmentAnnotation ann2 = new AlignmentAnnotation("Secondary Structure",
    -            "Secondary Structure", anns2);
    -    
    +
    +    AlignmentAnnotation ann1 = new AlignmentAnnotation(
    +            "Secondary Structure", "Secondary Structure", anns1);
    +    AlignmentAnnotation ann2 = new AlignmentAnnotation(
    +            "Secondary Structure", "Secondary Structure", anns2);
    +
         s1.addAlignmentAnnotation(ann1);
    -    s2.addAlignmentAnnotation(ann2);    
    -    
    +    s2.addAlignmentAnnotation(ann2);
    +
         AlignmentI al = new Alignment(new SequenceI[] { s1, s2 });
         AlignFrame af = new AlignFrame(al, 300, 300);
         af.setShowSeqFeatures(true);
         af.getFeatureRenderer().findAllFeatures(true);
         return af;
       }
    -  
     
       /**
        * 
    @@ -320,7 +323,7 @@ public class SecondaryStructureDistanceModelTest
        */
       protected AlignFrame setupAlignmentViewWithGap()
       {
    -    
    +
         SequenceI s1 = new Sequence("s1", "FR S");
         SequenceI s2 = new Sequence("s2", "FSJL");
     
    @@ -334,39 +337,39 @@ public class SecondaryStructureDistanceModelTest
                 new SequenceFeature("metal", null, 1, 4, 0f, null));
         s2.addSequenceFeature(
                 new SequenceFeature("Pfam", null, 1, 4, 0f, null));
    -    
    -    
    -    Annotation ssE = new Annotation("","",'E',0);
    -    Annotation ssH = new Annotation("","",'H',0);
    -    Annotation ssC = new Annotation(".","",' ',0);
    -    
    +
    +    Annotation ssE = new Annotation("", "", 'E', 0);
    +    Annotation ssH = new Annotation("", "", 'H', 0);
    +    Annotation ssC = new Annotation(".", "", ' ', 0);
    +
         Annotation[] anns1;
         Annotation[] anns2;
    -    	
    -    anns1 = new Annotation[] { ssH, ssE, ssC};
    -    anns2 = new Annotation[] { ssH, ssE, ssE, ssC};    
    -    
    -    AlignmentAnnotation ann1 = new AlignmentAnnotation("Secondary Structure",
    -            "Secondary Structure", anns1);
    -    AlignmentAnnotation ann2 = new AlignmentAnnotation("Secondary Structure",
    -            "Secondary Structure", anns2);
    -    
    +
    +    anns1 = new Annotation[] { ssH, ssE, ssC };
    +    anns2 = new Annotation[] { ssH, ssE, ssE, ssC };
    +
    +    AlignmentAnnotation ann1 = new AlignmentAnnotation(
    +            "Secondary Structure", "Secondary Structure", anns1);
    +    AlignmentAnnotation ann2 = new AlignmentAnnotation(
    +            "Secondary Structure", "Secondary Structure", anns2);
    +
         s1.addAlignmentAnnotation(ann1);
    -    s2.addAlignmentAnnotation(ann2);    
    -        
    +    s2.addAlignmentAnnotation(ann2);
    +
         AlignmentI al = new Alignment(new SequenceI[] { s1, s2 });
         AlignFrame af = new AlignFrame(al, 300, 300);
         af.setShowSeqFeatures(true);
         af.getFeatureRenderer().findAllFeatures(true);
    -    
    +
         return af;
       }
    -  
    -  protected AlignFrame setupAlignmentViewWithoutSS(String type) {
    -    
    +
    +  protected AlignFrame setupAlignmentViewWithoutSS(String type)
    +  {
    +
         SequenceI s1 = new Sequence("s1", "FR S");
         SequenceI s2 = new Sequence("s2", "FSJL");
    -    
    +
         s1.addSequenceFeature(
                 new SequenceFeature("chain", null, 1, 3, 0f, null));
         s1.addSequenceFeature(
    @@ -377,60 +380,61 @@ public class SecondaryStructureDistanceModelTest
                 new SequenceFeature("metal", null, 1, 4, 0f, null));
         s2.addSequenceFeature(
                 new SequenceFeature("Pfam", null, 1, 4, 0f, null));
    -    
    -    if(!type.equals("both")) {    
    -      Annotation ssE = new Annotation("","",'E',0);
    -      Annotation ssH = new Annotation("","",'H',0);
    -      Annotation ssC = new Annotation(".","",' ',0);
    -      
    +
    +    if (!type.equals("both"))
    +    {
    +      Annotation ssE = new Annotation("", "", 'E', 0);
    +      Annotation ssH = new Annotation("", "", 'H', 0);
    +      Annotation ssC = new Annotation(".", "", ' ', 0);
    +
           Annotation[] anns1;
    -        
    -      anns1 = new Annotation[] { ssH, ssE, ssC};
    -          
    -      AlignmentAnnotation ann1 = new AlignmentAnnotation("Secondary Structure",
    -              "Secondary Structure", anns1);    
    -  
    -      s1.addAlignmentAnnotation(ann1);    
    +
    +      anns1 = new Annotation[] { ssH, ssE, ssC };
    +
    +      AlignmentAnnotation ann1 = new AlignmentAnnotation(
    +              "Secondary Structure", "Secondary Structure", anns1);
    +
    +      s1.addAlignmentAnnotation(ann1);
         }
    -    
    +
         AlignmentI al = new Alignment(new SequenceI[] { s1, s2 });
         AlignFrame af = new AlignFrame(al, 300, 300);
         af.setShowSeqFeatures(true);
         af.getFeatureRenderer().findAllFeatures(true);
         return af;
       }
    -  
    -  
    +
       @DataProvider(name = "testData")
    -  public Object[][] testData() {
    -      return new Object[][] {
    -              {"All Similar", 1d, 1d, 0d, 0d / 4},
    -              {"Partially Similar", 1d, 1d, 0d, 0d},
    -              {"Not Similar", 1d, 1d, 0d, 0d},
    -              {"With Coil", 1d, 1d, 0d, 0d},
    -      };
    +  public Object[][] testData()
    +  {
    +    return new Object[][] { { "All Similar", 1d, 1d, 0d, 0d / 4 },
    +        { "Partially Similar", 1d, 1d, 0d, 0d },
    +        { "Not Similar", 1d, 1d, 0d, 0d },
    +        { "With Coil", 1d, 1d, 0d, 0d }, };
       }
     
       @Test(dataProvider = "testData")
    -  public void testFindDistances(String scenario, double expectedValue00, double expectedValue11,
    -                                 double expectedValue01, double expectedValue10) {
    -      AlignFrame af = setupAlignmentView(scenario);
    -      AlignViewport viewport = af.getViewport();
    -      AlignmentView view = viewport.getAlignmentView(false);
    -
    -      ScoreModelI sm = new SecondaryStructureDistanceModel();
    -      sm = ScoreModels.getInstance().getScoreModel(sm.getName(),
    -              af.alignPanel);
    -
    -      SimilarityParamsI params = new SimilarityParams(false, true, true, true);
    -      params.setSecondaryStructureSource("3D Structures");
    -      MatrixI distances = sm.findDistances(view, params);
    -
    -      assertEquals(distances.getValue(0, 0), expectedValue00);
    -      assertEquals(distances.getValue(1, 1), expectedValue11);
    -      assertEquals(distances.getValue(0, 1), expectedValue01);
    -      assertEquals(distances.getValue(1, 0), expectedValue10);
    +  public void testFindDistances(String scenario, double expectedValue00,
    +          double expectedValue11, double expectedValue01,
    +          double expectedValue10)
    +  {
    +    AlignFrame af = setupAlignmentView(scenario);
    +    AlignViewport viewport = af.getViewport();
    +    AlignmentView view = viewport.getAlignmentView(false);
    +
    +    ScoreModelI sm = new SecondaryStructureDistanceModel();
    +    sm = ScoreModels.getInstance().getScoreModel(sm.getName(),
    +            af.alignPanel);
    +
    +    SimilarityParamsI params = new SimilarityParams(false, true, true,
    +            true);
    +    params.setSecondaryStructureSource("3D Structures");
    +    MatrixI distances = sm.findDistances(view, params);
    +
    +    assertEquals(distances.getValue(0, 0), expectedValue00);
    +    assertEquals(distances.getValue(1, 1), expectedValue11);
    +    assertEquals(distances.getValue(0, 1), expectedValue01);
    +    assertEquals(distances.getValue(1, 0), expectedValue10);
       }
     
    -  
     }
    diff --git a/test/jalview/commands/EditCommandTest.java b/test/jalview/commands/EditCommandTest.java
    index 1255c58..2e36111 100644
    --- a/test/jalview/commands/EditCommandTest.java
    +++ b/test/jalview/commands/EditCommandTest.java
    @@ -1182,12 +1182,14 @@ public class EditCommandTest
         assertEquals(10, sf.getBegin());
         assertEquals(11, sf.getEnd());
       }
    +
       private SequenceI mkDs(SequenceI as)
       {
         SequenceI ds = as.createDatasetSequence();
         ds.setSequence(ds.getSequenceAsString().toUpperCase(Locale.ROOT));
         return ds;
       }
    +
       /**
        * Test that mimics 'remove all gapped columns' action. This generates a
        * series Delete Gap edits that each act on all sequences that share a gapped
    @@ -1210,35 +1212,38 @@ public class EditCommandTest
          * and check we are preserving data - if the calls below fail, something has broken the Jalview dataset derivation process
          */
         assertEquals("ABCDEF", seq1.getDatasetSequence().getSequenceAsString());
    -    assertEquals(original1,seq1.getSequenceAsString());
    -    SequenceI seq2 = new Sequence("sq2",original2);
    +    assertEquals(original1, seq1.getSequenceAsString());
    +    SequenceI seq2 = new Sequence("sq2", original2);
         SequenceI ds2 = mkDs(seq2);
         SequenceI seq3 = new Sequence("sq3", original3);
         SequenceI ds3 = mkDs(seq3);
    -    List sqs = Arrays.asList( seq1, seq2, seq3 );
    +    List sqs = Arrays.asList(seq1, seq2, seq3);
         Alignment al = new Alignment(sqs.toArray(new SequenceI[0]));
    -    EditCommand lefj = new JustifyLeftOrRightCommand("Left J", true, sqs, 1, 7, al);
    +    EditCommand lefj = new JustifyLeftOrRightCommand("Left J", true, sqs, 1,
    +            7, al);
         String exp = "-ABcD---EF";
         // check without case conservation
    -    assertEquals(exp.toUpperCase(Locale.ROOT),seq1.getSequenceAsString().toUpperCase(Locale.ROOT));
    +    assertEquals(exp.toUpperCase(Locale.ROOT),
    +            seq1.getSequenceAsString().toUpperCase(Locale.ROOT));
         // check case
    -    assertEquals(exp,seq1.getSequenceAsString());
    +    assertEquals(exp, seq1.getSequenceAsString());
         // and other seqs
    -    assertEquals("-GHiJ---",seq2.getSequenceAsString());
    -    assertEquals("-MNoP---Q",seq3.getSequenceAsString());
    -    lefj.undoCommand(new AlignmentI[] { al});
    -    assertEquals(original3,seq3.getSequenceAsString());
    -    assertEquals(original1,seq1.getSequenceAsString());
    -    assertEquals(original2,seq2.getSequenceAsString());
    -    
    -    EditCommand righj = new JustifyLeftOrRightCommand("Right J", false, sqs, 2, 7, al);
    -    assertEquals("----ABcDEF",seq1.getSequenceAsString());
    -    assertEquals("-G---HiJ",seq2.getSequenceAsString());
    -    assertEquals("-M---NoPQ",seq3.getSequenceAsString());
    -    righj.undoCommand(new AlignmentI[] { al});
    -    assertEquals(original3,seq3.getSequenceAsString());
    -    assertEquals(original1,seq1.getSequenceAsString());
    -    assertEquals(original2,seq2.getSequenceAsString());
    -        
    +    assertEquals("-GHiJ---", seq2.getSequenceAsString());
    +    assertEquals("-MNoP---Q", seq3.getSequenceAsString());
    +    lefj.undoCommand(new AlignmentI[] { al });
    +    assertEquals(original3, seq3.getSequenceAsString());
    +    assertEquals(original1, seq1.getSequenceAsString());
    +    assertEquals(original2, seq2.getSequenceAsString());
    +
    +    EditCommand righj = new JustifyLeftOrRightCommand("Right J", false, sqs,
    +            2, 7, al);
    +    assertEquals("----ABcDEF", seq1.getSequenceAsString());
    +    assertEquals("-G---HiJ", seq2.getSequenceAsString());
    +    assertEquals("-M---NoPQ", seq3.getSequenceAsString());
    +    righj.undoCommand(new AlignmentI[] { al });
    +    assertEquals(original3, seq3.getSequenceAsString());
    +    assertEquals(original1, seq1.getSequenceAsString());
    +    assertEquals(original2, seq2.getSequenceAsString());
    +
       }
     }
    diff --git a/test/jalview/gui/AssociatePDBFileTest.java b/test/jalview/gui/AssociatePDBFileTest.java
    index 0e6791b..c1b5b6e 100644
    --- a/test/jalview/gui/AssociatePDBFileTest.java
    +++ b/test/jalview/gui/AssociatePDBFileTest.java
    @@ -20,7 +20,6 @@
      */
     package jalview.gui;
     
    -
     import java.awt.Color;
     import java.io.File;
     import java.util.Iterator;
    @@ -92,18 +91,14 @@ public class AssociatePDBFileTest
                 + "KVRLYSIASSAIGDFGDSKTVSLCVKRLIYTNDAGEIVKGVCSNFLCDLQPGDNVQITGPVGKEMLMPKDPN\n"
                 + "ATIIMLATGTGIAPFRSFLWKMFFEKHDDYKFNGLGWLFLGVPTSSSLLYKEEFGKMKERAPENFRVDYAVS\n"
                 + "REQTNAAGERMYIQTRMAEYKEELWELLKKDNTYVYMCGLKGMEKGIDDIMVSLAEKDGIDWFDYKKQLKRG\n"
    -            + "DQWNVEVY\n"
    -            + ">1GAQ|B/1-98\n"
    +            + "DQWNVEVY\n" + ">1GAQ|B/1-98\n"
                 + "ATYNVKLITPEGEVELQVPDDVYILDQAEEDGIDLPYSCRAGSCSSCAGKVVSGSVDQSDQSYLDDGQIADG\n"
    -            + "WVLTCHAYPTSDVVIETHKEEELTGA\n"
    -            + ">1GAQ|C/19-314\n"
    +            + "WVLTCHAYPTSDVVIETHKEEELTGA\n" + ">1GAQ|C/19-314\n"
                 + "ESKKQEEGVVTNLYKPKEPYVGRCLLNTKITGDDAPGETWHMVFSTEGKIPYREGQSIGVIADGVDKNGKPH\n"
                 + "KVRLYSIASSAIGDFGDSKTVSLCVKRLIYTNDAGEIVKGVCSNFLCDLQPGDNVQITGPVGKEMLMPKDPN\n"
                 + "ATIIMLATGTGIAPFRSFLWKMFFEKHDDYKFNGLGWLFLGVPTSSSLLYKEEFGKMKERAPENFRVDYAVS\n"
                 + "REQTNAAGERMYIQTRMAEYKEELWELLKKDNTYVYMCGLKGMEKGIDDIMVSLAEKDGIDWFDYKKQLKRG\n"
    -            + "DQWNVEVY\n"
    -            ,
    -            DataSourceType.PASTE);
    +            + "DQWNVEVY\n", DataSourceType.PASTE);
     
         /*
          * wait for Consensus thread to complete
    @@ -128,15 +123,15 @@ public class AssociatePDBFileTest
       @Test(groups = "Functional")
       public void testAssociatePDBFile()
       {
    -    String assoc_file="examples/1gaq.txt";
    -    for (SequenceI toassoc:af.getViewport().getAlignment().getSequences())
    +    String assoc_file = "examples/1gaq.txt";
    +    for (SequenceI toassoc : af.getViewport().getAlignment().getSequences())
         {
    -      PDBEntry pe = new AssociatePdbFileWithSeq()
    -              .associatePdbWithSeq(assoc_file,
    -                      DataSourceType.FILE, toassoc, false,
    -                      Desktop.instance);
    +      PDBEntry pe = new AssociatePdbFileWithSeq().associatePdbWithSeq(
    +              assoc_file, DataSourceType.FILE, toassoc, false,
    +              Desktop.instance);
           Assert.assertNotNull(pe);
    -      Assert.assertNotEquals(toassoc.getDatasetSequence().getAnnotation().length,0);
    +      Assert.assertNotEquals(
    +              toassoc.getDatasetSequence().getAnnotation().length, 0);
         }
       }
     }
    diff --git a/test/jalview/gui/CalculationChooserTest.java b/test/jalview/gui/CalculationChooserTest.java
    index ac02c03..e6316f3 100644
    --- a/test/jalview/gui/CalculationChooserTest.java
    +++ b/test/jalview/gui/CalculationChooserTest.java
    @@ -55,29 +55,33 @@ public class CalculationChooserTest
          * peptide models for PCA
          */
         List filtered = CalculationChooser
    -            .getApplicableScoreModels(false, true, true,false);
    +            .getApplicableScoreModels(false, true, true, false);
         assertEquals(filtered.size(), 5);
         assertSame(filtered.get(0), blosum62);
         assertSame(filtered.get(1), pam250);
         assertEquals(filtered.get(2).getName(), "PID");
         assertEquals(filtered.get(3).getName(), "Sequence Feature Similarity");
    -    assertEquals(filtered.get(4).getName(), "Secondary Structure Similarity");
    +    assertEquals(filtered.get(4).getName(),
    +            "Secondary Structure Similarity");
     
         /*
          * peptide models for Tree are the same
          */
    -    filtered = CalculationChooser.getApplicableScoreModels(false, false, true,false);
    +    filtered = CalculationChooser.getApplicableScoreModels(false, false,
    +            true, false);
         assertEquals(filtered.size(), 5);
         assertSame(filtered.get(0), blosum62);
         assertSame(filtered.get(1), pam250);
         assertEquals(filtered.get(2).getName(), "PID");
         assertEquals(filtered.get(3).getName(), "Sequence Feature Similarity");
    -    assertEquals(filtered.get(4).getName(), "Secondary Structure Similarity");
    +    assertEquals(filtered.get(4).getName(),
    +            "Secondary Structure Similarity");
     
         /*
          * nucleotide models for PCA
          */
    -    filtered = CalculationChooser.getApplicableScoreModels(true, true, false,false);
    +    filtered = CalculationChooser.getApplicableScoreModels(true, true,
    +            false, false);
         assertEquals(filtered.size(), 3);
         assertSame(filtered.get(0), dna);
         assertEquals(filtered.get(1).getName(), "PID");
    @@ -86,7 +90,8 @@ public class CalculationChooserTest
         /*
          * nucleotide models for Tree are the same
          */
    -    filtered = CalculationChooser.getApplicableScoreModels(true, false, false,false);
    +    filtered = CalculationChooser.getApplicableScoreModels(true, false,
    +            false, false);
         assertEquals(filtered.size(), 3);
         assertSame(filtered.get(0), dna);
         assertEquals(filtered.get(1).getName(), "PID");
    @@ -101,30 +106,37 @@ public class CalculationChooserTest
         /*
          * nucleotide models for Tree are unchanged
          */
    -    filtered = CalculationChooser.getApplicableScoreModels(true, false, true,false);
    +    filtered = CalculationChooser.getApplicableScoreModels(true, false,
    +            true, false);
         assertEquals(filtered.size(), 4);
         assertSame(filtered.get(0), dna);
         assertEquals(filtered.get(1).getName(), "PID");
         assertEquals(filtered.get(2).getName(), "Sequence Feature Similarity");
    -    assertEquals(filtered.get(3).getName(), "Secondary Structure Similarity");
    +    assertEquals(filtered.get(3).getName(),
    +            "Secondary Structure Similarity");
     
         /*
          * nucleotide models for PCA add BLOSUM62 as last option
          */
    -    filtered = CalculationChooser.getApplicableScoreModels(true, true, false,false);
    +    filtered = CalculationChooser.getApplicableScoreModels(true, true,
    +            false, false);
         assertEquals(filtered.size(), 4);
         assertSame(filtered.get(0), dna);
         assertEquals(filtered.get(1).getName(), "PID");
         assertEquals(filtered.get(2).getName(), "Sequence Feature Similarity");
         assertSame(filtered.get(3), blosum62);
    -    
    -    filtered = CalculationChooser.getApplicableScoreModels(true, true, false,true);
    +
    +    filtered = CalculationChooser.getApplicableScoreModels(true, true,
    +            false, true);
         assertEquals(filtered.size(), 1); // DNA matrix for DNA pasimap
    -    for (int i=0; i<=8;i++)
    +    for (int i = 0; i <= 8; i++)
         {
    -      boolean isDna = (i & 1) != 0,isPca = (i & 2) != 0,isSS = (i & 4) != 0;
    -     
    -      assertEquals(CalculationChooser.getApplicableScoreModels(isDna,isPca,isSS,true).size(), (isDna) ? 1: 2);
    +      boolean isDna = (i & 1) != 0, isPca = (i & 2) != 0,
    +              isSS = (i & 4) != 0;
    +
    +      assertEquals(CalculationChooser
    +              .getApplicableScoreModels(isDna, isPca, isSS, true).size(),
    +              (isDna) ? 1 : 2);
         }
       }
     }
    diff --git a/test/jalview/project/Jalview2xmlTests.java b/test/jalview/project/Jalview2xmlTests.java
    index 8b2fa74..ca90d8a 100644
    --- a/test/jalview/project/Jalview2xmlTests.java
    +++ b/test/jalview/project/Jalview2xmlTests.java
    @@ -250,9 +250,8 @@ public class Jalview2xmlTests extends Jalview2xmlBase
     
         boolean diffseqcols = false, diffgseqcols = false;
         SequenceI[] sqs = af.getViewport().getAlignment().getSequencesArray();
    -    for (int p = 0,
    -            pSize = af.getViewport().getAlignment().getWidth(); p < pSize
    -                    && (!diffseqcols || !diffgseqcols); p++)
    +    for (int p = 0, pSize = af.getViewport().getAlignment()
    +            .getWidth(); p < pSize && (!diffseqcols || !diffgseqcols); p++)
         {
           if (_rcs.findColour(sqs[0].getCharAt(p), p, sqs[0], null, 0f) != _rcs
                   .findColour(sqs[5].getCharAt(p), p, sqs[5], null, 0f))
    @@ -271,9 +270,8 @@ public class Jalview2xmlTests extends Jalview2xmlBase
         assertTrue(__rcs.isSeqAssociated(),
                 "Group Annotation colourscheme wasn't sequence associated");
     
    -    for (int p = 0,
    -            pSize = af.getViewport().getAlignment().getWidth(); p < pSize
    -                    && (!diffseqcols || !diffgseqcols); p++)
    +    for (int p = 0, pSize = af.getViewport().getAlignment()
    +            .getWidth(); p < pSize && (!diffseqcols || !diffgseqcols); p++)
         {
           if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1], null,
                   0f) != _rgcs.findColour(sqs[2].getCharAt(p), p, sqs[2], null,
    diff --git a/test/jalview/renderer/ResidueShaderTest.java b/test/jalview/renderer/ResidueShaderTest.java
    index 9ff93e1..a198d3c 100644
    --- a/test/jalview/renderer/ResidueShaderTest.java
    +++ b/test/jalview/renderer/ResidueShaderTest.java
    @@ -345,7 +345,7 @@ public class ResidueShaderTest
                       SecondaryStructureCount secondaryStructureCount)
               {
                 // TODO Auto-generated method stub
    -            
    +
               }
     
               @Override
    diff --git a/test/jalview/schemes/ClustalxColourSchemeTest.java b/test/jalview/schemes/ClustalxColourSchemeTest.java
    index d476d6e..983f94c 100644
    --- a/test/jalview/schemes/ClustalxColourSchemeTest.java
    +++ b/test/jalview/schemes/ClustalxColourSchemeTest.java
    @@ -151,6 +151,7 @@ public class ClustalxColourSchemeTest
         // viewport
         // assertEquals(cs.findColour('C', 0, al.getSequenceAt(0)), clustalPink);
       }
    +
       @Test
       public void testDocString()
       {