X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Devices%2FmTaskDevice.icl;h=b059b10d7b31cfe5ff9308849c829c4674169783;hb=b3d2bd33a99a2dbdc4907b6876a965c16c37314c;hp=2bd712176462eb77997cdca81cf34faed0071fc5;hpb=00fec1dc0792381759d7cfbfb55f17996a11f1a4;p=mTask.git diff --git a/Devices/mTaskDevice.icl b/Devices/mTaskDevice.icl index 2bd7121..b059b10 100644 --- a/Devices/mTaskDevice.icl +++ b/Devices/mTaskDevice.icl @@ -6,7 +6,7 @@ import iTasks import iTasksTTY import TTY import qualified Data.Map as DM -import Utils +import Utils.SDS import GenBimap import Devices.mTaskSerial @@ -47,5 +47,18 @@ addDevice devices = enterChoice "Device type" [] (map consName{|*|} deviceTypes) deviceSettings "SerialDevice" = getmTaskSerialDevice deviceSettings "TCPDevice" = getmTaskTCPDevice -deviceTypes :: [MTaskResource] -deviceTypes = conses{|*|} + deviceTypes :: [MTaskResource] + deviceTypes = conses{|*|} + +viewDevices :: [MTaskDevice] -> Task () +viewDevices ds = anyTask [ + addDevice deviceStore <<@ Title "Add new device" @! (): + [viewDevice d <<@ Title d.deviceName\\d<-ds]] + <<@ ArrangeWithTabs @! () + +viewDevice :: MTaskDevice -> Task () +viewDevice d = (viewInformation "Device settings" [] d + ||- viewSharedInformation "Channels" [ViewAs dropEmpty] (channels d) @! () + ) <<@ ArrangeHorizontal + where + dropEmpty (r,s,ss) = (filter ((=!=)MTEmpty) r,s,ss)