Skip to content

Commit ff32a13

Browse files
committed
added tooltip to specific node
1 parent 7da95da commit ff32a13

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

src/main/java/io/openliberty/tools/intellij/LibertyExplorer.java

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,14 @@
3232
import javax.swing.*;
3333
import javax.swing.tree.DefaultMutableTreeNode;
3434
import javax.swing.tree.DefaultTreeCellRenderer;
35+
import javax.swing.tree.TreeCellRenderer;
3536
import javax.swing.tree.TreePath;
3637
import javax.xml.parsers.ParserConfigurationException;
3738
import java.awt.*;
3839
import java.awt.event.KeyAdapter;
3940
import java.awt.event.KeyEvent;
4041
import java.awt.event.MouseEvent;
42+
import java.awt.event.*;
4143
import java.io.IOException;
4244
import java.util.ArrayList;
4345
import java.util.HashMap;
@@ -220,6 +222,33 @@ public static Tree buildTree(Project project, Color backgroundColor) {
220222
}
221223
});
222224

225+
tree.addMouseMotionListener(new MouseMotionAdapter() {
226+
private String currentTooltipText = null;
227+
228+
@Override
229+
public void mouseMoved(MouseEvent e) {
230+
super.mouseMoved(e);
231+
232+
TreePath path = tree.getPathForLocation(e.getX(), e.getY());
233+
if (path == null ) {
234+
if (currentTooltipText != null) {
235+
tree.setToolTipText(null);
236+
currentTooltipText = null;
237+
}
238+
} else {
239+
Object node = path.getLastPathComponent();
240+
if (node instanceof LibertyModuleNode) {
241+
LibertyModuleNode treeNode = (LibertyModuleNode) node;
242+
String tooltipText = getBuildPath(treeNode);
243+
if (!tooltipText.equals(currentTooltipText)) {
244+
tree.setToolTipText(tooltipText);
245+
currentTooltipText = tooltipText;
246+
}
247+
}
248+
}
249+
}
250+
});
251+
223252
tree.addMouseListener(new PopupHandler() {
224253
@Override
225254
public void invokePopup(Component comp, int x, int y) {
@@ -308,7 +337,6 @@ public Component getTreeCellRendererComponent(
308337
/**
309338
* modification to get tooltiptext for liberty module tree
310339
*/
311-
tree.setToolTipText(getBuildPath(value));
312340
super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
313341
// assign gear icon to action nodes
314342
if (leaf) {

0 commit comments

Comments
 (0)