1 Clazz.declarePackage ("jalview.commands");
2 Clazz.load (["jalview.commands.EditCommand"], "jalview.commands.RemoveGapsCommand", ["jalview.util.Comparison"], function () {
3 c$ = Clazz.declareType (jalview.commands, "RemoveGapsCommand", jalview.commands.EditCommand);
4 Clazz.makeConstructor (c$,
5 function (description, seqs, al) {
6 Clazz.superConstructor (this, jalview.commands.RemoveGapsCommand, []);
7 this.description = description;
9 for (var i = 0; i < seqs.length; i++) {
10 if (seqs[i].getLength () > width) {
11 width = seqs[i].getLength ();
13 this.findGaps (seqs, 0, width, al);
14 }, "~S,~A,jalview.datamodel.AlignmentI");
15 Clazz.makeConstructor (c$,
16 function (description, seqs, start, end, al) {
17 Clazz.superConstructor (this, jalview.commands.RemoveGapsCommand, []);
18 this.description = description;
19 this.findGaps (seqs, start, end, al);
20 }, "~S,~A,~N,~N,jalview.datamodel.AlignmentI");
21 Clazz.defineMethod (c$, "findGaps",
22 function (seqs, start, end, al) {
31 for (var s = 0; s < seqs.length; s++) {
35 sequence = seqs[s].getSequence (start, end + 1);
36 jSize = sequence.length;
37 for (j = 0; j < jSize; j++) {
39 if (!jalview.util.Comparison.isGap (sequence[j])) {
43 }if ($delete && startCol == -1) {
45 }if (!$delete && startCol > -1) {
46 this.appendEdit (jalview.commands.EditCommand.Action.DELETE_GAP, Clazz.newArray (-1, [seqs[s]]), start + startCol - deletedCols, endCol - startCol, al, false, null);
47 deletedCols += (endCol - startCol);
51 if ($delete && startCol > -1) {
52 this.appendEdit (jalview.commands.EditCommand.Action.DELETE_GAP, Clazz.newArray (-1, [seqs[s]]), start + startCol - deletedCols, jSize - startCol, al, false, null);
54 this.performEdit (0, null);
55 }, "~A,~N,~N,jalview.datamodel.AlignmentI");