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

Группа виджетов представляет из себя простой класс-обёртку для виджетов, не создаваемых в методе 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() {}
}

Last updated