[Gvsig_desarrolladores] Habilitar extensiones en gvSIG 2.4

Joaquin Jose del Cerro Murciano jjdelcerro en gvsig.org
Vie Jun 15 09:19:56 CEST 2018


El 13 de junio de 2018, 13:22, Iago Alonso Alonso <ialonso en enxenio.es>
escribió:

> Hola, me gustaría saber si el mecanismo para habilitar las extensiones en
> el modo edición ha cambiado. Ya que en gvSIG 2.4 se cargan las extensiones,
> pero los iconos aparecen en gris (como si estuvieran desactivados) al
> entrar en el modo edición y en gvSIG 2.3 funcionan sin problemas.
>
> En la extensión, dentro de:
>
> src/main/resources-plugin/config.xml
>
> tengo definida la extensión con sus funcionalidades:
>
>        <extension class-name=".....EditionManagerExtension"
>             description=""
>             active="true">
>             <menu
>                 text=""
>                 position=""
>                 />
>         </extension>
>
>
>        <extension class-name=".....ServiceExtension"
>             description="" active="true" priority="1">
>             <action
>                 name="funcion_1"
>                 label=""
>                 tooltip=""
>                 position=""
>                 action-command=""
>                 icon=""
>                 accelerator=""
>             />
>             <action
>                 name="funcion_2"
>                 label=""
>                 tooltip=""
>                 position=""
>                 action-command=""
>                 icon=""
>                 accelerator=""
>             />
>
>             <menu text="" name="funcion_1"/>
>             <menu text="" name="funcion_2"/>
>             <tool-bar name="vector_editing">
>                 <selectable-tool  name="funcion_1"/>
>                 <selectable-tool  name="funcion_2"/>
>             </tool-bar>
>         </extension>
>
> Con su respectivo:
>
> EditionManagerExtension.java
>
> EditionManagerObserver.java
>
> ServiceExtension.java
>
> La extensión tiene 2 funcionalidades, en cada funcionalidad (seguí el
> esquema de vectorediting, así que cada una es un proyecto independiente)
> hay un:
>
> EditingLibrary.java
>
> EditingProvider.java
>
> EditiingProviderFactory.java
>
> Y para registrar cada funcionalidad, en el fichero
> "src/main/resources/META-INF/services/org.gvsig.tools.library.Library"
> indico la ruta de la case "EditingLibrary" de la funcionalidad.
>
> Al arrancer gvSIG, en el log veo que la extensión se carga (y supongo que
> las funcionalidades también, al ser los proyectos hijos del proyecto de la
> extensión) pero no se activan al entrar en el modo edición.
>
> INFO 12577 AWT-EventQueue-0 org.gvsig.andami.Launcher - Initializing
> plugin "extension"
> INFO 12578 AWT-EventQueue-0 org.gvsig.andami.Launcher - Initializing
> extensions of plugin "extension":
> INFO 12578 AWT-EventQueue-0 org.gvsig.andami.Launcher - Initializing
> ......ServiceExtension...
> INFO 12579 AWT-EventQueue-0 org.gvsig.andami.Launcher - Initializing ......
> EIELEditionManagerExtension...
>
> ¿A cambiado algo en la forma de registrar o activar las extensiones?
> ¿Debería aparecer en el log al arrancar que se inicializan las
> funcionalidades?
>
>
Con la informacion que pasas no tengo ni idea de que te esta pasando.
Es muy dificil interpretar los pedazos de codigo sueltos que pones en el
correo.


Sobre si el mecanismo de manejo de extensiones a cambiado en gvSIG 2.4,
incluido el registro y activacion de estas,
no, no ha cambiado.

Si lo que tienes es una herramienta normal de gvSIG, deberia funcionar
exactamente como lo hacia en la 2.3.

Si lo que estas haciendo es una herramienta que se integre con las
herramientas de edicion de gvSIG, ten en cuenta que el framework de edicion
se reescribio de cero hace ya algunas versiones de gvSIG (en 2014).

Lo que tuvieses para la edicion vieja no te valdra para la actual.

Normalmente para hacer una herramienta de edicion no precisarias
implementar
ninguna clase EditionManagerExtension, EditionManagerObserver o
ServiceExtension
en gvSIG. Ni siquiera has de meter en el "config.xml" nada para añadir una
nueva
herramienta que se integre con la edicion de gvSIG.
Tan solo crear y registrar un proveedor de edicion de forma similar a como
lo hacen
los proyectos:

- org.gvsig.vectorediting.symmetry
- org.gvsig.vectorediting.offset

Y registrarlo en el EditingProviderManager del framework de edicion.

Esos dos proyectos se separaron del core de edicion vectorial para
que pudiesen servir de ejemplo de como hacer un proveedor nuevo
de edicion. Puedes encontrarlos en:

https://redmine.gvsig.net/redmine/projects/gvsig-vector-editing/repository


Comentas que tienes dos "extesiones", supongo que te refieres a dos plugins
de gvSIG. Y que en cada uno tienes una herramienta de edicion. Aunque en los
ejemplos de "symetry" y "offset" hay una herramienta (proveedor) por plugin,
puedes meter en el mismo plugin los dos proveedores, incluso en el mismo
proyecto maven, tan solo tendrias que registrar en el library del proyecto
los dos.

Mientras no controles como funciona el mecanismo de herramientas de edicion,
si quieres crear una herramienta nueva, mi consejo, es que copies y
renombres
una de esas dos herramientas y vayas adaptando su codigo para hacer lo que
quieras.

Y te insisto...
Nada que tengas de la edicion vieja de gvSIG te funcionara sobre la edicion
actual (gvSIG 2.2 y siguientes).

Si lo que quieres es seguir manteniendo tus herramientas de edicion
antiguas,
y no adaptarte a las de gvSIG 2.2, Puedes coger el codigo de la
edicion antigua y tratar de adatarlo a las versiones actuales de gvSIG, y
que tus usuarios usen la edicion vieja y no la que viene de base con la
aplicacion.
De todos modos, aunque eso es una posibilidad, tarde o temprano tendras que
adaptar tu codigo a la edicion actual, o quedarte anclado en una version de
gvSIG.


Un saludo
Joaquin



Saludos.
>
>
>
>
>
>
>
>
>
>
>
>
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse
> de baja en esta lista, acuda a la siguiente dirección:
> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>
>


-- 
--------------------------------------
Joaquin Jose del Cerro Murciano
Development and software arquitecture manager at gvSIG Team
jjdelcerro en gvsig.com
jjdelcerro en gvsig.org
gvSIG Association
www.gvsig.com
www.gvsig.org
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20180615/dbd0b6e8/attachment.html>


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