⚙️
Workshop Guide
  • Workshop
    • 💳Использование Workshop
    • ⬇️Установка модификации
  • Моды
    • 🌎Редактирование файлов локализации
    • 🎨Форматы цветов
    • ⁉️Проблемы с модификациями
    • 🔧MagicByteSharedLibrary
    • 🗑️DayZShop
    • 😎DayZSetManager 1.0.0-1.1.3
    • 😎DayZSetManager 2.0.0 +
    • 🥳NotPicksarAnims
    • 👬DayZPartyManager
    • 💵Magic Bank
    • 🎁MagicBattlePass
    • 🖌️MagicSkins
  • Документация MagicByteSharedLibrary
    • 🖥️UI
      • Система уведомлений
      • Система локализации
      • Группа виджетов
    • Модели вызова функций
      • Лямбда-функции
      • Асинхронное выполнение задач
      • Callback для нескольких результатов
    • 💽Файловая система
    • Коллекции
Powered by GitBook
On this page
  1. Документация MagicByteSharedLibrary
  2. UI

Группа виджетов

Группа виджетов представляет из себя простой класс-обёртку для виджетов, не создаваемых в методе Init класса UIScriptedMenu. Для использования класса необходимо переопределить следующие методы в наследуемом классе:

protected Widget Init();
void RefreshText();
  • Init - создаёт виджеты и возвращает корневой элемент. На каждом экземпляре вызывается строго один раз.

  • RefreshText - обновить текст. Вызывается системой, когда необходимо гарантировать актуальность текста (например, при смене языка игре, для обновления локализации на отображаемых виджетах).

Исходный код класса приведён ниже:

class MBSL_WidgetGroup : Managed
{
	protected Widget _Root;
	
	void MBSL_WidgetGroup()
	{
		MBSL_EventSystem.Subscribe(this, MBSL_DefaultClientEvents.ResetGUI);
	}
	
	private void ResetGUI()
	{
		if (_Root != null)
			RefreshText();
	}
	
	Widget GetRoot() 
	{
		if (_Root == null)
		{
			_Root = Init();
			RefreshText();
		}
			
		return _Root;
	}
	
	protected Widget Init() { return null; }
	
	void RefreshText() {}
}
PreviousСистема локализацииNextМодели вызова функций

Last updated 1 year ago

🖥️