2 include "Simantics/Ontologies"
3 include "Simantics/SCL"
7 importJava "org.simantics.spreadsheet.graph.ExternalRef" where
10 importJava "org.simantics.spreadsheet.common.TableCell" where
13 importJava "org.simantics.spreadsheet.common.TreeTableCell" where
17 getTreeTableCellData :: TreeTableCell -> <Proc> a
19 createTreeTableCell :: String -> a -> Maybe b -> Integer -> Integer -> Integer -> Boolean -> <Proc> TreeTableCell
21 createTreeTableCell2 :: String -> a -> Maybe b -> a -> Integer -> Integer -> Boolean -> <Proc> TreeTableCell
24 treeTableCellText :: TreeTableCell -> <Proc> String
26 treeTableCellFont :: TreeTableCell -> <Proc> Maybe IFont
28 treeTableCellRow :: TreeTableCell -> <Proc> Integer
30 treeTableCellColumn :: TreeTableCell -> <Proc> Integer
32 importJava "org.simantics.spreadsheet.common.SpreadsheetCell" where
35 importJava "org.simantics.spreadsheet.graph.SCL" where
36 toVariant :: a -> Variant
37 modelsSourceContribution :: Resource -> <ReadGraph> [Variable]
38 modelsSourceContributionLabeler :: Variable -> <ReadGraph> String
40 importJava "org.simantics.spreadsheet.graph.SpreadsheetGraphUtils" where
41 @JavaName "fullSynchronization"
42 fullSynchronizeSheet :: Variable -> <ReadGraph> Boolean
43 evaluateAll :: Variable -> <ReadGraph> ()
44 saveInitialCondition :: Variable -> Resource -> String -> <WriteGraph> Resource
45 findCell :: Variable -> String -> <ReadGraph> Maybe Variable
46 invalidateAll :: Variable -> <ReadGraph> ()
47 extRefVariable :: Variable -> <ReadGraph> Variant
48 extRefActiveVariable :: Variable -> <ReadGraph> Variant
50 importJava "org.simantics.spreadsheet.util.SpreadsheetUtils" where
51 createSheet :: Resource -> String -> <WriteGraph> Resource
52 queryCells :: a -> [TableCell]
53 modifyCells1 :: [TableCell] -> (TableCell -> TableCell) -> [TableCell]
54 modifyCells :: [TableCell] -> [(TableCell -> TableCell)] -> [TableCell]
55 organizeCells :: Integer -> [String] -> [TableCell] -> [TableCell]
56 applyFont :: IFont -> (TableCell -> Boolean) -> TableCell -> TableCell
57 applyAlign :: Integer -> (TableCell -> Boolean) -> TableCell -> TableCell
58 applyForeground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell
59 applyBackground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell
60 simpleFont :: String -> String -> Integer -> IFont
61 rgbColor :: Integer -> Integer -> Integer -> IColor
62 selectRow :: Integer -> TableCell -> Boolean
63 selectColumn :: Integer -> TableCell -> Boolean
64 setSCLLine :: Resource -> Integer -> String -> <WriteGraph> ()
65 sheetRun :: Resource -> Variable -> <ReadGraph> Variable
67 importJava "org.simantics.spreadsheet.graph.SpreadsheetSessionManager" where
68 removeSpreadsheetSession :: Variable -> <Proc, WriteGraph> ()
70 importJava "org.simantics.spreadsheet.graph.ExcelImport" where
71 importBook :: Resource -> File -> <Proc> ()
73 createSpreadsheetBookAction :: Resource -> <Proc> ()
74 createSpreadsheetBookAction res = do
75 syncWrite (\() -> createSpreadsheetBookDefault res)
78 createSpreadsheetSheetAction :: Resource -> <Proc> ()
79 createSpreadsheetSheetAction res = do
80 syncWrite (\() -> createSpreadsheetDefault res)
83 createSpreadsheetDefault :: Resource -> <WriteGraph> Resource
84 createSpreadsheetDefault library = createSheet library $ findFreshEscapedName "Sheet" library
86 createSpreadsheetBookDefault :: Resource -> <WriteGraph> Resource
87 createSpreadsheetBookDefault library = createSpreadsheetBook library $ findFreshEscapedName "Book" library
89 createRange :: Resource -> Resource -> String -> String -> <WriteGraph> Resource
90 createRange library type_ name expression = do
91 range = newResource ()
92 claim range L0.InstanceOf type_
93 claimRelatedValue range L0.HasName name
94 createSCLValue range SHEET.ExpressionRange.cells SHEET.SCLValue expression
95 claim range L0.PartOf library
98 createSpreadsheetBook :: Resource -> String -> <WriteGraph> Resource
99 createSpreadsheetBook library name = do
101 book = newResource ()
102 claim book L0.InstanceOf SHEET.Book
103 claimRelatedValue book L0.HasName name
104 claim book L0.PartOf library
105 createSheet book "Sheet"
106 addCommentMetadata ("Created Spreadsheet Book " + name)