I have created a patch for the InfoModel class so that it does not actually remove the features for a Layer until after it has notified the listeners. This enables the listeners to get the features that are going to be removed.
Can people have quick look and see if their plugins would be affected by this change before I check-in. Paul Index: C:/Documents and Settings/paustin/My Documents/workspace/openjump/src/com/vividsolutions/jump/workbench/ui/InfoModel.java =================================================================== --- C:/Documents and Settings/paustin/My Documents/workspace/openjump/src/com/vividsolutions/jump/workbench/ui/InfoModel.java (revision 887) +++ C:/Documents and Settings/paustin/My Documents/workspace/openjump/src/com/vividsolutions/jump/workbench/ui/InfoModel.java (working copy) @@ -92,8 +92,6 @@ public void remove(Layer layer) { LayerTableModel layerTableModel = getTableModel(layer); - ((LayerTableModel) layerToTableModelMap.get(layer)).dispose(); - layerToTableModelMap.remove(layer); for (Iterator i = listeners.iterator(); i.hasNext();) { InfoModelListener listener = (InfoModelListener) i.next(); @@ -99,6 +97,8 @@ InfoModelListener listener = (InfoModelListener) i.next(); listener.layerRemoved(layerTableModel); } + ((LayerTableModel) layerToTableModelMap.get(layer)).dispose(); + layerToTableModelMap.remove(layer); } public void clear() { ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel