X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fcommands%2FSlideSequencesCommand.java;h=8a2705900c0f883aaa8393f03efa1885866dcf47;hb=e1aa3fdd1ca82abf5acc0cd3c2b86a5ca1083941;hp=1ad3d9e3f346803e856b1bb6e2f5debb280a4928;hpb=47168f025aefdaa044802bd5f8f510ffe43a4808;p=jalview.git diff --git a/src/jalview/commands/SlideSequencesCommand.java b/src/jalview/commands/SlideSequencesCommand.java index 1ad3d9e..8a27059 100644 --- a/src/jalview/commands/SlideSequencesCommand.java +++ b/src/jalview/commands/SlideSequencesCommand.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * @@ -20,7 +20,7 @@ */ package jalview.commands; -import jalview.datamodel.*; +import jalview.datamodel.SequenceI; public class SlideSequencesCommand extends EditCommand { @@ -37,21 +37,29 @@ public class SlideSequencesCommand extends EditCommand for (i = 0; i < lSize; i++) { for (j = 0; j < slideSize; j++) + { if (!jalview.util.Comparison.isGap(seqsLeft[i].getCharAt(j))) { gapsInsertedBegin = true; break; } + } } + Edit e = null; + if (!gapsInsertedBegin) - edits = new Edit[] - { new Edit(DELETE_GAP, seqsLeft, 0, slideSize, gapChar) }; + { + e = new Edit(Action.DELETE_GAP, seqsLeft, 0, slideSize, gapChar); + setEdit(e); + } else - edits = new Edit[] - { new Edit(INSERT_GAP, seqsRight, 0, slideSize, gapChar) }; + { + e = new Edit(Action.INSERT_GAP, seqsRight, 0, slideSize, gapChar); + setEdit(e); + } - performEdit(0, null); + performEdit(e, null); } public boolean getGapsInsertedBegin() @@ -63,12 +71,12 @@ public class SlideSequencesCommand extends EditCommand { boolean same = false; - if (command.edits[0].seqs.length == edits[0].seqs.length) + if (command.getEdit(0).seqs.length == getEdit(0).seqs.length) { same = true; - for (int i = 0; i < command.edits[0].seqs.length; i++) + for (int i = 0; i < command.getEdit(0).seqs.length; i++) { - if (edits[0].seqs[i] != command.edits[0].seqs[i]) + if (getEdit(0).seqs[i] != command.getEdit(0).seqs[i]) { same = false; } @@ -77,10 +85,7 @@ public class SlideSequencesCommand extends EditCommand if (same) { - Edit[] temp = new Edit[command.edits.length + 1]; - System.arraycopy(command.edits, 0, temp, 0, command.edits.length); - command.edits = temp; - command.edits[command.edits.length - 1] = edits[0]; + command.addEdit(getEdit(0)); } return same;