X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fde%2Ftodesbaum%2Fjsite%2Fgui%2FPreferencesPage.java;h=5cf258afcdbf56c004663af24972b22366435a10;hb=e08a363c18f332342c22db3ba52cf89764e10838;hp=8885caaf9116cca0264a9a39548b0eef5e592873;hpb=dffe04e76c69517bafb7d88b214965a65136a021;p=jSite.git diff --git a/src/de/todesbaum/jsite/gui/PreferencesPage.java b/src/de/todesbaum/jsite/gui/PreferencesPage.java index 8885caa..5cf258a 100644 --- a/src/de/todesbaum/jsite/gui/PreferencesPage.java +++ b/src/de/todesbaum/jsite/gui/PreferencesPage.java @@ -30,6 +30,7 @@ import javax.swing.BorderFactory; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBox; +import javax.swing.JComboBox; import javax.swing.JFileChooser; import javax.swing.JLabel; import javax.swing.JPanel; @@ -39,6 +40,8 @@ import javax.swing.JTextField; import de.todesbaum.jsite.i18n.I18n; import de.todesbaum.jsite.i18n.I18nContainer; import de.todesbaum.jsite.main.ConfigurationLocator.ConfigurationLocation; +import de.todesbaum.util.freenet.fcp2.ClientPutDir.ManifestPutter; +import de.todesbaum.util.freenet.fcp2.PriorityClass; import de.todesbaum.util.swing.TWizard; import de.todesbaum.util.swing.TWizardPage; @@ -70,6 +73,9 @@ public class PreferencesPage extends TWizardPage { /** Action when selecting “use early encode.” */ private Action useEarlyEncodeAction; + /** Action when a priority was selected. */ + private Action priorityAction; + /** The text field containing the directory. */ private JTextField tempDirectoryTextField; @@ -82,6 +88,9 @@ public class PreferencesPage extends TWizardPage { /** Whether to use “early encode.” */ private boolean useEarlyEncode; + /** The prioriy for inserts. */ + private PriorityClass priority; + /** The “default” button. */ private JRadioButton defaultTempDirectory; @@ -100,6 +109,12 @@ public class PreferencesPage extends TWizardPage { /** The “use early encode” checkbox. */ private JCheckBox useEarlyEncodeCheckBox; + /** The insert priority select box. */ + private JComboBox insertPriorityComboBox; + + /** The manifest putter select box. */ + private JComboBox manifestPutterComboBox; + /** * Creates a new “preferences” page. * @@ -231,6 +246,44 @@ public class PreferencesPage extends TWizardPage { } /** + * Returns the configured insert priority. + * + * @return The insert priority + */ + public PriorityClass getPriority() { + return priority; + } + + /** + * Sets the insert priority. + * + * @param priority + * The insert priority + */ + public void setPriority(PriorityClass priority) { + insertPriorityComboBox.setSelectedItem(priority); + } + + /** + * Returns the selected manifest putter. + * + * @return The selected manifest putter + */ + public ManifestPutter getManifestPutter() { + return (ManifestPutter) manifestPutterComboBox.getSelectedItem(); + } + + /** + * Sets the manifest putter. + * + * @param manifestPutter + * The manifest putter + */ + public void setManifestPutter(ManifestPutter manifestPutter) { + manifestPutterComboBox.setSelectedItem(manifestPutter); + } + + /** * {@inheritDoc} */ @Override @@ -314,6 +367,13 @@ public class PreferencesPage extends TWizardPage { useEarlyEncode = useEarlyEncodeCheckBox.isSelected(); } }; + priorityAction = new AbstractAction(I18n.getMessage("jsite.preferences.insert-options.priority")) { + + @SuppressWarnings("synthetic-access") + public void actionPerformed(ActionEvent actionEvent) { + priority = (PriorityClass) insertPriorityComboBox.getSelectedItem(); + } + }; I18nContainer.getInstance().registerRunnable(new Runnable() { @@ -389,6 +449,19 @@ public class PreferencesPage extends TWizardPage { useEarlyEncodeCheckBox = new JCheckBox(useEarlyEncodeAction); preferencesPanel.add(useEarlyEncodeCheckBox, new GridBagConstraints(0, 8, 3, 1, 1.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(6, 18, 0, 0), 0, 0)); + final JLabel insertPriorityLabel = new JLabel(I18n.getMessage("jsite.preferences.insert-options.priority")); + preferencesPanel.add(insertPriorityLabel, new GridBagConstraints(0, 9, 1, 1, 0.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(6, 18, 0, 0), 0, 0)); + + insertPriorityComboBox = new JComboBox(new PriorityClass[] { PriorityClass.MINIMUM, PriorityClass.PREFETCH, PriorityClass.BULK, PriorityClass.UPDATABLE, PriorityClass.SEMI_INTERACTIVE, PriorityClass.INTERACTIVE, PriorityClass.MAXIMUM }); + insertPriorityComboBox.setAction(priorityAction); + preferencesPanel.add(insertPriorityComboBox, new GridBagConstraints(1, 9, 2, 1, 1.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.HORIZONTAL, new Insets(0, 18, 0, 0), 0, 0)); + + final JLabel manifestPutterLabel = new JLabel(I18n.getMessage("jsite.preferences.insert-options.manifest-putter")); + preferencesPanel.add(manifestPutterLabel, new GridBagConstraints(0, 10, 1, 1, 0.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(6, 18, 0, 0), 0, 0)); + + manifestPutterComboBox = new JComboBox(ManifestPutter.values()); + preferencesPanel.add(manifestPutterComboBox, new GridBagConstraints(1, 10, 2, 1, 1.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.HORIZONTAL, new Insets(0, 18, 0, 0), 0, 0)); + I18nContainer.getInstance().registerRunnable(new Runnable() { /** @@ -398,6 +471,8 @@ public class PreferencesPage extends TWizardPage { tempDirectoryLabel.setText("" + I18n.getMessage("jsite.preferences.temp-directory") + ""); configurationDirectoryLabel.setText("" + I18n.getMessage("jsite.preferences.config-directory") + ""); insertOptionsLabel.setText("" + I18n.getMessage("jsite.preferences.insert-options") + ""); + insertPriorityLabel.setText(I18n.getMessage("jsite.preferences.insert-options.priority")); + manifestPutterLabel.setText(I18n.getMessage("jsite.preferences.insert-options.manifest-putter")); } });