X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FAlignExportOptions.java;h=6ca21c73e74a9454846ec44540cc00948b57b4a6;hb=81d1b5ee333dee61382971eca41792d6a64a29fc;hp=ecf89cc951886234cea684cc22d0556a59ade53b;hpb=2e02b14ba33c2cf4618f65c831a506f81e621589;p=jalview.git diff --git a/src/jalview/gui/AlignExportOptions.java b/src/jalview/gui/AlignExportOptions.java index ecf89cc..6ca21c7 100644 --- a/src/jalview/gui/AlignExportOptions.java +++ b/src/jalview/gui/AlignExportOptions.java @@ -20,12 +20,6 @@ */ package jalview.gui; -import jalview.api.AlignExportSettingsI; -import jalview.api.AlignViewportI; -import jalview.io.FileFormatI; -import jalview.util.MessageManager; -import jalview.util.dialogrunner.RunResponse; - import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.ActionEvent; @@ -36,6 +30,12 @@ import java.awt.event.ItemListener; import javax.swing.JCheckBox; import javax.swing.JPanel; +import jalview.api.AlignExportSettingsI; +import jalview.api.AlignViewportI; +import jalview.bin.Jalview; +import jalview.io.FileFormatI; +import jalview.util.MessageManager; + /** * A dialog that allows the user to specify whether to include hidden columns or * sequences in an alignment export, and possibly features, annotations and @@ -73,12 +73,9 @@ public class AlignExportOptions extends JPanel public static boolean isNeeded(AlignViewportI viewport, FileFormatI format) { - if (viewport.hasHiddenColumns() || viewport.hasHiddenRows() - || format.isComplexAlignFile()) - { - return true; - } - return false; + return !Jalview.getInstance().isHeadlessMode() + && (viewport.hasHiddenColumns() || viewport.hasHiddenRows() + || format.isComplexAlignFile()); } /** @@ -110,8 +107,8 @@ public class AlignExportOptions extends JPanel MessageManager.getString("action.cancel") }; dialog.showInternalDialog(this, MessageManager.getString("label.export_settings"), - JvOptionPane.OK_CANCEL_OPTION, JvOptionPane.PLAIN_MESSAGE, - null, options, MessageManager.getString("action.ok")); + JvOptionPane.OK_CANCEL_OPTION, JvOptionPane.PLAIN_MESSAGE, null, + options, MessageManager.getString("action.ok")); } /** @@ -120,9 +117,9 @@ public class AlignExportOptions extends JPanel * * @param action */ - public void setResponseAction(RunResponse action) + public void setResponseAction(Object response, Runnable action) { - dialog.addResponse(action); + dialog.setResponseHandler(response, action); } /** @@ -136,19 +133,19 @@ public class AlignExportOptions extends JPanel boolean set = chkHiddenSeqs.isEnabled() && isSelected; chkHiddenSeqs.setSelected(set); settings.setExportHiddenSequences(set); - + set = chkHiddenCols.isEnabled() && isSelected; chkHiddenCols.setSelected(set); settings.setExportHiddenColumns(set); - + set = isComplexAlignFile && chkExportAnnots.isEnabled() && isSelected; chkExportAnnots.setSelected(set); settings.setExportAnnotations(set); - + set = isComplexAlignFile && chkExportFeats.isEnabled() && isSelected; chkExportFeats.setSelected(set); settings.setExportFeatures(set); - + set = isComplexAlignFile && chkExportGrps.isEnabled() && isSelected; chkExportGrps.setSelected(set); settings.setExportGroups(set); @@ -172,7 +169,7 @@ public class AlignExportOptions extends JPanel settings.setExportHiddenSequences(chkHiddenSeqs.isSelected()); } }); - + chkHiddenCols.setText( MessageManager.getString("action.export_hidden_columns")); chkHiddenCols.addActionListener(new ActionListener() @@ -183,7 +180,7 @@ public class AlignExportOptions extends JPanel settings.setExportHiddenColumns(chkHiddenCols.isSelected()); } }); - + chkExportAnnots .setText(MessageManager.getString("action.export_annotations")); chkExportAnnots.addActionListener(new ActionListener() @@ -194,7 +191,7 @@ public class AlignExportOptions extends JPanel settings.setExportAnnotations(chkExportAnnots.isSelected()); } }); - + chkExportFeats .setText(MessageManager.getString("action.export_features")); chkExportFeats.addActionListener(new ActionListener() @@ -205,7 +202,7 @@ public class AlignExportOptions extends JPanel settings.setExportFeatures(chkExportFeats.isSelected()); } }); - + chkExportGrps.setText(MessageManager.getString("action.export_groups")); chkExportGrps.addActionListener(new ActionListener() { @@ -215,14 +212,14 @@ public class AlignExportOptions extends JPanel settings.setExportGroups(chkExportGrps.isSelected()); } }); - + JCheckBox chkAll = new JCheckBox( MessageManager.getString("action.select_all")); - + JPanel hiddenRegionConfPanel = new JPanel(new BorderLayout()); JPanel complexExportPanel = new JPanel(new BorderLayout()); this.setLayout(new BorderLayout()); - + chkAll.addItemListener(new ItemListener() { @Override @@ -231,30 +228,30 @@ public class AlignExportOptions extends JPanel checkAllAction(chkAll.isSelected()); } }); - + hiddenRegionConfPanel.add(chkHiddenSeqs, BorderLayout.CENTER); hiddenRegionConfPanel.add(chkHiddenCols, BorderLayout.SOUTH); chkHiddenSeqs.setEnabled(hasHiddenSeq); chkHiddenCols.setEnabled(hasHiddenCols); - + complexExportPanel.add(chkExportAnnots, BorderLayout.NORTH); complexExportPanel.add(chkExportFeats, BorderLayout.CENTER); complexExportPanel.add(chkExportGrps, BorderLayout.SOUTH); - + JPanel actionPanel = new JPanel(new FlowLayout(FlowLayout.CENTER)); actionPanel.add(chkAll); - + JPanel optionsPanel = new JPanel(); if (this.isComplexAlignFile) { optionsPanel.add(complexExportPanel); } - + if (hasHiddenSeq || hasHiddenCols) { optionsPanel.add(hiddenRegionConfPanel); } - + add(optionsPanel, BorderLayout.NORTH); add(actionPanel, BorderLayout.SOUTH); }