Merge pull request #2330 from SiboVG/issue-2329

[#2329] Apply component tooltip to panel
This commit is contained in:
Sibo Van Gool 2023-09-15 09:04:34 +02:00 committed by GitHub
commit 814cac04b2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 14 deletions

View File

@ -42,9 +42,5 @@ public class ComponentTree extends BasicTree {
// Enable tooltips for this component
ToolTipManager.sharedInstance().registerComponent(this);
}
}

View File

@ -7,6 +7,7 @@ import java.awt.Font;
import java.util.List;
import javax.swing.BorderFactory;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTree;
@ -88,6 +89,8 @@ public class ComponentTreeRenderer extends DefaultTreeCellRenderer {
textLabel.setForeground(GUIUtil.getUITheme().getComponentTreeForegroundColor());
}
applyToolTipText(components, c, panel);
comp = panel;
// Add mass/CG/CD overridden icons
@ -116,26 +119,28 @@ public class ComponentTreeRenderer extends DefaultTreeCellRenderer {
}
// Make sure the tooltip also works on the override icons
if (components != null && components.size() > 1 && components.contains(c)) {
p.setToolTipText(getToolTipMultipleComponents(components));
} else {
p.setToolTipText(getToolTipSingleComponent(c));
}
applyToolTipText(components, c, p);
Font originalFont = tree.getFont();
p.setFont(originalFont);
comp = p;
}
if (components != null && components.size() > 1 && components.contains(c)) {
this.setToolTipText(getToolTipMultipleComponents(components));
} else {
this.setToolTipText(getToolTipSingleComponent(c));
}
applyToolTipText(components, c, this);
return comp;
}
private void applyToolTipText(List<RocketComponent> components, RocketComponent c, JComponent comp) {
String tooltipText;
if (components != null && components.size() > 1 && components.contains(c)) {
tooltipText = getToolTipMultipleComponents(components);
} else {
tooltipText = getToolTipSingleComponent(c);
}
comp.setToolTipText(tooltipText);
}
private static String getToolTipSingleComponent(RocketComponent c) {
StringBuilder sb = new StringBuilder();
sb.append("<html>");