[Gvsig_desarrolladores] Cuando ejecuto una extension como puedo esconder otras?

Javier Estévez jestevez en cartolab.es
Mie Nov 10 10:42:06 CET 2010


Hola Eñaut

La desactivación de otras extensiones, para el caso que comentas, está
a cargo de cada una de esas extensiones. En sus métodos isVisible e
isEnabled se definen las situaciones bajo las que estas extensiones se
pueden ejecutar. Probablemente comprueben si la ventana activa es
vista, si hay capas cargadas o situaciones similares. Por ejemplo, si
quieres que tu extensión se pueda ejecutar sólo cuando la ventana
activa es una vista hay que hacer:

	public boolean isEnabled() {
		return PluginServices.getMDIManager().getActiveWindow() instanceof View;
	}

	public boolean isVisible() {
		return true;
	}

En este caso el botón se activará o desactivará dependiendo de si la
ventana que tiene el foco es una vista o no. Para hacer aparecer y
desaparecer el botón hay que intercambiar los contenidos de ambas
funciones.

No sé si lo he explicado bien y si era eso lo que preguntabas exactamente.
Un saludo.

El día 10 de noviembre de 2010 10:28, agirrearri
<agirrearri en hotmail.com> escribió:
>
> Hola a todos, cuando se ejecuta "Ver tabla de atributos" otras extensiones se
> quedan deshabilitadas, esto se hace desde esa extensión o son cada una de
> las otras las que se auto deshabilitan?
>
> Se como deshabilitar las extensiones que quiero pero tengo problemas, si con
> el ratón le quito el foco a la ventana de la vista tengo un error si le
> devuelvo el foco ya no tengo el error pero si cierro la vista sale de nuevo
> y al volver a abrir la vista ya no se va aunque mantenga el foco.
>
> Error no capturado por el usuario java.lang.ClassCastException:
> com.iver.cit.gvsig.project.documents.gui.ProjectWindow
>     com.iver.cit.gvsig.StartEditing.isEnabled(StartEditing.java:237)
>     org.gvsig.inventarioarbolado.MiExclusiveUIExtension.isVisible(MiExclusiveUIExtension.java:75)
>     com.iver.andami.ui.mdiFrame.MDIFrame.enableControls(MDIFrame.java:917)
>     com.iver.core.mdiManager.NewSkin$FrameListener.internalFrameActivated(NewSkin.java:721)
>     javax.swing.JInternalFrame.fireInternalFrameEvent(Unknown Source)
>    ......................................
>     ........................
>     .............
>     .........
>
> Alguien sabe por que se da este error, y como solucinoarlo o tratarlo?
>
> Graciassss, atentamente Eñaut.
> --
> View this message in context: http://osgeo-org.1803224.n2.nabble.com/Cuando-ejecuto-una-extension-como-puedo-esconder-otras-tp5724010p5724010.html
> Sent from the gvSIG desarrolladores mailing list archive at Nabble.com.
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>



-- 
Javier Estévez Valiñas
Grupo de Desarrollo
Cartolab - Laboratorio de Ingeniería Cartográfica
http://www.cartolab.es

ETS Ingeniería de Caminos, Canales y Puertos
Universidade da Coruña
Campus de Elviña - 15071 A Coruña (España)
(34)981167000 ext. 5493


Más información sobre la lista de distribución gvSIG_desarrolladores