{
  "widget": {
    "name": "Tank",
    "selector": "jqx-tank"
  },
  "properties": [
    {
      "name": "coerce",
      "value": false,
      "allowedValues": [],
      "description": "If is set to true all values coerce to the interval, set in the interval property.",
      "demoValues": [ true, false ],
      "type": "boolean"
    },
    {
      "name": "decimalSeparator",
      "value": "\".\"",
      "allowedValues": [],
      "description": "Sets or gets the char to use as the decimal separator in numeric values. ",
      "demoValues": [ ",", "." ],
      "type": "string"
    },
    {
      "name": "disabled",
      "value": false,
      "allowedValues": [],
      "description": "Enables or disables the widget. ",
      "demoValues": [ true, false ],
      "type": "boolean"
    },
    {
      "name": "interval",
      "value": "1",
      "allowedValues": [],
      "description": "When cooerce property is true, all values coerce to the interval's value.",
      "demoValues": [ "2", "10" ],
      "type": "any"
    },
    {
      "name": "inverted",
      "value": false,
      "allowedValues": [],
      "description": "Sets the direction of the tank. If is true - positions of the tank's begin and end are changed.",
      "demoValues": [ true, false ],
      "type": "boolean"
    },
    {
      "name": "labelFormatFunction",
      "value": null,
      "allowedValues": [],
      "description": "A callback function that can be used to format the values displayed on the tank labels.",
      "demoValues": [ "function (value) { return value + '%'; }", "function (value) { return value + '$'; }" ],
      "type": "function"
    },
    {
      "name": "labelsVisibility",
      "value": "all",
      "allowedValues": [ "all", "endPoints", "none" ],
      "description": "Sets or gets the widget's label visibility",
      "demoValues": [ "endPoints", "none" ],
      "type": "string"
    },
    {
      "name": "language",
      "value": "en",
      "allowedValues": [],
      "description": "Sets or gets the language. Used in conjunction with the property <strong>messages</strong>. ",
      "demoValues": [ "de", "fr" ],
      "type": "string"
    },
    {
      "name": "logarithmicScale",
      "value": false,
      "allowedValues": [],
      "description": "Enables/disables the usage of logarithmic scale in the widget.",
      "demoValues": [ true, false ],
      "type": "boolean"
    },
    {
      "name": "max",
      "value": "100",
      "allowedValues": [],
      "description": "Sets or gets the maximum value of the widget.",
      "demoValues": [ "20", "50" ],
      "type": "any"
    },
    {
      "name": "mechanicalAction",
      "value": "switchWhileDragging",
      "allowedValues": [ "switchUntilReleased", "switchWhenReleased", "switchWhileDragging" ],
      "description": "Sets or gets the type of used mechanical action.",
      "demoValues": [ "switchWhenReleased", "switchUntilReleased" ],
      "type": "string"
    },
    {
      "name": "messages",
      "value": "{ \"en\": { \"missingReference\": \"jqxTank: Missing reference to {{files}}.\", \"significantPrecisionDigits\": \"jqxTank: the properties significantDigits and precisionDigits cannot be set at the same time.\", \"invalidMinOrMax\": \"jqxTank: Invalid {{property}} value. Max cannot be lower than Min.\", \"noInteger\": \"jqxTank: precisionDigits could be set only on floatingPoint scaleType.\" } }",
      "allowedValues": [],
      "description": "Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property <strong>language</strong>. ",
      "demoValues": [
        "{ \"de\": { \"missingReference\": \"jqxTank: Fehlende Bezugnahme auf {{files}}.\", \"significantPrecisionDigits\": \"jqxTank: Die Eigenschaften significantDigits und precisionDigits koennen nicht gleichzeitig eingestellt werden.\" } }",
        "{ \"de\": { \"missingReference\": \"jqxTank: Fehlende Bezugnahme auf {{files}}.\", \"significantPrecisionDigits\": \"jqxTank: Die Eigenschaften significantDigits und precisionDigits koennen nicht gleichzeitig eingestellt werden.\" } }"
      ],
      "type": "object"
    },
    {
      "name": "min",
      "value": "0",
      "allowedValues": [],
      "description": "Sets or gets the minimum value of the widget. ",
      "demoValues": [ "20", "50" ],
      "type": "any"
    },
    {
      "name": "orientation",
      "value": "vertical",
      "allowedValues": [ "horizontal", "vertical" ],
      "description": "Sets the orientation of the widget",
      "demoValues": [ "vertical", "horizontal" ],
      "type": "string"
    },
    {
      "name": "precisionDigits",
      "value": null,
      "allowedValues": [],
      "description": "Determines the number of digits after the decimal point. Applicable only when <strong>scaleType</strong> is <em>'integer'</em>.",
      "demoValues": [ 5, 6 ],
      "type": "number"
    },
    {
      "name": "readonly",
      "value": false,
      "allowedValues": [],
      "description": "If the widgets is readonly, the users cannot iteract with the element.",
      "demoValues": [ false, true ],
      "type": "boolean"
    },
    {
      "name": "scalePosition",
      "value": "near",
      "allowedValues": [ "near", "far", "both", "none" ],
      "description": "Sets the position of the widget's scales. ",
      "demoValues": [ "far", "both" ],
      "type": "string"
    },
    {
      "name": "scaleType",
      "value": "floatingPoint",
      "allowedValues": [ "floatingPoint", "integer" ],
      "description": "Sets the type of the tank's scale. ",
      "demoValues": [ "integer", "floatingPoint" ],
      "type": "string"
    },
    {
      "name": "scientificNotation",
      "value": false,
      "allowedValues": [],
      "description": "Enables/disables scientific notation.",
      "demoValues": [ false, true ],
      "type": "boolean"
    },
    {
      "name": "showTooltip",
      "value": false,
      "allowedValues": [],
      "description": "Enables/disables displaying of the tooltip.",
      "demoValues": [ false, true ],
      "type": "boolean"
    },
    {
      "name": "showUnit",
      "value": false,
      "allowedValues": [],
      "description": "Enables/disables displaying of the units.",
      "demoValues": [ true, false ],
      "type": "boolean"
    },
    {
      "name": "significantDigits",
      "value": null,
      "allowedValues": [],
      "description": "Determining how many significant digits are in a number. Applicable only when <strong>scaleType</strong> is <em>'integer'</em>.",
      "demoValues": [ 1, 2 ],
      "type": "number"
    },
    {
      "name": "ticksPosition",
      "value": "scale",
      "allowedValues": [ "scale", "track" ],
      "description": "Sets or gets the position of the ticks in jqxTank widget.",
      "demoValues": [ "track", "scale" ],
      "type": "string"
    },
    {
      "name": "ticksVisibility",
      "value": "minor",
      "allowedValues": [ "major", "minor", "none" ],
      "description": "Sets or gets the visibility of the ticks.",
      "demoValues": [ "major", "none" ],
      "type": "string"
    },
    {
      "name": "tooltipPosition",
      "value": "near",
      "allowedValues": [ "near", "far" ],
      "description": "Sets or gets the position of the tooltip in jqxTank widget.",
      "demoValues": [ "far", "near" ],
      "type": "string"
    },
    {
      "name": "unit",
      "value": "kg",
      "allowedValues": [],
      "description": "Sets or gets the name of unit used in jqxTank widget.",
      "demoValues": [ "mm", "cm" ],
      "type": "string"
    },
    {
      "name": "value",
      "value": "0",
      "allowedValues": [],
      "description": "Sets or gets the value of the jqxTank widget. ",
      "demoValues": [ "50", "100" ],
      "type": "number"
    },
    {
      "name": "wordLength",
      "value": "int32",
      "allowedValues": [ "int8", "uint8", "int16", "uint16", "int32", "uint32", "int64", "uint64" ],
      "description": "Sets or gets the word length. Applicable only when <strong>scaleType</strong> is <em>'integer'</em>.",
      "demoValues": [ "int8", "int16" ],
      "type": "string"
    }
  ],
  "events": [
    {
      "name": "change",
      "description": "This event is triggered when the value of the tank is changed."
    }
  ],
  "methods": [
    {
      "name": "focus",
      "description": "Focuses the tank. ",
      "demoValues": [ false ],
      "returnDataType": "None",
      "arguments": [
        {
          "name": "None",
          "type": null,
          "description": "",
          "optional": false
        }
      ]
    },
    {
      "name": "getOptimalSize",
      "description": "Gets the optimal size of the widget. ",
      "demoValues": [ false ],
      "returnDataType": "Object",
      "arguments": [
        {
          "name": "None",
          "type": null,
          "description": "",
          "optional": false
        }
      ]
    },
    {
      "name": "val",
      "description": "Get/set the value of the tank. ",
      "demoValues": [ true, "10" ],
      "returnDataType": "String",
      "arguments": [
        {
          "name": "value",
          "type": "string/number",
          "description": "The value to be set. If no parameter is passed, returns the displayed value of the tank. ",
          "optional": true
        },
        {
          "name": "suppressValidation",
          "type": "boolean",
          "description": "If <em>true</em> is passed, the passed value will be set to the tank without validation. ",
          "optional": true
        }
      ]
    }
  ]
}