X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.spreadsheet.graph%2Fscl%2FSpreadsheet%2FAll.scl;h=b493d65f53b549a5380b52e8b674d4273b395f5b;hb=e3fc307246a9ff226845a93181bc798d03966b14;hp=ddfd3bef027adc184773dc43efe6cac5316c94ad;hpb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl b/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl index ddfd3bef0..b493d65f5 100644 --- a/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl +++ b/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl @@ -1,15 +1,64 @@ include "Simantics/DB" include "Simantics/Ontologies" include "Simantics/SCL" +include "Simantics/UI" include "Document/All" include "File" + +effect SpreadsheetTransaction + "spreadsheetTransaction" + "org.simantics.spreadsheet.Transaction" + +importJava "org.simantics.spreadsheet.graph.ExternalRef" where + data ExternalRef + importJava "org.simantics.spreadsheet.common.TableCell" where data TableCell +importJava "java.util.function.Consumer" where + data Consumer + +importJava "org.simantics.spreadsheet.CellEditor" where + data CellEditor + startTransaction :: CellEditor -> OperationMode -> Transaction + @JavaName "edit" + editProperty_ :: CellEditor -> String -> String -> a -> Binding a -> Maybe Consumer -> () + @JavaName "edit" + editContent :: CellEditor -> String -> Variant -> Maybe Consumer -> () + +@inline +editProperty :: Serializable a => CellEditor -> String -> String -> a -> Maybe Consumer -> () +editProperty editor location property value consumer = editProperty_ editor location property value binding consumer + +importJava "org.simantics.spreadsheet.OperationMode" where + data OperationMode + OPERATION :: OperationMode + EDIT_MODE :: OperationMode + +importJava "org.simantics.spreadsheet.Transaction" where + data Transaction + commit :: Transaction -> () + importJava "org.simantics.spreadsheet.common.TreeTableCell" where data TreeTableCell + @JavaName getData + getTreeTableCellData :: TreeTableCell -> a + + createTreeTableCell :: String -> a -> Maybe b -> Integer -> Integer -> Integer -> Boolean -> TreeTableCell + + createTreeTableCell2 :: String -> a -> Maybe b -> a -> Integer -> Integer -> Boolean -> TreeTableCell + + @JavaName getText + treeTableCellText :: TreeTableCell -> String + @JavaName getFont + treeTableCellFont :: TreeTableCell -> Maybe IFont + @JavaName getRow + treeTableCellRow :: TreeTableCell -> Integer + @JavaName getColumn + treeTableCellColumn :: TreeTableCell -> Integer + importJava "org.simantics.spreadsheet.common.SpreadsheetCell" where data SpreadsheetCell @@ -25,6 +74,14 @@ importJava "org.simantics.spreadsheet.graph.SpreadsheetGraphUtils" where saveInitialCondition :: Variable -> Resource -> String -> Resource findCell :: Variable -> String -> Maybe Variable invalidateAll :: Variable -> () + extRefVariable :: Variable -> Variant + extRefActiveVariable :: Variable -> Variant + cellEditor :: Resource -> CellEditor + syncExec :: CellEditor -> OperationMode -> ( a) -> a + cellColumn :: Variable -> Integer + +importJava "org.simantics.spreadsheet.Spreadsheets" where + cellName :: Integer -> Integer -> String importJava "org.simantics.spreadsheet.util.SpreadsheetUtils" where createSheet :: Resource -> String -> Resource @@ -42,10 +99,21 @@ importJava "org.simantics.spreadsheet.util.SpreadsheetUtils" where selectColumn :: Integer -> TableCell -> Boolean setSCLLine :: Resource -> Integer -> String -> () sheetRun :: Resource -> Variable -> Variable - + +sheetRunDefault :: Resource -> Variable +sheetRunDefault sheet = sheetRun sheet (resourceVariable sheet) + +importJava "org.simantics.spreadsheet.graph.SpreadsheetSessionManager" where + removeSpreadsheetSession :: Variable -> () + importJava "org.simantics.spreadsheet.graph.ExcelImport" where importBook :: Resource -> File -> () +importSpreadsheetBookAction :: Resource -> () +importSpreadsheetBookAction res = match fileDialog "foo" [("Excel file", "*.xls"), ("Excel File", "*.xlsx")] with + Nothing -> () + Just file -> importBook res file + createSpreadsheetBookAction :: Resource -> () createSpreadsheetBookAction res = do syncWrite (\() -> createSpreadsheetBookDefault res)