Hi Omur,
after many months I finally ran into this problem again and still had
your email in the inbox ready to go.

I applied your patch and it works nicely.

Thanks,
Andrea



On Tue, Jul 31, 2012 at 7:15 PM, omur yavuz <[email protected]> wrote:
> Found a solution , i hope this can be a bug fix ,  looks like opening IMap
> using new editor , it does not update MapGraphicContext viewportmodel , but
> IMap. Changing  "!context.getViewportModel()"  to
> "context.getMap().getViewportModel()" solved problem.
>
>
> public MapGraphicContextImpl(final IRenderContext context,
> Graphics2D destination) {
> super();
> setGeoResourceInternal(context.getGeoResource());
> setLayerInternal((Layer) context.getLayer());
> setRenderManagerInternal((RenderManager) context.getRenderManager());
> setMapInternal((Map) context.getMap());
> vpg = new AWTGraphics(destination, context.getMapDisplay().getDPI());
>
> // add listener if doesn't already exist for layer
> IViewportModelListener listener = (IViewportModelListener) context
> .getLayer().getBlackboard().get(BLACKBOARD_LAYER_KEY);
> if (listener == null) {
> listener = new IViewportModelListener() {
> public void changed(ViewportModelEvent event) {
> // need to invalidate image & refresh the layer
>
>
> if (renderManagerInternal.isDisposed()) {
> setRenderManagerInternal(new RenderManagerDynamic());
>
>
> }
>
>
>
> try {
> //if (!context.getViewportModel().isBoundsChanging()) {   <-- old code
> if (!context.getMap().getViewportModel().isBoundsChanging()) {  // <-- new
> code
> context.getLayer()
> .getBlackboard()
> .put(MapGraphicRenderer.BLACKBOARD_IMAGE_KEY,
> null);
> context.getLayer().refresh(null);
> }
> } catch (Exception ex) {
> ex.printStackTrace();
> }
> }
> };
>
>
>
> context.getViewportModel().addViewportModelListener(listener);
> context.getLayer().getBlackboard()
> .put(BLACKBOARD_LAYER_KEY, listener);
> }
>
>
>
> On Jul 31, 2012, at 6:06 PM, omur yavuz wrote:
>
> Hello Everyone ,
>
> i ve a problem with MapGraphics. if i close the map and reopen ,  it does
> not render MapGraphic Layers : throws IllegalStateException because of
> MapGraphicsContext renderManager is disposed .
>
> !ENTRY net.refractions.udig.project 1 0 2012-07-31 17:51:08.665
> !MESSAGE
> !STACK 0
> java.lang.IllegalStateException: RenderManager is disposed
> at
> net.refractions.udig.project.internal.render.impl.RenderManagerImpl.checkState(RenderManagerImpl.java:472)
> at
> net.refractions.udig.project.internal.render.impl.RenderManagerImpl.getViewportModelInternal(RenderManagerImpl.java:359)
> at
> net.refractions.udig.project.internal.impl.AbstractContextImpl.getViewportModel(AbstractContextImpl.java:87)
> at
> net.refractions.udig.mapgraphic.internal.MapGraphicContextImpl$1.changed(MapGraphicContextImpl.java:37)
> at
> net.refractions.udig.project.internal.render.impl.ViewportModelImpl.notifyListeners(ViewportModelImpl.java:1378)
> at
> net.refractions.udig.project.internal.render.impl.ViewportModelImpl.fireNotification(ViewportModelImpl.java:873)
> at
> net.refractions.udig.project.internal.render.impl.ViewportModelImpl.setBounds(ViewportModelImpl.java:420)
> at
> net.refractions.udig.project.internal.render.impl.ViewportModelImpl.zoom(ViewportModelImpl.java:749)
> at
> net.refractions.udig.project.internal.command.navigation.ZoomCommand.runImpl(ZoomCommand.java:60)
> at
> net.refractions.udig.project.internal.command.navigation.AbstractNavCommand.run(AbstractNavCommand.java:72)
> at
> net.refractions.udig.project.internal.command.navigation.NavComposite.runCommand(NavComposite.java:100)
> at
> net.refractions.udig.project.internal.command.navigation.NavComposite.execute(NavComposite.java:80)
> at
> net.refractions.udig.project.command.CommandManager$Executor.execute(CommandManager.java:394)
> at
> net.refractions.udig.project.command.CommandManager$Executor.run(CommandManager.java:325)
> at
> net.refractions.udig.project.command.CommandManager$Executor.run(CommandManager.java:311)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
>
>
> This s same for all MapGraphic layers.  Any advice to fix this bug? Im
> looking for recreating MapGraphicContext but couldn't find yet
>
>
>
> _______________________________________________
> User-friendly Desktop Internet GIS (uDig)
> http://udig.refractions.net
> http://lists.refractions.net/mailman/listinfo/udig-devel
>
_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel

Reply via email to