JAL-1632 one PCA/Tree per panel, closed when panel is closed
[jalview.git] / src / jalview / gui / AlignFrame.java
index a69cd59..8fc106f 100644 (file)
@@ -372,7 +372,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       @Override
       public void actionPerformed(ActionEvent e)
       {
-        new CalculationChooser(AlignFrame.this);
+        openTreePcaDialog();
       }
     });
     buildColourMenu();
@@ -5641,6 +5641,18 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     ColourSchemeI colourScheme = viewport.getGlobalColourScheme();
     ColourMenuHelper.setColourSelected(colourMenu, colourScheme);
   }
+
+  /**
+   * Open a dialog (if not already open) that allows the user to select and
+   * calculate PCA or Tree analysis
+   */
+  protected void openTreePcaDialog()
+  {
+    if (alignPanel.getCalculationDialog() == null)
+    {
+      new CalculationChooser(AlignFrame.this);
+    }
+  }
 }
 
 class PrintThread extends Thread