C# Class LanguageManager, SmartLocalization

Inheritance: MonoBehaviour
Show file Open project: NiklasBorglund/SmartLocalization Class Usage Examples

Public Properties

Property Type Description
defaultLanguage string
language string

Public Methods

Method Description
Awake ( ) : void
ChangeLanguage ( string language ) : void

Changes the language and tries to load it.

Clear ( ) : void

Clear this instance and Destroys it

GetAudioClip ( string key ) : AudioClip

Gets the audio clip for the current language, returns null if nothing is found

GetCultureInfo ( string languageName ) : CultureInfo,

Gets the culture info of the specified string languageName = strings like "en", "es", "sv"

GetLocalizedObjectDataBase ( ) : LocalizedObject>.Dictionary

Gets the localized, clean and parsed object data base.

GetPrefab ( string key ) : GameObject

Gets the prefab game object for the current language, returns null if nothing is found

GetSystemLanguage ( ) : string

Gets the system language for this application using Application.systemLanguage If its SystemLanguage.Unknown, a string with the value "Unknown" will be returned

GetTextDataBase ( ) : string>.Dictionary

Returns the entire RAW language database from the loaded language in a Dictionary it contains type keys and everything

GetTextValue ( string key ) : string

Returns a text value in the current language for the key. Returns null if nothing is found.

GetTexture ( string key ) : Texture

Gets the texture for the current language, returns null if nothing is found

IsLanguageSupported ( CultureInfo, cultureInfo ) : bool

Checks if the language is supported by this application

IsLanguageSupported ( string languageName ) : bool

Checks if the language is supported by this application languageName = strings like "en", "es", "sv"

OnDestroy ( ) : void
SetDefaultLanguage ( CultureInfo, languageInfo ) : void

Sets the default language. This language will be loaded in Awake() if it exists By default this is set to = "en"

SetDefaultLanguage ( string languageName ) : void

Sets the default language. This language will be loaded in Awake() if it exists By default this is set to = "en"

addLanguageChangedListener ( ChangeLanguageEventHandler listener ) : void

Adds the language changed listener to ChangeLanguageEventHandler.

removeLanguageChangedListener ( ChangeLanguageEventHandler listener ) : void

Removes the language changed listener from ChangeLanguageEventHandler.

Private Methods

Method Description
GetAvailableLanguages ( ) : void

Gets all the available languages.

GetLocalizedObject ( string key ) : LocalizedObject,

Gets the localized object from the localizedObjectDataBase

LoadResources ( ) : void

Loads the language file, language is specified with the language variable

ReadData ( XmlReader reader ) : void

Reads a specific data tag from the xml document.

ReadElements ( XmlReader reader ) : void

Reads the elements from the loaded xmldocument in LoadResources

Method Details

Awake() public method

public Awake ( ) : void
return void

ChangeLanguage() public method

Changes the language and tries to load it.
public ChangeLanguage ( string language ) : void
language string /// Language. ///
return void

Clear() public method

Clear this instance and Destroys it
public Clear ( ) : void
return void

GetAudioClip() public method

Gets the audio clip for the current language, returns null if nothing is found
public GetAudioClip ( string key ) : AudioClip
key string /// Key. ///
return UnityEngine.AudioClip

GetCultureInfo() public method

Gets the culture info of the specified string languageName = strings like "en", "es", "sv"
public GetCultureInfo ( string languageName ) : CultureInfo,
languageName string
return CultureInfo,

GetLocalizedObjectDataBase() public method

Gets the localized, clean and parsed object data base.
public GetLocalizedObjectDataBase ( ) : LocalizedObject>.Dictionary
return LocalizedObject>.Dictionary

GetPrefab() public method

Gets the prefab game object for the current language, returns null if nothing is found
public GetPrefab ( string key ) : GameObject
key string /// Key. ///
return GameObject

GetSystemLanguage() public method

Gets the system language for this application using Application.systemLanguage If its SystemLanguage.Unknown, a string with the value "Unknown" will be returned
public GetSystemLanguage ( ) : string
return string

GetTextDataBase() public method

Returns the entire RAW language database from the loaded language in a Dictionary it contains type keys and everything
public GetTextDataBase ( ) : string>.Dictionary
return string>.Dictionary

GetTextValue() public method

Returns a text value in the current language for the key. Returns null if nothing is found.
public GetTextValue ( string key ) : string
key string /// The Language Key. ///
return string

GetTexture() public method

Gets the texture for the current language, returns null if nothing is found
public GetTexture ( string key ) : Texture
key string /// Key. ///
return Texture

IsLanguageSupported() public method

Checks if the language is supported by this application
public IsLanguageSupported ( CultureInfo, cultureInfo ) : bool
cultureInfo CultureInfo,
return bool

IsLanguageSupported() public method

Checks if the language is supported by this application languageName = strings like "en", "es", "sv"
public IsLanguageSupported ( string languageName ) : bool
languageName string
return bool

OnDestroy() public method

public OnDestroy ( ) : void
return void

SetDefaultLanguage() public method

Sets the default language. This language will be loaded in Awake() if it exists By default this is set to = "en"
public SetDefaultLanguage ( CultureInfo, languageInfo ) : void
languageInfo CultureInfo,
return void

SetDefaultLanguage() public method

Sets the default language. This language will be loaded in Awake() if it exists By default this is set to = "en"
public SetDefaultLanguage ( string languageName ) : void
languageName string /// Language name. ///
return void

addLanguageChangedListener() public method

Adds the language changed listener to ChangeLanguageEventHandler.
public addLanguageChangedListener ( ChangeLanguageEventHandler listener ) : void
listener ChangeLanguageEventHandler Language changed listener.
return void

removeLanguageChangedListener() public method

Removes the language changed listener from ChangeLanguageEventHandler.
public removeLanguageChangedListener ( ChangeLanguageEventHandler listener ) : void
listener ChangeLanguageEventHandler Language changed listener.
return void

Property Details

defaultLanguage public property

The default language.
public string defaultLanguage
return string

language public property

The language that the system will try and load if LoadResources is called.
public string language
return string