X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAlignViewport.java;h=bccb877e88d0ac0718339da63e2fabd4ea033e44;hb=76b5c58c65413e8b239dbf71999f500600ef0f95;hp=fde4d90e18bbf9f5c2b1e09f3aac7850c817c9a6;hpb=7570956d4b58f313d402cdd0507737c0628f1544;p=jalview.git diff --git a/src/jalview/gui/AlignViewport.java b/src/jalview/gui/AlignViewport.java index fde4d90..bccb877 100755 --- a/src/jalview/gui/AlignViewport.java +++ b/src/jalview/gui/AlignViewport.java @@ -1118,22 +1118,55 @@ public class AlignViewport colSel.hideColumns(start); else colSel.hideColumns(start, end); - setSelectionGroup(null); + hasHiddenColumns = true; } + public void hideAllSelectedSeqs() + { + if (selectionGroup == null) + return; + + SequenceI[] seqs = selectionGroup.getSequencesInOrder(alignment); + + for (int i = 0; i < seqs.length; i++) + { + alignment.getHiddenSequences().hideSequence(seqs[i]); + } + firePropertyChange("alignment", null, alignment.getSequences()); + hasHiddenRows = true; + setSelectionGroup(null); + } + public void hideSequence(SequenceI seq) { if(seq!=null) { alignment.getHiddenSequences().hideSequence(seq); hasHiddenRows = true; + firePropertyChange("alignment", null, alignment.getSequences()); } } public void showSequence(int index) { - alignment.getHiddenSequences().showSequence(index); + Vector tmp = alignment.getHiddenSequences().showSequence(index); + if(tmp.size()>0) + { + if(selectionGroup==null) + { + selectionGroup = new SequenceGroup(); + selectionGroup.setEndRes(alignment.getWidth()-1); + } + + for (int t = 0; t < tmp.size(); t++) + { + selectionGroup.addSequence( + (SequenceI) tmp.elementAt(t), false + ); + } + firePropertyChange("alignment", null, alignment.getSequences()); + } if(alignment.getHiddenSequences().getSize()<1) hasHiddenRows = false; @@ -1156,11 +1189,39 @@ public class AlignViewport { if(alignment.getHiddenSequences().getSize()>0) { - alignment.getHiddenSequences().showAll(); + if(selectionGroup==null) + { + selectionGroup = new SequenceGroup(); + selectionGroup.setEndRes(alignment.getWidth()-1); + } + Vector tmp = alignment.getHiddenSequences().showAll(); + for(int t=0; t