Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe

Commits:

1 changed file:

Changes:

  • client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTreeCellRenderer.java
    ... ... @@ -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;