From 1b5deda313952f49deff51dce9b877867bfca18d Mon Sep 17 00:00:00 2001 From: Mark Herwege Date: Thu, 22 Feb 2024 14:45:23 +0100 Subject: [PATCH] dimmer releaseOnly Signed-off-by: Mark Herwege --- bundles/org.openhab.ui/web/src/assets/sitemap-lexer.nearley | 2 ++ .../web/src/components/pagedesigner/sitemap/dslUtil.js | 2 ++ .../src/components/pagedesigner/sitemap/widget-details.vue | 5 ++++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/bundles/org.openhab.ui/web/src/assets/sitemap-lexer.nearley b/bundles/org.openhab.ui/web/src/assets/sitemap-lexer.nearley index f9f81e5332..34fff7c2af 100644 --- a/bundles/org.openhab.ui/web/src/assets/sitemap-lexer.nearley +++ b/bundles/org.openhab.ui/web/src/assets/sitemap-lexer.nearley @@ -18,6 +18,7 @@ widgetvisiattr: 'visibility=', widgetcolorattr: ['labelcolor=', 'valuecolor=', 'iconcolor='], widgetswitchattr: 'switchSupport', + widgetronlyattr: 'releaseOnly', nlwidget: ['Switch ', 'Selection ', 'Slider ', 'Setpoint ', 'Input ', 'Video ', 'Chart ', 'Webview ', 'Colorpicker ', 'Mapview ', 'Buttongrid ', 'Default '], lwidget: ['Text ', 'Group ', 'Image ', 'Frame '], lparen: '(', @@ -111,6 +112,7 @@ Widget -> %nlwidget _ WidgetAttrs:* WidgetAttrs -> WidgetAttr {% (d) => [d[0]] %} | WidgetAttrs _ WidgetAttr {% (d) => d[0].concat([d[2]]) %} WidgetAttr -> %widgetswitchattr {% (d) => ['switchEnabled', true] %} + | %widgetronlyattr {% (d) => ['releaseOnly', true] %} | %widgetfrcitmattr _ WidgetBooleanAttrValue {% (d) => ['forceAsItem', d[2]] %} | %widgetboolattr _ WidgetBooleanAttrValue {% (d) => [d[0].value, d[2]] %} | %widgetfreqattr _ WidgetAttrValue {% (d) => ['frequency', d[2]] %} diff --git a/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/dslUtil.js b/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/dslUtil.js index 2790cb138d..502d9a483c 100644 --- a/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/dslUtil.js +++ b/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/dslUtil.js @@ -7,6 +7,8 @@ function writeWidget (widget, indent) { if ((Array.isArray(widget.config[key]) && widget.config[key].filter(Boolean).length <= 0)) continue if (key === 'switchEnabled') { dsl += ' switchSupport' + } else if (key === 'releaseOnly') { + dsl += ' releaseOnly' } else if (key === 'frequency') { dsl += ' sendFrequency=' + widget.config[key] } else if (key === 'forceAsItem') { diff --git a/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/widget-details.vue b/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/widget-details.vue index cbf3c79e2f..584a330e57 100644 --- a/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/widget-details.vue +++ b/bundles/org.openhab.ui/web/src/components/pagedesigner/sitemap/widget-details.vue @@ -35,6 +35,9 @@ + + + @@ -87,7 +90,7 @@ export default { Chart: ['service', 'period', 'refresh', 'legend', 'forceAsItem', 'yAxisDecimalPattern'], Webview: ['url', 'height'], Mapview: ['height'], - Slider: ['sendFrequency', 'switchEnabled', 'minValue', 'maxValue', 'step'], + Slider: ['sendFrequency', 'switchEnabled', 'releaseOnly', 'minValue', 'maxValue', 'step'], Setpoint: ['minValue', 'maxValue', 'step'], Colorpicker: ['sendFrequency'], Input: ['inputHint'],