AnP

I18NManager.sentences
I18NManager.sentences
Object<String, String|Array<String>|null>objectprivateI18NManager.sentences{}
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta constante es la encargada de almacenar todos los idiomas y sus respectivos textos a partir de dos diccionarios anidados de tal forma que el primer nivel determina la clave del idioma y el segundo almacena las claves con cada uno de los textos en dicho idioma.

  • typejson
  • characters582
  • lines20
{
    "english" : {
        "text_a" : "This is the text A.", 
        "text_b" : "This is the text B.", 
        "text_c" : "This is the text C.", 
        "text_n" : "This is the text N."
    }, 
    "espanol" : {
        "text_a" : "Este es el texto A.", 
        "text_b" : "Este es el texto B.", 
        "text_c" : "Este es el texto C.", 
        "text_n" : "Este es el texto N."
    }, 
    "galego" : {
        "text_a" : "Iste é o texto A.", 
        "text_b" : "Iste é o texto B.", 
        "text_c" : "Iste é o texto C.", 
        "text_n" : "Iste é o texto N."
    }
}

Con esta estructura podemos hacer uso de esta constante a partir de la clave que determine el idioma y la clave que determine el texto.

A la hora de crear un JSON con textos para su carga sobre la aplicación AnP, éstos pueden dividir los textos en bloques a partir de claves que empiecen por el nombre de la aplicación o cualquier otra clave la cual los desarrolladores hagan uso, seguido de un guión bajo; y acabar con un guión bajo acompañado de un start si éste se iniciar o bien de un end si éste se cierra o se termina.

  • typejson
  • characters932
  • lines27

{
    "espanol" : {

        "AnP_grupo_a_start" : null, 
        "text_a_1" : "Este es el texto 1 del grupo A.", 
        "text_a_2" : "Este es el texto 2 del grupo A.", 
        "text_a_3" : "Este es el texto 3 del grupo A.", 
        "text_a_n" : "Este es el texto N del grupo A.", 
        "AnP_grupo_a_end" : null, 

        "AnP_grupo_b_start" : null, 
        "text_b_1" : "Este es el texto 1 del grupo B.", 
        "text_b_2" : "Este es el texto 2 del grupo B.", 
        "text_b_3" : "Este es el texto 3 del grupo B.", 
        "text_b_n" : "Este es el texto N del grupo B.", 
        "AnP_grupo_b_end" : null, 

        "AnP_grupo_c_start" : null, 
        "text_c_1" : "Este es el texto 1 del grupo C.", 
        "text_c_2" : "Este es el texto 2 del grupo C.", 
        "text_c_3" : "Este es el texto 3 del grupo C.", 
        "text_c_n" : "Este es el texto N del grupo C.", 
        "AnP_grupo_c_end" : null

    }
}

de esta forma, a la hora de agregar los nuevos textos, los bloques son ignorados para renderizar el diccionario que los almacena. Esta práctica sólo es para permitir una mejor visualización de los textos.

Los textos pueden ser Array de Strings por el hecho de que éstos pueden estar fragmentados en Arrays dentro de un JSON por facilidad de visualización cara el o los desarrolladores. También pueden ser valores nulos cuando éstos no quieren ser especificados o bien, para hacer uso de claves de bloque.
I18NManager.data
I18NManager.data
Object<String, Object<String, String|Array<String>>>objectprivateI18NManager.data{}
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta constante contiene la información necesaria para poder trabajar los idiomas interactuables desde el propio GUI pues estos parámetros no pueden ser aplicados en sentences puesto que si cambia el idioma, éstos cambiarían en el propio GUI por dicha referencia, por lo que se establece esta nueva constante para dicho fin. Su estructura son dos dicciomarios anidados donde el primer nivel establece el idioma y el segundo los datos pertinentes del mismo.

  • typejson
  • characters1474
  • lines52
{
    "english" : {
        "flag" : [
            "{anp_root}/images/flags/english.svg", 
            "https://cdn.k3y.pw/data/images/flags/english.svg"
        ],
        "language" : "English",
        "country" : "Unated Kingdom",
        "language_code" : "en",
        "country_code" : "UK"
    }, 
    "espanol" : {
        "flag" : [
            "{anp_root}/images/flags/espanol.svg", 
            "https://cdn.k3y.pw/data/images/flags/espanol.svg"
        ],
        "language" : "Español",
        "country" : "España",
        "language_code" : "es",
        "country_code" : "ES"
    }, 
    "galego" : {
        "flag" : [
            "{anp_root}/images/flags/galego.svg", 
            "https://cdn.k3y.pw/data/images/flags/galego.svg"
        ],
        "language" : "Galego",
        "country" : "España",
        "language_code" : "gl",
        "country_code" : "ES"
    }, 
    "nihongo" : {
        "flag" : [
            "{anp_root}/images/flags/nihongo.svg", 
            "https://cdn.k3y.pw/data/images/flags/nihongo.svg"
        ],
        "language" : "日本語",
        "country" : "日本",
        "language_code" : "jp",
        "country_code" : "JP"
    }, 
    "russkiy" : {
        "flag" : [
            "{anp_root}/images/flags/russkiy.svg", 
            "https://cdn.k3y.pw/data/images/flags/russkiy.svg"
        ],
        "language" : "Pусский",
        "country" : "Россия",
        "language_code" : "ru",
        "country_code" : "RU"
    }
}

Los campos que implementan cada idioma son los siguientes:

I18NManager.selected
I18NManager.selected
String|nullobjectpublicI18NManager.selectednull
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta variable determina la clave del idioma que está seleccionada actualmente en la aplicación AnP, ya sea seleccionada por el usuario o que ésta venga configurada por defecto.

En caso de ser un valor nulo nos indica que éste no está configurado ni seleccionado lo que cuando se va a coger un texto, éste irá con otros parámetros para determinar el idioma o bien, dependerá del orden en el que se constituyan los idiomas dentro del diccionario sentences.
I18NManager.default_language
I18NManager.default_language
String|nullobjectpublicI18NManager.default_languagenull
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta variable determina la clave del idioma por defecto configurada por el desarrollador.

En caso de ser un valor nulo nos indica que éste no está configurado ni seleccionado lo que cuando se va a coger un texto, éste irá con otros parámetros para determinar el idioma o bien, dependerá del orden en el que se constituyan los idiomas dentro del diccionario sentences.
I18NManager.default_overwrite
I18NManager.default_overwrite
BooleanobjectpublicI18NManager.default_overwritefalse
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta variable determina si cuando se añade una nueva clave de texto a un idioma determinado y éste ya existe, si éste es sobreescrito (true) o no (false)

I18NManager.default_overwrite_data
I18NManager.default_overwrite_data
BooleanobjectpublicI18NManager.default_overwrite_datafalse
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta variable determina si cuando se añade una nueva clave de información de idioma orientado al GUI determinado y éste ya existe, si éste es sobreescrito (true) o no (false)

I18NManager.default_text
I18NManager.default_text
String|Array<String>|nullobjectpublicI18NManager.default_text""
NameRequiredNullableTypedDefault Value
NameRequiredNullableTypedDefault Value

Esta variable determina el texto por defecto para los casos donde se quiera recoger un texto concreto y éste no se encuentre y no se le halla determinado un texto de respuesta por defecto.