From 9dcab1293c4b154f47f363650e945384defacba1 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Sat, 7 Jul 2018 19:38:29 +0200 Subject: [PATCH] rework closable interfaces a bit simpleclosable (a: open, close) |- awning (a: stop) | |- extendedawning (s: percentage, moving) |- blind (a: stop) | |- extendedblind (s: percentage, moving) |- closable (s: state) | |- garagegate (a: stop, s: intermediateposition) |- shutter (a: stop) |- smartlock (a, unlatch s: state) simpleclosable (a: open, close) |- closable (a: stop) | |- awning | |- blind | |- shutter | |- garagegate (s: state, intermediatePosition) | |- extendedclosable (s: moving, s: percentage) | |- extendedawning | |- extendedblind | |- extendedshutter |- smartlock (a: unlatch, s: state) --- libnymea/interfaces/awning.json | 3 +++ libnymea/interfaces/blind.json | 7 +------ libnymea/interfaces/closable.json | 6 ++---- libnymea/interfaces/extendedawning.json | 3 +++ libnymea/interfaces/extendedblind.json | 3 +++ libnymea/interfaces/extendedclosable.json | 15 +++++++++++++++ libnymea/interfaces/extendedshutter.json | 3 +++ libnymea/interfaces/garagegate.json | 5 +++++ libnymea/interfaces/interfaces.qrc | 13 +++++++++---- libnymea/interfaces/shutter.json | 7 +------ 10 files changed, 45 insertions(+), 20 deletions(-) create mode 100644 libnymea/interfaces/awning.json create mode 100644 libnymea/interfaces/extendedawning.json create mode 100644 libnymea/interfaces/extendedblind.json create mode 100644 libnymea/interfaces/extendedclosable.json create mode 100644 libnymea/interfaces/extendedshutter.json diff --git a/libnymea/interfaces/awning.json b/libnymea/interfaces/awning.json new file mode 100644 index 00000000..18140ee9 --- /dev/null +++ b/libnymea/interfaces/awning.json @@ -0,0 +1,3 @@ +{ + "extends": "closable" +} diff --git a/libnymea/interfaces/blind.json b/libnymea/interfaces/blind.json index 635cc6a3..18140ee9 100644 --- a/libnymea/interfaces/blind.json +++ b/libnymea/interfaces/blind.json @@ -1,8 +1,3 @@ { - "extends": "simpleclosable", - "actions": [ - { - "name": "stop" - } - ] + "extends": "closable" } diff --git a/libnymea/interfaces/closable.json b/libnymea/interfaces/closable.json index 7a53ce0c..635cc6a3 100644 --- a/libnymea/interfaces/closable.json +++ b/libnymea/interfaces/closable.json @@ -1,10 +1,8 @@ { "extends": "simpleclosable", - "states": [ + "actions": [ { - "name": "state", - "type": "QString", - "allowedValues": ["open", "closed", "opening", "closing"] + "name": "stop" } ] } diff --git a/libnymea/interfaces/extendedawning.json b/libnymea/interfaces/extendedawning.json new file mode 100644 index 00000000..94b3894a --- /dev/null +++ b/libnymea/interfaces/extendedawning.json @@ -0,0 +1,3 @@ +{ + "extends": "extendedclosable" +} diff --git a/libnymea/interfaces/extendedblind.json b/libnymea/interfaces/extendedblind.json new file mode 100644 index 00000000..22512060 --- /dev/null +++ b/libnymea/interfaces/extendedblind.json @@ -0,0 +1,3 @@ +{ + "extends": "blind" +} diff --git a/libnymea/interfaces/extendedclosable.json b/libnymea/interfaces/extendedclosable.json new file mode 100644 index 00000000..1e5e40c8 --- /dev/null +++ b/libnymea/interfaces/extendedclosable.json @@ -0,0 +1,15 @@ +{ + "extends": "closable", + "states": [ + { + "name": "moving", + "type": "bool" + }, + { + "name": "percentage", + "type": "int", + "minimumValue": 0, + "maximumValue": 100 + } + ] +} diff --git a/libnymea/interfaces/extendedshutter.json b/libnymea/interfaces/extendedshutter.json new file mode 100644 index 00000000..94b3894a --- /dev/null +++ b/libnymea/interfaces/extendedshutter.json @@ -0,0 +1,3 @@ +{ + "extends": "extendedclosable" +} diff --git a/libnymea/interfaces/garagegate.json b/libnymea/interfaces/garagegate.json index fe033847..4057719d 100644 --- a/libnymea/interfaces/garagegate.json +++ b/libnymea/interfaces/garagegate.json @@ -1,6 +1,11 @@ { "extends": "closable", "states": [ + { + "name": "state", + "type": "QString", + "allowedValues": ["open", "closed", "opening", "closing"] + }, { "name": "intermediatePosition", "type": "bool" diff --git a/libnymea/interfaces/interfaces.qrc b/libnymea/interfaces/interfaces.qrc index ed311a60..818bd00f 100644 --- a/libnymea/interfaces/interfaces.qrc +++ b/libnymea/interfaces/interfaces.qrc @@ -23,16 +23,21 @@ sensor.json temperaturesensor.json humiditysensor.json + pressuresensor.json connectable.json inputtrigger.json outputtrigger.json power.json - closable.json - smartlock.json - shutter.json simpleclosable.json + closable.json + awning.json + shutter.json blind.json - pressuresensor.json + extendedclosable.json + extendedawning.json + extendedblind.json + extendedshutter.json + smartlock.json diff --git a/libnymea/interfaces/shutter.json b/libnymea/interfaces/shutter.json index 635cc6a3..79b21a7c 100644 --- a/libnymea/interfaces/shutter.json +++ b/libnymea/interfaces/shutter.json @@ -1,8 +1,3 @@ { - "extends": "simpleclosable", - "actions": [ - { - "name": "stop" - } - ] + "extends": "simpleclosable" }