BCValue is existential now
[mTask.git] / Shares / mTaskShare.dcl
index a9c6f39..df4a2f1 100644 (file)
@@ -1,14 +1,27 @@
 definition module Shares.mTaskShare
 
 import iTasks
+import iTasks._Framework.Serialization
 
-:: MTaskShare = {
-               initValue :: Int,
-               withTask :: String,
-               identifier :: Int,
-               realShare :: String
-       }
+derive class iTask MTaskShareType
 
-instance zero 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
+               ,identifier :: Int
+               ,realShare :: MTaskShareType
+               ,value :: String
+               ,dynvalue :: Dynamic
+               }
 
 manageShares :: [MTaskShare] -> Task ()
+
+///makeShare :: String Int Dynamic -> Task MTaskShare
+makeShare :: String Int String -> Task MTaskShare