Files
VisualSapfor/src/SapforTestingSystem/SapforTasksPackage/UI/SapforTasksPackageTree.java

82 lines
3.1 KiB
Java
Raw Normal View History

2023-11-02 23:42:53 +03:00
package SapforTestingSystem.SapforTasksPackage.UI;
2023-10-30 22:37:03 +03:00
import Common.Current;
import Common.UI.Trees.DataTree;
2023-11-05 19:42:38 +03:00
import Common.UI.Trees.TreeRenderers;
2023-11-01 23:14:49 +03:00
import Common.UI.UI;
import SapforTestingSystem.Json.SapforVersion_json;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
import java.util.Vector;
public class SapforTasksPackageTree extends DataTree {
2023-10-30 22:37:03 +03:00
Current current;
SapforTasksPackageTree slave_tree = null;
public void setSlaveTree(SapforTasksPackageTree slave_tree_in) {
slave_tree = slave_tree_in;
}
2023-10-30 22:37:03 +03:00
public SapforTasksPackageTree(DefaultMutableTreeNode root_in, Current current_in) {
super(root_in);
2023-10-30 22:37:03 +03:00
current = current_in;
}
@Override
protected int getStartLine() {
return 1;
}
@Override
public void LeftMouseAction2() {
2023-10-30 22:37:03 +03:00
}
2023-11-03 02:00:17 +03:00
@Override
public TreeRenderers getRenderer() {
return TreeRenderers.RendererSapforVersion;
}
2023-10-30 22:37:03 +03:00
@Override
public Current getCurrent() {
return current;
}
public void selectSamePath_r(TreePath example, int index, DefaultMutableTreeNode node, Vector<DefaultMutableTreeNode> res) {
if (index < example.getPathCount()) {
DefaultMutableTreeNode exampleNode = (DefaultMutableTreeNode) example.getPathComponent(index);
// System.out.println("index = "+index);
// System.out.println("example node="+exampleNode.toString());
// System.out.println("node-"+node.toString());
// System.out.println("");
if (exampleNode.toString().equals(node.toString())) {
res.add(node);
// System.out.println("+");
for (int i = 0; i < node.getChildCount(); ++i)
selectSamePath_r(example, index+1, (DefaultMutableTreeNode) node.getChildAt(i), res);
}
}
}
public void selectSamePath(TreePath path_in) {
// int i = path_in.getPath().length;
// path_in.getPathComponent(i).toString();
// System.out.println("e = " + path_in);
Vector<DefaultMutableTreeNode> pathNodes = new Vector<>();
selectSamePath_r(path_in, 0, root, pathNodes);
// System.out.println("+");
TreePath path = new TreePath(pathNodes.toArray());
// System.out.println(path);
setSelectionPath(path);
// System.out.println("++");
}
2023-10-30 22:37:03 +03:00
@Override
public void SelectionAction(TreePath e) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode) e.getLastPathComponent();
Object o = node.getUserObject();
//---
if (slave_tree != null) {
slave_tree.selectSamePath(e);
}
//---
if (o instanceof SapforVersion_json) {
2023-10-31 01:51:08 +03:00
SapforVersion_json version = (SapforVersion_json) o;
Current.set(current, version);
2023-11-01 23:14:49 +03:00
if (current.equals(Current.SapforEtalonVersion))
UI.getMainWindow().getTestingWindow().ShowCurrentSapforPackageVersionEtalon();
else
UI.getMainWindow().getTestingWindow().ShowCurrentSapforPackageVersion();
//--
2023-10-30 22:37:03 +03:00
}
}
}