filebot/source/net/filebot/ui/analyze/FileTreeCellRenderer.java

47 lines
1.1 KiB
Java
Raw Normal View History

2014-04-19 02:30:29 -04:00
package net.filebot.ui.analyze;
import java.awt.Component;
import javax.swing.JTree;
import javax.swing.tree.TreeNode;
2014-04-19 02:30:29 -04:00
import net.filebot.ResourceManager;
import net.filebot.util.ui.FancyTreeCellRenderer;
import net.filebot.util.ui.GradientStyle;
public class FileTreeCellRenderer extends FancyTreeCellRenderer {
2015-07-25 18:47:19 -04:00
public FileTreeCellRenderer() {
super(GradientStyle.TOP_TO_BOTTOM);
2015-07-25 18:47:19 -04:00
openIcon = ResourceManager.getIcon("tree.open");
closedIcon = ResourceManager.getIcon("tree.closed");
leafIcon = ResourceManager.getIcon("tree.leaf");
}
2015-07-25 18:47:19 -04:00
@Override
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
if (leaf && isFolder(value)) {
// make leafs that are empty folders look like expanded nodes
expanded = true;
leaf = false;
}
2015-07-25 18:47:19 -04:00
super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
2015-07-25 18:47:19 -04:00
return this;
}
2015-07-25 18:47:19 -04:00
private boolean isFolder(Object value) {
if (((TreeNode) value).getAllowsChildren())
return true;
2015-07-25 18:47:19 -04:00
return false;
}
}