1 package de.lathanda.eos.common.gui;
3 import java.awt.GridLayout;
4 import java.text.DecimalFormat;
5 import java.text.NumberFormat;
6 import java.text.ParseException;
8 import javax.swing.BoxLayout;
9 import javax.swing.JButton;
10 import javax.swing.JComboBox;
11 import javax.swing.JLabel;
12 import javax.swing.JPanel;
13 import javax.swing.JTextField;
15 import de.lathanda.eos.base.util.ErrorBehavior;
16 import de.lathanda.eos.base.util.GuiToolkit;
17 import de.lathanda.eos.config.Language;
18 import de.lathanda.eos.config.LanguageConfig;
20 import static de.lathanda.eos.base.icons.Icons.*;
21 import static de.lathanda.eos.gui.icons.Icons.*;
29 private static final long serialVersionUID = -7493228893699859641L;
42 private static final NumberFormat FORMAT = DecimalFormat.getInstance();
47 private void initComponents() {
49 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
50 getContentPane().setLayout(
new BoxLayout(this.getContentPane(), BoxLayout.Y_AXIS));
52 generalPanel =
new JPanel();
53 commandPanel =
new JPanel();
63 cmbErrorMode =
GuiToolkit.<ErrorBehaviorEntry>createComboBox();
65 cmbErrorMode.addItem(ErrorBehaviorEntry.IGNORE);
66 cmbErrorMode.addItem(ErrorBehaviorEntry.WARN);
67 cmbErrorMode.addItem(ErrorBehaviorEntry.ABORT);
68 cmbErrorMode.addItem(ErrorBehaviorEntry.TRACE);
73 generalPanel.add(lblLanguage);
74 generalPanel.add(comboLanguage);
75 generalPanel.add(lblFontSize);
76 generalPanel.add(txtFontSize);
77 generalPanel.add(lblUnit);
78 generalPanel.add(txtUnit);
79 generalPanel.add(lblDPI);
80 generalPanel.add(txtDPI);
81 generalPanel.add(lblErrorMode);
82 generalPanel.add(cmbErrorMode);
85 generalPanel.setLayout(
new GridLayout(0, 2));
86 getContentPane().add(generalPanel);
93 btnCancel = GuiToolkit.createButton(CLOSE,
null, ae -> {
98 commandPanel.add(btnOk);
99 commandPanel.add(btnCancel);
100 getContentPane().add(commandPanel);
109 private void readData() {
110 txtFontSize.setText(String.valueOf(guiConf.
getFontsize()));
111 txtDPI.setText(String.valueOf(guiConf.
getDpi()));
112 txtUnit.setText(FORMAT.format(guiConf.
getUnit()));
115 cmbErrorMode.setSelectedItem(ErrorBehaviorEntry.ABORT);
118 cmbErrorMode.setSelectedItem(ErrorBehaviorEntry.WARN);
121 cmbErrorMode.setSelectedItem(ErrorBehaviorEntry.IGNORE);
124 cmbErrorMode.setSelectedItem(ErrorBehaviorEntry.TRACE);
135 guiConf.
setFontsize(Integer.parseInt(txtFontSize.getText()));
136 }
catch (NumberFormatException e) {
137 txtFontSize.setText(String.valueOf(guiConf.
getFontsize()));
140 guiConf.
setDpi(Integer.parseInt(txtDPI.getText()));
141 }
catch (NumberFormatException e) {
142 txtDPI.setText(String.valueOf(guiConf.
getDpi()));
145 guiConf.
setUnit(FORMAT.parse(txtUnit.getText()).doubleValue());
146 }
catch (ParseException e) {
147 txtUnit.setText(FORMAT.format(guiConf.
getUnit()));
149 guiConf.
setErrorBehavior(((ErrorBehaviorEntry) cmbErrorMode.getSelectedItem()).errorBehavior);
152 private JPanel generalPanel;
153 private JPanel commandPanel;
154 private JLabel lblLanguage;
155 private JComboBox<LanguageConfig> comboLanguage;
156 private JLabel lblFontSize;
157 private JTextField txtFontSize;
158 private JLabel lblUnit;
159 private JTextField txtUnit;
160 private JLabel lblDPI;
161 private JTextField txtDPI;
162 private JLabel lblErrorMode;
163 private JComboBox<ErrorBehaviorEntry> cmbErrorMode;
164 private JButton btnOk;
165 private JButton btnCancel;
172 private static class ErrorBehaviorEntry {
173 public static final ErrorBehaviorEntry TRACE =
new ErrorBehaviorEntry(
175 public static final ErrorBehaviorEntry ABORT =
new ErrorBehaviorEntry(
177 public static final ErrorBehaviorEntry IGNORE =
new ErrorBehaviorEntry(
179 public static final ErrorBehaviorEntry WARN =
new ErrorBehaviorEntry(
181 private final String label;
184 private ErrorBehaviorEntry(String label,
ErrorBehavior errorBehavior) {
186 this.errorBehavior = errorBehavior;
190 public String toString() {
ErrorBehavior getErrorBehavior()
void setUnit(double unit)
void setFontsize(int fontsize)
static final GuiConfiguration def
void setErrorBehavior(ErrorBehavior errorBehavior)
static String getString(String id)
Collection< LanguageConfig > getAvailableLanguageConfigs()