X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fcommands%2FEditCommand.java;h=5c8f0be7eb1b2c334c0aac326b9044ae413445a0;hb=ef0377ec8e57164363e74c33d6ede31f85e8ccf7;hp=9413ba813dba59b0227c1c61ddb99f970d6f6505;hpb=0d6fdcd9c4597475c09fd96da43ddcadccf78fa1;p=jalview.git diff --git a/src/jalview/commands/EditCommand.java b/src/jalview/commands/EditCommand.java index 9413ba8..5c8f0be 100644 --- a/src/jalview/commands/EditCommand.java +++ b/src/jalview/commands/EditCommand.java @@ -1,18 +1,18 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) - * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle - * + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8) + * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle + * * This file is part of Jalview. - * + * * Jalview is free software: you can redistribute it and/or - * modify it under the terms of the GNU General Public License + * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * - * Jalview is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty - * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License along with Jalview. If not, see . */ package jalview.commands; @@ -22,24 +22,24 @@ import java.util.*; import jalview.datamodel.*; /** - * + * *

* Title: EditCommmand *

- * + * *

* Description: Essential information for performing undo and redo for cut/paste * insert/delete gap which can be stored in the HistoryList *

- * + * *

* Copyright: Copyright (c) 2006 *

- * + * *

* Company: Dundee University *

- * + * * @author not attributable * @version 1.0 */ @@ -55,7 +55,7 @@ public class EditCommand implements CommandI public static final int REPLACE = 4; - public static final int INSERT_NUC=5; + public static final int INSERT_NUC = 5; Edit[] edits; @@ -118,7 +118,7 @@ public class EditCommand implements CommandI * operation affects more alignment objects than the one referenced in al (for * example, cut or pasting whole sequences). Use the form with an additional * AlignmentI[] views parameter. - * + * * @param command * @param seqs * @param position @@ -135,7 +135,7 @@ public class EditCommand implements CommandI /** * append a new edit command with a set of alignment views that may be * operated on - * + * * @param command * @param seqs * @param position @@ -196,10 +196,10 @@ public class EditCommand implements CommandI case REPLACE: replace(edits[e]); break; - //TODO:add deleteNuc for UNDO -// case INSERT_NUC: -// insertNuc(edits[e]); -// break; + // TODO:add deleteNuc for UNDO + // case INSERT_NUC: + // insertNuc(edits[e]); + // break; } } } @@ -233,7 +233,7 @@ public class EditCommand implements CommandI case REPLACE: replace(edits[e]); break; - } + } } } @@ -244,23 +244,24 @@ public class EditCommand implements CommandI { command.seqs[s].insertCharAt(command.position, command.number, command.gapChar); -// System.out.println("pos: "+command.position+" number: "+command.number); + // System.out.println("pos: "+command.position+" number: "+command.number); } adjustAnnotations(command, true, false, null); } -// -// final void insertNuc(Edit command) -// { -// -// for (int s = 0; s < command.seqs.length; s++) -// { -// System.out.println("pos: "+command.position+" number: "+command.number); -// command.seqs[s].insertCharAt(command.position, command.number,'A'); -// } -// -// adjustAnnotations(command, true, false, null); -// } + + // + // final void insertNuc(Edit command) + // { + // + // for (int s = 0; s < command.seqs.length; s++) + // { + // System.out.println("pos: "+command.position+" number: "+command.number); + // command.seqs[s].insertCharAt(command.position, command.number,'A'); + // } + // + // adjustAnnotations(command, true, false, null); + // } final void deleteGap(Edit command) { @@ -349,7 +350,8 @@ public class EditCommand implements CommandI if (command.alIndex[i] < command.al.getHeight()) { List sequences; - synchronized (sequences=command.al.getSequences()) { + synchronized (sequences = command.al.getSequences()) + { sequences.add(command.alIndex[i], command.seqs[i]); } } @@ -452,18 +454,19 @@ public class EditCommand implements CommandI command.number = start + command.string[0].length; for (int i = 0; i < command.seqs.length; i++) { - boolean newDSWasNeeded = command.oldds != null && command.oldds[i] != null; + boolean newDSWasNeeded = command.oldds != null + && command.oldds[i] != null; /** * cut addHistoryItem(new EditCommand("Cut Sequences", EditCommand.CUT, * cut, sg.getStartRes(), sg.getEndRes()-sg.getStartRes()+1, * viewport.alignment)); - * + * */ /** * then addHistoryItem(new EditCommand( "Add sequences", * EditCommand.PASTE, sequences, 0, alignment.getWidth(), alignment) ); - * + * */ oldstring = command.seqs[i].getSequenceAsString(); tmp = new StringBuffer(oldstring.substring(0, start)); @@ -500,8 +503,12 @@ public class EditCommand implements CommandI fullseq = osp.substring(0, ipos) + nogaprep + osp.substring(ipos + nogaprep.length()); newds.setSequence(fullseq.toUpperCase()); - // TODO: ensure newly created dataset sequence is added to the set of + // TODO: JAL-1131 ensure newly created dataset sequence is added to + // the set of // dataset sequences associated with the alignment. + // TODO: JAL-1131 fix up any annotation associated with new dataset + // sequence to ensure that original sequence/annotation relationships + // are preserved. command.seqs[i].setDatasetSequence(newds); }