]> gerrit.simantics Code Review - simantics/district.git/commitdiff
Update SCL interface for element selection 09/4509/1
authorReino Ruusu <reino.ruusu@semantum.fi>
Thu, 24 Sep 2020 11:45:24 +0000 (14:45 +0300)
committerReino Ruusu <reino.ruusu@semantum.fi>
Thu, 24 Sep 2020 11:46:38 +0000 (14:46 +0300)
gitlab #62

Change-Id: I511c65f318f8a28297267d539349bc86b6d0bae6

org.simantics.district.selection/scl/Simantics/District/Selection.scl

index 4f1d2705e4a8b114cdccfa35c2b20b08d0914b98..861af9533b860b9089c797801798abe50bc6dae9 100644 (file)
@@ -27,13 +27,27 @@ importJava "org.simantics.district.selection.ElementSelector" where
     @JavaName getResource
     getSelectorResource :: ElementSelector -> Resource
 
-    """
-    Get the elements selected by an element selector object.
-
-    `selectedElements = selectElementsFrom elementSelector model`
-    """
     @JavaName selectElementsFrom
-    selectElementsFrom :: ElementSelector -> Resource -> <ReadGraph> [Resource]
+    selectElementsFrom' :: ElementSelector -> Resource -> <ReadGraph> SelectionResult
+
+"""
+Get the elements selected by an element selector object.
+
+`selectedElements = selectElementsFrom elementSelector model`
+"""
+selectElementsFrom :: ElementSelector -> Resource -> <ReadGraph> [Resource]
+selectElementsFrom s r = selectedElements $ selectElementsFrom' s r
+
+importJava "org.simantics.district.selection.ElementSelector$SelectionResult" where
+    data SelectionResult
+    
+    "Get the list of selected elements"
+    @JavaName elements
+    selectedElements :: SelectionResult -> [Resource]
+    "Number of selected elements with equal selection criteria (for n lowest/n highest selections)"
+    tailCount :: SelectionResult -> Integer
+    "Actual number of elements with selection criteria equal to the last selected element (for n lowest/n highest selections)"
+    tailSize :: SelectionResult -> Integer
 
 data Generator = Model | Diagram Resource | Explicit [Resource]
 data Selector = All | NLowest String Integer | NHighest String Integer