02eea9fcd32ff667e7615ffcc266ce7ee2fb96c8
[jalview.git] / src / jalview / gui / AlignExportSettings.java
1 package jalview.gui;
2
3 import jalview.api.AlignExportSettingI;
4 import jalview.bin.Jalview;
5 import jalview.jbgui.GAlignExportSettings;
6 import jalview.util.MessageManager;
7
8 import java.awt.event.ActionEvent;
9 import java.awt.event.WindowAdapter;
10 import java.awt.event.WindowEvent;
11
12 import javax.swing.JDialog;
13 import javax.swing.JOptionPane;
14
15 @SuppressWarnings("serial")
16 public class AlignExportSettings extends GAlignExportSettings implements
17         AlignExportSettingI
18 {
19   boolean cancelled = false;
20
21   JDialog dialog;
22
23   public AlignExportSettings(boolean hasHiddenSeq, boolean hasHiddenCols,
24           String alignFileFormat)
25   {
26     super(hasHiddenSeq, hasHiddenCols, alignFileFormat);
27     if (!Jalview.isHeadlessMode() && isShowDialog())
28     {
29       JOptionPane pane = new JOptionPane(null, JOptionPane.DEFAULT_OPTION,
30               JOptionPane.DEFAULT_OPTION, null, new Object[]
31               { this });
32       dialog = pane.createDialog(Desktop.desktop,
33               MessageManager.getString("label.export_settings"));
34       dialog.addWindowListener(new WindowAdapter()
35       {
36         public void windowClosing(WindowEvent e)
37         {
38           cancelled = true;
39         }
40       });
41       dialog.pack();
42       dialog.setVisible(true);
43       dialog.setContentPane(this);
44       dialog.validate();
45
46     }
47   }
48
49
50   public void ok_actionPerformed(ActionEvent e)
51   {
52     cancelled = false;
53     dialog.setVisible(false);
54     dialog.dispose();
55   }
56
57   public void cancel_actionPerformed(ActionEvent e)
58   {
59     cancelled = true;
60     dialog.setVisible(false);
61     dialog.dispose();
62   }
63
64   @Override
65   public boolean isExportHiddenSequences()
66   {
67     return chkHiddenSeqs.isSelected();
68   }
69
70   @Override
71   public boolean isExportHiddenColumns()
72   {
73     return chkHiddenCols.isSelected();
74   }
75
76   @Override
77   public boolean isExportAnnotations()
78   {
79     return chkExportAnnots.isSelected();
80   }
81
82   @Override
83   public boolean isExportFeatures()
84   {
85     return chkExportFeats.isSelected();
86   }
87
88   @Override
89   public boolean isExportGroups()
90   {
91     return chkExportGrps.isSelected();
92   }
93
94   public boolean isCancelled()
95   {
96     return cancelled;
97   }
98
99 }