public override ISelectable[] Apply(SelectionInfo info) { StartVariables(); var doubleClicked = GetDoubleClicked(info.NewSelection); UpdateLastClicked(info.NewSelection); if (doubleClicked != null) { _lastClicked = null; return(this._modifier.Apply(info.OldSelection, info.ActualSelection, doubleClicked)); } return(info.ActualSelection); }
public virtual ISelectable[] ApplyAll(ISelectable[] oldSelection, ISelectable[] newSelection, SelectionType type) { ISelectable[] actualSelection = newSelection; foreach (var mod in modifiers.GetModifiers()) { if (mod.RestrictedTypes == null || mod.RestrictedTypes.Length == 0 || mod.RestrictedTypes.Contains(type)) { SelectionInfo info = new SelectionInfo { OldSelection = oldSelection, NewSelection = newSelection, ActualSelection = actualSelection, SelectionType = type }; actualSelection = mod.Apply(info); } } return(actualSelection); }
public override ISelectable[] Apply(SelectionInfo info) { StartVariables(); return(this._modifier.Apply(Input.GetKey(_key), info.OldSelection, info.NewSelection, info.ActualSelection)); }
public override ISelectable[] Apply(SelectionInfo info) { StartVariables(); return(this._modifier.Apply(info.ActualSelection)); }