/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { ErrorBarSettingsBase } from "./ErrorBarSettingsBase";
import { EnableErrorBars_$type } from "./EnableErrorBars";
import { DependencyProperty } from "igniteui-react-core";
import { ErrorBarCalculatorReference_$type } from "igniteui-react-core";
import { IErrorBarCalculator_$type } from "igniteui-react-core";
import { Brush } from "igniteui-react-core";
import { Style } from "igniteui-react-core";
import { runOn, delegateCombine, enumGetBox, typeCast, delegateRemove, markType, markDep } from "igniteui-react-core";
import { PropertyMetadata } from "igniteui-react-core";
/**
 * @hidden
 */
export let ScatterErrorBarSettings = /*@__PURE__*/ (() => {
    class ScatterErrorBarSettings extends ErrorBarSettingsBase {
        constructor() {
            super();
            this.q = null;
            this.propertyUpdated = delegateCombine(this.propertyUpdated, runOn(this, this.ap));
        }
        get r() {
            return this.q;
        }
        set r(a) {
            this.q = a;
        }
        ap(a, b) {
            switch (b.propertyName) {
                case ScatterErrorBarSettings.$$p[2]:
                case ScatterErrorBarSettings.$$p[8]:
                    let c = typeCast(IErrorBarCalculator_$type, b.oldValue);
                    if (c != null) {
                        c.changed = delegateRemove(c.changed, runOn(this, this.ao));
                    }
                    if (this.r != null) {
                        this.r.rm(false);
                        if (this.r.c9 != null) {
                            this.r.qg();
                        }
                    }
                    let d = typeCast(IErrorBarCalculator_$type, b.newValue);
                    if (d != null) {
                        d.changed = delegateCombine(d.changed, runOn(this, this.ao));
                    }
                    break;
                case ScatterErrorBarSettings.$$p[0]:
                case ScatterErrorBarSettings.$$p[1]:
                case ScatterErrorBarSettings.$$p[3]:
                case ScatterErrorBarSettings.$$p[4]:
                case ScatterErrorBarSettings.$$p[5]:
                case ScatterErrorBarSettings.$$p[6]:
                case ScatterErrorBarSettings.$$p[7]:
                case ScatterErrorBarSettings.$$p[9]:
                case ScatterErrorBarSettings.$$p[10]:
                case ScatterErrorBarSettings.$$p[11]:
                case ScatterErrorBarSettings.$$p[12]:
                case ScatterErrorBarSettings.$$p[13]:
                    if (this.r != null) {
                        this.r.rm(false);
                        if (this.r.c9 != null) {
                            this.r.qg();
                        }
                    }
                    break;
            }
        }
        ao(a, b) {
            let c = typeCast(IErrorBarCalculator_$type, a);
            if (c != null) {
                c.changed = delegateRemove(c.changed, runOn(this, this.ao));
                if (this.r != null) {
                    this.r.rm(false);
                }
                c.changed = delegateCombine(c.changed, runOn(this, this.ao));
            }
        }
    }
    ScatterErrorBarSettings.$t = /*@__PURE__*/ markType(ScatterErrorBarSettings, 'ScatterErrorBarSettings', ErrorBarSettingsBase.$);
    ScatterErrorBarSettings.$$p = /*@__PURE__*/ markDep(DependencyProperty, PropertyMetadata, ScatterErrorBarSettings, 'l', ['EnableErrorBarsHorizontal:o:aq', [EnableErrorBars_$type, /*@__PURE__*/ enumGetBox(EnableErrorBars_$type, 0)], 'EnableErrorBarsVertical:p:ar', [EnableErrorBars_$type, /*@__PURE__*/ enumGetBox(EnableErrorBars_$type, 0)], 'HorizontalCalculator:u:as', [IErrorBarCalculator_$type, null], 'HorizontalCalculatorReference:s:at', [ErrorBarCalculatorReference_$type, /*@__PURE__*/ enumGetBox(ErrorBarCalculatorReference_$type, 0)], 'HorizontalErrorBarCapLength:y:au', [1, 6], 'HorizontalErrorBarStyle:a6:av', [Style.$, null], 'HorizontalStroke:a4:aw', [Brush.$, null], 'HorizontalStrokeThickness:w:ax', [1, 1], 'VerticalCalculator:v:ay', [IErrorBarCalculator_$type, null], 'VerticalCalculatorReference:t:az', [ErrorBarCalculatorReference_$type, /*@__PURE__*/ enumGetBox(ErrorBarCalculatorReference_$type, 1)], 'VerticalErrorBarCapLength:z:a0', [1, 6], 'VerticalErrorBarStyle:a7:a1', [Style.$, null], 'VerticalStroke:a5:a2', [Brush.$, null], 'VerticalStrokeThickness:x:a3', [1, 1]]);
    return ScatterErrorBarSettings;
})();
