Toggle menu
862
3.8K
30.2K
279.1K
Catglobe Wiki
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

LocalizedString class

From Catglobe Wiki

LocalizedString



Represents translation of a string.

Parent class

Inherits from object

Constructors

  • () - Create a new translatable text
  • (Dictionary dictionary "Dictionary with existing values", string defaultIsocode "If given use this isocodes value in the dictionary as the default") - Create a new translatable text based on existing dictionary

Methods

  • string GetSpecificTranslation(string isocode "Isocode for language. Use empty for default text") - Get the translation for given isocode or null
  • string GetTranslation(string isocode "Isocode for language. Use empty for default text") - Get the best matching translation for given isocode
  • string GetTranslationForLoggedInUser() - Get the best matching translation for the current user
  • bool RemoveTranslation(string isocode "Isocode for language. Use empty for default text") - Remove a specific translation
  • Empty SetTranslation(string isocode "Isocode for language. Use empty for default text", string s "New translation") - Set a specific translation
  • Empty SetTranslation(Dictionary dictionary "Dictionary of iso code and translation") - Set all translations. Removes the rest.
  • Dictionary ToDictionary() - Convert localized object to a dictionary with key is iso code
  • (From object) string ToString() - The string representation of the object.

Properties

  • string ObjectTypeName { get; } - The name of the type of object.
  • (From object) TypeInformation TypeInformation { get; } - Get information about this class.


Examples

Create a new translatable text

LocalizedString localizedString = new LocalizedString ();
//SetTranslation
localizedString.SetTranslation("en-GB", "En text");
localizedString.SetTranslation("da-DK", "Da text");
//GetTranslation
print(localizedString.GetSpecificTranslation("en-GB"));//En text
print(localizedString.GetSpecificTranslation("da-DK"));//Da text
print(localizedString.GetSpecificTranslation("en-US"));//Empty
print(localizedString.GetTranslation("en-US"));//En text
print(localizedString.GetTranslationForLoggedInUser());//"Da text" if languge of login user is Danish
//RemoveTranslation
localizedString.RemoveTranslation("en-GB");
print(localizedString.GetSpecificTranslation("en-GB"));//Empty

Create a new translatable text based on existing dictionary

Dictionary translation = {
	"en-GB":"En text",
	"da-DK":"Da text"	
};
LocalizedString localizedString = new LocalizedString (translation, "da-DK");
//GetTranslation
print(localizedString.GetSpecificTranslation(""));//Da text
//SetTranslation
localizedString.SetTranslation("","Danish text");
print(localizedString.GetSpecificTranslation(""));//Danish text

Set Title and Description for Axis

DCS_use(15636575);
Axis axis = AxisSet_getAxis("Gender");
//set Titles
axis.LocalizedTitles.SetTranslation("en-GB", "Title En text");
axis.LocalizedTitles.SetTranslation("da-DK", "title Da text");
//set Texts
axis.LocalizedTexts.SetTranslation("en-GB", "Description En text");
axis.LocalizedTexts.SetTranslation("da-DK", "Description Da text");
AxisSet_save();
print(Catglobe.Json.Encode(axis));//{"id":"Gender","title":{"en-GB":"Title En text","da-DK":"title Da text"},"desc":{"":"123","en-GB":"Description En text","da-DK":"Description Da text"},"mathbase":"Gender","mathbasemod":"","pctbase":"Gender != empty","color":"#00000000","options":[{"title":{"":"Male"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]},{"title":{"":"Female"},"expression":"","pctbase":"","color":"#00000000","tags":[],"accessGroups":[]}],"tags":[],"accessGroups":[]}

Set Question text

QuestionnaireTemplate qt = new QuestionnaireTemplate (new Questionnaire(17148177).TemplateId);
qt.GetQuestion("Q1").Text = new LocalizedString ({"": "Q1 text UK", "da-DK": "Q1 text DK"}, "en-GB");
qt.Save(true);
print(qt.GetQuestion("Q1").Text.ToDictionary());