X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Shares%2FmTaskShare.icl;h=eb799df050e1113041f9c1e32d290fed291c8e19;hb=28f4e19f893889e6d19d8c0653a643ae1580fd6d;hp=ad2e3413d857482a81480b81e083280b816a4f09;hpb=b3d2bd33a99a2dbdc4907b6876a965c16c37314c;p=mTask.git diff --git a/Shares/mTaskShare.icl b/Shares/mTaskShare.icl index ad2e341..eb799df 100644 --- a/Shares/mTaskShare.icl +++ b/Shares/mTaskShare.icl @@ -1,2 +1,42 @@ implementation module Shares.mTaskShare +import Utils.SDS +import Utils.Devices +import iTasks +import mTask +from Data.Func import $ + +manageShares :: [MTaskShare] -> Task () +manageShares shares = forever (enterChoice "Choose share to update" [ChooseFromGrid id] shares) + @! () + + + +/* + forever (enterChoice "Choose share to update" [ChooseFromGrid id] shares + >&^ \st->whileUnchanged st $ \msh->case msh of + Nothing = viewShares shares @! zero + Just sh = forever ( + viewSharedInformation "View value" [] (getSDSStore sh) + >>* [OnAction (Action "Update") (withValue (Just o updateInformation "New value" []))] + >>= updateShare sh + ) + + ) @! ()*/ + +updateShare :: MTaskShare a -> Task MTaskShare | toByteCode, iTask a +updateShare sh=:{withTask,identifier} a = getDeviceByName withTask + >>= sendMessages [MTUpd identifier $ toString $ toByteCode a] + >>| treturn sh + + +viewShares :: [MTaskShare] -> Task () +viewShares sh = anyTask (map viewShare sh) <<@ ArrangeHorizontal @! () + +viewShare :: MTaskShare -> Task () +viewShare m = treturn ()//viewSharedInformation "" [] (getSDSStore m) + //<<@ Title ("SDS: " +++ toString m.identifier) @! () + +instance zero MTaskShare where + zero = {withTask="",identifier=0,realShare="",initVal=""} +