Merge branch 'feature/JAL-2664' into feature/JAL-2527
[jalview.git] / src / jalview / jbgui / GAlignExportSettings.java
index 15498c6..fe5a520 100644 (file)
@@ -1,5 +1,28 @@
+/*
+ * 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.jbgui;
 
+import jalview.io.FileFormatI;
+import jalview.util.MessageManager;
+
 import java.awt.BorderLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -27,42 +50,31 @@ public abstract class GAlignExportSettings extends JPanel
 
   protected BorderLayout mainLayout = new BorderLayout();
 
-  protected JCheckBox chkAll = new JCheckBox("Check All");
+  protected JCheckBox chkAll = new JCheckBox();
 
-  protected JCheckBox chkHiddenSeqs = new JCheckBox(
-          "Export Hidden Sequences");
+  protected JCheckBox chkHiddenSeqs = new JCheckBox();
 
-  protected JCheckBox chkHiddenCols = new JCheckBox("Export Hidden Columns");
+  protected JCheckBox chkHiddenCols = new JCheckBox();
 
-  protected JCheckBox chkExportAnnots = new JCheckBox("Export Annotations");
+  protected JCheckBox chkExportAnnots = new JCheckBox();
 
-  protected JCheckBox chkExportFeats = new JCheckBox("Export Features");
+  protected JCheckBox chkExportFeats = new JCheckBox();
 
-  protected JCheckBox chkExportGrps = new JCheckBox("Export Groups");
+  protected JCheckBox chkExportGrps = new JCheckBox();
 
-  JButton btnOk = new JButton("Ok");
+  JButton btnOk = new JButton();
 
-  JButton btnCancel = new JButton("Cancel");
+  JButton btnCancel = new JButton();
 
   private boolean hasHiddenSeq, hasHiddenCols, isComplexAlignFile,
           showDialog;
 
   public GAlignExportSettings(boolean hasHiddenSeq, boolean hasHiddenCols,
-          String alignFileFormat)
+          FileFormatI format)
   {
     this.hasHiddenSeq = hasHiddenSeq;
     this.hasHiddenCols = hasHiddenCols;
-    String[] complexFormats =
-    { "JSON", "HTML" };
-
-    for (String format : complexFormats)
-    {
-      if (format.equalsIgnoreCase(alignFileFormat))
-      {
-        this.isComplexAlignFile = true;
-        break;
-      }
-    }
+    this.isComplexAlignFile = format.isComplexAlignFile();
     if (this.hasHiddenCols || this.hasHiddenSeq || this.isComplexAlignFile)
     {
       this.showDialog = true;
@@ -72,12 +84,26 @@ public abstract class GAlignExportSettings extends JPanel
 
   public void init()
   {
+    chkHiddenSeqs.setText(
+            MessageManager.getString("action.export_hidden_sequences"));
+    chkHiddenCols.setText(
+            MessageManager.getString("action.export_hidden_columns"));
+    chkExportAnnots
+            .setText(MessageManager.getString("action.export_annotations"));
+    chkExportFeats
+            .setText(MessageManager.getString("action.export_features"));
+    chkExportGrps.setText(MessageManager.getString("action.export_groups"));
+    btnOk.setText(MessageManager.getString("action.ok"));
+    btnCancel.setText(MessageManager.getString("action.cancel"));
+    chkAll.setText(MessageManager.getString("action.select_all"));
+
     hiddenRegionConfPanel.setLayout(hiddenRegionLayout);
     complexExportPanel.setLayout(complexExportLayout);
     setLayout(mainLayout);
 
     chkAll.addItemListener(new ItemListener()
     {
+      @Override
       public void itemStateChanged(ItemEvent e)
       {
         checkAllAction();
@@ -86,6 +112,7 @@ public abstract class GAlignExportSettings extends JPanel
 
     btnOk.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         ok_actionPerformed(e);
@@ -94,13 +121,14 @@ public abstract class GAlignExportSettings extends JPanel
 
     btnCancel.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         cancel_actionPerformed(e);
       }
     });
 
-    hiddenRegionConfPanel.add(chkAll, BorderLayout.NORTH);
+    // hiddenRegionConfPanel.add(chkAll, BorderLayout.NORTH);
     hiddenRegionConfPanel.add(chkHiddenSeqs, BorderLayout.CENTER);
     hiddenRegionConfPanel.add(chkHiddenCols, BorderLayout.SOUTH);
     chkHiddenSeqs.setEnabled(hasHiddenSeq);
@@ -110,15 +138,18 @@ public abstract class GAlignExportSettings extends JPanel
     complexExportPanel.add(chkExportFeats, BorderLayout.CENTER);
     complexExportPanel.add(chkExportGrps, BorderLayout.SOUTH);
 
-    if (hasHiddenSeq || hasHiddenCols)
-    {
-      optionsPanel.add(hiddenRegionConfPanel);
-    }
+    actionPanel.add(chkAll);
 
     if (this.isComplexAlignFile)
     {
       optionsPanel.add(complexExportPanel);
     }
+
+    if (hasHiddenSeq || hasHiddenCols)
+    {
+      optionsPanel.add(hiddenRegionConfPanel);
+    }
+
     actionPanel.add(btnCancel);
     actionPanel.add(btnOk);
 
@@ -126,7 +157,7 @@ public abstract class GAlignExportSettings extends JPanel
     add(actionPanel, BorderLayout.SOUTH);
 
   }
-  
+
   private void checkAllAction()
   {
     boolean isSelected = chkAll.isSelected();
@@ -134,10 +165,10 @@ public abstract class GAlignExportSettings extends JPanel
     chkHiddenCols.setSelected(chkHiddenCols.isEnabled() && isSelected);
     chkExportAnnots.setSelected(isComplexAlignFile
             && chkExportAnnots.isEnabled() && isSelected);
-    chkExportFeats.setSelected(isComplexAlignFile
-            && chkExportFeats.isEnabled() && isSelected);
-    chkExportGrps.setSelected(isComplexAlignFile
-            && chkExportGrps.isEnabled() && isSelected);
+    chkExportFeats.setSelected(
+            isComplexAlignFile && chkExportFeats.isEnabled() && isSelected);
+    chkExportGrps.setSelected(
+            isComplexAlignFile && chkExportGrps.isEnabled() && isSelected);
   }
 
   public boolean isShowDialog()