• Модуль: ui
  • Путь к файлу: ~/bitrix/modules/ui/lib/buttons/split/subbutton.php
  • Класс: BitrixUIButtonsSplitSubButton
  • Вызов: SubButton::toggleState
public function toggleState($flag, $globalState, $mainState, $menuState)
{
	$state = $this->getSplitButton()->getState();
	if ($flag === false)
	{
		if ($state === $globalState)
		{
			$this->getSplitButton()->setState($this->isMainButton()? $menuState : $mainState);
		}
		else
		{
			$this->getSplitButton()->setState(null);
		}
	}
	else
	{
		if ($state === $mainState && $this->isMenuButton())
		{
			$this->getSplitButton()->setState($globalState);
		}
		else if ($state === $menuState && $this->isMainButton())
		{
			$this->getSplitButton()->setState($globalState);
		}
		else if ($state !== $globalState)
		{
			$this->getSplitButton()->setState($this->isMainButton()? $mainState : $menuState);
		}
	}

	return $this;
}