X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=Shares%2FmTaskShare.icl;h=eb799df050e1113041f9c1e32d290fed291c8e19;hb=28f4e19f893889e6d19d8c0653a643ae1580fd6d;hp=836b50480db6cdcca8bf0f11f5f8b3aa7cfe7c47;hpb=7fec7868123d56d410e807042cb3e031ebda12b9;p=mTask.git diff --git a/Shares/mTaskShare.icl b/Shares/mTaskShare.icl index 836b504..eb799df 100644 --- a/Shares/mTaskShare.icl +++ b/Shares/mTaskShare.icl @@ -1,11 +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 st = anyTask (map viewer st) +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=""} -viewer :: MTaskShare -> Task () -viewer m = viewSharedInformation "" [] (getSDSStore m) - <<@ Title ("SDS: " +++ toString m.identifier) @! ()