JAL-1976 Added progress indicators for HTML_SVG and BioJS export operations
[jalview.git] / src / jalview / gui / AlignFrame.java
index d08e1a3..a616dc0 100644 (file)
@@ -845,6 +845,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
    * operation that affects the data in the current view (selection changed,
    * etc) to update the menus to reflect the new state.
    */
+  @Override
   public void setMenusForViewport()
   {
     setMenusFromViewport(viewport);
@@ -1368,7 +1369,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   @Override
   public void bioJSMenuItem_actionPerformed(ActionEvent e)
   {
-    BioJsHTMLOutput bjs = new BioJsHTMLOutput(alignPanel);
+    BioJsHTMLOutput bjs = new BioJsHTMLOutput(alignPanel, this);
     bjs.exportJalviewAlignmentAsBioJsHtmlFile();
   }
 
@@ -1401,6 +1402,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     alignPanel.makeEPS(f);
   }
 
+  @Override
   public void createSVG(File f)
   {
     alignPanel.makeSVG(f);
@@ -1574,6 +1576,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     }
   }
 
+  @Override
   public void addHistoryItem(CommandI command)
   {
     if (command.getSize() > 0)
@@ -2415,7 +2418,6 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     }
   }
 
-
   /**
    * DOCUMENT ME!
    * 
@@ -2545,7 +2547,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     ColumnSelection colSel = viewport.getColumnSelection();
     int column;
 
-    if (colSel.size() > 0)
+    if (!colSel.isEmpty())
     {
       if (trimLeft)
       {
@@ -2570,18 +2572,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       TrimRegionCommand trimRegion;
       if (trimLeft)
       {
-        trimRegion = new TrimRegionCommand("Remove Left",
-                TrimRegionCommand.TRIM_LEFT, seqs, column,
-                viewport.getAlignment(), viewport.getColumnSelection(),
-                viewport.getSelectionGroup());
+        trimRegion = new TrimRegionCommand("Remove Left", true, seqs,
+                column, viewport.getAlignment());
         viewport.setStartRes(0);
       }
       else
       {
-        trimRegion = new TrimRegionCommand("Remove Right",
-                TrimRegionCommand.TRIM_RIGHT, seqs, column,
-                viewport.getAlignment(), viewport.getColumnSelection(),
-                viewport.getSelectionGroup());
+        trimRegion = new TrimRegionCommand("Remove Right", false, seqs,
+                column, viewport.getAlignment());
       }
 
       statusBar.setText(MessageManager.formatMessage(
@@ -2968,6 +2966,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   {
     viewport.showAllHiddenColumns();
     repaint();
+    viewport.sendSelection();
   }
 
   @Override
@@ -3058,6 +3057,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   public void hideAllButSelection_actionPerformed(ActionEvent e)
   {
     toggleHiddenRegions(false, false);
+    viewport.sendSelection();
   }
 
   /*
@@ -3075,6 +3075,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     viewport.hideAllSelectedSeqs();
     viewport.hideSelectedColumns();
     alignPanel.paintAlignment(true);
+    viewport.sendSelection();
   }
 
   /*
@@ -3090,6 +3091,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     viewport.showAllHiddenColumns();
     viewport.showAllHiddenSeqs();
     alignPanel.paintAlignment(true);
+    viewport.sendSelection();
   }
 
   @Override
@@ -3097,6 +3099,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   {
     viewport.hideSelectedColumns();
     alignPanel.paintAlignment(true);
+    viewport.sendSelection();
   }
 
   @Override
@@ -3498,6 +3501,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
    * @param cs
    *          DOCUMENT ME!
    */
+  @Override
   public void changeColour(ColourSchemeI cs)
   {
     // TODO: pull up to controller method
@@ -5532,8 +5536,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           @Override
           public void run()
           {
+            boolean isNuclueotide = alignPanel.alignFrame
+                    .getViewport().getAlignment()
+                    .isNucleotide();
             new jalview.ws.DBRefFetcher(alignPanel.av
-                    .getSequenceSelection(), alignPanel.alignFrame)
+                    .getSequenceSelection(),
+                    alignPanel.alignFrame, null,
+                    alignPanel.alignFrame.featureSettings,
+                    isNuclueotide)
                     .fetchDBRefs(false);
           }
         }).start();
@@ -5602,9 +5612,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                       @Override
                       public void run()
                       {
+                        boolean isNuclueotide = alignPanel.alignFrame
+                                .getViewport().getAlignment()
+                                .isNucleotide();
                         new jalview.ws.DBRefFetcher(alignPanel.av
                                 .getSequenceSelection(),
-                                alignPanel.alignFrame, dassource)
+                                alignPanel.alignFrame, dassource,
+                                alignPanel.alignFrame.featureSettings,
+                                isNuclueotide)
                                 .fetchDBRefs(false);
                       }
                     }).start();
@@ -5638,9 +5653,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                       @Override
                       public void run()
                       {
+                        boolean isNuclueotide = alignPanel.alignFrame
+                                .getViewport().getAlignment()
+                                .isNucleotide();
                         new jalview.ws.DBRefFetcher(alignPanel.av
                                 .getSequenceSelection(),
-                                alignPanel.alignFrame, dassource)
+                                alignPanel.alignFrame, dassource,
+                                alignPanel.alignFrame.featureSettings,
+                                isNuclueotide)
                                 .fetchDBRefs(false);
                       }
                     }).start();
@@ -5689,9 +5709,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                         @Override
                         public void run()
                         {
+                          boolean isNuclueotide = alignPanel.alignFrame
+                                  .getViewport().getAlignment()
+                                  .isNucleotide();
                           new jalview.ws.DBRefFetcher(alignPanel.av
                                   .getSequenceSelection(),
-                                  alignPanel.alignFrame, dassrc)
+                                  alignPanel.alignFrame, dassrc,
+                                  alignPanel.alignFrame.featureSettings,
+                                  isNuclueotide)
                                   .fetchDBRefs(false);
                         }
                       }).start();
@@ -5756,6 +5781,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     viewport.firePropertyChange("alignment", null, al);
   }
 
+  @Override
   public void setShowSeqFeatures(boolean b)
   {
     showSeqFeatures.setSelected(b);