public class SequenceGroup\r
{\r
String groupName;\r
+ String description;\r
Conservation conserve;\r
Vector aaFrequency;\r
- boolean displayBoxes;\r
- boolean displayText;\r
- boolean colourText;\r
+ boolean displayBoxes = true;\r
+ boolean displayText = true;\r
+ boolean colourText = true;\r
private Vector sequences = new Vector();\r
int width = -1;\r
\r
int startRes = 0;\r
int endRes = 0;\r
Color outlineColour = Color.black;\r
+ public int thresholdTextColour = 0;\r
+ public Color textColour = Color.black;\r
+ public Color textColour2 = Color.white;\r
+\r
\r
/**\r
* Creates a new SequenceGroup object.\r
*/\r
public SequenceGroup()\r
{\r
- groupName = "Group";\r
- this.displayBoxes = true;\r
- this.displayText = true;\r
- this.colourText = false;\r
- cs = null;\r
+ groupName = "JGroup:"+this.hashCode();\r
}\r
\r
/**\r
recalcConservation();\r
}\r
\r
- /**\r
- * Creates a new SequenceGroup object.\r
- *\r
- * @param groupName DOCUMENT ME!\r
- * @param scheme DOCUMENT ME!\r
- * @param displayBoxes DOCUMENT ME!\r
- * @param displayText DOCUMENT ME!\r
- * @param colourText DOCUMENT ME!\r
- * @param start DOCUMENT ME!\r
- * @param end DOCUMENT ME!\r
- */\r
- public SequenceGroup(String groupName, ColourSchemeI scheme,\r
- boolean displayBoxes, boolean displayText, boolean colourText,\r
- int start, int end)\r
- {\r
- this.groupName = groupName;\r
- this.displayBoxes = displayBoxes;\r
- this.displayText = displayText;\r
- this.colourText = colourText;\r
- this.cs = scheme;\r
- startRes = start;\r
- endRes = end;\r
- }\r
-\r
public SequenceI [] getSelectionAsNewSequences(AlignmentI align)\r
{\r
int iSize = sequences.size();\r
return eres;\r
}\r
\r
- public Vector getSequences(boolean includeHidden)\r
+ public Vector getSequences(Hashtable hiddenReps)\r
{\r
- if(!includeHidden)\r
+ if(hiddenReps == null)\r
return sequences;\r
else\r
{\r
Vector allSequences = new Vector();\r
- SequenceI seq;\r
+ SequenceI seq, seq2;\r
for (int i = 0; i < sequences.size(); i++)\r
{\r
seq = (SequenceI) sequences.elementAt(i);\r
allSequences.addElement(seq);\r
- if (seq.getHiddenSequences() != null)\r
+ if (hiddenReps.containsKey(seq) )\r
{\r
- for (int h = 0; h < seq.getHiddenSequences().getSize(false); h++)\r
+ SequenceGroup hsg = (SequenceGroup)hiddenReps.get(seq);\r
+ for (int h = 0; h < hsg.getSize(); h++)\r
{\r
- allSequences.addElement(\r
- seq.getHiddenSequences().getSequenceAt(h)\r
- );\r
+ seq2 = hsg.getSequenceAt(h);\r
+ if (seq2 != seq\r
+ && !allSequences.contains(seq2))\r
+ allSequences.addElement(seq2);\r
}\r
}\r
}\r
}\r
}\r
\r
- public SequenceI[] getSequencesAsArray(boolean includeHidden)\r
+ public SequenceI[] getSequencesAsArray(Hashtable hiddenReps)\r
{\r
- Vector tmp = getSequences(includeHidden);\r
+ Vector tmp = getSequences(hiddenReps);\r
if(tmp==null)\r
return null;\r
SequenceI [] result = new SequenceI[tmp.size()];\r
return groupName;\r
}\r
\r
+ public String getDescription()\r
+ {\r
+ return description;\r
+ }\r
+\r
/**\r
* DOCUMENT ME!\r
*\r
groupName = name;\r
}\r
\r
+ public void setDescription(String desc)\r
+ {\r
+ description = desc;\r
+ }\r
+\r
/**\r
* DOCUMENT ME!\r
*\r
*\r
* @return DOCUMENT ME!\r
*/\r
- public int getSize(boolean includeHidden)\r
+ public int getSize()\r
{\r
- if(!includeHidden)\r
return sequences.size();\r
- else\r
- {\r
- int total = sequences.size();\r
- SequenceI seq;\r
- for (int i = 0; i < sequences.size(); i++)\r
- {\r
- seq = (SequenceI) sequences.elementAt(i);\r
- if (seq.getHiddenSequences() != null)\r
- {\r
- total += seq.getHiddenSequences().getSize(false);\r
- }\r
- }\r
- return total;\r
- }\r
}\r
\r
/**\r