Hi,
Client code:
When kcpListTree.fetchData(crit) occurs firstly addDataArrivedHandler doesn't fired. But when user make liferayGroupList.addCellClickHandler secondly addDataArrivedHandler fired and selectRecord(listGridRecord) occurs. How can do it when fetchData() calls firstly?
Client code:
Code:
public class KcpListTreeGrid extends TreeGrid {
...
setSelectionAppearance(SelectionAppearance.CHECKBOX);
setShowSelectedStyle(false);
setShowPartialSelection(true);
setCascadeSelection(true);
TreeGridField full_codField = new TreeGridField("full_cod");
TreeGridField fullnameField = new TreeGridField("fullname");
TreeGridField priznakField = new TreeGridField("priznak");
setFields(full_codField, fullnameField, priznakField);
addDataArrivedHandler(new DataArrivedHandler() {
@Override
public void onDataArrived(DataArrivedEvent event) {
ListGridRecord[] records = getRecords();
for (ListGridRecord listGridRecord : records) {
if (listGridRecord.getAttribute("priznak").equals("1")) {
selectRecord(listGridRecord);
}
}
}
});
}
Code:
public class AccessToKcp extends HLayout implements EntryPoint {
...
private LifeRayGroupListGrid liferayGroupList;
liferayGroupList.addCellClickHandler(new CellClickHandler() {
@Override
public void onCellClick(CellClickEvent event) {
Criteria crit = new Criteria();
groupId = event.getRecord().getAttributeAsInt("id");
crit.addCriteria("groupId", groupId);
kcpListTree.setFetchOperation("fetchKCP");
kcpListTree.fetchData(crit);
}
});
}
Comment