diff options
author | Stephan Schwär | 2020-11-18 03:18:07 +0100 |
---|---|---|
committer | Stephan Schwär | 2020-11-18 03:18:07 +0100 |
commit | 13f5965a9f3058a71336089279b1652c5533de7b (patch) | |
tree | 6b76476f978cfb5826c372c2c3e523af824d8f8b | |
parent | Merge branch 'feature/search-in-description' into feature-merge (diff) | |
download | tutor-module-13f5965a9f3058a71336089279b1652c5533de7b.tar.gz tutor-module-13f5965a9f3058a71336089279b1652c5533de7b.tar.xz tutor-module-13f5965a9f3058a71336089279b1652c5533de7b.zip |
[client] Set table row height according to scaling
- prevent rescaling for every TableCellRenderer call
Issue: #3794
-rwxr-xr-x | dozentenmodul/src/main/java/org/openslx/dozmod/App.java | 4 | ||||
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/App.java b/dozentenmodul/src/main/java/org/openslx/dozmod/App.java index 77203d50..5884598c 100755 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/App.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/App.java @@ -20,6 +20,7 @@ import javax.net.ssl.SSLContext; import javax.swing.SwingUtilities; import javax.swing.UIDefaults; import javax.swing.UIManager; +import javax.swing.table.TableCellRenderer; import org.apache.log4j.AppenderSkeleton; import org.apache.log4j.BasicConfigurator; @@ -314,9 +315,12 @@ public class App { if (containerEvent.getID() == ContainerEvent.COMPONENT_ADDED) { Font font = containerEvent.getChild().getFont(); if (font != null && font.getSize2D() <= defaultSize) { + // Do not update font in tables on every renderer call to prevent weirdness. + if (!(containerEvent.getChild() instanceof TableCellRenderer)){ containerEvent.getChild().setFont( new Font(font.getName(), font.getStyle(), Math.round(font.getSize2D() * scaling))); + } } } } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java index 47062258..cd1ed7b5 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/ListTable.java @@ -1,6 +1,7 @@ package org.openslx.dozmod.gui.control.table; import java.awt.Component; +import java.awt.Font; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; @@ -20,6 +21,7 @@ import javax.swing.table.TableColumn; import javax.swing.table.TableColumnModel; import javax.swing.table.TableRowSorter; +import org.openslx.dozmod.Config; import org.openslx.dozmod.gui.helper.TableColumnAdjuster; @SuppressWarnings("serial") @@ -71,6 +73,8 @@ public abstract class ListTable<T> extends JTable { this.setDefaultEditor(Boolean.class, getDefaultEditor(Boolean.class)); this.setRowSelectionAllowed(true); this.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + this.setRowHeight(this.getRowHeight() * Config.getFontScaling() / 100); + sorter.addRowSorterListener(new RowSorterListener() { @Override public void sorterChanged(RowSorterEvent e) { |