/// <summary>
/// Get the localised string archive.
/// </summary>
/// <param name="archive"></param>
/// <param name="language"></param>
/// <returns></returns>
public StringArchive GetLocalisedStringArchive(Engine.ItemArchiveId archive, Language language = Language.English)
{
if (archive == Engine.ItemArchiveId.None)
{
return(null);
}
Dictionary <Language, StringArchive> dictionary;
Archive root = RootArchive;
if (root == null)
{
return(null);
}
dictionary = StringArchives.GetValueOrCreate(archive);
StringArchive stringArchive = dictionary.TryGetValue(language);
if (stringArchive == null)
{
dictionary[language] = stringArchive = Engine.GetStringArchive(root, archive, language);
}
return(stringArchive);
}