/// <inheritdoc /> protected override void BuildElementUI() { base.BuildElementUI(); var header = new VisualElement { name = "row-header" }; header.AddToClassList(headerUssClassName); m_CollapseButton = new CollapseButton(); m_CollapseButton.AddToClassList(collapseButtonUssClassName); header.Add(m_CollapseButton); m_HeaderContainer = new VisualElement { name = "row-header-container" }; m_HeaderContainer.AddToClassList(headerContainerUssClassName); header.Add(m_HeaderContainer); Add(header); m_PropertyViewContainer = new VisualElement { name = "property-view-container" }; m_PropertyViewContainer.AddToClassList(propertyViewUssClassName); Add(m_PropertyViewContainer); m_CollapseButton.RegisterCallback <ChangeEvent <bool> >(OnCollapseButtonChange); }
public void ChangeValueTriggersChangeCallback() { var collapseButton = new CollapseButton(); bool called = false; collapseButton.RegisterCallback <ChangeEvent <bool> >(e => called = true); m_Window.rootVisualElement.Add(collapseButton); Assert.IsFalse(collapseButton.value); collapseButton.value = true; Assert.IsTrue(called, "CollapsedButton did not called our callback."); }
public void SetValueWithoutNotifyDoesNotTriggerChangeCallback() { var collapseButton = new CollapseButton(); bool called = false; collapseButton.RegisterCallback <ChangeEvent <bool> >(e => called = true); m_Window.rootVisualElement.Add(collapseButton); Assert.IsFalse(collapseButton.value); collapseButton.SetValueWithoutNotify(true); Assert.IsTrue(collapseButton.value, "CollapsedButton value did not change."); Assert.IsFalse(called, "CollapsedButton called our callback."); }