]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl
cb35884c7048e1ff572bd511ded9bdf436b841dd
[simantics/platform.git] / bundles / org.simantics.spreadsheet.graph / scl / Spreadsheet / All.scl
1 include "Simantics/DB"\r
2 include "Simantics/Ontologies"\r
3 include "Simantics/SCL"\r
4 include "Document/All"\r
5 include "File"\r
6 \r
7 importJava "org.simantics.spreadsheet.common.TableCell" where\r
8     data TableCell\r
9 \r
10 importJava "org.simantics.spreadsheet.common.SpreadsheetCell" where\r
11     data SpreadsheetCell\r
12 \r
13 importJava "org.simantics.spreadsheet.graph.SCL" where\r
14     toVariant :: a -> Variant\r
15     modelsSourceContribution :: Resource -> <ReadGraph> [Variable]\r
16     modelsSourceContributionLabeler :: Variable -> <ReadGraph> String\r
17 \r
18 importJava "org.simantics.spreadsheet.graph.SpreadsheetGraphUtils" where\r
19     @JavaName "fullSynchronization"\r
20     fullSynchronizeSheet :: Variable -> <ReadGraph> Boolean\r
21     evaluateAll :: Variable -> <ReadGraph> ()\r
22     saveInitialCondition :: Variable -> Resource -> String -> <WriteGraph> Resource\r
23     findCell :: Variable -> String -> <ReadGraph> Maybe Variable\r
24     invalidateAll :: Variable -> <ReadGraph> ()\r
25 \r
26 importJava "org.simantics.spreadsheet.util.SpreadsheetUtils" where\r
27     createSheet :: Resource -> String -> <WriteGraph> Resource\r
28     queryCells :: a -> [TableCell]\r
29     modifyCells1 :: [TableCell] -> (TableCell -> TableCell) -> [TableCell]\r
30     modifyCells :: [TableCell] -> [(TableCell -> TableCell)] -> [TableCell]\r
31     organizeCells :: Integer -> [String] -> [TableCell] -> [TableCell]\r
32     applyFont :: IFont -> (TableCell -> Boolean) -> TableCell -> TableCell\r
33     applyAlign :: Integer -> (TableCell -> Boolean) -> TableCell -> TableCell\r
34     applyForeground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell\r
35     applyBackground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell\r
36     simpleFont :: String -> String -> Integer -> IFont\r
37     rgbColor :: Integer -> Integer -> Integer -> IColor\r
38     selectRow :: Integer -> TableCell -> Boolean\r
39     selectColumn :: Integer -> TableCell -> Boolean\r
40     setSCLLine :: Resource -> Integer -> String -> <WriteGraph> ()\r
41     sheetRun :: Resource -> Variable -> <ReadGraph> Variable\r
42     \r
43 importJava "org.simantics.spreadsheet.graph.ExcelImport" where\r
44     importBook :: Resource -> File -> <Proc> ()\r
45 \r
46 createSpreadsheetBookAction :: Resource -> <Proc> ()\r
47 createSpreadsheetBookAction res = do\r
48   syncWrite (\() -> createSpreadsheetBookDefault res)\r
49   ()\r
50   \r
51 createSpreadsheetSheetAction :: Resource -> <Proc> ()\r
52 createSpreadsheetSheetAction res = do\r
53   syncWrite (\() -> createSpreadsheetDefault res)\r
54   ()\r
55 \r
56 createSpreadsheetDefault :: Resource -> <WriteGraph> Resource\r
57 createSpreadsheetDefault library = createSheet library $ findFreshEscapedName "Sheet" library \r
58 \r
59 createSpreadsheetBookDefault :: Resource -> <WriteGraph> Resource\r
60 createSpreadsheetBookDefault library = createSpreadsheetBook library $ findFreshEscapedName "Book" library \r
61 \r
62 createRange :: Resource -> Resource -> String -> String -> <WriteGraph> Resource\r
63 createRange library type_ name expression = do\r
64     range = newResource ()\r
65     claim range L0.InstanceOf type_\r
66     claimRelatedValue range L0.HasName name\r
67     createSCLValue range SHEET.ExpressionRange.cells SHEET.SCLValue expression\r
68     claim range L0.PartOf library\r
69     range\r
70 \r
71 createSpreadsheetBook :: Resource -> String -> <WriteGraph> Resource\r
72 createSpreadsheetBook library name = do\r
73     markUndoPoint ()\r
74     book = newResource ()\r
75     claim book L0.InstanceOf SHEET.Book\r
76     claimRelatedValue book L0.HasName name\r
77     claim book L0.PartOf library\r
78     createSheet book "Sheet"\r
79     addCommentMetadata ("Created Spreadsheet Book " + name)\r
80     book\r
81