Revision 7743 trunk/applications/appgvSIG/src/com/iver/cit/gvsig/gui/layout/fframes/FFrameView.java

View differences:

FFrameView.java
612 612
            ArrayList views = pe.getProject().getDocumentsByType(ProjectViewFactory.registerName);
613 613

  
614 614
            boolean hasIndex = false;
615

  
616
            for (int i = 0; i < views.size(); i++) {
617
                if ((view != null) &&
618
                        view.getName().equals(((ProjectView) views.get(i)).getName())) {
619
                    xml.putProperty("indice", i);
620
                    hasIndex = true;
621
                }
615
            
616
            
617
            if (view != null) {
618
            	xml.putProperty("viewName",view.getName());
619
	            for (int i = 0; i < views.size(); i++) {
620
	                if (view.getName().equals(((ProjectView) views.get(i)).getName())) {
621
	                    xml.putProperty("indice", i);
622
	                    hasIndex = true;
623
	                    break;
624
	                }
625
	            }
622 626
            }
623 627

  
624 628
            if (!hasIndex) {
......
838 842
        this.m_Scale = xml.getDoubleProperty("m_Scale");
839 843

  
840 844
        int indice = xml.getIntProperty("indice");
845
        
846
        ProjectView view = null;
847
        
848
        if (xml.contains("viewName")){
849
        	view = (ProjectView)project.getProjectDocumentByName(xml.getStringProperty("viewName"),ProjectViewFactory.registerName);
850
        }else {
851
        	if (indice != -1) {
852
        		try {
853
        			ArrayList views = project.getDocumentsByType(ProjectViewFactory.registerName);
854
        			
855
        			view = (ProjectView) views.get(indice);
856
        		} catch (IndexOutOfBoundsException e) {
857
        			NotificationManager.addError("No se ha encontrado la vista de indice "+ indice,
858
            				e);
859
        		}
860
        	}
861
        }
862
        
841 863

  
842
        if (indice != -1) {
843
            try {
844
            	ArrayList views = project.getDocumentsByType(ProjectViewFactory.registerName);
845

  
846
                ProjectView view = (ProjectView) views.get(indice);
847
                //this.m_fmap = view.getMapContext();
848
                this.setView(view);
849

  
850
                try {
851
                    if (xml.contains("extentX")) {
852
                        if (m_bLinked) {
853
                            this.getMapContext().getViewPort().setExtent(new Rectangle2D.Double(
854
                                    xml.getDoubleProperty("extentX"),
855
                                    xml.getDoubleProperty("extentY"),
856
                                    xml.getDoubleProperty("extentW"),
857
                                    xml.getDoubleProperty("extentH")));
858
                        } else if (!m_bLinked) {
859
                            this.m_fmap = MapContext.createFromXML(xml.getChild(0));
860
                        }
861
                    }
862
                } catch (XMLException e) {
863
                    NotificationManager.addError("Pasando las propiedades del XMLEntity al objeto",
864
                        e);
865
                }
866
            } catch (IndexOutOfBoundsException e) {
867
            }
864
        if (view != null) {
865
        	this.setView(view);
866
        	
867
        	try {
868
        		if (xml.contains("extentX")) {
869
        			if (m_bLinked) {
870
        				this.getMapContext().getViewPort().setExtent(new Rectangle2D.Double(
871
        						xml.getDoubleProperty("extentX"),
872
        						xml.getDoubleProperty("extentY"),
873
        						xml.getDoubleProperty("extentW"),
874
        						xml.getDoubleProperty("extentH")));
875
        			} else if (!m_bLinked) {
876
        				this.m_fmap = MapContext.createFromXML(xml.getChild(0));
877
        			}
878
        		}
879
        	} catch (XMLException e) {
880
        		NotificationManager.addError("Pasando las propiedades del XMLEntity al objeto",
881
        				e);
882
        	}
868 883
        } else if (!m_bLinked) {
869 884
            try {
870 885
                this.m_fmap = MapContext.createFromXML(xml.getChild(0));

Also available in: Unified diff