[Gvsig_desarrolladores] Añadir algún valor al fichero de proyecto

Francisco José Peñarrubia fpenarru en gmail.com
Lun Dic 12 09:44:56 CET 2011


Hola Fernando.

Respecto a la utilidad de los cambios, lo de meter cosas en el proyecto 
me parece útil, pero me preocupa qué pasaría con un proyecto que no 
tenga instalado tu plugin, si leería un proyecto generado con esos cambios.
En principio, si esto fuera al trunk, sería una incompatibilidad entre 
versiones de proyectos hacia abajo. No es grave, pero si se puede 
evitar, mejor.

En cuanto a la visibilidad o no de los FFrames, no sé si veo la utilidad 
(teniendo en cuenta lo que dice Vicente de Quality). Además, por si te 
es útil, acuerdate del setTag que tienen los FFrames y que sirve para 
personalizar una impresión por programa. (Necesitarías un botón de 
imprimir personalizado, supongo).

De lo de cambios en el trunk, hay documentación en el gvsig.org, pero 
estamos en un período de cambio. Hay una iniciativa para modificar ese 
protocolo, y que existan mantenedores que permitan agilizar los cambios.
Y también se va a migrar los tickets de OSOR a otra plataforma, así que 
mejor no pongas un ticket todavía, si puedes evitarlo (que alguien me 
corrija si no es correcto). Sobre cambios puedes discutirlos por aquí, o 
mejor en el TSC.
Si no estás en el TSC, avisa y proponemos tu inclusión.

Saludos, y perdona la tardanza en responder, pero vamos todos muy liados.

Saludos.

Fran.



El 09/12/2011 18:01, Fernando González escribió:
> En el WindowData no he podido guardarlo. Primero era un poco incómodo,
> pero además, el WindowData de MapProject es nulo...
>
> Al final lo que he hecho ha sido adaptar Project para poder meterle
> XMLEntitys de usuario. Adjunto patch. Mi extensión persiste bien y
> también carga proyectos anteriores hechos sin el código del patch.
>
> Básicamente lo que hay en el patch son los cambios descritos aquí[1].
>
> ¿Existe la posibilidad de incluir estos cambios en el trunk? ¿Cuál es
> el procedimiento habitual?
>
> Saludos.
>
> [1]
> * Dos nuevos eventos:
> 	- Al crear un nuevo proyecto
> 	- Al cargar un proyecto
>
> * Dos métodos en Project
> 	- putUserXMLEntity()
> 	- getUserXMLEntity()
>
> * Persistencia de los XMLEntity de usuario
>
> * Atributo 'visible' de todos los IFFrame
>
> * Dibujado condicional en función del atributo 'visible' del IFFrame
>
>
>
>
> 2011/12/5 Fernando González<fergonco en gmail.com>:
>> Lo de crearme un documento propio lo había intentado... pero no es
>> nada trivial. Hay que crear una factory y tal.
>>
>> En cambio, he añadido un load listener (que no había) a
>> ProjectExtension y un putUserXMLEntity y getUserXMLEntity a Project,
>> para poder asociar información al proyecto. Son cambios bastante
>> triviales y he probado a abrir proyectos creados anteriormente y no me
>> ha dado problemas.
>>
>> Con eso puedo escuchar los eventos de guardado para meter mi XMLEntity
>> y los de carga (para hacer lo mismo). Me faltaría añadir un evento de
>> creación de proyecto nuevo.
>>
>> ¿Se considera interesante la funcionalidad como para aplicarla al
>> trunk? ¿Véis bien el código que he creado o le falta algo?
>>
>> Por cierto, el patch está hecho sobre el tag de la 1.11. Antes de
>> enviar el definitivo probaría sobre el trunk.
>>
>> Si no, seguramente pueda solucionar mi problema con el WindowData,
>> pero prefiero empezar por el patch porque creo que es una
>> funcionalidad bastante útil.
>>
>> 2011/12/5 Francisco José Peñarrubia<fpenarru en gmail.com>:
>>> Pues en ese caso no lo sé.
>>>
>>> Quizás puedas crearte un documento propio, o asociar esos datos al
>>> objeto WindowData, que guarda pares de clave-valor y se recuperan.
>>> Me suena que las capas también tenían sus propias properties, pero creo
>>> que con lo de WindowData te puede servir.
>>> Si no... pues ya en la 2.0, que seguramente lo de los metadatos está más
>>> estudiado.
>>>
>>> Saludos!.
>>>
>>> Fran.
>>>
>>> El 05/12/2011 16:18, Fernando González escribió:
>>>> Jajaja, mira que sabía que me iba a llevar una así...
>>>>
>>>> Hay un matiz. El tema es que esa persistencia no se asocia a un
>>>> proyecto, sino que es persistencia del plugin.
>>>>
>>>> Lo que yo quiero es asociar un valor al proyecto, por ejemplo si el
>>>> día en que se guardó el proyecto por última vez el IBEX estaba por
>>>> encima de los 8000 puntos o no (no, no se me ha ocurrido otro ejemplo
>>>> y que conste que he estado pensando un rato).
>>>>
>>>> Podría guardarme un map de rutas de proyecto a valores, pero si se
>>>> cambia el proyecto de sitio perdería el valor.
>>>>
>>>> Sigo pensando que debo estar pasando algo por alto. Igual eso se
>>>> enfoca de manera distinta a cómo lo estoy enfocando yo... pero debe
>>>> haber alguna solución.
>>>>
>>>> 2011/12/5 Francisco José Peñarrubia<fpenarru en gmail.com>:
>>>>> Hola Fernando.
>>>>>
>>>>> Mira si te suena esto:
>>>>>
>>>>> XMLEntity xml = PluginServices.getPluginServices(this).getPersistentXML();
>>>>>
>>>>>
>>>>>           PluginServices ps = PluginServices.getPluginServices(this);
>>>>>           XMLEntity xml = ps.getPersistentXML();
>>>>>           xml.putProperty(KEY_LAYERNAME_MDTINFO, layerName);
>>>>>           xml.putProperty(KEY_BAND_MDTINFO, band);
>>>>>
>>>>> y si no te suena, mira el autor.... ;-)
>>>>>
>>>>> Lo guarda en el archivo plugin-services.xml.
>>>>>
>>>>> Saludos.
>>>>>
>>>>> Fran.
>>>>>
>>>>> El 05/12/2011 14:37, Fernando González escribió:
>>>>>> Hola de nuevo.
>>>>>>
>>>>>> ¿Existe alguna manera de que mi extensión guarde información junto con
>>>>>> el proyecto?
>>>>>>
>>>>>> Pensaba que se podría añadir XMLEntitys al proyecto para que las
>>>>>> extensiones pudieran guardar cosas, pero no parece que sea posible, o
>>>>>> yo no lo he visto.
>>>>>>
>>>>>> No puede ser que nadie haya tenido esta necesidad antes. ¿Alguna pista?
>>>>>> _______________________________________________
>>>>>> 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: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>>>> --
>>>>> Fran Peñarrubia
>>>>> Scolab
>>>>> www.scolab.es
>>>>>
>>>>> Asociación gvSIG
>>>>> www.gvsig.com
>>>>>
>>>>> _______________________________________________
>>>>> 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: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>>> _______________________________________________
>>>> 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: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>> --
>>> Fran Peñarrubia
>>> Scolab
>>> www.scolab.es
>>>
>>> Asociación gvSIG
>>> www.gvsig.com
>>>
>>> _______________________________________________
>>> 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: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>>
>>>
>>> _______________________________________________
>>> 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: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores

-- 
Fran Peñarrubia
Scolab
www.scolab.es

Asociación gvSIG
www.gvsig.com

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20111212/6a8f216f/attachment.htm 


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