// Copyright MageLang Institute; Version $Id: //depot/main/src/edu/modules/Swing/magercises/TreeExample/Solution/TreePanel.java#2 $ import java.awt.*; import javax.swing.*; import javax.swing.tree.*; import javax.swing.event.*; public class TreePanel extends JPanel { public TreePanel(TreeNode root, TreeSelectionListener listener) { // use a layout that will stretch tree to panel size setLayout(new BorderLayout()); // Create tree JTree tree = new JTree(root); // Change line style tree.putClientProperty("JTree.lineStyle", "Angled"); // Add TreeSelectionListener if (listener != null) tree.addTreeSelectionListener (listener); // Put tree in a scrollable pane JScrollPane sp = new JScrollPane(tree); add(sp, BorderLayout.CENTER); } }