Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    TreeGrid with DataSource initialized via setTestData

    Hi,

    why it is not possible to load nodes into a TreeGrid using a DataSource initialized via setTestData() and having client only = true? While searching for an answer, I have found in the forum statements saying that a TreeGrid can be manually initialized only by creating a Tree instance. Since TreeGrid extends ListGrid and there such technique is possible, not being able to that with TreeGrid is somehow misleading.

    I have used the following snippet for testing:

    Code:
            TreeGrid treeGrid = new TreeGrid();
            DS ds = new DS("foo");
            Record r1 = new Record();
            r1.setAttribute("id", "1");
            r1.setAttribute("label", "test");
            r1.setAttribute("parent", "");
            ds.setTestData(new Record[] {r1});
            treeGrid.setShowRoot(true);
            treeGrid.setDataSource(ds);
            treeGrid.setFields(new TreeGridField("label"));
            treeGrid.setHeight(400);
            addMember(treeGrid);
            treeGrid.fetchData();
             
    class DS extends DataSource {
            
            public DS(String _id) {
                setID(_id);
                
                DataSourceTextField idField = new DataSourceTextField("id");
                idField.setPrimaryKey(true);
                DataSourceTextField labelField = new DataSourceTextField("label");
                DataSourceTextField parentField = new          DataSourceTextField("parent");
                parentField.setForeignKey("id");
                parentField.setRootValue("");
                setFields(idField, labelField, parentField);
                setClientOnly(true);
                
            }
        }
    Best,

    Predrag

    #2
    TreeGrids work normally with clientOnly DataSources (they don't even know that the DataSource is clientOnly:true). Without the actual data involved, this code snippet isn't meaningful.

    Comment

    Working...
    X