/*
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 * as tslib_1 from "tslib";
import { Base, toNullable, Boolean_$type, Number_$type, fromEnum, markType } from "igniteui-angular-core";
import { ST_TextMargin } from "./ST_TextMargin";
import { ST_TextIndentLevelType } from "./ST_TextIndentLevelType";
import { ST_TextIndent } from "./ST_TextIndent";
import { ST_TextAlignType_$type } from "./ST_TextAlignType";
import { ST_Coordinate32 } from "./ST_Coordinate32";
import { ST_TextFontAlignType_$type } from "./ST_TextFontAlignType";
import { XmlNamespaceDefinitionBase } from "./XmlNamespaceDefinitionBase";
import { CultureInfo } from "igniteui-angular-core";
import { ST_OnOff } from "./ST_OnOff";
import { parseInt32_1 } from "igniteui-angular-core";
/**
 * @hidden
 */
var CT_TextParagraphProperties = /** @class */ (function (_super) {
    tslib_1.__extends(CT_TextParagraphProperties, _super);
    function CT_TextParagraphProperties() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.k = toNullable(ST_TextMargin.$, null);
        _this.l = toNullable(ST_TextMargin.$, null);
        _this.j = toNullable(ST_TextIndentLevelType.$, null);
        _this.h = toNullable(ST_TextIndent.$, null);
        _this.c = toNullable(ST_TextAlignType_$type, null);
        _this.d = toNullable(ST_Coordinate32.$, null);
        _this.m = toNullable(Boolean_$type, null);
        _this.e = toNullable(Boolean_$type, null);
        _this.f = toNullable(ST_TextFontAlignType_$type, null);
        _this.i = toNullable(Boolean_$type, null);
        _this.g = toNullable(Boolean_$type, null);
        _this.a = null;
        return _this;
    }
    CT_TextParagraphProperties.b = function (a) {
        var e_1, _a;
        var b = toNullable(ST_TextAlignType_$type, null);
        var c = toNullable(Number_$type, null);
        var d = toNullable(Boolean_$type, null);
        var e = toNullable(ST_TextFontAlignType_$type, null);
        var f = toNullable(Boolean_$type, null);
        var g = toNullable(Number_$type, null);
        var h = toNullable(Boolean_$type, null);
        var i = toNullable(Number_$type, null);
        var j = toNullable(Number_$type, null);
        var k = toNullable(Number_$type, null);
        var l = toNullable(Boolean_$type, null);
        try {
            for (var _b = tslib_1.__values(fromEnum(a.ab.u)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var m = _c.value;
                switch (m.a.e(a.d)) {
                    case "algn":
                        b = toNullable(ST_TextAlignType_$type, XmlNamespaceDefinitionBase.b(ST_TextAlignType_$type, m.d));
                        break;
                    case "defTabSz":
                        c = toNullable(Number_$type, parseInt32_1(m.d, CultureInfo.invariantCulture));
                        break;
                    case "eaLnBrk":
                        d = toNullable(Boolean_$type, ST_OnOff.e(m.d));
                        break;
                    case "fontAlgn":
                        e = toNullable(ST_TextFontAlignType_$type, XmlNamespaceDefinitionBase.b(ST_TextFontAlignType_$type, m.d));
                        break;
                    case "hangingPunct":
                        f = toNullable(Boolean_$type, ST_OnOff.e(m.d));
                        break;
                    case "indent":
                        g = toNullable(Number_$type, parseInt32_1(m.d, CultureInfo.invariantCulture));
                        break;
                    case "latinLnBrk":
                        h = toNullable(Boolean_$type, ST_OnOff.e(m.d));
                        break;
                    case "lvl":
                        i = toNullable(Number_$type, parseInt32_1(m.d, CultureInfo.invariantCulture));
                        break;
                    case "marL":
                        j = toNullable(Number_$type, parseInt32_1(m.d, CultureInfo.invariantCulture));
                        break;
                    case "marR":
                        k = toNullable(Number_$type, parseInt32_1(m.d, CultureInfo.invariantCulture));
                        break;
                    case "rtl":
                        l = toNullable(Boolean_$type, ST_OnOff.e(m.d));
                        break;
                    default: break;
                }
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_1) throw e_1.error; }
        }
        var n = ((function () {
            var $ret = new CT_TextParagraphProperties();
            $ret.c = b;
            $ret.d = ST_Coordinate32.n(c);
            $ret.e = d;
            $ret.f = e;
            $ret.g = f;
            $ret.h = ST_TextIndent.h(g);
            $ret.i = h;
            $ret.j = ST_TextIndentLevelType.h(i);
            $ret.k = ST_TextMargin.h(j);
            $ret.l = ST_TextMargin.h(k);
            $ret.m = l;
            return $ret;
        })());
        return n;
    };
    CT_TextParagraphProperties.$t = markType(CT_TextParagraphProperties, 'CT_TextParagraphProperties');
    return CT_TextParagraphProperties;
}(Base));
export { CT_TextParagraphProperties };
//# sourceMappingURL=CT_TextParagraphProperties.js.map