Hidden representatives moved from sequence to viewport
[jalview.git] / src / jalview / gui / PopupMenu.java
index 21be086..9ed81ab 100755 (executable)
@@ -180,7 +180,7 @@ public class PopupMenu extends JPopupMenu
           add(menuItem);\r
 \r
           if(ap.av.getSelectionGroup() !=null\r
-             && ap.av.getSelectionGroup().getSize(false)>1)\r
+             && ap.av.getSelectionGroup().getSize()>1)\r
           {\r
             menuItem = new JMenuItem("Represent Group with " + seq.getName());\r
             menuItem.addActionListener(new java.awt.event.ActionListener()\r
@@ -718,7 +718,7 @@ public class PopupMenu extends JPopupMenu
     protected void clustalColour_actionPerformed(ActionEvent e)\r
     {\r
         SequenceGroup sg = getGroup();\r
-        sg.cs = new ClustalxColourScheme(sg.getSequences(true),\r
+        sg.cs = new ClustalxColourScheme(sg.getSequences(ap.av.hiddenRepSequences),\r
                 ap.av.alignment.getWidth());\r
         refresh();\r
     }\r
@@ -825,7 +825,7 @@ public class PopupMenu extends JPopupMenu
         if (abovePIDColour.isSelected())\r
         {\r
           sg.cs.setConsensus(AAFrequency.calculate(\r
-              sg.getSequences(true), sg.getStartRes(),\r
+              sg.getSequences(ap.av.hiddenRepSequences), sg.getStartRes(),\r
               sg.getEndRes() + 1));\r
 \r
             int threshold = SliderPanel.setPIDSliderSource(ap, sg.cs,\r
@@ -872,7 +872,7 @@ public class PopupMenu extends JPopupMenu
     {\r
         SequenceGroup sg = getGroup();\r
         sg.cs = new PIDColourScheme();\r
-        sg.cs.setConsensus(AAFrequency.calculate(sg.getSequences(true),\r
+        sg.cs.setConsensus(AAFrequency.calculate(sg.getSequences(ap.av.hiddenRepSequences),\r
                                                  sg.getStartRes(),\r
                                                  sg.getEndRes() + 1));\r
         refresh();\r
@@ -889,7 +889,7 @@ public class PopupMenu extends JPopupMenu
 \r
         sg.cs = new Blosum62ColourScheme();\r
 \r
-        sg.cs.setConsensus(AAFrequency.calculate(sg.getSequences(true),\r
+        sg.cs.setConsensus(AAFrequency.calculate(sg.getSequences(ap.av.hiddenRepSequences),\r
                                                  sg.getStartRes(),\r
                                                  sg.getEndRes() + 1));\r
 \r
@@ -922,7 +922,7 @@ public class PopupMenu extends JPopupMenu
         {\r
             Conservation c = new Conservation("Group",\r
                     ResidueProperties.propHash, 3,\r
-                    sg.getSequences(true),\r
+                    sg.getSequences(ap.av.hiddenRepSequences),\r
                     sg.getStartRes(),\r
                     sg.getEndRes() + 1);\r
 \r
@@ -1124,34 +1124,33 @@ public class PopupMenu extends JPopupMenu
     void hideSequences(boolean representGroup)\r
     {\r
       SequenceGroup sg = ap.av.getSelectionGroup();\r
-      if(sg==null || sg.getSize(false)<1)\r
+      if(sg==null || sg.getSize()<1)\r
       {\r
         ap.av.hideSequence(new SequenceI[]{sequence});\r
         return;\r
       }\r
 \r
-      int gsize = sg.getSize(false);\r
-      SequenceI [] hseqs;\r
+      ap.av.setSelectionGroup(null);\r
 \r
-      hseqs = new SequenceI[ representGroup ? gsize-1 : gsize ];\r
+      if (representGroup)\r
+      {\r
+        ap.av.hideRepSequences(sequence, sg);\r
 \r
-        int index = 0;\r
-        for(int i=0; i<gsize; i++)\r
-        {\r
-          if(representGroup && sg.getSequenceAt(i)!=sequence)\r
-          {\r
-            sequence.addHiddenSequence(sg.getSequenceAt(i));\r
-            hseqs[index++] = sg.getSequenceAt(i);\r
-          }\r
-          else if(!representGroup)\r
-          {\r
-            hseqs[index++] = sg.getSequenceAt(i);\r
-          }\r
-        }\r
+        return;\r
+      }\r
 \r
-        ap.av.hideSequence(hseqs);\r
+      int gsize = sg.getSize();\r
+      SequenceI[] hseqs;\r
 \r
-        ap.av.setSelectionGroup(null);\r
+      hseqs = new SequenceI[gsize];\r
+\r
+      int index = 0;\r
+      for (int i = 0; i < gsize; i++)\r
+      {\r
+        hseqs[index++] = sg.getSequenceAt(i);\r
+      }\r
+\r
+      ap.av.hideSequence(hseqs);\r
     }\r
 \r
   public void copy_actionPerformed(ActionEvent e)\r
@@ -1226,7 +1225,8 @@ public class PopupMenu extends JPopupMenu
       }\r
 \r
       ChangeCaseCommand caseCommand = new ChangeCaseCommand(\r
-          description, sg.getSequencesAsArray(true), startEnd, caseChange\r
+          description, sg.getSequencesAsArray(ap.av.hiddenRepSequences),\r
+          startEnd, caseChange\r
           );\r
 \r
       ap.alignFrame.addHistoryItem(caseCommand);\r
@@ -1335,7 +1335,7 @@ public class PopupMenu extends JPopupMenu
     if(sg==null)\r
       return;\r
 \r
-    int gSize= sg.getSize(false);\r
+    int gSize= sg.getSize();\r
     SequenceI [] seqs = new SequenceI[gSize];\r
     SequenceFeature [] features = new SequenceFeature[gSize];\r
 \r