public void run() { Window w = new Window (); w.setVisible (true); // w.test (); w.detail (this); } pridat do tridy Window import javax.swing.tree.*; import org.alice.apis.moveandturn.*; import java.lang.reflect.*; // import org.alice.apis.moveandturn.*; public void detail (Composite c) { open (c.getName()); Transformable[] a = c.getComponents(); for (Transformable t : a) if (t instanceof Composite) detail ((Composite) t); else put (t.toString ()); Class cls = c.getClass (); open ("methods of " + cls.getName ()); // import java.lang.reflect.*; Method [] met = cls.getMethods(); for (Method m : met) put (m.getName()); close (); close (); } DefaultTreeModel model; DefaultMutableTreeNode act; public void open (Object s) { DefaultMutableTreeNode node = new DefaultMutableTreeNode (s); if (model == null) { model = new DefaultTreeModel (node); jTree1.setModel (model); } else { int inx = act.getChildCount(); model.insertNodeInto (node, act, inx); } act = node; } public void put (Object s) { DefaultMutableTreeNode node = new DefaultMutableTreeNode (s); int inx = act.getChildCount(); model.insertNodeInto (node, act, inx); } public void close () { act = (DefaultMutableTreeNode) act.getParent(); } public void test () { open ("Abc"); put ("item 1"); put ("item 2"); open ("Klm"); put ("item 3"); close (); put ("item 4"); close (); } // import org.alice.apis.moveandturn.*; public void detail (Composite c) { }