Re: building DefaultTreeM
To: comp.lang.java.gui
Jeff Higgins wrote:
Hi,
I hope someone can explain to me how to build
my DefaultTreeModel from a List of delimited Strings.
latest recursive attempt works better but not there.
private DefaultMutableTreeNode fillGroup(
DefaultMutableTreeNode node,
List<Group> lst, int count)
{
if(null != node && count < lst.size())
{
Enumeration enumeration = node.children();
String tmp;
String grpString = lst.get(count).getLabel();
boolean contains = false;
while(enumeration.hasMoreElements())
{
if(grpString.compareToIgnoreCase(
enumeration.nextElement().toString()) == 0)
{
contains = true;
break;
}
}
if(!contains)
{
DefaultMutableTreeNode ret =
new DefaultMutableTreeNode(lst.get(count));
node.add(ret);
count++;
if(count <= lst.size())
{
fillGroup(ret, lst, count);
}
return null;
}
else
{
count++;
if(count < lst.size())
{
fillGroup(node, lst, count);
}
return null;
}
}
return null;
}
private void fillModel(GroupTreeModel model)
{
String[] myGroups =
{ "comp.lang.java.gui",
"comp.lang.java.help",
"comp.lang.java.programmer",
"news.software.nntp",
"news.software.readers",
"rec.models.railroad",
"rec.models.scale"
};
ArrayList<List<Group>> groups =
new ArrayList<List<Group>>(myGroups.length);
List<Group> list;
for (String str : myGroups)
{
list = new ArrayList<Group>();
String[] strArray = str.split("\\.");
for (String s : strArray)
{
list.add(new Group(s));
}
groups.add(list);
}
for (List<Group> lst : groups)
{
DefaultMutableTreeNode current =
(DefaultMutableTreeNode) model.getRoot();
int count = 0;
current = fillGroup(current, lst, count);
}
}
---
* Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet!
--- Synchronet 3.15a-Win32 NewsLink 1.92
Time Warp of the Future BBS - telnet://time.synchro.net:24