VisibleNodesFilter.java
| Index Score | ||
|---|---|---|
![]() |
![]() |
net.sourceforge.ganttproject.chart |
![]() |
![]() |
GanttProject |
View: Reasons, Metrics, Source Code
These are the metrics that contribute to the Enerjy Score for this file, ranked by impact. So the metrics listed at the top influence the score to a greater extent that the metrics listed at the bottom.
| Metric | Description | |
|---|---|---|
package net.sourceforge.ganttproject.chart;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
import org.jdesktop.swingx.treetable.DefaultMutableTreeTableNode;
import net.sourceforge.ganttproject.task.Task;
/**
* Created by IntelliJ IDEA. User: bard
*/
public class VisibleNodesFilter {
public List/* <Task> */getVisibleNodes(JTree jtree, int minHeight,
int maxHeight, int nodeHeight) {
List preorderedNodes = Collections.list(((DefaultMutableTreeTableNode) jtree
.getModel().getRoot()).preorderEnumeration());
List result = new ArrayList();
int currentHeight = 0;
for (int i = 1; i < preorderedNodes.size(); i++) {
DefaultMutableTreeTableNode nextNode = (DefaultMutableTreeTableNode) preorderedNodes
.get(i);
if (false==nextNode.getUserObject() instanceof Task) {
continue;
}
if ((currentHeight+nodeHeight) > minHeight
&& jtree.isVisible(new TreePath(nextNode.getPath()))) {
result.add(nextNode.getUserObject());
}
if (jtree.isVisible(new TreePath(nextNode.getPath()))) {
currentHeight += nodeHeight;
}
if(currentHeight > minHeight + maxHeight) {
break;
}
}
return result;
}
}
The table below shows all metrics for VisibleNodesFilter.java.
| Metric | Value | Description | |
|---|---|---|---|



