Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 34 additions & 5 deletions src/main/java/net/sf/jabref/AppearancePrefsTab.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class AppearancePrefsTab extends JPanel implements PrefsTab {
private Font font = GUIGlobals.CURRENTFONT;
private int oldMenuFontSize;
private boolean oldOverrideFontSize;
private JTextField fontSize;//, customIconThemeFile;
private JTextField fontSize, rowPadding;//, customIconThemeFile;

/**
* Customization of appearance parameters.
Expand All @@ -50,6 +50,8 @@ public AppearancePrefsTab(JabRefPreferences prefs) {
// Font sizes:
fontSize = new JTextField(5);

// Row padding size:
rowPadding = new JTextField(5);

colorCodes = new JCheckBox(
Globals.lang("Color codes for required and optional fields"));
Expand Down Expand Up @@ -77,6 +79,11 @@ public AppearancePrefsTab(JabRefPreferences prefs) {
builder.appendSeparator(Globals.lang("Table appearance"));
//builder.append(antialias);
//builder.nextLine();
JPanel p2 = new JPanel();
p2.add(new JLabel(Globals.lang("Table row height padding") + ":"));
p2.add(rowPadding);
builder.append(p2);
builder.nextLine();
builder.append(colorCodes);
builder.nextLine();
JButton fontButton = new JButton(Globals.lang("Set table font"));
Expand Down Expand Up @@ -143,6 +150,7 @@ public void setValues() {
colorCodes.setSelected(_prefs.getBoolean("tableColorCodesOn"));
//antialias.setSelected(_prefs.getBoolean("antialias"));
fontSize.setText("" + _prefs.getInt("menuFontSize"));
rowPadding.setText("" + _prefs.getInt("tableRowPadding"));
oldMenuFontSize = _prefs.getInt("menuFontSize");
overrideFonts.setSelected(_prefs.getBoolean("overrideDefaultFonts"));
oldOverrideFontSize = overrideFonts.isSelected();
Expand Down Expand Up @@ -183,20 +191,41 @@ public void storeSettings() {
} catch (NumberFormatException ex) {
ex.printStackTrace();
}
try {
int padding = Integer.parseInt(rowPadding.getText());
_prefs.putInt("tableRowPadding", padding);
} catch (NumberFormatException ex) {
ex.printStackTrace();
}
}

public boolean readyToClose() {
private boolean validateIntegerField(String fieldName, String fieldValue, String errorTitle)
{
try {
// Test if font size is a number:
Integer.parseInt(fontSize.getText());
// Test if the field value is a number:
Integer.parseInt(fieldValue);
} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog
(null, Globals.lang("You must enter an integer value in the text field for") + " '" +
Globals.lang("Menu and label font size") + "'", Globals.lang("Changed font settings"),
Globals.lang(fieldName) + "'", Globals.lang(errorTitle),
JOptionPane.ERROR_MESSAGE);
return false;
}
return true;
}

public boolean readyToClose() {
// Test if font size is a number:
if (validateIntegerField("Menu and label font size", fontSize.getText(), "Changed font settings") == false) {
return false;
}

// Test if row padding is a number:
if (validateIntegerField("Table row height padding", rowPadding.getText(), "Changed table appearance settings") == false) {
return false;
}

return true;

}

Expand Down
1 change: 1 addition & 0 deletions src/main/java/net/sf/jabref/JabRefPreferences.java
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,7 @@ private JabRefPreferences() {
defaults.put("menuFontFamily", "Times");
defaults.put("menuFontStyle", java.awt.Font.PLAIN);
defaults.put("menuFontSize", 11);
defaults.put("tableRowPadding", GUIGlobals.TABLE_ROW_PADDING);
// Main table color settings:
defaults.put("tableBackground", "255:255:255");
defaults.put("tableReqFieldBackground", "230:235:255");
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/net/sf/jabref/gui/MainTable.java
Original file line number Diff line number Diff line change
Expand Up @@ -525,7 +525,7 @@ public void scrollTo(int y) {
*/
public void updateFont() {
setFont(GUIGlobals.CURRENTFONT);
setRowHeight(GUIGlobals.TABLE_ROW_PADDING + GUIGlobals.CURRENTFONT.getSize());
setRowHeight(Globals.prefs.getInt("tableRowPadding") + GUIGlobals.CURRENTFONT.getSize());
}

public void ensureVisible(int row) {
Expand Down