hi John,
when I found time I'll give a help to you, After seeing your files I
think you're writing to complex code,
consider such 1.5RC implementation of google.visualization.DataTable
compared to your current one:
package google.visualization;
import com.google.gwt.core.client.JavaScriptObject;
public class DataTable {
static class DataTableImpl extends JavaScriptObject {
static native DataTableImpl create()
/*-{
return new $wnd.google.visualization.DataTable();
}-*/;
protected DataTableImpl() {
}
public native final void addColumn(String dataType, String name)
/*-{
this.addColumn(dataType, name);
}-*/;
public final native void addRows(int i)
/*-{
this.addRows(i);
}-*/;
public final native void setValue(int row, int column, String value)
/*-{
this.setValue(row, column, value);
}-*/;
public final native void setValue(int row, int column, int value)
/*-{
this.setValue(row, column, value);
}-*/;
}
DataTableImpl impl;
public DataTable() {
impl = DataTableImpl.create();
}
public void addColumn(String dataType, String name) {
impl.addColumn(dataType, name);
}
public void addRows(int i) {
impl.addRows(i);
}
public void setValue(int row, int column, String value) {
impl.setValue(row, column, value);
}
public void setValue(int row, int column, int value) {
impl.setValue(row, column, value);
}
}
with such implementation it can be used "as is" with code pasted from
Google Ajax api docs:
DataTable data = new DataTable();
data.addColumn("string", "Task");
data.addColumn("number", "Hours per Day");
data.addRows(5);
data.setValue(0, 0, "Work");
data.setValue(0, 1, 11);
data.setValue(1, 0, "Eat");
data.setValue(1, 1, 2);
data.setValue(2, 0, "Commute");
data.setValue(2, 1, 2);
data.setValue(3, 0, "Watch TV");
data.setValue(3, 1, 2);
data.setValue(4, 0, "Sleep");
data.setValue(4, 1, 7);
regards,
Peter