Revision 36443 branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/project/documents/view/BaseViewDocument.java

View differences:

BaseViewDocument.java
38 38
import javax.swing.JScrollPane;
39 39

  
40 40
import org.cresques.cts.IProjection;
41

  
41 42
import org.gvsig.andami.PluginServices;
42 43
import org.gvsig.andami.ui.mdiManager.IWindow;
43 44
import org.gvsig.andami.ui.mdiManager.WindowInfo;
44
import org.gvsig.app.extension.ProjectExtension;
45
import org.gvsig.app.project.Project;
46 45
import org.gvsig.app.project.documents.AbstractDocument;
47
import org.gvsig.app.project.documents.Document;
48 46
import org.gvsig.app.project.documents.DocumentManager;
49
import org.gvsig.app.project.documents.table.TableDocument;
50
import org.gvsig.app.project.documents.table.TableManager;
51 47
import org.gvsig.app.project.documents.view.info.gui.HTMLInfoToolPanel;
52 48
import org.gvsig.fmap.mapcontext.MapContext;
53 49
import org.gvsig.fmap.mapcontext.events.ErrorEvent;
......
55 51
import org.gvsig.fmap.mapcontext.layers.CancelationException;
56 52
import org.gvsig.fmap.mapcontext.layers.FLayer;
57 53
import org.gvsig.fmap.mapcontext.layers.FLayers;
58
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
59 54
import org.gvsig.tools.exception.BaseException;
60 55
import org.gvsig.tools.persistence.PersistentState;
61 56
import org.gvsig.tools.persistence.exception.PersistenceException;
......
216 211

  
217 212
		for (int i = layers.getLayersCount()-1; i>=0; i--){
218 213
        	try {
219
        		if (layers.getLayer(i) instanceof FLyrVect){
220
                    Project project = ((ProjectExtension)PluginServices.getExtension(ProjectExtension.class)).getProject();
221
                    TableDocument pt = project.getTable((FLyrVect) layers.getLayer(i));
222

  
223
                    List<Document> tables = project.getDocuments(TableManager.TYPENAME);
224
                    for (int j = 0; j < tables.size(); j++) {
225
                        if (tables.get(j) == pt){
226
                            project.remove(tables.get(j));
227
                            break;
228
                        }
229
                    }
230

  
231
                    PluginServices.getMDIManager().closeSingletonWindow(pt);
232
                }
233 214
                layers.getLayer(i).getParentLayer().removeLayer(layers.getLayer(i));
234 215
			} catch (CancelationException e1) {
235 216
    			e1.printStackTrace();

Also available in: Unified diff