*/
package jalview.commands;
-import jalview.datamodel.*;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.SequenceI;
+
+import java.util.List;
public class ChangeCaseCommand implements CommandI
{
String description;
- public static int TO_LOWER = 0;
+ public final static int TO_LOWER = 0;
- public static int TO_UPPER = 1;
+ public final static int TO_UPPER = 1;
- public static int TOGGLE_CASE = 2;
+ public final static int TOGGLE_CASE = 2;
- int caseChange = -1;
+ private int caseChange;
- SequenceI[] seqs;
+ private SequenceI[] seqs;
- int[][] regions;
+ private List<int[]> regions;
public ChangeCaseCommand(String description, SequenceI[] seqs,
- int[][] regions, int caseChange)
+ List<int[]> regions, int caseChange)
{
this.description = description;
this.seqs = seqs;
doCommand(null);
}
+ @Override
public String getDescription()
{
return description;
}
+ @Override
public int getSize()
{
return 1;
}
+ @Override
public void doCommand(AlignmentI[] views)
{
changeCase(true);
}
+ @Override
public void undoCommand(AlignmentI[] views)
{
changeCase(false);
String sequence;
int start, end;
char nextChar;
- for (int r = 0; r < regions.length; r++)
+ for (int[] r : regions)
{
- start = regions[r][0];
+ start = r[0];
for (int s = 0; s < seqs.length; s++)
{
sequence = seqs[s].getSequenceAsString();
StringBuffer newSeq = new StringBuffer();
- if (regions[r][1] > sequence.length())
+ if (r[1] > sequence.length())
{
end = sequence.length();
}
else
{
- end = regions[r][1];
+ end = r[1];
}
if (start > 0)