X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Shares%2FmTaskShare.dcl;h=57855c13bb93ee1a36f925cd88b919d3ba9544eb;hb=8782aef8ee6b8e0d3be35bee36b519212bdd8de9;hp=df4a2f16fa24ccc4d3e4069a29f55973530909b5;hpb=18c1286739897b65578e87b17167c6cef1922a3b;p=mTask.git diff --git a/Shares/mTaskShare.dcl b/Shares/mTaskShare.dcl index df4a2f1..57855c1 100644 --- a/Shares/mTaskShare.dcl +++ b/Shares/mTaskShare.dcl @@ -2,26 +2,37 @@ definition module Shares.mTaskShare import iTasks import iTasks._Framework.Serialization +import mTask +import Devices.mTaskDevice -derive class iTask MTaskShareType +derive class iTask MTaskShare -derive gEditor MTaskShare -derive gText MTaskShare -derive JSONEncode MTaskShare -derive JSONDecode MTaskShare -derive gDefault MTaskShare -derive gEq MTaskShare - -:: MTaskShareType = MTaskWithShare String | MTaskLens String :: MTaskShare = - {withTask :: String + {withTask :: [String] ,identifier :: Int - ,realShare :: MTaskShareType - ,value :: String - ,dynvalue :: Dynamic + ,value :: BCValue } -manageShares :: [MTaskShare] -> Task () +instance == MTaskShare + +//Constructor +makeShare :: String Int BCValue -> MTaskShare + +//General viewing task +manageShares :: Task [MTaskDevice] +//manageShares :: [MTaskShare] -> Task MTaskShare + +updateShares :: MTaskDevice ([MTaskShare] -> [MTaskShare]) -> Task [MTaskShare] + +//Clean out shares when a task has been removed +cleanSharesTask :: Int MTaskDevice -> Task [MTaskShare] +//cleanSharesTask :: Int MTaskDevice -> Task [MTaskShare] +//Clean out shares when a device has been removed + +updateShareFromPublish :: MTaskDevice Int BCValue -> Task BCValue +//updateShare :: Int BCValue -> Task [MTaskShare] + +getRealShare :: MTaskDevice MTaskShare -> Shared BCValue +//getRealShare :: MTaskDevice BCShare -> Shared BCValue -///makeShare :: String Int Dynamic -> Task MTaskShare -makeShare :: String Int String -> Task MTaskShare +//updateShare :: Int BCValue -> Task ()