Revision 8805 trunk/applications/appgvSIG/src/com/iver/cit/gvsig/project/documents/view/gui/View.java

View differences:

View.java
133 133
	private JDockPanel dockConsole = null;
134 134
	protected ResponseAdapter consoleResponseAdapter = new ResponseAdapter();
135 135
	protected boolean isShowConsole=false;
136
	private ViewPortListener viewPortListener;
136 137
	/**
137 138
     * Creates a new View object.
138 139
     */
......
203 204
			}
204 205
		});
205 206
        if (m_MapControl.getViewPort() != null){
206
	        m_MapControl.getViewPort().addViewPortListener(new ViewPortListener() {
207
        	viewPortListener=new ViewPortListener() {
207 208
				public void extentChanged(ExtentEvent e) {
208 209
					if (PluginServices.getMainFrame() != null){
209 210
						PluginServices.getMainFrame().getStatusBar().setControlValue("scale",String.valueOf(m_MapControl.getMapContext().getScaleView()));
......
217 218
				public void projectionChanged(ProjectionEvent e) {
218 219
					m_MapLoc.setProjection(e.getNewProjection());
219 220
				}
220
			});
221
        	};
222
	        m_MapControl.getViewPort().addViewPortListener(viewPortListener);
221 223
	      }
222 224
    }
223 225
    public JConsole getConsolePanel(){
......
503 505
    	PluginServices.getMainFrame().getStatusBar().setControlValue("scale",String.valueOf(m_MapControl.getMapContext().getScaleView()));
504 506
		PluginServices.getMainFrame().getStatusBar().setMessage("projection", getMapControl().getViewPort().getProjection().getAbrev());
505 507
    }
506

  
508
    /**
509
	 * @see com.iver.andami.ui.mdiManager.IWindowListener#windowClosed()
510
	 */
511
	public void windowClosed() {
512
		super.windowClosed();
513
		if (viewPortListener!=null)
514
		getMapControl().getViewPort().removeViewPortListener(viewPortListener);
515
		if (getMapOverview()!=null)
516
		getMapOverview().getViewPort().removeViewPortListener(getMapOverview());
517
	}
507 518
	public void toPalette() {
508 519
		isPalette=true;
509 520
		m_MapLoc.setPreferredSize(new Dimension(200,150));

Also available in: Unified diff