I wanted to start editing a new node when the user clicks a button. I found this article that explains how to do this. I wanted to leave an example here in case anyone wants to achieve this.
The node would be added to the tree if it's empty or as a child if a node was selected.
The node would be added to the tree if it's empty or as a child if a node was selected.
Code:
private ClickHandler btnAddCategory_onClick=new ClickHandler() { @Override public void onClick(ClickEvent event) { Record newRecord=new Record(JavaScriptObject.createObject()); if(grdCategories.getSelectedRecord()!=null){ Record selectedNode=grdCategories.getSelectedRecord(); newRecord.setAttribute("idParent", selectedNode.getAttribute("id")); } grdCategories.addData(newRecord, new DSCallback() { @Override public void execute(DSResponse response, Object rawData, DSRequest request) { if(response.getStatus()>=0 && response.getData()!=null &&response.getData().length>0){ Record record=response.getData()[0]; TreeNode parent=grdCategories.getData().findById(record.getAttribute("idParent")); if(parent!=null){ grdCategories.getData().openFolder(parent); } int row=grdCategories.getRecordIndex(record); grdCategories.startEditing(row, 0, false); } } }); } };