X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGAlignExportSettings.java;h=cfa57c8c89d26fd14cad9575e03bc81d7f9dc899;hb=refs%2Fheads%2FJalview-BH%2FJAL-3048_exportSettingsrefactor;hp=2583b6ba0feef250e929fe49451236a32720fbd6;hpb=60bf4c4778ecca475a951c4dd00731933d0b7c59;p=jalview.git diff --git a/src/jalview/jbgui/GAlignExportSettings.java b/src/jalview/jbgui/GAlignExportSettings.java index 2583b6b..cfa57c8 100644 --- a/src/jalview/jbgui/GAlignExportSettings.java +++ b/src/jalview/jbgui/GAlignExportSettings.java @@ -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 . + * 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,78 +50,61 @@ public abstract class GAlignExportSettings extends JPanel protected BorderLayout mainLayout = new BorderLayout(); - protected JCheckBox chkAll = new JCheckBox("Check All"); - - protected JCheckBox chkHiddenSeqs = new JCheckBox( - "Export Hidden Sequences"); - - protected JCheckBox chkHiddenCols = new JCheckBox("Export Hidden Columns"); + protected JCheckBox chkAll = new JCheckBox(); - protected JCheckBox chkExportAnnots = new JCheckBox("Export Annotations"); + protected JCheckBox chkHiddenSeqs = new JCheckBox(); - protected JCheckBox chkExportFeats = new JCheckBox("Export Features"); + protected JCheckBox chkHiddenCols = new JCheckBox(); - protected JCheckBox chkExportGrps = new JCheckBox("Export Groups"); + protected JCheckBox chkExportAnnots = new JCheckBox(); - JButton btnOk = new JButton("Ok"); + protected JCheckBox chkExportFeats = new JCheckBox(); - JButton btnCancel = new JButton("Cancel"); + protected JCheckBox chkExportGrps = new JCheckBox(); - private boolean hasHiddenSeq, hasHiddenCols, isComplexAlignFile; - - boolean isComplexFormat = false; + 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) + this.isComplexAlignFile = format.isComplexAlignFile(); + if (this.hasHiddenCols || this.hasHiddenSeq || this.isComplexAlignFile) { - if (format.equalsIgnoreCase(alignFileFormat)) - { - this.isComplexAlignFile = true; - break; - } + this.showDialog = true; } - init(); } 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")); + 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(); } }); - btnOk.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - ok_actionPerformed(e); - } - }); - - btnCancel.addActionListener(new ActionListener() - { - 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); @@ -108,25 +114,23 @@ public abstract class GAlignExportSettings extends JPanel complexExportPanel.add(chkExportFeats, BorderLayout.CENTER); complexExportPanel.add(chkExportGrps, BorderLayout.SOUTH); - if (hasHiddenSeq || hasHiddenCols) + actionPanel.add(chkAll); + + if (this.isComplexAlignFile) { - optionsPanel.add(hiddenRegionConfPanel); + optionsPanel.add(complexExportPanel); } - if (isComplexAlignFile) + if (hasHiddenSeq || hasHiddenCols) { - optionsPanel.add(complexExportPanel); + optionsPanel.add(hiddenRegionConfPanel); } - actionPanel.add(btnCancel); - actionPanel.add(btnOk); add(optionsPanel, BorderLayout.NORTH); add(actionPanel, BorderLayout.SOUTH); } - - private void checkAllAction() { boolean isSelected = chkAll.isSelected(); @@ -134,10 +138,20 @@ 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() + { + return showDialog; + } + + public void setShowDialog(boolean showDialog) + { + this.showDialog = showDialog; } public abstract void ok_actionPerformed(ActionEvent e);