X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.modeling%2Fscl%2FSimantics%2FIssue.scl;h=ee7e51e0be85b398c2d2f96cb3cd3c6b01e7f95a;hp=79d16ac1b9ca19167f07cee35018089e831152e5;hb=1ae2c52a087a20a7fc9c0288b7e2398b4429e20e;hpb=969bd23cab98a79ca9101af33334000879fb60c5 diff --git a/bundles/org.simantics.modeling/scl/Simantics/Issue.scl b/bundles/org.simantics.modeling/scl/Simantics/Issue.scl index 79d16ac1b..ee7e51e0b 100644 --- a/bundles/org.simantics.modeling/scl/Simantics/Issue.scl +++ b/bundles/org.simantics.modeling/scl/Simantics/Issue.scl @@ -1,28 +1,45 @@ -include "Simantics/Entity" hiding (nameOf) -import "Simantics/Model" -import "http://www.simantics.org/Issue-1.2" as ISSUE - -type Issue = Resource -type Severity = Resource - -issuesOf :: Model -> [Issue] -issuesOf model = recurse ISSUE.Issue (toResource model) - where - recurse t r = do - cs = resourceChildrenOf r - issues = map fromResource $ filter isIssue cs - issueGrp = filter (not . isIssue) cs - issues + concatMap (recurse t) issueGrp - isIssue r = isInstanceOf r ISSUE.Issue - -importJava "org.simantics.issues.common.IssueUtils" where - @JavaName newUserIssueForModel - newUserIssueForModel :: Model -> String -> Severity -> [Resource] -> Issue - -userIssueAdvanced :: Model -> String -> Severity -> [Resource] -> Issue -userIssueAdvanced model label severity contexts = do - newUserIssueForModel model label severity contexts - -importJava "org.simantics.issues.common.IssueUtils" where - @JavaName newUserIssueForModel - userIssue :: () -> Issue \ No newline at end of file +include "Simantics/Entity" hiding (nameOf) +import "Simantics/Model" +import "UI/Progress" +import "http://www.simantics.org/Issue-1.2" as ISSUE + +type Issue = Resource +type Severity = Resource + +issuesOf :: Model -> [Issue] +issuesOf model = recurse ISSUE.Issue model + where + recurse t r = do + cs = children r + issues = filter isIssue cs + issueGrp = filter (not . isIssue) cs + issues + concatMap (recurse t) issueGrp + isIssue r = isInstanceOf r ISSUE.Issue + +importJava "org.simantics.issues.common.IssueUtils" where + @JavaName newUserIssueForModel + newUserIssueForModel :: Model -> String -> Severity -> [Resource] -> Issue + +userIssueAdvanced :: Model -> String -> Severity -> [Resource] -> Issue +userIssueAdvanced model label severity contexts = do + newUserIssueForModel model label severity contexts + +importJava "org.simantics.issues.common.IssueUtils" where + @JavaName newUserIssueForModel + userIssue :: () -> Issue + +importJava "org.simantics.db" where + @JavaName Issue + data IssueI + +importJava "org.simantics.db.layer0.validation.ValidationUtils" where + @JavaName validateConstraintsForDomain + validateDomain :: Resource -> [IssueI] + +importJava "org.simantics.modeling.utils.BatchValidations" where + @JavaName runAll + runAllBatchValidations :: ProgressMonitor -> Resource -> Resource -> () + +importJava "org.simantics.issues.common.RunActiveValidations" where + @JavaName run + runActiveValidations :: ProgressMonitor -> Resource -> () \ No newline at end of file