home *** CD-ROM | disk | FTP | other *** search
- import com.sun.java.swing.tree.DefaultMutableTreeNode;
- import java.awt.Color;
- import java.awt.Font;
- import java.awt.Toolkit;
- import java.util.Random;
-
- public class DynamicTreeNode extends DefaultMutableTreeNode {
- protected static float nameCount;
- protected static String[] names;
- protected static Font[] fonts;
- protected static Random nameGen;
- protected static final int DefaultChildrenCount = 7;
- protected boolean hasLoaded;
-
- public DynamicTreeNode(Object var1) {
- super(var1);
- }
-
- public boolean isLeaf() {
- return false;
- }
-
- public int getChildCount() {
- if (!this.hasLoaded) {
- this.loadChildren();
- }
-
- return super.getChildCount();
- }
-
- protected void loadChildren() {
- for(int var5 = 0; var5 < 7; ++var5) {
- int var3 = (int)(nameGen.nextFloat() * nameCount);
- Font var2;
- if (fonts != null) {
- var2 = fonts[var3];
- } else {
- var2 = null;
- }
-
- SampleData var4;
- if (var5 % 2 == 0) {
- var4 = new SampleData(var2, Color.red, names[var3]);
- } else {
- var4 = new SampleData(var2, Color.blue, names[var3]);
- }
-
- DynamicTreeNode var1 = new DynamicTreeNode(var4);
- ((DefaultMutableTreeNode)this).insert(var1, var5);
- }
-
- this.hasLoaded = true;
- }
-
- static {
- String[] var0;
- try {
- var0 = Toolkit.getDefaultToolkit().getFontList();
- } catch (Exception var5) {
- var0 = null;
- }
-
- if (var0 != null && var0.length != 0) {
- int var1 = 12;
- names = var0;
- fonts = new Font[names.length];
- int var2 = 0;
-
- for(int var3 = names.length; var2 < var3; ++var2) {
- try {
- fonts[var2] = new Font(var0[var2], 0, var1);
- } catch (Exception var4) {
- fonts[var2] = null;
- }
-
- var1 = (var1 + 2 - 12) % 12 + 12;
- }
- } else {
- names = new String[]{"Mark Andrews", "Tom Ball", "Alan Chung", "Rob Davis", "Jeff Dinkins", "Amy Fowler", "James Gosling", "David Karlton", "Dave Kloba", "Dave Moore", "Hans Muller", "Rick Levenson", "Tim Prinzing", "Chester Rose", "Ray Ryan", "Georges Saab", "Scott Violet", "Kathy Walrath", "Arnaud Weber"};
- }
-
- nameCount = (float)names.length;
- nameGen = new Random(System.currentTimeMillis());
- }
- }
-