I am using one of the older nightly builds but I doubt this is a bug, it seems I may be doing something wrong.
I updated SmartGWT to the last night's build and the same problem exists.
We are on SmartGWT Pro 3.1d 10/03/12.
Isomorphic, I am totally stuck and could really use some advice, it is rather urgent that I figure this out.
I have a TreeGrid, I set setShowRecordComponents(true) and setShowRecordComponentsByCell(true). The data in that TreeGrid is a copy being created by Drag and Drop from another TreeGrid. Essentially, only a parent element is being dragged - that works just fine and recordcomponents are all created succesfully. As soon as parent record is dropped, I call RPC services from addFolderDropHandler. RPC queries the data which is then brought into the TreeGrid using treeGrid.getTree().linkNodes(treeNodes);
The tree is rendered as it's supposed to with proper parent/child linking. What is not happening is that children that are retrieved using RPC do not invoke createRecordComponent(). I tried invalidateRecordComponents() to no avail. Something makes these new leafs different from the parent records.
Thanks,
Henry
I updated SmartGWT to the last night's build and the same problem exists.
We are on SmartGWT Pro 3.1d 10/03/12.
Isomorphic, I am totally stuck and could really use some advice, it is rather urgent that I figure this out.
I have a TreeGrid, I set setShowRecordComponents(true) and setShowRecordComponentsByCell(true). The data in that TreeGrid is a copy being created by Drag and Drop from another TreeGrid. Essentially, only a parent element is being dragged - that works just fine and recordcomponents are all created succesfully. As soon as parent record is dropped, I call RPC services from addFolderDropHandler. RPC queries the data which is then brought into the TreeGrid using treeGrid.getTree().linkNodes(treeNodes);
The tree is rendered as it's supposed to with proper parent/child linking. What is not happening is that children that are retrieved using RPC do not invoke createRecordComponent(). I tried invalidateRecordComponents() to no avail. Something makes these new leafs different from the parent records.
Code:
TreeGrid surrenderTreeGrid = new TreeGrid() { @Override protected Canvas createRecordComponent(final ListGridRecord listGridRecord, Integer colNum) { String fieldName = this.getFieldName(colNum); if(fieldName.equalsIgnoreCase("myField")){ return new Canvas(); } return null; } } surrenderTreeGrid.setCanAcceptDroppedRecords(true); surrenderTreeGrid.setShowRecordComponents(true); surrenderTreeGrid.setShowRecordComponentsByCell(true); surrenderTreeGrid.addFolderDropHandler(new FolderDropHandler() { @Override public void onFolderDrop(FolderDropEvent folderDropEvent) { // calling RPC here, actual call removed // onSuccess() body { TreeNode[] treeNodes = new TreeNode[rpcMessage.recs.size()]; int i = 0; for( looping over return results ) { TreeNode treeNode = new TreeNode(); treeNode.setAttribute()....; treeNodes[i] = treeNode; i++; } surrenderTreeGrid.getTree().linkNodes(treeNodes); } } });
Henry
Comment