/*
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 { EventArgs, Base, markType } from "igniteui-react-core/ES2015/type";
import { Rect } from "igniteui-react-core/ES2015/Rect";
export class ZoomSliderWidget extends Base {
    constructor() {
        super();
        this.k = null;
        this.i = null;
        this.s = null;
        this.windowRectChanged = null;
        this.b = false;
    }
    windowRectChangedHandler(a, b) {
        this.t = new Rect(0, (b.newRect.left), (b.newRect.top), (b.newRect.width), (b.newRect.height));
    }
    static a(externalChart_, host_) {
        let component_ = externalChart_._createZoomSlider(host_.getNativeElement());
        let result_ = new ZoomSliderWidget();
        result_.i = host_;
        result_.k = component_;
        component_.i.windowRectChanged = (sender, args) => { result_.windowRectChangedHandler(sender, args); };
        return result_;
    }
    get t() {
        return this.s;
    }
    set t(a) {
        let b = this.t;
        if (Rect.l_op_Inequality(a, b)) {
            this.s = a;
            this.p("windowRect", {
                left: a.left,
                top: a.top,
                width: a.width,
                height: a.height
            });
            if (this.windowRectChanged != null) {
                this.windowRectChanged(this, EventArgs.empty);
            }
        }
    }
    get e() {
        return this.j("startInset");
    }
    set e(a) {
        this.p("startInset", a);
    }
    get d() {
        return this.j("endInset");
    }
    set d(a) {
        this.p("endInset", a);
    }
    get g() {
        return this.j("trackStartInset");
    }
    set g(a) {
        this.p("trackStartInset", a);
    }
    get f() {
        return this.j("trackEndInset");
    }
    set f(a) {
        this.p("trackEndInset", a);
    }
    get c() {
        return this.j("barExtent");
    }
    set c(a) {
        this.p("barExtent", a);
    }
    j(a) {
        return this.k[a];
    }
    p(a, b) {
        this.k[a] = b;
    }
    hide() {
        this.i.hide();
    }
    show() {
        this.i.show();
    }
    o() {
        this.k.i.notifySizeChanged();
    }
    m() {
        if (!this.b) {
            this.b = true;
            this.k.updateStyle();
        }
    }
}
ZoomSliderWidget.$t = markType(ZoomSliderWidget, 'ZoomSliderWidget');
