// Copyright Keysight Technologies 2012-2019 // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, you can obtain one at http://mozilla.org/MPL/2.0/. using System; namespace OpenTap { /// /// Identifies the TestSteps that can be selected for a TestStep property. /// [AttributeUsage(AttributeTargets.Property)] public class StepSelectorAttribute : Attribute { /// For selecting which steps are available in selection. It's seen relative to the step having the property that is marked with the . public enum FilterTypes { /// All steps in the entire test plan. All, /// Show only children of this step. Children, /// Show only siblings of this step. Sibling, /// All steps in the entire test plan, except for the step itself. AllExcludingSelf } /// Selects the available items for selection on the TestStep property. /// The filter. public FilterTypes Filter { get; private set; } /// Default constructor for StepSelectorAttribute. public StepSelectorAttribute() { Filter = FilterTypes.All; } /// Constructor for StepSelectorAttribute. /// The filter. public StepSelectorAttribute(FilterTypes filter) { Filter = filter; } } }