{
    "$schema": "../../TcHmiFramework/Schema/ControlDescription.Schema.json",
    "apiVersion": 1,
    "name": "TcHmiObjectBrowser",
    "namespace": "TcHmi.Controls.Beckhoff",
    "displayName": "Object Browser",
    "version": {
        "full": "1.12.762.46",
        "major": 1,
        "minor": 12,
        "build": 762,
        "revision": 46
    },
    "visible": true,
    "themeable": "Standard",
    "base": "TcHmi.Controls.System.TcHmiControl",
    "description": "A Treeview for heterogeneous data.",
    "defaultDesignerEvent": "",
    "properties": {
        "containerControl": false,
        "geometry": {
            "width": 600,
            "height": 320
        }
    },
    "icons": [
        {
            "name": "Icons/16x16.png",
            "width": 16,
            "height": 16
        }
    ],
    "dependencyFiles": [
        {
            "name": "Style.css",
            "type": "Stylesheet",
            "description": ""
        },
        {
            "name": "TcHmiObjectBrowser.js",
            "type": "JavaScript",
            "description": ""
        }
    ],
    "template": "Template.html",
    "attributes": [
        {
            "name": "data-tchmi-data",
            "propertyName": "Data",
            "propertySetterName": "setData",
            "propertyGetterName": "getData",
            "displayName": "Data",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 10,
            "type": "tchmi:general#/definitions/Any",
            "category": "Common",
            "description": "Data to show in the object browser (format is defined in the Columns attribute). You also need to define the schema of the data in the 'DataSchema' attribute. \nThis attribute is not used if a DataSymbol is configured.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-data-schema",
            "propertyName": "DataSchema",
            "propertySetterName": "setDataSchema",
            "propertyGetterName": "getDataSchema",
            "displayName": "DataSchema",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 11,
            "type": "tchmi:general#/definitions/Object",
            "category": "Common",
            "description": "The schema of the data. \nThis attribute is not used if a DataSymbol is configured.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-data-symbol",
            "propertyName": "DataSymbol",
            "propertySetterName": "setDataSymbol",
            "propertyGetterName": "getDataSymbol",
            "displayName": "DataSymbol",
            "visible": true,
            "themeable": "None",
            "displayPriority": 12,
            "type": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiObjectBrowser.DataSymbol",
            "category": "Common",
            "description": "A Symbol of type tchmi:general#/definitions/Any which contains the data to be displayed in the object browser. This attribute overwrites an existing Data and DataSchema attribute.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "TwoWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-columns",
            "propertyName": "Columns",
            "propertySetterName": "setColumns",
            "propertyGetterName": "getColumns",
            "displayName": "Columns",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiObjectBrowser.ColumnDefinitionList",
            "category": "Common",
            "description": "Description of the columns and the format of the data",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": [
                {
                    "columnData": "Name",
                    "width": 320,
                    "widthUnit": "px",
                    "resize": true,
                    "editable": false,
                    "sortable": true,
                    "minWidth": 160,
                    "minWidthUnit": "px",
                    "horizontalAlignment": "Left",
                    "verticalAlignment": "Center",
                    "cellBackground": null,
                    "textColor": null
                },
                {
                    "columnData": "Value",
                    "width": 240,
                    "widthUnit": "px",
                    "resize": true,
                    "editable": true,
                    "sortable": true,
                    "minWidth": 160,
                    "minWidthUnit": "px",
                    "horizontalAlignment": "Center",
                    "verticalAlignment": "Center",
                    "cellBackground": null,
                    "textColor": null
                }
            ],
            "defaultValueInternal": []
        },
        {
            "name": "data-tchmi-indirect-write",
            "propertyName": "IndirectWrite",
            "propertySetterName": "setIndirectWrite",
            "propertyGetterName": "getIndirectWrite",
            "displayName": "IndirectWrite",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 14,
            "type": "tchmi:general#/definitions/Boolean",
            "category": "Common",
            "description": "If set to true, all inputs made by the user will not be written to the data until the 'writePreparedValues' function is called.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": false
        },
        {
            "name": "data-tchmi-sorting",
            "propertyName": "Sorting",
            "propertySetterName": "setSorting",
            "propertyGetterName": "getSorting",
            "displayName": "Sorting",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/Sorting",
            "category": "Data",
            "description": "Can be used to sort the data. If used in combination with DataSymbol, the data will be sorted on the server.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": []
        },
        {
            "name": "data-tchmi-filter",
            "propertyName": "Filter",
            "propertySetterName": "setFilter",
            "propertyGetterName": "getFilter",
            "displayName": "Filter",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 11,
            "type": "tchmi:server#/definitions/filter",
            "category": "Data",
            "description": "Can be used to filter the data. If used in combination with DataSymbol, the data will be filtered on the server.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-ignore-first-level",
            "propertyName": "IgnoreFirstLevel",
            "propertySetterName": "setIgnoreFirstLevel",
            "propertyGetterName": "getIgnoreFirstLevel",
            "displayName": "IgnoreFirstLevel",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 12,
            "type": "tchmi:general#/definitions/Boolean",
            "category": "Data",
            "description": "Defines if the first level is displayed or not.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": false
        },
        {
            "name": "data-tchmi-first-level-name",
            "propertyName": "FirstLevelName",
            "propertySetterName": "setFirstLevelName",
            "propertyGetterName": "getFirstLevelName",
            "displayName": "FirstLevelName",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 13,
            "type": "tchmi:general#/definitions/String",
            "category": "Data",
            "description": "The name of the top level element. Only applied when the 'Data' and 'DataSchema' attributes are used.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Data Object"
        },
        {
            "name": "data-tchmi-row-classes-provider",
            "propertyName": "RowClassesProvider",
            "propertySetterName": "setRowClassesProvider",
            "propertyGetterName": "getRowClassesProvider",
            "displayName": "RowClassesProvider",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 80,
            "type": "tchmi:framework#/definitions/Function",
            "allowedFunctions": {
                "returnType": "tchmi:general#/definitions/Array",
                "requiredArguments": [
                    {
                        "type": "tchmi:general#/definitions/Any",
                        "description": "The row value to use to determine the classes for the row."
                    },
                    {
                        "type": "tchmi:general#/definitions/Array",
                        "description": "The hierarchical index of the row data in the data."
                    },
                    {
                        "type": "tchmi:general#/definitions/Array",
                        "description": "The hierarchical index. This may differ from the data index if the table is sorted."
                    }
                ],
                "waitMode": "Synchronous"
            },
            "category": "Data",
            "description": "Specifies a function that takes row data as an argument and returns an array of strings to be used as CSS classes on the row.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-header-height",
            "propertyName": "HeaderHeight",
            "propertySetterName": "setHeaderHeight",
            "propertyGetterName": "getHeaderHeight",
            "displayName": "HeaderHeight",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Header",
            "description": "Height of the table header cells.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": 30
        },
        {
            "name": "data-tchmi-header-height-unit",
            "propertyName": "HeaderHeightUnit",
            "propertySetterName": "setHeaderHeightUnit",
            "propertyGetterName": "getHeaderHeightUnit",
            "refTo": "HeaderHeight",
            "displayName": "HeaderHeightUnit",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/MeasurementUnit",
            "category": "Header",
            "description": "Could be 'px' or for relative positioning '%'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "px"
        },
        {
            "name": "data-tchmi-header-cell-padding",
            "propertyName": "HeaderCellPadding",
            "propertySetterName": "setHeaderCellPadding",
            "propertyGetterName": "getHeaderCellPadding",
            "displayName": "HeaderCellPadding",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/Padding",
            "category": "Header",
            "description": "The distance of the header to the border.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-header-font-family",
            "propertyName": "HeaderFontFamily",
            "propertySetterName": "setHeaderFontFamily",
            "propertyGetterName": "getHeaderFontFamily",
            "displayName": "HeaderFontFamily",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontFamily",
            "category": "Header",
            "description": "Comma separated list of family name or keyword: 'serif', 'sans-serif', 'monospace'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-header-font-size",
            "propertyName": "HeaderFontSize",
            "propertySetterName": "setHeaderFontSize",
            "propertyGetterName": "getHeaderFontSize",
            "displayName": "HeaderFontSize",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Header",
            "description": "The size of the font. Percent values are relative to the parent elements font size.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-header-font-size-unit",
            "propertyName": "HeaderFontSizeUnit",
            "propertySetterName": "setHeaderFontSizeUnit",
            "propertyGetterName": "getHeaderFontSizeUnit",
            "refTo": "HeaderFontSize",
            "displayName": "HeaderFontSizeUnit",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementUnit",
            "category": "Header",
            "description": "Could be 'px' or for relative sizing '%'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "px"
        },
        {
            "name": "data-tchmi-header-font-style",
            "propertyName": "HeaderFontStyle",
            "propertySetterName": "setHeaderFontStyle",
            "propertyGetterName": "getHeaderFontStyle",
            "displayName": "HeaderFontStyle",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontStyle",
            "category": "Header",
            "description": "'Normal', 'Italic' (slanted with special glyphs), 'Oblique' (slanted normal glyphs) or 'Auto' for inherited.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Auto"
        },
        {
            "name": "data-tchmi-header-font-weight",
            "propertyName": "HeaderFontWeight",
            "propertySetterName": "setHeaderFontWeight",
            "propertyGetterName": "getHeaderFontWeight",
            "displayName": "HeaderFontWeight",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontWeight",
            "category": "Header",
            "description": "'Normal', 'Bold' (glyphs with more weight) or 'Auto' for inherited.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Auto"
        },
        {
            "name": "data-tchmi-row-height",
            "propertyName": "RowHeight",
            "propertySetterName": "setRowHeight",
            "propertyGetterName": "getRowHeight",
            "displayName": "RowHeight",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Grid",
            "description": "Height of a row.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": 30
        },
        {
            "name": "data-tchmi-cell-content-padding",
            "propertyName": "CellContentPadding",
            "propertySetterName": "setCellContentPadding",
            "propertyGetterName": "getCellContentPadding",
            "displayName": "CellContentPadding",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/Padding",
            "category": "Grid",
            "description": "The distance of the cell content to the border.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": {
                "left": 3,
                "leftUnit": "px",
                "right": 3,
                "rightUnit": "px",
                "top": 0,
                "topUnit": "px",
                "bottom": 0,
                "bottomUnit": "px"
            },
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-grid-font-family",
            "propertyName": "GridFontFamily",
            "propertySetterName": "setGridFontFamily",
            "propertyGetterName": "getGridFontFamily",
            "displayName": "GridFontFamily",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontFamily",
            "category": "Grid",
            "description": "Comma separated list of family name or keyword: 'serif', 'sans-serif', 'monospace'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-grid-font-size",
            "propertyName": "GridFontSize",
            "propertySetterName": "setGridFontSize",
            "propertyGetterName": "getGridFontSize",
            "displayName": "GridFontSize",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Grid",
            "description": "The size of the font. Percent values are relative to the parent elements font size.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-grid-font-size-unit",
            "propertyName": "GridFontSizeUnit",
            "propertySetterName": "setGridFontSizeUnit",
            "propertyGetterName": "getGridFontSizeUnit",
            "refTo": "GridFontSize",
            "displayName": "GridFontSizeUnit",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementUnit",
            "category": "Grid",
            "description": "Could be 'px' or for relative sizing '%'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "px"
        },
        {
            "name": "data-tchmi-grid-font-style",
            "propertyName": "GridFontStyle",
            "propertySetterName": "setGridFontStyle",
            "propertyGetterName": "getGridFontStyle",
            "displayName": "GridFontStyle",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontStyle",
            "category": "Grid",
            "description": "'Normal', 'Italic' (slanted with special glyphs), 'Oblique' (slanted normal glyphs) or 'Auto' for inherited.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Auto"
        },
        {
            "name": "data-tchmi-grid-font-weight",
            "propertyName": "GridFontWeight",
            "propertySetterName": "setGridFontWeight",
            "propertyGetterName": "getGridFontWeight",
            "displayName": "GridFontWeight",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontWeight",
            "category": "Grid",
            "description": "'Normal', 'Bold' (glyphs with more weight) or 'Auto' for inherited.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Auto"
        },
        {
            "name": "data-tchmi-show-header",
            "propertyName": "ShowHeader",
            "propertySetterName": "setShowHeader",
            "propertyGetterName": "getShowHeader",
            "displayName": "ShowHeader",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:general#/definitions/Boolean",
            "category": "Header",
            "description": "Defines whether the header is displayed or not.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": true
        },
        {
            "name": "data-tchmi-show-row-numbers",
            "propertyName": "ShowRowNumbers",
            "propertySetterName": "setShowRowNumbers",
            "propertyGetterName": "getShowRowNumbers",
            "displayName": "ShowRowNumbers",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:general#/definitions/Boolean",
            "category": "Row Numbers",
            "description": "Defines whether the row numbers are displayed or not.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": true
        },
        {
            "name": "data-tchmi-row-numbers-resizable",
            "propertyName": "RowNumbersResizable",
            "propertySetterName": "setRowNumbersResizable",
            "propertyGetterName": "getRowNumbersResizable",
            "displayName": "RowNumbersResizable",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 20,
            "type": "tchmi:general#/definitions/Boolean",
            "category": "Row Numbers",
            "description": "Defines whether the row numbers are resizable or not.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": true
        },
        {
            "name": "data-tchmi-row-numbers-start-number",
            "propertyName": "RowNumbersStartNumber",
            "propertySetterName": "setRowNumbersStartNumber",
            "propertyGetterName": "getRowNumbersStartNumber",
            "displayName": "RowNumbersStartNumber",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:general#/definitions/Number",
            "category": "Row Numbers",
            "description": "The starting number of the row numbers.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": 1
        },
        {
            "name": "data-tchmi-row-numbers-width",
            "propertyName": "RowNumbersWidth",
            "propertySetterName": "setRowNumbersWidth",
            "propertyGetterName": "getRowNumbersWidth",
            "displayName": "RowNumbersWidth",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Row Numbers",
            "description": "Width of the Row Number Column",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": 30
        },
        {
            "name": "data-tchmi-row-numbers-width-unit",
            "propertyName": "RowNumbersWidthUnit",
            "propertySetterName": "setRowNumbersWidthUnit",
            "propertyGetterName": "getRowNumbersWidthUnit",
            "refTo": "RowNumbersWidth",
            "displayName": "RowNumbersWidthUnit",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementUnit",
            "category": "Row Numbers",
            "description": "Could be 'px' or for relative positioning '%'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "px"
        },
        {
            "name": "data-tchmi-row-numbers-horizontal-alignment",
            "propertyName": "RowNumbersHorizontalAlignment",
            "propertySetterName": "setRowNumbersHorizontalAlignment",
            "propertyGetterName": "getRowNumbersHorizontalAlignment",
            "displayName": "RowNumbersHorizontalAlignment",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/HorizontalAlignment",
            "category": "Row Numbers",
            "description": "Defines the horizontal alignment of the row numbers.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Center"
        },
        {
            "name": "data-tchmi-row-numbers-vertical-alignment",
            "propertyName": "RowNumbersVerticalAlignment",
            "propertySetterName": "setRowNumbersVerticalAlignment",
            "propertyGetterName": "getRowNumbersVerticalAlignment",
            "displayName": "RowNumbersVerticalAlignment",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/VerticalAlignment",
            "category": "Row Numbers",
            "description": "Defines the vertical alignment of the row numbers.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Center"
        },
        {
            "name": "data-tchmi-row-numbers-cell-padding",
            "propertyName": "RowNumbersCellPadding",
            "propertySetterName": "setRowNumbersCellPadding",
            "propertyGetterName": "getRowNumbersCellPadding",
            "displayName": "RowNumbersCellPadding",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/Padding",
            "category": "Row Numbers",
            "description": "The distance of the numbers column to the border.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-row-numbers-font-family",
            "propertyName": "RowNumbersFontFamily",
            "propertySetterName": "setRowNumbersFontFamily",
            "propertyGetterName": "getRowNumbersFontFamily",
            "displayName": "RowNumbersFontFamily",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontFamily",
            "category": "Row Numbers",
            "description": "Comma separated list of family name or keyword: 'serif', 'sans-serif', 'monospace'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-row-numbers-font-size",
            "propertyName": "RowNumbersFontSize",
            "propertySetterName": "setRowNumbersFontSize",
            "propertyGetterName": "getRowNumbersFontSize",
            "displayName": "RowNumbersFontSize",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Row Numbers",
            "description": "The size of the font. Percent values are relative to the parent elements font size.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-row-numbers-font-size-unit",
            "propertyName": "RowNumbersFontSizeUnit",
            "propertySetterName": "setRowNumbersFontSizeUnit",
            "propertyGetterName": "getRowNumbersFontSizeUnit",
            "refTo": "RowNumbersFontSize",
            "displayName": "RowNumbersFontSizeUnit",
            "visible": true,
            "themeable": "Advanced",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/MeasurementUnit",
            "category": "Row Numbers",
            "description": "Could be 'px' or for relative sizing '%'.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "px"
        },
        {
            "name": "data-tchmi-row-numbers-font-style",
            "propertyName": "RowNumbersFontStyle",
            "propertySetterName": "setRowNumbersFontStyle",
            "propertyGetterName": "getRowNumbersFontStyle",
            "displayName": "RowNumbersFontStyle",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontStyle",
            "category": "Row Numbers",
            "description": "'Normal', 'Italic' (slanted with special glyphs), 'Oblique' (slanted normal glyphs) or 'Auto' for inherited.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Auto"
        },
        {
            "name": "data-tchmi-row-numbers-font-weight",
            "propertyName": "RowNumbersFontWeight",
            "propertySetterName": "setRowNumbersFontWeight",
            "propertyGetterName": "getRowNumbersFontWeight",
            "displayName": "RowNumbersFontWeight",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/FontWeight",
            "category": "Row Numbers",
            "description": "'Normal', 'Bold' (glyphs with more weight) or 'Auto' for inherited.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": "Auto"
        },
        {
            "name": "data-tchmi-table-border-width",
            "propertyName": "TableBorderWidth",
            "propertySetterName": "setTableBorderWidth",
            "propertyGetterName": "getTableBorderWidth",
            "displayName": "TableBorderWidth",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 20,
            "type": "tchmi:framework#/definitions/MeasurementValue",
            "category": "Grid",
            "description": "The width of the table border",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": 1
        },
        {
            "name": "data-tchmi-table-border-style",
            "propertyName": "TableBorderStyle",
            "propertySetterName": "setTableBorderStyle",
            "propertyGetterName": "getTableBorderStyle",
            "displayName": "TableBorderStyle",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 60,
            "type": "tchmi:framework#/definitions/BorderStyle",
            "category": "Grid",
            "description": "The style of the table border",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-header-background-color",
            "propertyName": "HeaderBackgroundColor",
            "propertySetterName": "setHeaderBackgroundColor",
            "propertyGetterName": "getHeaderBackgroundColor",
            "displayName": "HeaderBackgroundColor",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/Color",
            "category": "Colors",
            "description": "The background color of the header",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-header-text-color",
            "propertyName": "HeaderTextColor",
            "propertySetterName": "setHeaderTextColor",
            "propertyGetterName": "getHeaderTextColor",
            "displayName": "HeaderTextColor",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/SolidColor",
            "category": "Colors",
            "description": "The text color of the header",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-row-numbers-background-color",
            "propertyName": "RowNumbersBackgroundColor",
            "propertySetterName": "setRowNumbersBackgroundColor",
            "propertyGetterName": "getRowNumbersBackgroundColor",
            "displayName": "RowNumbersBackgroundColor",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/Color",
            "category": "Colors",
            "description": "The background color of the row numbers column",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-row-numbers-text-color",
            "propertyName": "RowNumbersTextColor",
            "propertySetterName": "setRowNumbersTextColor",
            "propertyGetterName": "getRowNumbersTextColor",
            "displayName": "RowNumbersTextColor",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/SolidColor",
            "category": "Colors",
            "description": "The text color of the row numbers column",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-table-border-color",
            "propertyName": "TableBorderColor",
            "propertySetterName": "setTableBorderColor",
            "propertyGetterName": "getTableBorderColor",
            "displayName": "TableBorderColor",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 10,
            "type": "tchmi:framework#/definitions/SolidColor",
            "category": "Colors",
            "description": "The color of the table border",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-data-has-changed",
            "displayName": "DataHasChanged",
            "propertyName": "DataHasChanged",
            "propertyGetterName": "getDataHasChanged",
            "visible": true,
            "type": "tchmi:general#/definitions/Boolean",
            "category": "Data",
            "description": "The DataHasChanged property show if the user changed data.",
            "readOnly": true,
            "bindable": false,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": "",
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-selected-row-value",
            "displayName": "SelectedRowValue",
            "propertyName": "SelectedRowValue",
            "propertyGetterName": "getSelectedRowValue",
            "visible": true,
            "type": "tchmi:general#/definitions/Any",
            "category": "Data",
            "description": "The data of the selected row.",
            "readOnly": true,
            "bindable": false,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": "",
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-selected-cell-value",
            "displayName": "SelectedCellValue",
            "propertyName": "SelectedCellValue",
            "propertyGetterName": "getSelectedCellValue",
            "visible": true,
            "type": "tchmi:general#/definitions/Any",
            "category": "Data",
            "description": "The value of the selected cell.",
            "readOnly": true,
            "bindable": false,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "allowSymbolExpressionsInObject": true,
            "defaultValue": "",
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-selected-path",
            "propertyName": "SelectedPath",
            "propertySetterName": "setSelectedPath",
            "propertyGetterName": "getSelectedPath",
            "displayName": "SelectedPath",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 20,
            "type": "tchmi:general#/definitions/String",
            "category": "Data",
            "description": "The selected row by its symbol name.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        },
        {
            "name": "data-tchmi-selected-colum",
            "propertyName": "SelectedColumn",
            "propertySetterName": "setSelectedColumn",
            "propertyGetterName": "getSelectedColumn",
            "displayName": "SelectedColumn",
            "visible": true,
            "themeable": "Standard",
            "displayPriority": 20,
            "type": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiObjectBrowser.ColumnName",
            "category": "Data",
            "description": "The selected column by its Name.",
            "readOnly": false,
            "bindable": true,
            "defaultBindingMode": "OneWay",
            "heritable": true,
            "defaultValue": null,
            "defaultValueInternal": null
        }
    ],
    "attributeCategories": [
        {
            "name": "Data",
            "displayPriority": 500,
            "defaultCollapsed": true,
            "description": "Attributes defining the data the control is showing."
        },
        {
            "name": "Grid",
            "displayPriority": 510,
            "defaultCollapsed": true,
            "description": "Attributes defining the grid layout of the control."
        },
        {
            "name": "Header",
            "displayPriority": 520,
            "defaultCollapsed": true,
            "description": "Attributes defining the header of the control."
        },
        {
            "name": "Row Numbers",
            "displayPriority": 530,
            "defaultCollapsed": true,
            "description": "Attributes defining the generated row numbers of the control."
        }
    ],
    "functions": [
        {
            "name": "selectParentRow",
            "displayName": "selectParentRow",
            "visible": true,
            "description": "A function to selected the parent element of the currently selected element.",
            "category": "Data",
            "params": [],
            "type": null,
            "heritable": true
        },
        {
            "name": "collapseAll",
            "displayName": "collapseAll",
            "visible": true,
            "description": "A function to callapse every expanded element.",
            "category": "Data",
            "params": [],
            "type": null,
            "heritable": true
        },
        {
            "name": "expandElement",
            "displayName": "expandElement",
            "visible": true,
            "description": "Expand an element by its hierarchical index.",
            "category": "Data",
            "params": [
                {
                    "name": "path",
                    "displayName": "Path",
                    "description": "The path of the element to expand",
                    "type": "tchmi:general#/definitions/String",
                    "bindable": true,
                    "visible": true
                },
                {
                    "name": "expandParents",
                    "displayName": "ExpandParents",
                    "description": "Defines whether the parent elements of the selected element will be expanded too.",
                    "type": "tchmi:general#/definitions/Boolean",
                    "bindable": true,
                    "visible": true
                }
            ],
            "type": null,
            "heritable": true
        },
        {
            "name": "collapseElement",
            "displayName": "collapseElement",
            "visible": true,
            "description": "Collapse an element by its hierarchical index.",
            "category": "Data",
            "params": [
                {
                    "name": "path",
                    "displayName": "Path",
                    "description": "The path of the element to collapse",
                    "type": "tchmi:general#/definitions/String",
                    "bindable": true,
                    "visible": true
                }
            ],
            "type": null,
            "heritable": true
        },
        {
            "name": "scrollTo",
            "displayName": "scrollTo",
            "visible": true,
            "description": "Scroll to an element by its hierarchical index.",
            "category": "Data",
            "params": [
                {
                    "name": "path",
                    "displayName": "Path",
                    "description": "The path of the element to scroll to.",
                    "type": "tchmi:general#/definitions/String",
                    "bindable": true,
                    "visible": true
                },
                {
                    "name": "expandParents",
                    "displayName": "ExpandParents",
                    "description": "Defines whether the parent elements of the selected element will be expanded.",
                    "type": "tchmi:general#/definitions/Boolean",
                    "bindable": true,
                    "visible": true
                }
            ],
            "type": null,
            "heritable": true
        },
        {
            "name": "writePreparedValues",
            "displayName": "writePreparedValues",
            "visible": true,
            "description": "Write all changes made by the user to the data. Has no effect if 'IndirectInput' is false.",
            "category": "Common",
            "heritable": true,
            "type": null,
            "params": []
        },
        {
            "name": "resetPreparedValues",
            "displayName": "resetPreparedValues",
            "visible": true,
            "description": "Reset all changes made by the user. Has no effect if 'IndirectInput' is false.",
            "category": "Common",
            "heritable": true,
            "type": null,
            "params": []
        }
    ],
    "events": [
        {
            "name": ".onDataChanged",
            "displayName": ".onDataChanged",
            "visible": true,
            "displayPriority": 5,
            "category": "Control",
            "description": "The .onDataChanged event is fired when the user changes the data.",
            "heritable": true
        },
        {
            "name": ".onSelectedItemChanged",
            "displayName": ".onSelectedItemChanged",
            "visible": true,
            "displayPriority": 5,
            "category": "Operator",
            "description": "The .onSelectedItemChanged event is fired when the selected item changes.",
            "heritable": true
        },
        {
            "name": ".onElementExpanded",
            "displayName": ".onElementExpanded",
            "visible": true,
            "displayPriority": 5,
            "category": "Operator",
            "description": "The .onElementExpanded event is fired when an element expands.",
            "heritable": true
        },
        {
            "name": ".onElementCollapsed",
            "displayName": ".onElementCollapsed",
            "visible": true,
            "displayPriority": 5,
            "category": "Operator",
            "description": "The .onElementCollapsed event is fired when an element collapses.",
            "heritable": true
        }
    ],
    "dataTypes": [
        {
            "schema": "Schema/Types.Schema.json"
        }
    ],
    "languages": {
        "en": "Lang/en.json",
        "de": "Lang/de.json"
    }
}