[Gvsig_desarrolladores] Como usar ExclusiveUIExtension o ExtensionDecorator correctamente para quitar funcionalidades

Jorge Piera jorge.piera en iver.es
Mie Abr 15 08:20:05 CEST 2009


Hola Marta.

Yo me suelo crear un array que contiene todas las extensiones que quiero 
ocultar. En tu caso, en el initialize de tu extensión deberías poner 
algo como:

public void initialize() {
        extensions = new ArrayList<Class>();
        extensions.add(com.iver.cit.gvsig.InfotoolExtension.class);
        extensions.add( com.iver.cit.gvsig.ShowTable.class);
       PluginServices.setExclusiveUIExtension(this);       
}

public boolean isEnabled(IExtension extension) {
        if (extensions.indexOf(extension.getClass()) < 0){
            return extension.isEnabled();
        }
        return false;
}

Si la extensión no está en mi lista de extensiones, llamo al isEnabled 
de la propia extensión. Si sí que está, devuelvo "false". En tu caso 
deberás modificar esta implementación.

Un saludo.

Jorge.

marta vicente romero wrote:
> Hola:
>
> Estoy intentado ocultar extensiones, que no esten activadas, pero si 
> visitbles  cuando la capa activa es una determinada,
> en la documentacion ( guia de referencia) pone mas omenos los pasos a 
> seguir para utilizar: ExclusiveUIExtension,
>
> mi pregunta es si alguien me puede aclarar que seria la forma correcta 
> de imlementar los metodos is Enable(IExtension extension)
> alguien tiene un ejemplo sencillo de esto o me puede explicar un poco 
> mas de como hacerlo
>
> (las funcionalidades que quiero deshabilitar seria, pero solo cuando 
> la capa activa sea una en particular, si cambia la capa activa
>  pues voverian a habilitarse
> com.iver.cit.gvsig.InfotoolExtension : que es el icono de informacion
> com.iver.cit.gvsig.ShowTable : es es la tabla de atributos
>
> Sino tambien habia pensado en utilizar ExtensionDecorator como pone la 
> documentacion,
> pero tambien me surge la duda de donde debo implementar el codigo para 
> desabilitar las funcionalidades,
> si quiero que cuando este la capa X activa se deshabilite, y cuando 
> este otra distinta vuelva otra vez a estar disponible..
>
>
> mcuhas gracias de antemano
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>   


-- 
Jorge Piera Llodrá
Especialista en Servicios OGC
Equipo de desarrollo gvSIG
IVER TI S.A.
C/ Lérida, 20
46009-Valencia (Spain)
Tlf.+34902252540
www.iver.es
www.gvsig.com  



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