Moderator: JIDE Support
@Override
public void treeNodesInserted(TreeModelEvent e)
{
// LayerTreeNode node = (LayerTreeNode) (e.getTreePath().getLastPathComponent());
for(Object childObj : e.getChildren())
{
if(childObj instanceof LayerTreeGroupNode)
{
LayerTreeGroupNode node = (LayerTreeGroupNode)childObj;
}
else if(childObj instanceof LayerTreeNode)
{
LayerTreeNode node = (LayerTreeNode)childObj;
System.out.println("The user has finished adding the node " + node.getTitle());
if(node.isSelected())
{
TreePath childPath = e.getTreePath().pathByAddingChild(childObj);
CheckBoxTreeSelectionModel selectionModel = layerTree.getCheckBoxTreeSelectionModel();
selectionModel.addSelectionPath(childPath);
}
}
}
}
_tree.getCheckBoxTreeSelectionModel().addSelectionPath(_tree.getPathForRow(2));
Invoked after nodes have been inserted into the tree.
public static void insertTableModelListener(TableModel model, TableModelListener l, int index) {
if (!(model instanceof AbstractTableModel)) {
model.addTableModelListener(l);
return;
}
TableModelListener[] listeners = ((AbstractTableModel) model).getTableModelListeners();
for (TableModelListener listener : listeners) {
model.removeTableModelListener(listener);
}
for (int i = 0; i < listeners.length; i++) {
TableModelListener listener = listeners[i];
if (index == i) {
model.addTableModelListener(l);
}
model.addTableModelListener(listener);
}
// index is too large, add to the end.
if (index < 0 || index > listeners.length - 1) {
model.addTableModelListener(l);
}
}
Please try to insert your listener to the first so that it would be executed the last.
public void insertTreeModelListener(TreeModelListener l, int index)
{
TreeModelListener[] listeners = getTreeModelListeners();
for (TreeModelListener listener : listeners)
{
removeTreeModelListener(listener);
}
for (int i = 0; i < listeners.length; i++)
{
TreeModelListener listener = listeners[i];
if (index == i)
{
addTreeModelListener(l);
}
addTreeModelListener(listener);
}
// index is too large, add to the end.
if (index < 0 || index > listeners.length - 1)
{
addTreeModelListener(l);
}
}
layerTreeModel.addTreeModelListener(new CnpLayerTreeModelListener(this));
layerTreeModel.insertTreeModelListener(new CnpLayerTreeModelListener(this), 0);
Return to JIDE Common Layer Open Source Project Discussion (Community Driven)
Users browsing this forum: Bing [Bot] and 9 guests