Personal tools
You are here: Home Development Documents gvSIG desktop 1.0 / 1.1 gvSIG Andami Servicios a los plugins Traducciones
Los plugins poseen unos ficheros de traducciones que son leídos durante el inicio de la aplicación. Estos ficheros contienen claves de traducción, y la traducción asociada a cada clave, para cada idioma. De esta forma, los plugins pueden solicitar la traducción de una clave y Andami devolverá la traducción para el idioma que el usuario haya elegido (a través de la configuración del idioma). Usando este mecanismo se puede presentar al usuario una interfaz totalmente traducida a su idioma preferido.

Los ficheros de traducción deben estar situados en el directorio raíz del plugin, y se deben llamar de acuerdo a lo especificado en `la etiqueta resourceBundle del config.xml `_. Los sufijos de idioma de cada nombre de fichero corresponden con el código de dos caracteres `ISO 639-1 `_ (*en* para inglés, *fr* para francés, etc). El fichero sin sufijo corresponde al idioma Castellano. Siguiendo estas convenciones, las traducciones del plugin son cargadas automáticamente durante la carga de plugins.

Para acceder a estas traducciones desde el plugin, usaremos un código como el siguiente:

.. code-block:: java

  PluginServices ps = PluginServices.getPluginServices(this);
  ps.getText("clave_de_traduccion");

o bien, a través de un método estático:

.. code-block:: java

  PluginServices.getText(this,"clave_de_traduccion");

Hay que tener en cuenta que todos los plugins tienen un espacio de claves de traducción único. Esto significa que si un plugin A posee una traducción como la siguiente en el fichero *text.properties*:

.. code-block:: java

  error_conexion="Error de conexión"

y un plugin B posee una traducción como:

.. code-block:: java

  error_conexion="Error conectando a la base de datos"

entonces habrá un conflicto de claves. Si suponemos que el plugin A se carga antes (y por tanto sus traducciones también se cargan antes), cuando el plugin B intente acceder a la traducción:

.. code-block:: java

  PluginServices ps = PluginServices.getPluginServices(this);
  ps.getText(error_conexion);

obtendría la traducción errónea: "Error de conexión". Por tanto, debemos intentar utilizar claves que describan con precisión el mensaje, para evitar este de error. Si el plugin no va a ser integrado en la distribución principal de gvSIG, podemos usar un prefijo de clave para curarnos en salud:

.. code-block:: java

  org.gvsig.MipluginCasero.error_conexion="Error conectando a la base de datos"

View source document


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: