public void Child_conditions_can_be_removed() { var parent = new AnyCondition { ID = ConditionID.Parse(0) }; var childOne = new EnabledCondition { ID = ConditionID.Parse(1) }; var childTwo = new DisabledCondition { ID = ConditionID.Parse(2) }; _collection.Add(parent); _collection.Add(childOne, parent.ID); _collection.Add(childTwo, parent.ID); _collection.Remove(conditionID: childOne.ID); _collection .All .ShouldHaveSingleItem() .ShouldBeOfType <AnyCondition>(); parent.Children.ShouldBe(new[] { childTwo }); }
public ButtonStateTemplate(ButtonState[] states, Template template, EnabledCondition enabledCondition, FocusCondition focusCondition) : base(states, enabledCondition, focusCondition) { // Setup initial conditions. if (Script.IsUndefined(template)) template = null; // Store values. this.template = template; }
protected ButtonStateContent(ButtonState[] states, EnabledCondition enabledCondition, FocusCondition focusCondition) { if (Script.IsNullOrUndefined(enabledCondition)) enabledCondition = EnabledCondition.Either; if (Script.IsNullOrUndefined(focusCondition)) focusCondition = FocusCondition.Either; States = states; EnabledCondition = enabledCondition; FocusCondition = focusCondition; }
public void Multiple_conditions_can_be_added() { var conditionOne = new EnabledCondition(); var conditionTwo = new NotCondition(); _collection.Add(conditionOne); _collection.Add(conditionTwo); _collection.All.ShouldBe(new Condition[] { conditionOne, conditionTwo }); }
public void Conditions_can_be_removed() { var one = new EnabledCondition { ID = ConditionID.Parse(0) }; var two = new EnabledCondition { ID = ConditionID.Parse(1) }; var three = new EnabledCondition { ID = ConditionID.Parse(2) }; _collection.Add(one); _collection.Add(two); _collection.Add(three); _collection.Remove(two.ID); _collection.All.ShouldBe(new[] { one, three }); }
/// <summary>Creates a Template with the specified selector and adds it as content for the given state.</summary> /// <param name="layer">The layer the state is rendered on (0 lowest, higher values fall in front of lower values)</param> /// <param name="states">The states the template applies to.</param> /// <param name="templateSelector">The CSS selector where the template can be found.</param> /// <param name="enabledCondition">The enabled-related conditions for which button content applies.</param> /// <param name="focusCondition">The focus-related conditions for which button content applies.</param> public void TemplateForStates(int layer, ButtonState[] states, string templateSelector, EnabledCondition enabledCondition, FocusCondition focusCondition) { contentController.AddTemplate(layer, new ButtonStateTemplate(states, new Template(templateSelector), enabledCondition, focusCondition)); }
/// <summary>Creates a Template with the specified selector and adds it as content for the given state.</summary> /// <param name="layer">The layer the state is rendered on (0 lowest, higher values fall in front of lower values)</param> /// <param name="state">The state the template applies to.</param> /// <param name="templateSelector">The CSS selector where the template can be found.</param> /// <param name="enabledCondition">The enabled-related conditions for which button content applies.</param> /// <param name="focusCondition">The focus-related conditions for which button content applies.</param> public void TemplateForState(int layer, ButtonState state, string templateSelector, EnabledCondition enabledCondition, FocusCondition focusCondition) { TemplateForStates(layer, new ButtonState[] { state }, templateSelector, enabledCondition, focusCondition); }
/// <summary>Sets the CSS class(es) to use for a given layer.</summary> /// <param name="layer">The layer the state is rendered on (0 lowest, higher values fall in front of lower values)</param> /// <param name="states">The state(s) the CSS classes apply to.</param> /// <param name="cssClasses">A string containing one or more CSS class names.</param> /// <param name="enabledCondition">The enabled-related conditions for which button content applies.</param> /// <param name="focusCondition">The focus-related conditions for which button content applies.</param> public void CssForStates(int layer, ButtonState[] states, string cssClasses, EnabledCondition enabledCondition, FocusCondition focusCondition) { contentController.AddCss(layer, new ButtonStateCss(states, cssClasses, enabledCondition, focusCondition)); }
/// <summary>Sets the CSS class(es) to use for a given layer.</summary> /// <param name="layer">The layer the state is rendered on (0 lowest, higher values fall in front of lower values)</param> /// <param name="state">The state the CSS classes apply to.</param> /// <param name="cssClasses">A string containing one or more CSS class names.</param> /// <param name="enabledCondition">The enabled-related conditions for which button content applies.</param> /// <param name="focusCondition">The focus-related conditions for which button content applies.</param> public void CssForState(int layer, ButtonState state, string cssClasses, EnabledCondition enabledCondition, FocusCondition focusCondition) { CssForStates(layer, new ButtonState[] { state }, cssClasses, enabledCondition, focusCondition); }
public ButtonStateCss(ButtonState[] states, string cssClasses, EnabledCondition enabledCondition, FocusCondition focusCondition) : base(states, enabledCondition, focusCondition) { this.cssClasses = cssClasses; }