public bool IsKeyboardActive <TEnum> (KeyboardLanguage lang, TEnum type) where TEnum : struct, IComparable, IFormattable, IConvertible { if (!typeof(TEnum).IsEnum) { throw new ArgumentException("TEnum must be an enumerated type"); } AbstractKeyboard <TEnum> _akb = (AbstractKeyboard <TEnum>)KeyboardsTable [lang]; return(_akb.IsKeyboardActive(type)); }
public List <CKeyboard <TEnum> > GetLocaleKeyboards <TEnum>(KeyboardLanguage lang) where TEnum : struct, IComparable, IFormattable, IConvertible { if (!typeof(TEnum).IsEnum) { throw new ArgumentException("TEnum must be an enumerated type"); } AbstractKeyboard <TEnum> _akb = (AbstractKeyboard <TEnum>)KeyboardsTable [lang]; return(_akb.GetKeyboardList()); }
public void RegisterKeyboard <TEnum>(KeyboardLanguage lang, TEnum type, GameObject keyboard) where TEnum : struct, IComparable, IFormattable, IConvertible { if (!typeof(TEnum).IsEnum) { throw new ArgumentException("TEnum must be an enumerated type"); } #if UNITY_EDITOR Debug.Log(LOG_TAG + ", RegisterKeyboard() " + lang + ", " + type + ", " + keyboard.name); #endif AbstractKeyboard <TEnum> _akb = (AbstractKeyboard <TEnum>)KeyboardsTable [lang]; _akb.RegisterKeyboard(type, keyboard); }
public void ActivateKeyboard <TEnum> (KeyboardLanguage lang, TEnum type, bool active) where TEnum : struct, IComparable, IFormattable, IConvertible { if (!typeof(TEnum).IsEnum) { throw new ArgumentException("TEnum must be an enumerated type"); } #if UNITY_EDITOR Debug.Log(LOG_TAG + ", ActivateKeyboard() " + (active ? "enable " : "disable ") + type); #endif AbstractKeyboard <TEnum> _akb = (AbstractKeyboard <TEnum>)KeyboardsTable [lang]; if (_akb != null) { _akb.ActivateKeyboard(type, active); } }