diff --git a/core/src/net/sf/openrocket/gui/main/componenttree/ComponentTreeRenderer.java b/core/src/net/sf/openrocket/gui/main/componenttree/ComponentTreeRenderer.java
index a7e8386ef..6fe9fe1d9 100644
--- a/core/src/net/sf/openrocket/gui/main/componenttree/ComponentTreeRenderer.java
+++ b/core/src/net/sf/openrocket/gui/main/componenttree/ComponentTreeRenderer.java
@@ -9,6 +9,7 @@ import javax.swing.tree.DefaultTreeCellRenderer;
import net.sf.openrocket.gui.main.ComponentIcons;
import net.sf.openrocket.rocketcomponent.RocketComponent;
+import net.sf.openrocket.unit.UnitGroup;
import net.sf.openrocket.util.TextUtil;
public class ComponentTreeRenderer extends DefaultTreeCellRenderer {
@@ -21,25 +22,38 @@ public class ComponentTreeRenderer extends DefaultTreeCellRenderer {
boolean expanded,
boolean leaf,
int row,
- boolean hasFocus) {
+ boolean hasFocus1) {
- super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
+ super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus1);
// Set icon
setIcon(ComponentIcons.getSmallIcon(value.getClass()));
// Set tooltip
RocketComponent c = (RocketComponent) value;
- String comment = c.getComment().trim();
- if (comment.length() > 0) {
- comment = TextUtil.htmlEncode(comment);
- comment = "" + comment.replace("\n", "
");
- this.setToolTipText(comment);
- } else {
- this.setToolTipText(null);
- }
+ this.setToolTipText(getToolTip(c));
return this;
}
+
+ private String getToolTip(RocketComponent c) {
+ StringBuilder sb = new StringBuilder();
+ sb.append("");
+
+ sb.append("").append(c.getName()).append("");
+ if (c.isMassive()) {
+ sb.append(" (").append(UnitGroup.UNITS_MASS.toStringUnit(c.getMass())).append(")");
+ }
+
+ String comment = c.getComment().trim();
+ if (comment.length() > 0) {
+ comment = TextUtil.htmlEncode(comment);
+ comment = comment.replace("\n", "
");
+ sb.append("
").append(comment);
+ }
+
+ return sb.toString();
+ }
+
}