Added minimal functionality for Robot teaching
- Added minimal HMI - Added possibility to open and close all chamber doors
This commit is contained in:
@@ -0,0 +1,795 @@
|
||||
{
|
||||
"$schema": "../../TcHmiFramework/Schema/ControlDescription.Schema.json",
|
||||
"apiVersion": 1,
|
||||
"name": "TcHmiKeyboard",
|
||||
"namespace": "TcHmi.Controls.Beckhoff",
|
||||
"displayName": "Keyboard",
|
||||
"version": {
|
||||
"full": "14.4.1.0",
|
||||
"major": 14,
|
||||
"minor": 4,
|
||||
"build": 1,
|
||||
"revision": 0
|
||||
},
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"base": "TcHmi.Controls.System.TcHmiControl",
|
||||
"description": "An on-screen Keyboard.",
|
||||
"defaultDesignerEvent": "",
|
||||
"properties": {
|
||||
"containerControl": false,
|
||||
"geometry": {
|
||||
"width": 790,
|
||||
"height": 250
|
||||
}
|
||||
},
|
||||
"icons": [
|
||||
{
|
||||
"name": "Icons/16x16.png",
|
||||
"width": 16,
|
||||
"height": 16
|
||||
}
|
||||
],
|
||||
"template": "Template.html",
|
||||
"dependencyFiles": [
|
||||
{
|
||||
"name": "Style.css",
|
||||
"type": "Stylesheet",
|
||||
"description": ""
|
||||
},
|
||||
{
|
||||
"name": "../dist/UiProvider/loader.esm.js",
|
||||
"type": "EsModule",
|
||||
"description": "Load corresponding UI Provider module (and perhaps others, too :-)"
|
||||
},
|
||||
{
|
||||
"name": "../dist/TcHmiKeyboard/TcHmiKeyboard.esm.js",
|
||||
"type": "EsModule",
|
||||
"description": "Contains all the main logic as ES module."
|
||||
}
|
||||
],
|
||||
"themes": {
|
||||
"Base": {
|
||||
"resources": [
|
||||
{
|
||||
"name": "Themes/Base/Style.css",
|
||||
"type": "Stylesheet",
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"Base-Dark": {
|
||||
"resources": [
|
||||
{
|
||||
"name": "Themes/Base-Dark/Style.css",
|
||||
"type": "Stylesheet",
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"attributes": [
|
||||
{
|
||||
"name": "data-tchmi-width-mode",
|
||||
"propertyName": "WidthMode",
|
||||
"propertySetterName": "setWidthMode",
|
||||
"propertyGetterName": "getWidthMode",
|
||||
"displayName": "Width Mode",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 40,
|
||||
"type": "tchmi:framework#/definitions/SizeModeWithContent",
|
||||
"category": "Layout",
|
||||
"description": "Defines wether the control width is applied as configured via the width attribute or automatically adjusts to fill the parent or fit the displayed keyboard layout.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": "Value"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-height-mode",
|
||||
"propertyName": "HeightMode",
|
||||
"propertySetterName": "setHeightMode",
|
||||
"propertyGetterName": "getHeightMode",
|
||||
"displayName": "Height Mode",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 40,
|
||||
"type": "tchmi:framework#/definitions/SizeModeWithContent",
|
||||
"category": "Layout",
|
||||
"description": "Defines wether the control height is applied as configured via the height attribute or automatically adjusts to fill the parent or fit the displayed keyboard layout.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": "Value"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-layout-file",
|
||||
"propertyName": "LayoutFile",
|
||||
"propertySetterName": "setLayoutFile",
|
||||
"propertyGetterName": "getLayoutFile",
|
||||
"displayName": "Layout File",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 10,
|
||||
"type": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.ProjectKeyboardLayouts",
|
||||
"category": "Common",
|
||||
"description": "Path to a layout JSON file in the project.\nThis overrides Layout.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": "KeyboardLayouts/US - compact.keyboard.json",
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-scale-mode",
|
||||
"propertyName": "ScaleMode",
|
||||
"propertySetterName": "setScaleMode",
|
||||
"propertyGetterName": "getScaleMode",
|
||||
"displayName": "Scale Mode",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/ScaleMode",
|
||||
"category": "Common",
|
||||
"description": "Scale the content to control size. Alternatively, the control size can be set to the size of the displayed layout using WidthMode and HeightMode.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": "ScaleToFit",
|
||||
"defaultValueInternal": "None"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-fixed-target",
|
||||
"propertyName": "FixedTarget",
|
||||
"propertySetterName": "setFixedTarget",
|
||||
"propertyGetterName": "getFixedTarget",
|
||||
"displayName": "Fixed Target",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 10,
|
||||
"type": "tchmi:general#/definitions/String",
|
||||
"category": "Behaviour",
|
||||
"description": "Set this to the name of a control to always send input to that control, regardless of focus.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": ""
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-release-sticky-keys-manually",
|
||||
"propertyName": "ReleaseStickyKeysManually",
|
||||
"propertySetterName": "setReleaseStickyKeysManually",
|
||||
"propertyGetterName": "getReleaseStickyKeysManually",
|
||||
"displayName": "Release Sticky Keys Manually",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 20,
|
||||
"type": "tchmi:general#/definitions/Boolean",
|
||||
"category": "Behaviour",
|
||||
"description": "Whether to require an explicit keypress on a sticky key to release it, or release it automatically after a character was typed.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": false
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-input-hints-validation",
|
||||
"propertyName": "InputHintsValidation",
|
||||
"propertySetterName": "setInputHintsValidation",
|
||||
"propertyGetterName": "getInputHintsValidation",
|
||||
"displayName": "Input Hints Validation",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 30,
|
||||
"type": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.ValidationLevel",
|
||||
"category": "Behaviour",
|
||||
"description": "How to validate input hints, which can be specified with the data-tchmikeyboard-min and data-tchmikeyboard-max attributes on input elements.\n\"None\": No validation is performed.\n\"HighlightHints\": Input hints that are violated by the currently entered value are highlighted in red.\n\"DisableAccept\": In addition to the highlighting, the accept key is disabled.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": "DisableAccept"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-pressed-keys",
|
||||
"propertyName": "PressedKeys",
|
||||
"propertyGetterName": "getPressedKeys",
|
||||
"displayName": "Pressed Keys",
|
||||
"visible": true,
|
||||
"type": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.KeyList",
|
||||
"category": "Behaviour",
|
||||
"description": "Currently pressed keys.",
|
||||
"readOnly": true,
|
||||
"bindable": false,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-longpress-delay",
|
||||
"propertyName": "LongpressDelay",
|
||||
"propertySetterName": "setLongpressDelay",
|
||||
"propertyGetterName": "getLongpressDelay",
|
||||
"displayName": "Longpress Delay",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:general#/definitions/Number",
|
||||
"category": "Behaviour",
|
||||
"description": "The time in milliseconds before the longpress action is triggered.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": 300
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-repetition-delay",
|
||||
"propertyName": "RepetitionDelay",
|
||||
"propertySetterName": "setRepetitionDelay",
|
||||
"propertyGetterName": "getRepetitionDelay",
|
||||
"displayName": "Repetition Delay",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:general#/definitions/Number",
|
||||
"category": "Behaviour",
|
||||
"description": "The time in milliseconds between repeated kepresses when the longpress action is repetition.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": 50
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-indirect-input-horizontal-alignment",
|
||||
"propertyName": "IndirectInputHorizontalAlignment",
|
||||
"propertySetterName": "setIndirectInputHorizontalAlignment",
|
||||
"propertyGetterName": "getIndirectInputHorizontalAlignment",
|
||||
"displayName": "Indirect Input Horizontal Alignment",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 30,
|
||||
"type": "tchmi:framework#/definitions/HorizontalAlignment",
|
||||
"category": "Indirect Input",
|
||||
"description": "The horizontal alignment of text in the indirect input textbox.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": "Left"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-indirect-input-font-size",
|
||||
"propertyName": "IndirectInputFontSize",
|
||||
"propertySetterName": "setIndirectInputFontSize",
|
||||
"propertyGetterName": "getIndirectInputFontSize",
|
||||
"displayName": "Indirect Input Font Size",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 40,
|
||||
"type": "tchmi:framework#/definitions/MeasurementValue",
|
||||
"category": "Indirect Input",
|
||||
"description": "The font size of the indirect input textbox.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-indirect-input-font-size-unit",
|
||||
"propertyName": "IndirectInputFontSizeUnit",
|
||||
"propertySetterName": "setIndirectInputFontSizeUnit",
|
||||
"propertyGetterName": "getIndirectInputFontSizeUnit",
|
||||
"displayName": "Indirect Input Font Size Unit",
|
||||
"refTo": "IndirectInputFontSize",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 40,
|
||||
"type": "tchmi:framework#/definitions/MeasurementUnit",
|
||||
"category": "Indirect Input",
|
||||
"description": "The font size unit of the indirect input textbox.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": "px"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-indirect-input-padding",
|
||||
"propertyName": "IndirectInputPadding",
|
||||
"propertySetterName": "setIndirectInputPadding",
|
||||
"propertyGetterName": "getIndirectInputPadding",
|
||||
"displayName": "Indirect Input Padding",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 110,
|
||||
"type": "tchmi:framework#/definitions/Padding",
|
||||
"category": "Indirect Input",
|
||||
"description": "The padding of the indirect input textbox.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": {
|
||||
"top": 3,
|
||||
"right": 3,
|
||||
"bottom": 3,
|
||||
"left": 3
|
||||
},
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-label-font-family",
|
||||
"propertyName": "LabelFontFamily",
|
||||
"propertySetterName": "setLabelFontFamily",
|
||||
"propertyGetterName": "getLabelFontFamily",
|
||||
"displayName": "Label Font Family",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/FontFamily",
|
||||
"category": "Labels",
|
||||
"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-label-font-size",
|
||||
"propertyName": "LabelFontSize",
|
||||
"propertySetterName": "setLabelFontSize",
|
||||
"propertyGetterName": "getLabelFontSize",
|
||||
"displayName": "Label Font Size",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/MeasurementValue",
|
||||
"category": "Labels",
|
||||
"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": 14,
|
||||
"defaultValueInternal": 12
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-label-font-size-unit",
|
||||
"propertyName": "LabelFontSizeUnit",
|
||||
"propertySetterName": "setLabelFontSizeUnit",
|
||||
"propertyGetterName": "getLabelFontSizeUnit",
|
||||
"refTo": "LabelFontSize",
|
||||
"displayName": "Label Font Size Unit",
|
||||
"visible": true,
|
||||
"themeable": "Advanced",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/MeasurementUnit",
|
||||
"category": "Labels",
|
||||
"description": "Could be 'px' or for relative sizing '%'.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": "px"
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-label-font-style",
|
||||
"propertyName": "LabelFontStyle",
|
||||
"propertySetterName": "setLabelFontStyle",
|
||||
"propertyGetterName": "getLabelFontStyle",
|
||||
"displayName": "Label Font Style",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/FontStyle",
|
||||
"category": "Labels",
|
||||
"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-label-font-weight",
|
||||
"propertyName": "LabelFontWeight",
|
||||
"propertySetterName": "setLabelFontWeight",
|
||||
"propertyGetterName": "getLabelFontWeight",
|
||||
"displayName": "Label Font Weight",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/FontWeight",
|
||||
"category": "Labels",
|
||||
"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-label-stroke-thickness",
|
||||
"propertyName": "LabelStrokeThickness",
|
||||
"propertySetterName": "setLabelStrokeThickness",
|
||||
"propertyGetterName": "getLabelStrokeThickness",
|
||||
"displayName": "Label Stroke Thickness",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 30,
|
||||
"type": "tchmi:general#/definitions/Number",
|
||||
"category": "Labels",
|
||||
"description": "How thick to stroke graphical labels.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-keyboard-padding",
|
||||
"propertyName": "KeyboardPadding",
|
||||
"propertySetterName": "setKeyboardPadding",
|
||||
"propertyGetterName": "getKeyboardPadding",
|
||||
"displayName": "Keyboard Padding",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 51,
|
||||
"type": "tchmi:framework#/definitions/PixelPadding",
|
||||
"category": "Layout",
|
||||
"description": "Padding of the whole keyboard",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": {
|
||||
"top": 10,
|
||||
"topUnit": "px",
|
||||
"right": 10,
|
||||
"rightUnit": "px",
|
||||
"bottom": 10,
|
||||
"bottomUnit": "px",
|
||||
"left": 10,
|
||||
"leftUnit": "px"
|
||||
},
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-key-padding",
|
||||
"propertyName": "KeyPadding",
|
||||
"propertySetterName": "setKeyPadding",
|
||||
"propertyGetterName": "getKeyPadding",
|
||||
"displayName": "Key Padding",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 51,
|
||||
"type": "tchmi:framework#/definitions/Padding",
|
||||
"category": "Layout",
|
||||
"description": "Padding of the individual keys",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": {
|
||||
"top": 4,
|
||||
"topUnit": "px",
|
||||
"right": 4,
|
||||
"rightUnit": "px",
|
||||
"bottom": 4,
|
||||
"bottomUnit": "px",
|
||||
"left": 4,
|
||||
"leftUnit": "px"
|
||||
},
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-additional-key-backdrop-padding",
|
||||
"propertyName": "AdditionalKeyBackdropPadding",
|
||||
"propertySetterName": "setAdditionalKeyBackdropPadding",
|
||||
"propertyGetterName": "getAdditionalKeyBackdropPadding",
|
||||
"displayName": "Additional Key Backdrop Padding",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 51,
|
||||
"type": "tchmi:framework#/definitions/Padding",
|
||||
"category": "Layout",
|
||||
"description": "Padding of the backdrop behind additional keys",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": {
|
||||
"top": 10,
|
||||
"topUnit": "px",
|
||||
"right": 10,
|
||||
"rightUnit": "px",
|
||||
"bottom": 10,
|
||||
"bottomUnit": "px",
|
||||
"left": 10,
|
||||
"leftUnit": "px"
|
||||
},
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-key-background-color",
|
||||
"propertyName": "KeyBackgroundColor",
|
||||
"propertySetterName": "setKeyBackgroundColor",
|
||||
"propertyGetterName": "getKeyBackgroundColor",
|
||||
"displayName": "Key Background Color",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 20,
|
||||
"type": "tchmi:framework#/definitions/Color",
|
||||
"category": "Colors",
|
||||
"description": "The background color of the keys.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-label-color",
|
||||
"propertyName": "LabelColor",
|
||||
"propertySetterName": "setLabelColor",
|
||||
"propertyGetterName": "getLabelColor",
|
||||
"displayName": "Label Color",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 20,
|
||||
"type": "tchmi:framework#/definitions/SolidColor",
|
||||
"category": "Colors",
|
||||
"description": "The font color of text labels.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-label-stroke-color",
|
||||
"propertyName": "LabelStrokeColor",
|
||||
"propertySetterName": "setLabelStrokeColor",
|
||||
"propertyGetterName": "getLabelStrokeColor",
|
||||
"displayName": "Label Stroke Color",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 20,
|
||||
"type": "tchmi:framework#/definitions/SolidColor",
|
||||
"category": "Colors",
|
||||
"description": "The stroke color of graphical symbols.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-label-fill-color",
|
||||
"propertyName": "LabelFillColor",
|
||||
"propertySetterName": "setLabelFillColor",
|
||||
"propertyGetterName": "getLabelFillColor",
|
||||
"displayName": "Label Fill Color",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/Color",
|
||||
"category": "Colors",
|
||||
"description": "The fill color of graphical symbols.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "data-tchmi-additional-key-backdrop-color",
|
||||
"propertyName": "AdditionalKeyBackdropColor",
|
||||
"propertySetterName": "setAdditionalKeyBackdropColor",
|
||||
"propertyGetterName": "getAdditionalKeyBackdropColor",
|
||||
"displayName": "Additional Key Backdrop Color",
|
||||
"visible": true,
|
||||
"themeable": "Standard",
|
||||
"displayPriority": 60,
|
||||
"type": "tchmi:framework#/definitions/Color",
|
||||
"category": "Colors",
|
||||
"description": "The background color of the backdrop behind additional keys.",
|
||||
"readOnly": false,
|
||||
"bindable": true,
|
||||
"defaultBindingMode": "OneWay",
|
||||
"heritable": true,
|
||||
"allowSymbolExpressionsInObject": true,
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
}
|
||||
],
|
||||
"attributeCategories": [
|
||||
{
|
||||
"name": "Behaviour",
|
||||
"displayPriority": 500,
|
||||
"defaultCollapsed": true,
|
||||
"description": "Attributes defining the behaviour of the control."
|
||||
},
|
||||
{
|
||||
"name": "Indirect Input",
|
||||
"displayPriority": 140,
|
||||
"defaultCollapsed": true,
|
||||
"description": "Attributes controlling the indirect input mode via a textbox owned by the keyboard."
|
||||
},
|
||||
{
|
||||
"name": "Labels",
|
||||
"displayPriority": 150,
|
||||
"defaultCollapsed": true,
|
||||
"description": "Attributes defining the labels of the control."
|
||||
}
|
||||
],
|
||||
"functions": [],
|
||||
"events": [
|
||||
{
|
||||
"name": ".onKeyPressStarted",
|
||||
"displayName": ".onKeyPressStarted",
|
||||
"visible": true,
|
||||
"displayPriority": 10,
|
||||
"category": "Control",
|
||||
"description": "The onKeyPressStarted event is fired when the user presses down a key.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:framework#/definitions/TcHmiKeyboardKeyPressedEventObjects",
|
||||
"description": "The event object containing information about the pressed keys."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onKeyPressCanceled",
|
||||
"displayName": ".onKeyPressCanceled",
|
||||
"visible": true,
|
||||
"displayPriority": 11,
|
||||
"category": "Control",
|
||||
"description": "The onKeyPressCanceled event is fired when the user cancels a key press by moving the pointer off the key.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:framework#/definitions/TcHmiKeyboardKeyPressedEventObjects",
|
||||
"description": "The event object containing information about the released keys."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onKeyPressFinished",
|
||||
"displayName": ".onKeyPressFinished",
|
||||
"visible": true,
|
||||
"displayPriority": 12,
|
||||
"category": "Control",
|
||||
"description": "The onKeyPressFinished event is fired when the user finishes pressing a key by releasing a key that was pressed before.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:framework#/definitions/TcHmiKeyboardKeyPressedEventObjects",
|
||||
"description": "The event object containing information about the released keys."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onKeyPressEnded",
|
||||
"displayName": ".onKeyPressEnded",
|
||||
"visible": true,
|
||||
"displayPriority": 13,
|
||||
"category": "Control",
|
||||
"description": "The onKeyPressEnded event is fired after a key press is finished or canceled.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:framework#/definitions/TcHmiKeyboardKeyPressedEventObjects",
|
||||
"description": "The event object containing information about the released keys."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onIndirectInputAccepted",
|
||||
"displayName": ".onIndirectInputAccepted",
|
||||
"visible": true,
|
||||
"displayPriority": 14,
|
||||
"category": "Control",
|
||||
"description": "The onIndirectInputAccepted event is fired when the user accepts the indirect input.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:general#/definitions/String",
|
||||
"description": "The new indirect input value."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onIndirectInputCanceled",
|
||||
"displayName": ".onIndirectInputCanceled",
|
||||
"visible": true,
|
||||
"displayPriority": 15,
|
||||
"category": "Control",
|
||||
"description": "The onIndirectInputCanceled event is fired when the user cancels the indirect input.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:general#/definitions/String",
|
||||
"description": "The canceled indirect input value."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onLayoutLoaded",
|
||||
"displayName": ".onLayoutLoaded",
|
||||
"visible": true,
|
||||
"displayPriority": 16,
|
||||
"category": "Control",
|
||||
"description": "The onLayoutLoaded event is fired when the layout file was fetched, parsed and the keys were created.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:framework#/definitions/TcHmiKeyboardLayoutFileEventObject",
|
||||
"description": "The event object containing information about the layout."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": ".onLayoutActivated",
|
||||
"displayName": ".onLayoutActivated",
|
||||
"visible": true,
|
||||
"displayPriority": 17,
|
||||
"category": "Control",
|
||||
"description": "The onLayoutActivated event is fired when one of the layouts in the current layout file is activated.",
|
||||
"heritable": true,
|
||||
"arguments": [
|
||||
{
|
||||
"type": "tchmi:framework#/definitions/TcHmiKeyboardLayoutEventObject",
|
||||
"description": "The event object containing information about the layout."
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"dataTypes": [
|
||||
{
|
||||
"schema": "Schema/Types.Schema.json"
|
||||
}
|
||||
],
|
||||
"languages": {
|
||||
"en": "Lang/Language.en.json",
|
||||
"de": "Lang/Language.de.json"
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 246 B |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"$schema": "../../../TwinCAT-HMI-Common/JsonSchemas/Language.Schema.json",
|
||||
"locale": "de",
|
||||
"localizedText": {
|
||||
"Engineering_Not_Configured": "LayoutFile wurde nicht konfiguriert.\nBitte fügen Sie dem Projekt ein Tastaturlayout hinzu und setzen Sie das Attribut LayoutFile.",
|
||||
"InputHint_Min": "Min:",
|
||||
"InputHint_Max": "Max:",
|
||||
"InputHint_Separator": ";"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"$schema": "../../../TwinCAT-HMI-Common/JsonSchemas/Language.Schema.json",
|
||||
"locale": "en",
|
||||
"localizedText": {
|
||||
"Engineering_Not_Configured": "No configured LayoutFile.\nPlease add a keyboard layout to the project and set the LayoutFile attribute.",
|
||||
"InputHint_Min": "Min:",
|
||||
"InputHint_Max": "Max:",
|
||||
"InputHint_Separator": ";"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-04/schema",
|
||||
"definitions": {
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.ProjectKeyboardLayouts": {
|
||||
"type": "string",
|
||||
"description": "A path of a keyboard layout in the project."
|
||||
},
|
||||
"KeyList": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.KeyList"
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard": {
|
||||
"type": "object",
|
||||
"frameworkInstanceOf": "TcHmi.Controls.System.TcHmiControl",
|
||||
"frameworkControlType": "TcHmiKeyboard",
|
||||
"frameworkControlNamespace": "TcHmi.Controls.Beckhoff"
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.KeyList": {
|
||||
"title": "KeyList",
|
||||
"description": "Array of keys.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"engineeringColumns": ["code", "key"],
|
||||
"propertiesMeta": [
|
||||
{
|
||||
"name": "code",
|
||||
"displayName": "Code",
|
||||
"category": "General",
|
||||
"displayPriority": 10,
|
||||
"description": "Special string for each physical key on the keyboard (does not have to be the same as the corresponding char)",
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "key",
|
||||
"displayName": "Key",
|
||||
"category": "General",
|
||||
"displayPriority": 10,
|
||||
"description": "Value of the key pressed",
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
},
|
||||
{
|
||||
"name": "location",
|
||||
"displayName": "Location",
|
||||
"category": "General",
|
||||
"displayPriority": 10,
|
||||
"description": "Location of the pressed key",
|
||||
"defaultValue": null,
|
||||
"defaultValueInternal": null
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string"
|
||||
},
|
||||
"key": {
|
||||
"type": "string"
|
||||
},
|
||||
"unmodifiedKey": {
|
||||
"type": "string"
|
||||
},
|
||||
"location": {
|
||||
"type": "string",
|
||||
"enum": ["standard", "left", "right", "numpad"]
|
||||
}
|
||||
},
|
||||
"required": ["code", "key", "unmodifiedKey", "location"],
|
||||
"additionalProperties": false
|
||||
}
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.ValidationLevel": {
|
||||
"type": "string",
|
||||
"enum": ["None", "HighlightHints", "DisableAccept"]
|
||||
},
|
||||
"TcHmiKeyboard": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard"
|
||||
},
|
||||
"ControlKeyboardLayouts": {
|
||||
"title": "ControlKeyboardLayouts",
|
||||
"description": "Enum of existing Layouts from the control",
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"EN-US_QWERTY_standard",
|
||||
"EN-US_QWERTY_full",
|
||||
"EN-US_QWERTY_compact",
|
||||
"DE-DE_QWERTZ_standard",
|
||||
"DE-DE_QWERTZ_full",
|
||||
"DE-DE_QWERTZ_compact",
|
||||
"PINpad",
|
||||
"Numpad",
|
||||
"Calculator"
|
||||
]
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.KeyPressedEventObjects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"element": {
|
||||
"$ref": "tchmi:framework#/definitions/HTMLElement"
|
||||
},
|
||||
"key": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string"
|
||||
},
|
||||
"key": {
|
||||
"type": "string"
|
||||
},
|
||||
"unmodifiedKey": {
|
||||
"type": "string"
|
||||
},
|
||||
"location": {
|
||||
"type": "string",
|
||||
"enum": ["standard", "left", "right", "numpad"]
|
||||
}
|
||||
},
|
||||
"required": ["code", "key", "unmodifiedKey", "location"],
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"required": ["key", "element"],
|
||||
"additionalProperties": false
|
||||
}
|
||||
},
|
||||
"TcHmiKeyboardKeyPressedEventObjects": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.KeyPressedEventObjects"
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.Layout": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"dimensions": {
|
||||
"width": "number",
|
||||
"height": "number"
|
||||
},
|
||||
"keys": {
|
||||
"type": "array",
|
||||
"items": { "type": "object" }
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
},
|
||||
"TcHmiKeyboardLayout": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.Layout"
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.LayoutFileEventObject": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"layoutFile": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmiKeyboardLayout"
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
},
|
||||
"TcHmiKeyboardLayoutFileEventObject": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.LayoutFileEventObject"
|
||||
},
|
||||
"TcHmi.Controls.Beckhoff.TcHmiKeyboard.LayoutEventObject": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"layout": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmiKeyboardLayout"
|
||||
}
|
||||
},
|
||||
"additionalProperties": false
|
||||
},
|
||||
"TcHmiKeyboardLayoutEventObject": {
|
||||
"$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiKeyboard.LayoutEventObject"
|
||||
}
|
||||
}
|
||||
}
|
||||
195
Packages/Beckhoff.TwinCAT.HMI.Controls.14.4.1/runtimes/native1.12-tchmi/TcHmiKeyboard/Style.css
vendored
Normal file
195
Packages/Beckhoff.TwinCAT.HMI.Controls.14.4.1/runtimes/native1.12-tchmi/TcHmiKeyboard/Style.css
vendored
Normal file
@@ -0,0 +1,195 @@
|
||||
/** Styles for all themes */
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard,
|
||||
.tchmi-keyboard {
|
||||
overflow: hidden;
|
||||
|
||||
--input-hint-separator: '';
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template,
|
||||
.tchmi-keyboard-template {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-padding-container,
|
||||
.tchmi-keyboard-template-padding-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key,
|
||||
.tchmi-keyboard-template-key,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-textbox {
|
||||
position: absolute;
|
||||
box-sizing: border-box;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-additional-keys-container {
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-additional-keys-container.tchmi-in-topmostlayer {
|
||||
position: absolute;
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-backdrop,
|
||||
.tchmi-keyboard-template-backdrop {
|
||||
pointer-events: none;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label,
|
||||
.tchmi-keyboard-template-label {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
display: none;
|
||||
overflow: hidden;
|
||||
/* fix for IE to get active state on key root */
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.top,
|
||||
.tchmi-keyboard-template-label.top {
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.bottom,
|
||||
.tchmi-keyboard-template-label.bottom {
|
||||
align-items: flex-end;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.left,
|
||||
.tchmi-keyboard-template-label.left {
|
||||
justify-content: flex-start;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.right,
|
||||
.tchmi-keyboard-template-label.right {
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.show,
|
||||
.tchmi-keyboard-template-label.show {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.show-always,
|
||||
.tchmi-keyboard-template-label.show-always {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.locked
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.show-locked,
|
||||
.tchmi-keyboard-template-key.locked .tchmi-keyboard-template-label.show-locked {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.hide,
|
||||
.tchmi-keyboard-template-label.hide {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.locked
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label.hide-locked,
|
||||
.tchmi-keyboard-template-key.locked .tchmi-keyboard-template-label.hide-locked {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.disabled {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.disabled::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints {
|
||||
position: absolute;
|
||||
box-sizing: border-box;
|
||||
padding: 0;
|
||||
pointer-events: none;
|
||||
overflow: hidden;
|
||||
display: grid;
|
||||
align-content: center;
|
||||
grid-template-columns: repeat(4, minmax(auto, min-content));
|
||||
grid-template-rows: repeat(2, min-content);
|
||||
container: input-hints / size;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints.textbox-overlay {
|
||||
align-content: space-between;
|
||||
justify-content: end;
|
||||
padding: 3px 5px 3px 25%;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints.textbox-overlay.left-aligned {
|
||||
justify-content: start;
|
||||
padding: 3px 25% 3px 5px;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span {
|
||||
grid-row: 1 / 3;
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.value {
|
||||
padding-left: 2px;
|
||||
text-align: right;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.value:not(:last-child)::after {
|
||||
content: var(--input-hint-separator);
|
||||
padding-right: 4px;
|
||||
}
|
||||
|
||||
@container input-hints (min-height: 40px) {
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.min {
|
||||
grid-row: 2;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.max {
|
||||
grid-row: 1;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.label {
|
||||
grid-column: 1;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.value {
|
||||
grid-column: 2;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.value:not(:last-child)::after {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.hidden {
|
||||
display: none;
|
||||
}
|
||||
1490
Packages/Beckhoff.TwinCAT.HMI.Controls.14.4.1/runtimes/native1.12-tchmi/TcHmiKeyboard/TcHmiKeyboard.d.ts
vendored
Normal file
1490
Packages/Beckhoff.TwinCAT.HMI.Controls.14.4.1/runtimes/native1.12-tchmi/TcHmiKeyboard/TcHmiKeyboard.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,5 @@
|
||||
<div class="TcHmi_Controls_Beckhoff_TcHmiKeyboard-template tchmi-keyboard-template tchmi-box">
|
||||
<div
|
||||
class="TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-padding-container tchmi-keyboard-template-padding-container"
|
||||
></div>
|
||||
</div>
|
||||
@@ -0,0 +1,107 @@
|
||||
/** Styles for the theme: Base-Dark */
|
||||
|
||||
/* Style for the main element */
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-additional-keys-container,
|
||||
.tchmi-keyboard {
|
||||
--tchmi-background: var(--tchmi-background-color-1);
|
||||
--tchmi-color: var(--tchmi-foreground-color-1);
|
||||
--tchmi-backdrop-background: var(--tchmi-background-color-3);
|
||||
--tchmi-input-background: var(--tchmi-background-color-4);
|
||||
--tchmi-light-text-color: var(--tchmi-foreground-color-4);
|
||||
--tchmi-error-text-color: var(--tchmi-error-color);
|
||||
--tchmi-border-color: var(--tchmi-background-color-2);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard,
|
||||
.tchmi-keyboard {
|
||||
background-color: var(--tchmi-background);
|
||||
box-shadow: var(--tchmi-card-shadow);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key,
|
||||
.tchmi-keyboard-template-key {
|
||||
font-size: var(--tchmi-button-font-size);
|
||||
background: var(--tchmi-button-background);
|
||||
color: var(--tchmi-button-text-color);
|
||||
border: var(--tchmi-button-border);
|
||||
box-shadow: var(--tchmi-button-shadow);
|
||||
}
|
||||
|
||||
/* tchmibutton, not disabled, not operate-disallowed, mouse over, mousedown on it and still pressed */
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard:not(.TcHmi_Controls_System_TcHmiControl-disabled):not(
|
||||
.TcHmi_Controls_System_TcHmiControl-operate-disallowed
|
||||
)
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.hover.down,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-additional-keys-container
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.hover.down,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard:not(.TcHmi_Controls_System_TcHmiControl-disabled):not(
|
||||
.TcHmi_Controls_System_TcHmiControl-operate-disallowed
|
||||
)
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.down
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.additional-key.hover,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.show-additional-keys,
|
||||
.tchmi-keyboard:not(.tchmi-control-disabled):not(.tchmi-control-operate-disallowed)
|
||||
.tchmi-keyboard-template-key.hover.down,
|
||||
.tchmi-keyboard:not(.tchmi-control-disabled):not(.tchmi-control-operate-disallowed)
|
||||
.tchmi-keyboard-template-key.down
|
||||
.tchmi-keyboard-template-key.additional-key.hover,
|
||||
.tchmi-keyboard-template-key.show-additional-keys {
|
||||
background: var(--tchmi-button-background-pressed);
|
||||
color: var(--tchmi-button-text-color-pressed);
|
||||
border: var(--tchmi-button-border-pressed);
|
||||
box-shadow: var(--tchmi-button-shadow-pressed);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.active,
|
||||
.tchmi-keyboard-template-key.active {
|
||||
background: var(--tchmi-highlight-button-background-pressed);
|
||||
color: var(--tchmi-highlight-button-text-color-pressed);
|
||||
border: var(--tchmi-highlight-button-border-pressed);
|
||||
box-shadow: var(--tchmi-highlight-button-shadow-pressed);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-backdrop,
|
||||
.tchmi-keyboard-template-backdrop {
|
||||
background-color: var(--tchmi-backdrop-background);
|
||||
box-shadow: var(--tchmi-popup-shadow);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label svg,
|
||||
.tchmi-keyboard-template-label svg {
|
||||
fill: none;
|
||||
stroke: currentColor;
|
||||
stroke-width: 1.1px;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-textbox {
|
||||
border: 1px solid var(--tchmi-border-color);
|
||||
color: var(--tchmi-color);
|
||||
background: var(--tchmi-input-background);
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
font-style: inherit;
|
||||
font-weight: inherit;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-textbox:focus {
|
||||
/* A blinking cursor is enough for ourself. The manipulated text element is highlighted. */
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.disabled::after {
|
||||
background-color: var(--tchmi-disabled-color);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints {
|
||||
color: var(--tchmi-light-text-color);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.violated {
|
||||
color: var(--tchmi-error-text-color);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.violated::after {
|
||||
color: var(--tchmi-light-text-color);
|
||||
}
|
||||
@@ -0,0 +1,108 @@
|
||||
/** Styles for the theme: Base */
|
||||
|
||||
/* Style for the main element */
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-additional-keys-container,
|
||||
.tchmi-keyboard {
|
||||
--tchmi-background: var(--tchmi-background-color-1);
|
||||
--tchmi-color: var(--tchmi-foreground-color-1);
|
||||
--tchmi-backdrop-background: var(--tchmi-background-color-4);
|
||||
--tchmi-input-background: var(--tchmi-background-color-4);
|
||||
--tchmi-light-text-color: var(--tchmi-foreground-color-3);
|
||||
--tchmi-error-text-color: var(--tchmi-error-color);
|
||||
--tchmi-border-color: var(--tchmi-background-color-2);
|
||||
--tchmi-button-border-color: var(--tchmi-foreground-color-3);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard,
|
||||
.tchmi-keyboard {
|
||||
background-color: var(--tchmi-background);
|
||||
box-shadow: var(--tchmi-card-shadow);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key,
|
||||
.tchmi-keyboard-template-key {
|
||||
font-size: var(--tchmi-button-font-size);
|
||||
background: var(--tchmi-button-background);
|
||||
color: var(--tchmi-button-text-color);
|
||||
border: var(--tchmi-button-border);
|
||||
box-shadow: var(--tchmi-button-shadow);
|
||||
}
|
||||
|
||||
/* tchmibutton, not disabled, not operate-disallowed, mouse over, mousedown on it and still pressed */
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard:not(.TcHmi_Controls_System_TcHmiControl-disabled):not(
|
||||
.TcHmi_Controls_System_TcHmiControl-operate-disallowed
|
||||
)
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.hover.down,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-additional-keys-container
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.hover.down,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard:not(.TcHmi_Controls_System_TcHmiControl-disabled):not(
|
||||
.TcHmi_Controls_System_TcHmiControl-operate-disallowed
|
||||
)
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.down
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.additional-key.hover,
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.show-additional-keys,
|
||||
.tchmi-keyboard:not(.tchmi-control-disabled):not(.tchmi-control-operate-disallowed)
|
||||
.tchmi-keyboard-template-key.hover.down,
|
||||
.tchmi-keyboard:not(.tchmi-control-disabled):not(.tchmi-control-operate-disallowed)
|
||||
.tchmi-keyboard-template-key.down
|
||||
.tchmi-keyboard-template-key.additional-key.hover,
|
||||
.tchmi-keyboard-template-key.show-additional-keys {
|
||||
background: var(--tchmi-button-background-pressed);
|
||||
color: var(--tchmi-button-text-color-pressed);
|
||||
border: var(--tchmi-button-border-pressed);
|
||||
box-shadow: var(--tchmi-button-shadow-pressed);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.active,
|
||||
.tchmi-keyboard-template-key.active {
|
||||
background: var(--tchmi-highlight-button-background-pressed);
|
||||
color: var(--tchmi-highlight-button-text-color-pressed);
|
||||
border: var(--tchmi-highlight-button-border-pressed);
|
||||
box-shadow: var(--tchmi-highlight-button-shadow-pressed);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-backdrop,
|
||||
.tchmi-keyboard-template-backdrop {
|
||||
background-color: var(--tchmi-backdrop-background);
|
||||
box-shadow: var(--tchmi-dropdown-shadow);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-label svg,
|
||||
.tchmi-keyboard-template-label svg {
|
||||
fill: none;
|
||||
stroke: currentColor;
|
||||
stroke-width: 1.1px;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-textbox {
|
||||
border: 1px solid var(--tchmi-border-color);
|
||||
color: var(--tchmi-color);
|
||||
background: var(--tchmi-input-background);
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
font-style: inherit;
|
||||
font-weight: inherit;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-textbox:focus {
|
||||
/* A blinking cursor is enough for ourself. The manipulated text element is highlighted. */
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-key.disabled::after {
|
||||
background-color: var(--tchmi-disabled-color);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints {
|
||||
color: var(--tchmi-light-text-color);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.violated {
|
||||
color: var(--tchmi-error-text-color);
|
||||
}
|
||||
|
||||
.TcHmi_Controls_Beckhoff_TcHmiKeyboard-template-hints span.violated::after {
|
||||
color: var(--tchmi-light-text-color);
|
||||
}
|
||||
Reference in New Issue
Block a user