X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FPreferences.java;h=cd3b9e5db31052e963dbe7d0ca6029733f9e7410;hb=52835208007a37595aa07b40981a8609bad957e0;hp=6635dbe14463fa4047ab0fb355b5d3107f39a92d;hpb=d476574d0dc6e4d98824f430e41c8965b8e93499;p=jalview.git diff --git a/src/jalview/gui/Preferences.java b/src/jalview/gui/Preferences.java index 6635dbe..cd3b9e5 100755 --- a/src/jalview/gui/Preferences.java +++ b/src/jalview/gui/Preferences.java @@ -24,6 +24,7 @@ import jalview.analysis.AnnotationSorter.SequenceAnnotationOrder; import jalview.bin.Cache; import jalview.gui.Help.HelpId; import jalview.gui.StructureViewer.ViewerType; +import jalview.io.BackupFiles; import jalview.io.FileFormatI; import jalview.io.JalviewFileChooser; import jalview.io.JalviewFileView; @@ -54,7 +55,7 @@ import java.util.ArrayList; import java.util.List; import javax.help.HelpSetException; -import javax.swing.JColorChooser; +import javax.swing.JComboBox; import javax.swing.JFileChooser; import javax.swing.JInternalFrame; import javax.swing.JPanel; @@ -168,8 +169,6 @@ public class Preferences extends GPreferences JInternalFrame frame; - DasSourceBrowser dasSource; - private WsPreferences wsPrefs; private OptionsParam promptEachTimeOpt = new OptionsParam( @@ -190,13 +189,13 @@ public class Preferences extends GPreferences super(); frame = new JInternalFrame(); frame.setContentPane(this); - dasSource = new DasSourceBrowser(); - dasTab.add(dasSource, BorderLayout.CENTER); - wsPrefs = new WsPreferences(); - wsTab.add(wsPrefs, BorderLayout.CENTER); + if (!Platform.isJS()) + { + wsPrefs = new WsPreferences(); + wsTab.add(wsPrefs, BorderLayout.CENTER); + } int width = 500, height = 450; - new jalview.util.Platform(); - if (Platform.isAMac()) + if (Platform.isAMacAndNotJS()) { width = 570; height = 480; @@ -329,7 +328,7 @@ public class Preferences extends GPreferences gapLabel.setEnabled(!useLegacyGap.isSelected()); gapColour.setEnabled(!useLegacyGap.isSelected()); showHiddenAtStart - .setSelected(Cache.getDefault(SHOW_OV_HIDDEN_AT_START, true)); + .setSelected(Cache.getDefault(SHOW_OV_HIDDEN_AT_START, false)); /* * Set Structure tab defaults. @@ -386,7 +385,8 @@ public class Preferences extends GPreferences new RowSorter.SortKey(m.getNameColumn(), SortOrder.ASCENDING)); sorter.setSortKeys(sortKeys); - sorter.sort(); + // BH 2018 setSortKeys will do the sort + // sorter.sort(); // set up filtering ActionListener onReset; @@ -505,28 +505,16 @@ public class Preferences extends GPreferences /* * Set Output tab defaults */ - epsRendering.addItem(promptEachTimeOpt); - epsRendering.addItem(lineArtOpt); - epsRendering.addItem(textOpt); - String defaultEPS = Cache.getDefault("EPS_RENDERING", - "Prompt each time"); - if (defaultEPS.equalsIgnoreCase("Text")) - { - epsRendering.setSelectedItem(textOpt); - } - else if (defaultEPS.equalsIgnoreCase("Lineart")) - { - epsRendering.setSelectedItem(lineArtOpt); - } - else - { - epsRendering.setSelectedItem(promptEachTimeOpt); - } + setupOutputCombo(epsRendering, "EPS_RENDERING"); + setupOutputCombo(htmlRendering, "HTML_RENDERING"); + setupOutputCombo(svgRendering, "SVG_RENDERING"); autoIdWidth.setSelected(Cache.getDefault("FIGURE_AUTOIDWIDTH", false)); userIdWidth.setEnabled(!autoIdWidth.isSelected()); userIdWidthlabel.setEnabled(!autoIdWidth.isSelected()); - Integer wi = Cache.getIntegerProperty("FIGURE_USERIDWIDTH"); + Integer wi = Cache.getIntegerProperty("FIGURE_FIXEDIDWIDTH"); userIdWidth.setText(wi == null ? "" : wi.toString()); + // TODO: refactor to use common enum via FormatAdapter and allow extension + // for new flat file formats blcjv.setSelected(Cache.getDefault("BLC_JVSUFFIX", true)); clustaljv.setSelected(Cache.getDefault("CLUSTAL_JVSUFFIX", true)); fastajv.setSelected(Cache.getDefault("FASTA_JVSUFFIX", true)); @@ -548,6 +536,45 @@ public class Preferences extends GPreferences annotations_actionPerformed(null); // update the display of the annotation // settings + + + /* + * Set Backups tab defaults + */ + loadLastSavedBackupsOptions(); + } + + /** + * A helper method that sets the items and initial selection in a character + * rendering option list (Prompt each time/Lineart/Text) + * + * @param comboBox + * @param propertyKey + */ + protected void setupOutputCombo(JComboBox comboBox, + String propertyKey) + { + comboBox.addItem(promptEachTimeOpt); + comboBox.addItem(lineArtOpt); + comboBox.addItem(textOpt); + + /* + * JalviewJS doesn't support Lineart so force it to Text + */ + String defaultOption = Platform.isJS() ? "Text" + : Cache.getDefault(propertyKey, "Prompt each time"); + if (defaultOption.equalsIgnoreCase("Text")) + { + comboBox.setSelectedItem(textOpt); + } + else if (defaultOption.equalsIgnoreCase("Lineart")) + { + comboBox.setSelectedItem(lineArtOpt); + } + else + { + comboBox.setSelectedItem(promptEachTimeOpt); + } } /** @@ -686,6 +713,10 @@ public class Preferences extends GPreferences */ Cache.applicationProperties.setProperty("EPS_RENDERING", ((OptionsParam) epsRendering.getSelectedItem()).getCode()); + Cache.applicationProperties.setProperty("HTML_RENDERING", + ((OptionsParam) htmlRendering.getSelectedItem()).getCode()); + Cache.applicationProperties.setProperty("SVG_RENDERING", + ((OptionsParam) svgRendering.getSelectedItem()).getCode()); /* * Save Connections settings @@ -782,7 +813,7 @@ public class Preferences extends GPreferences Cache.applicationProperties.setProperty("FIGURE_AUTOIDWIDTH", Boolean.toString(autoIdWidth.isSelected())); userIdWidth_actionPerformed(); - Cache.applicationProperties.setProperty("FIGURE_USERIDWIDTH", + Cache.applicationProperties.setProperty("FIGURE_FIXEDIDWIDTH", userIdWidth.getText()); /* @@ -795,8 +826,31 @@ public class Preferences extends GPreferences Cache.applicationProperties.setProperty("PAD_GAPS", Boolean.toString(padGaps.isSelected())); - dasSource.saveProperties(Cache.applicationProperties); - wsPrefs.updateAndRefreshWsMenuConfig(false); + if (!Platform.isJS()) + { + wsPrefs.updateAndRefreshWsMenuConfig(false); + } + + /* + * Save Backups settings + */ + Cache.applicationProperties.setProperty(BackupFiles.CONFIRM_DELETE_OLD, + Boolean.toString(backupfilesConfirmDelete.isSelected())); + Cache.applicationProperties.setProperty(BackupFiles.ENABLED, + Boolean.toString(enableBackupFiles.isSelected())); + Cache.applicationProperties.setProperty(BackupFiles.NO_MAX, + Boolean.toString(backupfilesKeepAll.isSelected())); + Cache.applicationProperties.setProperty(BackupFiles.REVERSE_ORDER, + Boolean.toString(suffixReverse.isSelected())); + Cache.applicationProperties.setProperty(BackupFiles.SUFFIX, + suffixTemplate.getText()); + Cache.applicationProperties.setProperty(BackupFiles.ROLL_MAX, + Integer.toString(getSpinnerInt(backupfilesRollMaxSpinner, 4))); + Cache.applicationProperties.setProperty(BackupFiles.SUFFIX_DIGITS, + Integer.toString(getSpinnerInt(suffixDigitsSpinner, 3))); + Cache.applicationProperties.setProperty(BackupFiles.NS+"_PRESET", + Integer.toString(getComboIntStringKey(backupfilesPresetsCombo))); + Cache.saveProperties(); Desktop.instance.doConfigureStructurePrefs(); try @@ -836,6 +890,7 @@ public class Preferences extends GPreferences @Override public void startupFileTextfield_mouseClicked() { + // TODO: JAL-3048 not needed for Jalview-JS String fileFormat = Cache.getProperty("DEFAULT_FILE_FORMAT"); JalviewFileChooser chooser = JalviewFileChooser .forRead(Cache.getProperty("LAST_DIRECTORY"), fileFormat); @@ -869,8 +924,11 @@ public class Preferences extends GPreferences { try { - wsPrefs.updateWsMenuConfig(true); - wsPrefs.refreshWs_actionPerformed(e); + if (!Platform.isJS()) + { + wsPrefs.updateWsMenuConfig(true); + wsPrefs.refreshWs_actionPerformed(e); + } frame.setClosed(true); } catch (Exception ex) { @@ -1009,17 +1067,22 @@ public class Preferences extends GPreferences @Override public void defaultBrowser_mouseClicked(MouseEvent e) { - JFileChooser chooser = new JFileChooser("."); - chooser.setDialogTitle( - MessageManager.getString("label.select_default_browser")); + // TODO: JAL-3048 not needed for j2s + /* + * @j2sNative + */ + { + JFileChooser chooser = new JFileChooser("."); + chooser.setDialogTitle( + MessageManager.getString("label.select_default_browser")); - int value = chooser.showOpenDialog(this); + int value = chooser.showOpenDialog(this); - if (value == JFileChooser.APPROVE_OPTION) - { - defaultBrowser.setText(chooser.getSelectedFile().getAbsolutePath()); + if (value == JFileChooser.APPROVE_OPTION) + { + defaultBrowser.setText(chooser.getSelectedFile().getAbsolutePath()); + } } - } /* @@ -1044,27 +1107,17 @@ public class Preferences extends GPreferences @Override public void minColour_actionPerformed(JPanel panel) { - Color col = JColorChooser.showDialog(this, + JalviewColourChooser.showColourChooser(this, MessageManager.getString("label.select_colour_minimum_value"), - minColour.getBackground()); - if (col != null) - { - panel.setBackground(col); - } - panel.repaint(); + panel); } @Override public void maxColour_actionPerformed(JPanel panel) { - Color col = JColorChooser.showDialog(this, + JalviewColourChooser.showColourChooser(this, MessageManager.getString("label.select_colour_maximum_value"), - maxColour.getBackground()); - if (col != null) - { - panel.setBackground(col); - } - panel.repaint(); + panel); } @Override @@ -1072,28 +1125,18 @@ public class Preferences extends GPreferences { if (!useLegacyGap.isSelected()) { - Color col = JColorChooser.showDialog(this, + JalviewColourChooser.showColourChooser(this, MessageManager.getString("label.select_gap_colour"), - gapColour.getBackground()); - if (col != null) - { - gap.setBackground(col); - } - gap.repaint(); + gap); } } @Override public void hiddenColour_actionPerformed(JPanel hidden) { - Color col = JColorChooser.showDialog(this, + JalviewColourChooser.showColourChooser(this, MessageManager.getString("label.select_hidden_colour"), - hiddenColour.getBackground()); - if (col != null) - { - hidden.setBackground(col); - } - hidden.repaint(); + hidden); } @Override @@ -1119,7 +1162,7 @@ public class Preferences extends GPreferences { useLegacyGap.setSelected(false); useLegacyGaps_actionPerformed(null); - showHiddenAtStart.setSelected(true); + showHiddenAtStart.setSelected(false); hiddenColour.setBackground( jalview.renderer.OverviewResColourFinder.OVERVIEW_DEFAULT_HIDDEN); } @@ -1141,12 +1184,12 @@ public class Preferences extends GPreferences } } catch (NumberFormatException x) { + userIdWidth.setText(""); JvOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager .getString("warn.user_defined_width_requirements"), MessageManager.getString("label.invalid_id_column_width"), JvOptionPane.WARNING_MESSAGE); - userIdWidth.setText(""); } }