I am new to gwt .I am using gwt tree ,when click the treeitem i am
getting treeitem text ...but I need to get multiple values like (code,
name ,parentcode).(how to set multiple values to TreeItem)
Any one can help me..
here my code:
/*
* TreeMainEntryPoint.java
*
* Created on February 5, 2009, 2:36 PM
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package org.karishma.client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.rpc.ServiceDefTarget;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.Tree;
import com.google.gwt.user.client.ui.TreeItem;
import com.google.gwt.user.client.ui.TreeListener;
import com.google.gwt.user.client.ui.Widget;
import com.gwtext.client.widgets.Panel;
import com.gwtext.client.widgets.tree.TreeNode;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
/**
*
* @author veerraju
*/
public class TreeMainEntryPoint extends Tree implements EntryPoint,
TreeListener {
public Tree tree;
/**
The entry point method, called automatically by loading a module
that declares an implementing class as an entry-point
*/
public void onModuleLoad() {
tree = new Tree();
tree.addTreeListener((TreeListener) this);
tree.setWidth("10px");
Panel p1 = new Panel();
p1.add(tree);
p1.setTitle("Tree Structure");
p1.setBorder(true);
p1.setPaddings(5);
p1.setSize(250, 500);
p1.setAutoScroll(true);
RootPanel.get().add(p1);
// Create an asynchronous callback to handle the result.
final AsyncCallback callback = new AsyncCallback() {
public void onSuccess(Object result) {
ArrayList pal1 = (ArrayList) result;
ListIterator li1 = pal1.listIterator();
while (li1.hasNext()) {
String code = (String) li1.next();
String name = (String) li1.next();
String parent = (String) li1.next();
if (parent.equals("")) {
String count = getChildCount(pal1, code);
//Window.alert(count);
if (Integer.parseInt(count) > 0) {
TreeItem i1 = new TreeItem(name);
// Window.alert(name);
getSubNodes(i1, pal1, code);
tree.addItem(i1);
} else {
tree.addItem(name);
}
}
}
}
public void onFailure(Throwable caught) {
Window.alert("Communication failed....");
}
public String getChildCount(ArrayList a, String parent) {
int i = 0;
Iterator j = a.iterator();
while (j.hasNext()) {
String code = (String) j.next();
String name = (String) j.next();
String parent1 = (String) j.next();
if (parent1.equals(parent)) {
i = i + 1;
}
}
return new Integer(i).toString();
}
public void getSubNodes(TreeItem i1, ArrayList a, String
parent) {
ListIterator j = a.listIterator();
while (j.hasNext()) {
String code = (String) j.next();
String name = (String) j.next();
String parent1 = (String) j.next();
if (parent1.equals(parent)) {
String count = getChildCount(a, code);
if (Integer.parseInt(count) > 0) {
TreeNode node1 = new TreeNode(name, code);
TreeItem i2 = new TreeItem(node1.getText
());
// Window.alert(i2.toString());
getSubNodes(i2, a, code);
i1.addItem(i2);
} else {
i1.addItem(name);
}
}
}
}
};
getService().getTree(callback);
}
public void onTreeItemSelected(TreeItem i1) {
Window.alert(i1.getText());
}
public void onTreeItemStateChanged(TreeItem i1) {
Window.alert("state changed");
}
public static TreeServiceAsync getService() {
// Create the client proxy. Note that although you are
creating the
// service interface proper, you cast the result to the
asynchronous
// version of
// the interface. The cast is always safe because the
generated proxy
// implements the asynchronous interface automatically.
TreeServiceAsync service = (TreeServiceAsync) GWT.create
(TreeService.class);
// Specify the URL at which our service implementation is
running.
// Note that the target URL must reside on the same domain and
port from
// which the host page was served.
//
ServiceDefTarget endpoint = (ServiceDefTarget) service;
String moduleRelativeURL = GWT.getModuleBaseURL() +
"treeservice";
endpoint.setServiceEntryPoint(moduleRelativeURL);
return service;
}
}
thanks in advance..
Raju...
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---