X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.spreadsheet.graph%2Fscl%2FSpreadsheet%2FAll.scl;h=88d8e47aad2448cc299e3721bded398f92dcccd7;hp=cb35884c7048e1ff572bd511ded9bdf436b841dd;hb=82ed7c74dbd83a2a557e781b8674b3262b52da54;hpb=969bd23cab98a79ca9101af33334000879fb60c5 diff --git a/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl b/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl index cb35884c7..88d8e47aa 100644 --- a/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl +++ b/bundles/org.simantics.spreadsheet.graph/scl/Spreadsheet/All.scl @@ -1,81 +1,101 @@ -include "Simantics/DB" -include "Simantics/Ontologies" -include "Simantics/SCL" -include "Document/All" -include "File" - -importJava "org.simantics.spreadsheet.common.TableCell" where - data TableCell - -importJava "org.simantics.spreadsheet.common.SpreadsheetCell" where - data SpreadsheetCell - -importJava "org.simantics.spreadsheet.graph.SCL" where - toVariant :: a -> Variant - modelsSourceContribution :: Resource -> [Variable] - modelsSourceContributionLabeler :: Variable -> String - -importJava "org.simantics.spreadsheet.graph.SpreadsheetGraphUtils" where - @JavaName "fullSynchronization" - fullSynchronizeSheet :: Variable -> Boolean - evaluateAll :: Variable -> () - saveInitialCondition :: Variable -> Resource -> String -> Resource - findCell :: Variable -> String -> Maybe Variable - invalidateAll :: Variable -> () - -importJava "org.simantics.spreadsheet.util.SpreadsheetUtils" where - createSheet :: Resource -> String -> Resource - queryCells :: a -> [TableCell] - modifyCells1 :: [TableCell] -> (TableCell -> TableCell) -> [TableCell] - modifyCells :: [TableCell] -> [(TableCell -> TableCell)] -> [TableCell] - organizeCells :: Integer -> [String] -> [TableCell] -> [TableCell] - applyFont :: IFont -> (TableCell -> Boolean) -> TableCell -> TableCell - applyAlign :: Integer -> (TableCell -> Boolean) -> TableCell -> TableCell - applyForeground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell - applyBackground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell - simpleFont :: String -> String -> Integer -> IFont - rgbColor :: Integer -> Integer -> Integer -> IColor - selectRow :: Integer -> TableCell -> Boolean - selectColumn :: Integer -> TableCell -> Boolean - setSCLLine :: Resource -> Integer -> String -> () - sheetRun :: Resource -> Variable -> Variable - -importJava "org.simantics.spreadsheet.graph.ExcelImport" where - importBook :: Resource -> File -> () - -createSpreadsheetBookAction :: Resource -> () -createSpreadsheetBookAction res = do - syncWrite (\() -> createSpreadsheetBookDefault res) - () - -createSpreadsheetSheetAction :: Resource -> () -createSpreadsheetSheetAction res = do - syncWrite (\() -> createSpreadsheetDefault res) - () - -createSpreadsheetDefault :: Resource -> Resource -createSpreadsheetDefault library = createSheet library $ findFreshEscapedName "Sheet" library - -createSpreadsheetBookDefault :: Resource -> Resource -createSpreadsheetBookDefault library = createSpreadsheetBook library $ findFreshEscapedName "Book" library - -createRange :: Resource -> Resource -> String -> String -> Resource -createRange library type_ name expression = do - range = newResource () - claim range L0.InstanceOf type_ - claimRelatedValue range L0.HasName name - createSCLValue range SHEET.ExpressionRange.cells SHEET.SCLValue expression - claim range L0.PartOf library - range - -createSpreadsheetBook :: Resource -> String -> Resource -createSpreadsheetBook library name = do - markUndoPoint () - book = newResource () - claim book L0.InstanceOf SHEET.Book - claimRelatedValue book L0.HasName name - claim book L0.PartOf library - createSheet book "Sheet" - addCommentMetadata ("Created Spreadsheet Book " + name) - book +include "Simantics/DB" +include "Simantics/Ontologies" +include "Simantics/SCL" +include "Document/All" +include "File" + +importJava "org.simantics.spreadsheet.common.TableCell" where + data TableCell + +importJava "org.simantics.spreadsheet.common.TreeTableCell" where + data TreeTableCell + + @JavaName getData + getTreeTableCellData :: TreeTableCell -> a + + createTreeTableCell :: String -> a -> Maybe b -> Integer -> 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 + +importJava "org.simantics.spreadsheet.graph.SCL" where + toVariant :: a -> Variant + modelsSourceContribution :: Resource -> [Variable] + modelsSourceContributionLabeler :: Variable -> String + +importJava "org.simantics.spreadsheet.graph.SpreadsheetGraphUtils" where + @JavaName "fullSynchronization" + fullSynchronizeSheet :: Variable -> Boolean + evaluateAll :: Variable -> () + saveInitialCondition :: Variable -> Resource -> String -> Resource + findCell :: Variable -> String -> Maybe Variable + invalidateAll :: Variable -> () + +importJava "org.simantics.spreadsheet.util.SpreadsheetUtils" where + createSheet :: Resource -> String -> Resource + queryCells :: a -> [TableCell] + modifyCells1 :: [TableCell] -> (TableCell -> TableCell) -> [TableCell] + modifyCells :: [TableCell] -> [(TableCell -> TableCell)] -> [TableCell] + organizeCells :: Integer -> [String] -> [TableCell] -> [TableCell] + applyFont :: IFont -> (TableCell -> Boolean) -> TableCell -> TableCell + applyAlign :: Integer -> (TableCell -> Boolean) -> TableCell -> TableCell + applyForeground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell + applyBackground :: IColor -> (TableCell -> Boolean) -> TableCell -> TableCell + simpleFont :: String -> String -> Integer -> IFont + rgbColor :: Integer -> Integer -> Integer -> IColor + selectRow :: Integer -> TableCell -> Boolean + selectColumn :: Integer -> TableCell -> Boolean + setSCLLine :: Resource -> Integer -> String -> () + sheetRun :: Resource -> Variable -> Variable + +importJava "org.simantics.spreadsheet.graph.SpreadsheetSessionManager" where + removeSpreadsheetSession :: Variable -> () + +importJava "org.simantics.spreadsheet.graph.ExcelImport" where + importBook :: Resource -> File -> () + +createSpreadsheetBookAction :: Resource -> () +createSpreadsheetBookAction res = do + syncWrite (\() -> createSpreadsheetBookDefault res) + () + +createSpreadsheetSheetAction :: Resource -> () +createSpreadsheetSheetAction res = do + syncWrite (\() -> createSpreadsheetDefault res) + () + +createSpreadsheetDefault :: Resource -> Resource +createSpreadsheetDefault library = createSheet library $ findFreshEscapedName "Sheet" library + +createSpreadsheetBookDefault :: Resource -> Resource +createSpreadsheetBookDefault library = createSpreadsheetBook library $ findFreshEscapedName "Book" library + +createRange :: Resource -> Resource -> String -> String -> Resource +createRange library type_ name expression = do + range = newResource () + claim range L0.InstanceOf type_ + claimRelatedValue range L0.HasName name + createSCLValue range SHEET.ExpressionRange.cells SHEET.SCLValue expression + claim range L0.PartOf library + range + +createSpreadsheetBook :: Resource -> String -> Resource +createSpreadsheetBook library name = do + markUndoPoint () + book = newResource () + claim book L0.InstanceOf SHEET.Book + claimRelatedValue book L0.HasName name + claim book L0.PartOf library + createSheet book "Sheet" + addCommentMetadata ("Created Spreadsheet Book " + name) + book \ No newline at end of file