Basic CellTree tutorial not working

300 views
Skip to first unread message

fabio.bozzo

unread,
Aug 21, 2011, 1:12:17 PM8/21/11
to Google Web Toolkit
Trying to copy and paste the most basic celltree example:
http://code.google.com/intl/it-IT/webtoolkit/doc/latest/DevGuideUiCellWidgets.html#celltree

But it only shows two blocks, without tree look and feel. Here's my
code:

public class CategorieTreeViewModel implements TreeViewModel {

@Override
public <T> NodeInfo<?> getNodeInfo(T value) {
ListDataProvider<String> dataProvider = new
ListDataProvider<String>();
for (int i = 0; i < 2; i++) {
dataProvider.getList().add(value + "." + String.valueOf(i));
}

// Return a node info that pairs the data with a cell.
return new DefaultNodeInfo<String>(dataProvider, new TextCell());
}

@Override
public boolean isLeaf(Object value) {
// The maximum length of a value is ten characters.
return value.toString().length() > 10;
}
}


public class Categorie extends Composite implements Constructable {

private static CategorieUiBinder uiBinder =
GWT.create(CategorieUiBinder.class);
interface CategorieUiBinder extends UiBinder<Widget, Categorie> {}

@UiField(provided=true)
CellTree cellTree;

public Categorie() {

// Create a model for the tree.
TreeViewModel model = new CategorieTreeViewModel();

// Create the tree using the model. We specify the default value
of the
// hidden root node as "Item 1".
cellTree = new CellTree(model, "Elemento 1");


initWidget(uiBinder.createAndBindUi(this));
}
}


Is there something wrong? What do you think?

Sudhakar Abraham

unread,
Aug 22, 2011, 10:30:03 AM8/22/11
to Google Web Toolkit

In Entrypoint, add CellTreeExample object into RootLayoutPanel. It
binds the CellTree Widget with uiBinder.
Try the following example.

S. Abraham
www.DataStoreGwt.com

package com.college.client;
import com.google.gwt.cell.client.TextCell;
import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.cellview.client.CellTree;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.view.client.ListDataProvider;
import com.google.gwt.view.client.TreeViewModel;

public class CellTreeExample extends Composite {
interface Binder extends UiBinder<Widget, CellTreeExample>{}
@UiField(provided = true)
CellTree cellTree;
public CellTreeExample()
{
TreeViewModel model = new CustomTreeModel();
cellTree = new CellTree(model, "Tree 1");
initWidget(GWT.<Binder>
create(Binder.class).createAndBindUi(this));
}
public class CustomTreeModel implements TreeViewModel
{
@Override
public <T> NodeInfo<?> getNodeInfo(T value)
{
// TODO Auto-generated method stub
ListDataProvider<String> dataProvider = new
ListDataProvider<String>();
for (int i = 0; i < 2; i++) {
dataProvider.getList().add(value + "." + String.valueOf(i));
}
// Return a node info that pairs the data with a cell.
return new DefaultNodeInfo<String>(dataProvider, new
TextCell());
}
@Override
public boolean isLeaf(Object value)
{
// TODO Auto-generated method stub
return value.toString().length() > 10;
}
}
}

On Aug 21, 10:12 pm, "fabio.bozzo" <fabio.bo...@gmail.com> wrote:
> Trying to copy and paste the most basic celltree example:http://code.google.com/intl/it-IT/webtoolkit/doc/latest/DevGuideUiCel...
The corresponding .xml file CellTreeExample

<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
xmlns:g='urn:import:com.google.gwt.user.client.ui'
xmlns:cv='urn:import:com.google.gwt.user.cellview.client'>

<g:DockLayoutPanel ui:field="dock" unit="PX">
<g:center>
<cv:CellTree ui:field="cellTree"/>
</g:center>
</g:DockLayoutPanel>
</ui:UiBinder>

guevaradelaserna

unread,
Nov 3, 2011, 2:15:36 PM11/3/11
to google-we...@googlegroups.com
I tried to get your example work, but it failed. I can display other ui-elements like buttons, but not cellTree is shown. My Entrypoint looks like this:

package com.myproject.client;


import com.google.gwt.core.client.EntryPoint;

import com.google.gwt.user.client.ui.RootPanel;


public class Playing implements EntryPoint {


public void onModuleLoad()

{

    SampleCellTree tree = new SampleCellTree();

    RootPanel.get().add(tree);

}

}


Why is no cellTree shown?

Thanks in advance

Reply all
Reply to author
Forward
0 new messages