2025-04-12 19:13:33 +00:00
|
|
|
namespace AIStudio.Tools.PluginSystem;
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Represents a contract to access text from a language plugin.
|
|
|
|
/// </summary>
|
|
|
|
public interface ILang
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// Tries to get a text from the language plugin.
|
|
|
|
/// </summary>
|
|
|
|
/// <remarks>
|
|
|
|
/// The given fallback text is used to determine the key for
|
|
|
|
/// the language plugin. Base for the key is the namespace of
|
|
|
|
/// the using component and the fallback text in English (US).
|
|
|
|
/// The given text getting hashed. When the key does not exist,
|
|
|
|
/// the fallback text will be returned.
|
|
|
|
/// </remarks>
|
|
|
|
/// <param name="fallbackEN">The fallback text in English (US).</param>
|
|
|
|
/// <returns>The text from the language plugin or the fallback text.</returns>
|
|
|
|
public string T(string fallbackEN);
|
2025-04-27 14:13:15 +00:00
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Tries to get a text from the language plugin.
|
|
|
|
/// </summary>
|
|
|
|
/// <remarks>
|
|
|
|
/// The given fallback text is used to determine the key for
|
|
|
|
/// the language plugin. Base for the key is the namespace of
|
|
|
|
/// the using component and the fallback text in English (US).
|
|
|
|
/// The given text is hashed. When the key does not exist,
|
|
|
|
/// the fallback text will be returned.<br/>
|
|
|
|
/// <br/>
|
|
|
|
/// You might predefine the namespace and type. This is needed
|
|
|
|
/// when your abstract base class component wants to localize
|
|
|
|
/// text as well.
|
|
|
|
/// </remarks>
|
|
|
|
/// <param name="fallbackEN">The fallback text in English (US).</param>
|
|
|
|
/// <param name="typeNamespace">The namespace of the type requesting the text, used as part of the key.</param>
|
|
|
|
/// <param name="typeName">The name of the type requesting the text, used as part of the key.</param>
|
|
|
|
/// <returns>The text from the language plugin or the fallback text.</returns>
|
|
|
|
public string T(string fallbackEN, string? typeNamespace, string? typeName);
|
2025-04-12 19:13:33 +00:00
|
|
|
}
|