From: jprocter Date: Wed, 11 Jan 2006 13:27:21 +0000 (+0000) Subject: refactored Alignframe padGaps code to Alignment and Added AlignmentI method. X-Git-Tag: Root_VamJalview_2_07b+~219 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=20403dbf83a2caa650a4ccd37f5a6dae7d0bd0f3;p=jalview.git refactored Alignframe padGaps code to Alignment and Added AlignmentI method. --- diff --git a/src/jalview/datamodel/Alignment.java b/src/jalview/datamodel/Alignment.java index f0aeed9..e9af7f4 100755 --- a/src/jalview/datamodel/Alignment.java +++ b/src/jalview/datamodel/Alignment.java @@ -734,4 +734,21 @@ public class Alignment implements AlignmentI return dataset; } + public boolean padGaps() { + boolean modified=false; + int Width = getWidth(); + SequenceI current; + for (int i = 0; i < sequences.size(); + i++) + { + current = getSequenceAt(i); + + if (current.getLength() < Width) + { + current.insertCharAt(Width - 1, gapCharacter); + modified=true; + } + } + return modified; + } } diff --git a/src/jalview/datamodel/AlignmentI.java b/src/jalview/datamodel/AlignmentI.java index 2a39847..59610b3 100755 --- a/src/jalview/datamodel/AlignmentI.java +++ b/src/jalview/datamodel/AlignmentI.java @@ -300,6 +300,11 @@ public interface AlignmentI public Alignment getDataset(); public void setDataset(Alignment dataset); + /** + * pads sequences with gaps (to ensure the set looks like an alignment) + * @return boolean true if alignment was modified + */ + public boolean padGaps(); } diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index d2b5fc8..bfdc40b 100755 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -1259,22 +1259,8 @@ public class AlignFrame { addHistoryItem(new HistoryItem("Pad Gaps", viewport.alignment, HistoryItem.HIDE)); - - SequenceI current; - int Width = viewport.getAlignment().getWidth(); - - for (int i = 0; i < viewport.getAlignment().getSequences().size(); - i++) - { - current = viewport.getAlignment().getSequenceAt(i); - - if (current.getLength() < Width) - { - current.insertCharAt(Width - 1, viewport.getGapCharacter()); - } - } - - alignmentChanged(); + if (viewport.getAlignment().padGaps()) + alignmentChanged(); } /**