98 lines
2.9 KiB
Java
98 lines
2.9 KiB
Java
package nt.UI.tests;
|
|
|
|
import java.util.Arrays;
|
|
import java.util.LinkedList;
|
|
import java.util.List;
|
|
|
|
import javax.swing.BoxLayout;
|
|
import javax.swing.JButton;
|
|
import javax.swing.JFrame;
|
|
import javax.swing.JScrollPane;
|
|
import javax.swing.JTree;
|
|
import javax.swing.UIManager;
|
|
import javax.swing.UnsupportedLookAndFeelException;
|
|
import javax.swing.plaf.metal.MetalLookAndFeel;
|
|
import javax.swing.tree.DefaultMutableTreeNode;
|
|
import javax.swing.tree.DefaultTreeModel;
|
|
|
|
import nt.UI.NtUIHelper;
|
|
import nt.UI.control.JSearchBar;
|
|
import nt.UI.control.interfaces.SearchBarFinder;
|
|
import nt.UI.display.ObjTreeCellRenderer;
|
|
|
|
public class UITestMain extends JFrame{
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
private static final boolean DEBUG_LAF = false;
|
|
|
|
public static void main(String[] args) {
|
|
if(DEBUG_LAF) {
|
|
try {
|
|
UIManager.setLookAndFeel(new MetalLookAndFeel());
|
|
} catch (UnsupportedLookAndFeelException e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
NtUIHelper.getSymbolFont();
|
|
|
|
UITestMain frame = new UITestMain();
|
|
frame.setVisible(true);
|
|
}
|
|
|
|
public UITestMain() {
|
|
setSize(400,400);
|
|
setDefaultCloseOperation(EXIT_ON_CLOSE);
|
|
getContentPane().setLayout(new BoxLayout(getContentPane(), BoxLayout.Y_AXIS));
|
|
getContentPane().add(new JSearchBar(new SearchBarFinder() {
|
|
|
|
@Override
|
|
public String[] getSearchResults(String token) {
|
|
List<String> list = Arrays.asList("a aa aaa aaaa b bb bbb bbbb bbbbb ab aabb bbaa baba".split(" "));
|
|
LinkedList<String> results = new LinkedList<>();
|
|
for(String tok : list) {
|
|
if(tok.startsWith(token)) {
|
|
System.out.println(tok + " " + token);
|
|
results.add(tok);
|
|
}
|
|
}
|
|
return results.toArray(new String[0]);
|
|
}
|
|
|
|
@Override
|
|
public void acceptedResult(String result) {
|
|
}
|
|
}));
|
|
|
|
DefaultTreeModel model = new DefaultTreeModel(new DefaultMutableTreeNode("root"));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode("Hello"));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode("There"));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode(new Object()));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode(1222));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode(12222222222L));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode(12.232));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode(12.4444f));
|
|
((DefaultMutableTreeNode)model.getRoot()).add(new DefaultMutableTreeNode(new TestFolder()));
|
|
|
|
JScrollPane scrollPane = new JScrollPane();
|
|
getContentPane().add(scrollPane);
|
|
JTree tree = new JTree(model);
|
|
scrollPane.setViewportView(tree);
|
|
tree.setCellRenderer(new ObjTreeCellRenderer());
|
|
|
|
JButton btnBtn = new JButton("btn");
|
|
getContentPane().add(btnBtn);
|
|
|
|
}
|
|
|
|
public class TestFolder {
|
|
@Override
|
|
public String toString() {
|
|
return "Category";
|
|
}
|
|
}
|
|
|
|
|
|
|
|
}
|