[Gvsig_desarrolladores] Desarrollo de plugins

Francisco José Peñarrubia fpenarru en iver.es
Mar Mar 29 11:22:07 CEST 2005


Hola Ricardo.

¿Puedes ser un poco más concreto acerca de lo que deseas hacer?.

Hay muchas formas de utilizar gvSIG y sus librerías.

Se puede usar Andami solo como semilla para una aplicación MDI que no tenga 
que ver con GIS.
O se puede usar solof FMap para hacer aplicaciones GIS, sean o no MDI.

O si lo que prefieres es ampliar la funcionalidad de gvSIG (que supongo que 
es el caso), entonces puedes hacer un plugin sobre gvSIG. (Tocando o sin 
tocar el
código fuente original).

Estamos preparando documentación más detallada sobre cómo hacer todo esto, 
con ejemplos simples y avanzados.
Sin entrar en detalle, te diré que un plugin tiene que implementar la 
interfaz com.iver.andami.plugins.Extension.
Las clases que hay en el paquete com.iver.cit.gvsig son todas extensiones de 
gvSIG. (Como puedes ver, todo lo de gvSIG son en realidad extensiones sobre 
Andami, así que se puede seguir la misma estructura para extensiones 
externas. Un ejemplo simple es la clase com.iver.cit.gvsig.ZoomPrev, que 
implementa la funcionalidad de un zoom previo.

El fichero config.xml es el que controla los botones, herramientas y 
opciones de menu que queremos que aparezcan en la interfaz de usuario, y las 
clases que están ligadas a cada uno de ellos. Por ejemplo, en el caso de 
ZoomPrev:

<extension class-name="com.iver.cit.gvsig.ZoomPrev"

description="Extensión encargada de gestionar los zooms previos al actual."

active="true">

<menu text="Vista/Zoom_Previo" icon="images/ZoomPrevio.png"/>

<tool-bar name="Herramientas">

<action-tool icon="images/ZoomPrevio.png" action-command="ZOOM_PREV" 
tooltip="Zoom_Previo"/>

</tool-bar>

</extension>

Cualquier extensión externa, debe suministrar su propio fichero config.xml. 
Y las clases, el fichero config.xml y las librerías que vaya a usar (jar, 
imagenes, etc) se deber incluir en la estructura de directorios de Andami:

- Las extensiones se ponen en el directorio "extensiones". Por ejemplo, 
todas las extensiones que conforman gvSIG van en el directorio 
"com.iver.cit.gvsig". En tu caso, sería algo como "com.telvent.gvsig", o 
algo así.
- Ahí dentro puedes poner tus ficheros de idiomas (.properties) y el fichero 
config.xml, así como las librerías que uses, imágenes, etc. Y por supuesto, 
tu  fichero .jar con las clases que hayas generado.

Cuando arranca Andami, mira los directorios de extensiones, coge el fichero 
config.xml de cada uno y carga las clases que necesita. (Vale, de manera 
muuuuy resumida :-) Todo esto lo controla mejor Fernando, pero hoy no está. 
Por cierto, Vicente también controla de todo esto y no escribe a menudo... 
Venga, Vicente, anímate, no seas tímido ;-)

Vale, hasta otra con más tiempo. Ya nos contarás qué tal va la nueva 
extensión, y suerte.

Francisco José Peñarrubia

IVER T.I. S.A.
Salamanca, 50
46005 Valencia
Tel: 963163400




----- Original Message ----- 
From: <ricardo.borrallo en telvent.abengoa.com>
To: <gvsig_desarrolladores en runas.cap.gva.es>
Sent: Tuesday, March 29, 2005 10:44 AM
Subject: [Gvsig_desarrolladores] Desarrollo de plugins






En primer lugar me gustaría dar la enhorabuena al equipo de desarrollo de
GvSig.

En segundo lugar, os remito mi duda. Estoy tratando de desarrollar un
plugin para gvSig. He estado mirando la web y viene algun que otro codigo
de ejemplo para utilizar las librerías de gvSig en proyecto nuevo pero no
de como incorporar un proyecto ajeno a GvSig. En JUMP existe la posibilidar
de "incorporar" desarrollos ajenos a JUMP. En gvSig no sé si es posible o
tengo que descargarme el codigo fuente y "trastear" en él.

Gracias de antemano.

Ricardo Borrallo Asencio.
Telvent Interactiva.
***********Internet Email Confidentiality Footer*************
This email and any files transmitted with it are confidential and intended
solely for the use of the organization or individual to whom they are
addressed.  It is expressly forbidden to retransmit or copy email and/or
this  attached files without our permission .  If you are not the
addressee indicated in this message (or responsible for delivery of the
message to such person), you may not copy or deliver this message
to anyone. In such case, you should destroy this message and kindly
notify the sender by reply email. Please advise immediately if you or
your employer does not consent to Internet email for messages of this
kind.  Opinions, conclusions and other information in this message that
do not relate to the official business of my firm shall be understood as
neither given nor endorsed by it.


_______________________________________________
gvSIG_desarrolladores mailing list
gvSIG_desarrolladores en runas.cap.gva.es
http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores




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