Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
-
e7cdd45e
by tchemit at 2019-06-27T05:08:28Z
1 changed file:
Changes:
| ... | ... | @@ -23,15 +23,15 @@ package fr.ird.observe.client.ui.tree.navigation; |
| 23 | 23 |
*/
|
| 24 | 24 |
|
| 25 | 25 |
import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
|
| 26 |
-import org.apache.logging.log4j.Logger;
|
|
| 27 | 26 |
import org.apache.logging.log4j.LogManager;
|
| 27 |
+import org.apache.logging.log4j.Logger;
|
|
| 28 | 28 |
import org.jdesktop.swingx.renderer.StringValue;
|
| 29 | 29 |
import org.jdesktop.swingx.tree.DefaultXTreeCellRenderer;
|
| 30 | 30 |
|
| 31 | 31 |
import javax.swing.Icon;
|
| 32 | 32 |
import javax.swing.JLabel;
|
| 33 | 33 |
import javax.swing.JTree;
|
| 34 |
-import javax.swing.tree.DefaultTreeCellRenderer;
|
|
| 34 |
+import javax.swing.SwingUtilities;
|
|
| 35 | 35 |
import java.awt.Color;
|
| 36 | 36 |
import java.awt.Component;
|
| 37 | 37 |
import java.awt.Dimension;
|
| ... | ... | @@ -97,6 +97,13 @@ public class NavigationTreeCellRenderer extends DefaultXTreeCellRenderer impleme |
| 97 | 97 |
Dimension newSize = new Dimension((int) size.getWidth(), iconHeight + 2);
|
| 98 | 98 |
comp.setSize(newSize);
|
| 99 | 99 |
comp.setPreferredSize(newSize);
|
| 100 |
+ } else {
|
|
| 101 |
+ int stringWidth = SwingUtilities.computeStringWidth(comp.getFontMetrics(comp.getFont()), text);
|
|
| 102 |
+ if (size.getWidth() < stringWidth) {
|
|
| 103 |
+ log.error(String.format("Size is too low: %s for node: %s", size, text));
|
|
| 104 |
+ Dimension newSize = new Dimension(stringWidth + 5, (int) height);
|
|
| 105 |
+ comp.setPreferredSize(newSize);
|
|
| 106 |
+ }
|
|
| 100 | 107 |
}
|
| 101 | 108 |
}
|
| 102 | 109 |
return comp;
|