JAL-3048 revised AlignExportSettings dialog with response action
[jalview.git] / src / jalview / gui / AlignExportSettings.java
diff --git a/src/jalview/gui/AlignExportSettings.java b/src/jalview/gui/AlignExportSettings.java
deleted file mode 100644 (file)
index fbe12d8..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3
- * of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.gui;
-
-import jalview.api.AlignExportSettingI;
-import jalview.api.AlignViewportI;
-import jalview.bin.Jalview;
-import jalview.datamodel.AlignExportSettingBeanI;
-import jalview.datamodel.AlignmentExportData;
-import jalview.datamodel.AlignmentI;
-import jalview.datamodel.HiddenSequences;
-import jalview.io.FileFormatI;
-import jalview.jbgui.GAlignExportSettings;
-import jalview.util.MessageManager;
-import jalview.util.dialogrunner.RunResponse;
-
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-import javax.swing.JOptionPane;
-
-@SuppressWarnings("serial")
-public class AlignExportSettings extends GAlignExportSettings
-        implements AlignExportSettingI
-{
-  boolean cancelled = false;
-
-  JvOptionPane dialog;
-
-  AlignmentPanel alignPanel;
-  
-  /**
-   * settings provided at construction override the GUI 
-   */
-  AlignExportSettingBeanI override=null;
-
-  public AlignExportSettings(AlignmentPanel alignmentPanel,
-          FileFormatI format, AlignExportSettingBeanI exportSettings)
-  {
-    super(alignmentPanel.getAlignViewport().hasHiddenRows(),
-            alignmentPanel.getAlignViewport().hasHiddenColumns(), format);
-    this.alignPanel = alignmentPanel;
-    override = exportSettings;
-  }     
-
-  /**
-   * @param viewport
-   * @return a bean with data for export
-   */
-  @Override
-  public AlignmentExportData getAlignExportData()
-  {
-    // settings.isExportAnnotations();
-
-    AlignmentI alignmentToExport = null;
-    String[] omitHidden = null;
-    AlignViewportI viewport = alignPanel.getAlignViewport();
-
-    alignmentToExport = viewport.getAlignment();
-
-    if (viewport.hasHiddenColumns() && !isExportHiddenColumns())
-    {
-      omitHidden = viewport.getViewAsString(false,
-              isExportHiddenSequences());
-    }
-
-    int[] alignmentStartEnd = new int[2];
-    if (viewport.hasHiddenRows() && isExportHiddenSequences())
-    {
-      alignmentToExport = viewport.getAlignment().getHiddenSequences()
-              .getFullAlignment();
-    }
-    else
-    {
-      alignmentToExport = viewport.getAlignment();
-    }
-    alignmentStartEnd = viewport.getAlignment().getHiddenColumns()
-            .getVisibleStartAndEndIndex(alignmentToExport.getWidth());
-    AlignmentExportData ed = new AlignmentExportData(alignmentToExport,
-            omitHidden, alignmentStartEnd, this);
-    return ed;
-  }
-
-  @Override
-  public void ok_actionPerformed(ActionEvent e)
-  {
-    cancelled = false;
-  }
-
-  @Override
-  public void cancel_actionPerformed(ActionEvent e)
-  {
-    cancelled = true;
-  }
-
-  @Override
-  public boolean isExportHiddenSequences()
-  {
-    return override!=null ? override.isExportHiddenSequences() : chkHiddenSeqs.isSelected();
-  }
-
-  @Override
-  public boolean isExportHiddenColumns()
-  {
-    return override!=null ? override.isExportHiddenColumns() : chkHiddenCols.isSelected();
-  }
-
-  @Override
-  public boolean isExportAnnotations()
-  {
-    return override!=null ? override.isExportAnnotations() : chkExportAnnots.isSelected();
-  }
-
-  @Override
-  public boolean isExportFeatures()
-  {
-    return override!=null ? override.isExportFeatures() : chkExportFeats.isSelected();
-  }
-
-  @Override
-  public boolean isExportGroups()
-  {
-    return override!=null ? override.isExportGroups() : chkExportGrps.isSelected();
-  }
-
-  @Override
-  public boolean isCancelled()
-  {
-    return override!=null ? override.isCancelled() : cancelled;
-  }
-
-  ActionListener afterShownAction = null;
-
-  @Override
-  public void addActionListener(ActionListener actionListener)
-  {
-    afterShownAction = actionListener;
-  }
-
-  @Override
-  public void doShowSettings()
-  {
-    if (!Jalview.isHeadlessMode() && override==null && isShowDialog())
-    {
-
-      dialog = JvOptionPane.newOptionDialog(alignPanel);
-
-      dialog.response(new RunResponse(JvOptionPane.OK_OPTION)
-      {
-        public void run()
-        {
-          ok_actionPerformed(null);
-          afterShownAction.actionPerformed(null);
-        }
-      }).defaultResponse(new Runnable()
-      {
-        @Override
-        public void run()
-        {
-          cancelled=true;
-          afterShownAction.actionPerformed(null);
-        }
-      });
-      String ok = MessageManager.getString("action.ok"),
-              cancel = MessageManager.getString("action.cancel");
-      dialog.showInternalDialog(this,
-              MessageManager.getString("label.export_settings"),
-              JOptionPane.DEFAULT_OPTION, JvOptionPane.DEFAULT_OPTION, null,
-              new Object[]
-              { ok, cancel }, ok);
-    }
-    else
-    {
-      afterShownAction.actionPerformed(null);
-    }
-  }
-
-}