Revision 36184

View differences:

branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/project/DefaultProject.java
44 44
import java.net.URI;
45 45
import java.net.URISyntaxException;
46 46
import java.net.URL;
47
import java.net.URLDecoder;
48
import java.net.URLEncoder;
49 47
import java.text.DateFormat;
50 48
import java.text.MessageFormat;
51 49
import java.util.ArrayList;
52
import java.util.Arrays;
53 50
import java.util.Collections;
54 51
import java.util.Date;
55 52
import java.util.HashMap;
......
58 55
import java.util.Map;
59 56
import java.util.regex.Pattern;
60 57

  
61
import org.apache.bcel.generic.DCONST;
62 58
import org.cresques.cts.IProjection;
63 59
import org.gvsig.andami.PluginServices;
64 60
import org.gvsig.andami.ui.mdiManager.IWindow;
65 61
import org.gvsig.andami.ui.mdiManager.SingletonWindow;
66 62
import org.gvsig.andami.ui.mdiManager.WindowInfo;
63
import org.gvsig.app.ApplicationLocator;
64
import org.gvsig.app.ApplicationManager;
67 65
import org.gvsig.app.extension.ProjectExtension;
68 66
import org.gvsig.app.extension.Version;
69 67
import org.gvsig.app.project.documents.AbstractDocument;
......
71 69
import org.gvsig.app.project.documents.exceptions.SaveException;
72 70
import org.gvsig.app.project.documents.gui.IDocumentWindow;
73 71
import org.gvsig.app.project.documents.gui.ProjectWindow;
72
import org.gvsig.app.project.documents.layout.DefaultLayoutManager;
74 73
import org.gvsig.app.project.documents.layout.LayoutDocument;
75
import org.gvsig.app.project.documents.layout.DefaultLayoutManager;
76 74
import org.gvsig.app.project.documents.table.TableDocument;
77 75
import org.gvsig.app.project.documents.table.TableManager;
78 76
import org.gvsig.app.project.documents.view.DefaultViewDocument;
......
90 88
import org.gvsig.tools.persistence.PersistentContext;
91 89
import org.gvsig.tools.persistence.PersistentState;
92 90
import org.gvsig.tools.persistence.exception.PersistenceException;
93
import org.gvsig.tools.persistence.exception.PersistenceValidateExceptions;
94 91
import org.gvsig.utils.StringUtilities;
95 92
import org.slf4j.Logger;
96 93
import org.slf4j.LoggerFactory;
......
1212 1209
	}
1213 1210

  
1214 1211
	public Document getActiveDocument() {
1215
		try {
1216
			SingletonWindow window = (SingletonWindow) PluginServices
1217
					.getMDIManager().getActiveWindow();
1218
			Document doc = (Document) window.getWindowModel();
1219
			return doc;
1220
		} catch (Exception ex) {
1221
			return null;
1212
		ApplicationManager application = ApplicationLocator.getManager();
1213

  
1214
		Document document = null;
1215
		IWindow[] windows = application.getUIManager().getOrderedWindows();
1216
		IWindow window = null;
1217
		for (int i = 0; i < windows.length; i++) {
1218
			if (window instanceof SingletonWindow) {
1219
				// Cogemos no la primera ventana, si no la primera
1220
				// ventana de tipo documento (SingletonWindow).
1221
				// Y por si las mosca no es un documento, atrapamos
1222
				// los errores y continuamos si no puede hacer un cast
1223
				// del Model a Document
1224
				try {
1225
					document = (Document) ((SingletonWindow) window).getWindowModel();
1226
					return document;
1227
				} catch (ClassCastException e) {
1228
					// Do nothing, skip this window
1229
				}
1230
			}
1222 1231
		}
1223
	}
1232
		return null;
1233
	} 
1224 1234
}

Also available in: Unified diff