JAL-1989 more unit tests and encapsulation for ColumnSelection
[jalview.git] / src / jalview / gui / ScalePanel.java
index 62cd3f1..10963b6 100755 (executable)
@@ -84,6 +84,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
    * @param evt
    *          DOCUMENT ME!
    */
+  @Override
   public void mousePressed(MouseEvent evt)
   {
     int x = (evt.getX() / av.getCharWidth()) + av.getStartRes();
@@ -115,6 +116,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
                 MessageManager.getString("label.reveal"));
         item.addActionListener(new ActionListener()
         {
+          @Override
           public void actionPerformed(ActionEvent e)
           {
             av.showColumn(reveal[0]);
@@ -134,6 +136,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
                   MessageManager.getString("action.reveal_all"));
           item.addActionListener(new ActionListener()
           {
+            @Override
             public void actionPerformed(ActionEvent e)
             {
               av.showAllHiddenColumns();
@@ -155,6 +158,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
                 MessageManager.getString("label.hide_columns"));
         item.addActionListener(new ActionListener()
         {
+          @Override
           public void actionPerformed(ActionEvent e)
           {
             av.hideColumns(res, res);
@@ -170,6 +174,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
             {
               ap.overviewPanel.updateOverviewImage();
             }
+            av.sendSelection();
           }
         });
         pop.add(item);
@@ -221,6 +226,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
    * @param evt
    *          DOCUMENT ME!
    */
+  @Override
   public void mouseReleased(MouseEvent evt)
   {
     mouseDragging = false;
@@ -268,6 +274,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
    * @param evt
    *          DOCUMENT ME!
    */
+  @Override
   public void mouseDragged(MouseEvent evt)
   {
     mouseDragging = true;
@@ -337,6 +344,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
     }
   }
 
+  @Override
   public void mouseEntered(MouseEvent evt)
   {
     if (mouseDragging)
@@ -345,6 +353,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
     }
   }
 
+  @Override
   public void mouseExited(MouseEvent evt)
   {
     if (mouseDragging)
@@ -353,10 +362,12 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
     }
   }
 
+  @Override
   public void mouseClicked(MouseEvent evt)
   {
   }
 
+  @Override
   public void mouseMoved(MouseEvent evt)
   {
     if (!av.hasHiddenColumns())
@@ -398,6 +409,7 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
    * @param g
    *          DOCUMENT ME!
    */
+  @Override
   public void paintComponent(Graphics g)
   {
     drawScale(g, av.getStartRes(), av.getEndRes(), getWidth(), getHeight());
@@ -430,9 +442,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
     {
       gg.setColor(new Color(220, 0, 0));
 
-      for (int i = 0; i < cs.size(); i++)
+      for (int sel : cs.getSelected())
       {
-        int sel = cs.columnAt(i);
         if (av.hasHiddenColumns())
         {
           if (cs.isVisible(sel))