Beispiel #1
0
    private HierarchicalEnableState SetState(HierarchicalStates feature, HierarchicalEnableState enableState)
    {
        if (GetState(feature) != enableState) //if this is actually different from the current state, act on it
        {
            LocalOverride.RemoteComponent.SetState(feature, enableState);
            FeatureOverrideChange?.Invoke(feature);
        }

        return(enableState);
    }
Beispiel #2
0
    private HierarchicalEnableState ToggleState(HierarchicalStates feature)
    {
        HierarchicalEnableState setToState = HierarchicalEnableState.InheritFromParent;

        switch (LocalOverride.RemoteComponent.GetState(feature))
        {
        case HierarchicalEnableState.ForceOff:
        case HierarchicalEnableState.InheritFromParent:
            setToState = HierarchicalEnableState.ForceOn;
            break;

        case HierarchicalEnableState.ForceOn:
            setToState = HierarchicalEnableState.InheritFromParent;
            break;
        }

        return(SetState(feature, setToState));
    }
 public abstract HierarchicalEnableState GetState(Entity entity, HierarchicalStates feature);
Beispiel #4
0
 public override HierarchicalEnableState GetState(HierarchicalStates feature) => LocalOverride.RemoteComponent.GetState(feature);
Beispiel #5
0
 public abstract HierarchicalEnableState GetState(HierarchicalStates feature);
Beispiel #6
0
    public override HierarchicalEnableState GetState(Entity entity, HierarchicalStates feature)
    {
        var overrideComponent = EnsureOverrideComponent(entity);

        return(overrideComponent.GetState(feature));
    }