2 import "Simantics/Variables"
3 import "JavaBuiltin" as Java
5 importJava "org.simantics.document.server.DocumentProperties" where
6 data DocumentProperties
8 importJava "org.simantics.document.server.io.IConsole" where
10 addMessage :: IConsole -> String -> <Proc> ()
11 sendEvent :: IConsole -> String -> String -> Vector Dynamic -> <Proc> ()
13 importJava "org.simantics.document.server.io.IDocument" where
15 elementIdToObjectId :: IDocument -> String -> <Proc> String
16 getDocumentURI :: IDocument -> <Proc> String
17 getSessionGUID :: IDocument -> <Proc> String
19 importJava "org.simantics.document.server.io.ITableCell" where
22 importJava "org.simantics.document.server.io.ITreeTableCell" where
25 importJava "org.simantics.document.server.io.IFont" where
29 fontFamily :: IFont -> <Proc> Maybe String
31 fontStyle :: IFont -> <Proc> Maybe String
33 fontHeight :: IFont -> <Proc> Integer
35 importJava "org.simantics.document.server.io.IColor" where
38 importJava "org.simantics.modeling.services.ComponentNamingStrategy" where
39 data ComponentNamingStrategy
41 importJava "org.simantics.document.server.handler.EventHandler" where
44 importJava "org.simantics.document.server.handler.AbstractEventHandler" where
45 data AbstractEventHandler
47 importJava "org.simantics.document.server.bean.Command" where
50 importJava "org.simantics.document.server.bean.DataDefinition" where
53 importJava "org.simantics.document.server.io.CommandContext" where
57 possibleString :: CommandContext -> String -> Maybe String
60 possibleValue :: CommandContext -> String -> Maybe a
63 justValue :: CommandContext -> String -> a
66 containsKey :: CommandContext -> String -> Boolean
68 getKeys :: CommandContext -> [String]
70 importJava "org.simantics.document.server.io.CommandContextMutable" where
71 data CommandContextMutable
74 putString :: CommandContextMutable -> String -> String -> <Proc> CommandContextMutable
76 putValue :: CommandContextMutable -> String -> a -> <Proc> CommandContextMutable
78 merge :: CommandContextMutable -> CommandContext -> <Proc> CommandContextMutable
80 importJava "org.simantics.document.server.io.CommandContextImpl" where
83 commandContext :: () -> CommandContextMutable
85 instance Coercible CommandContextMutable CommandContext where
86 coerce = Java.unsafeCoerce
88 cloneCommandContext :: CommandContext -> <Proc> CommandContextMutable
89 cloneCommandContext context = merge (commandContext ()) context
91 instance Show CommandContext where
92 show ctx = printContext ctx
94 importJava "org.simantics.document.server.io.CommandResult" where
97 importJava "org.simantics.document.server.serverResponse.ServerResponse" where
100 commandResult :: Integer -> String -> CommandContextMutable -> CommandResult
102 importJava "org.simantics.document.server.Functions" where
105 putTuple :: CommandContextMutable -> String -> a -> CommandContextMutable
108 getTuples :: CommandContext -> String -> [Dynamic]
110 printContext :: CommandContext -> String
112 commandList :: Variable -> <ReadGraph> [Command]
114 dataDefinitions :: Variable -> <ReadGraph> [DataDefinition]
116 emptyOnClick :: () -> <ReadGraph> AbstractEventHandler
118 writeEventHandler :: Variable -> (Variable -> (String -> Maybe String) -> <WriteGraph> String) -> <ReadGraph> AbstractEventHandler
119 readEventHandler :: Variable -> (Variable -> (String -> Maybe String) -> <ReadGraph> String) -> <ReadGraph> AbstractEventHandler
120 eventHandler :: ((String -> Maybe String) -> String) -> <ReadGraph> AbstractEventHandler
122 readEventHandler2 :: (CommandContext -> <ReadGraph> Maybe CommandResult) -> <ReadGraph> AbstractEventHandler
123 writeEventHandler2 :: (CommandContext -> <WriteGraph> Maybe CommandResult) -> <ReadGraph> AbstractEventHandler
124 eventHandler2 :: (CommandContext -> Maybe CommandResult) -> <ReadGraph> AbstractEventHandler
126 responseHandler :: Variable -> String -> <ReadGraph> AbstractEventHandler
128 sclStateVariable :: Variable -> Variable -> String -> <ReadGraph> Variable
129 sclStateValueOrDefault :: Variable -> Variable -> String -> a -> <ReadGraph> a
130 setSclStateValue :: Variable -> Variable -> String -> a -> <WriteGraph> ()
132 projectComponentState :: Variable -> String -> a -> <ReadGraph> a
133 setProjectComponentState :: Variable -> String -> a -> <WriteGraph> ()
135 documentModelContribution :: Resource -> <ReadGraph> [Variable]
136 documentModelContributionLabel :: Variable -> <ReadGraph> String
138 @JavaName getPropertyValueCached
139 propertyValueCached_ :: Variable -> String -> Binding a -> <ReadGraph> a
141 stateVariable :: Variable -> <ReadGraph> Variable
143 compileDocumentSCLValueExpression :: Variable -> <ReadGraph> String
145 primitiveProperties :: <Proc> DocumentProperties
147 propertyValueCached :: Serializable a => Typeable a => Variable -> String -> <ReadGraph> a
148 propertyValueCached var prop = propertyValueCached_ var prop binding
150 displayValue :: Variable -> String -> <ReadGraph> String
151 displayValue var str = propertyValue (property var str) "HasDisplayValue"
153 displayValue0 :: Variable -> <ReadGraph> String
154 displayValue0 var = propertyValue var "HasDisplayValue"
156 consoleLog :: CommandContext -> String -> ()
157 consoleLog context message = match possibleValue context "console" with
159 Just console -> runProc $ addMessage console message
161 contextDocument :: CommandContext -> <Proc> IDocument
162 contextDocument ctx = justValue ctx "__document__"