]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.issues.ui.ontology/graph/IssueUI.pgraph
Preliminary support for purely Variable based dynamic issue sources
[simantics/platform.git] / bundles / org.simantics.issues.ui.ontology / graph / IssueUI.pgraph
index 74296d8bc035f939c8b1c6e0613a7ac57960f93d..abc2da18bc877746ef74cbac9ab166ef5411e779 100644 (file)
@@ -30,38 +30,26 @@ UI.ShowNormalIssues <R L0.HasProperty : L0.FunctionalRelation
 UI.ShowUserIssues <R L0.HasProperty : L0.FunctionalRelation
     L0.HasRange L0.Boolean
 
-//--------------------------------------------------------------------------
-// Issue Browse context
 
-IBC = UI.IssueBrowseContext : VP.BrowseContext
+//--------------------------------------------------------------------------
+// ACTIONS
 
-// Rules
-IBC.IssueLabelDecorationRule : VP.LabelDecorationRule
-IBC.IssueImageDecorationRule : VP.ImageDecorationRule
-IBC.IssueContextDropAction : ACT.DropAction
-IBC.UserIssueTest : VP.Test
+ACTIONS = UI.Actions : L0.Library
 
-// UIpoint
-IBC
-    @VP.customLabelDecorationRule ISSUE.Issue IBC.IssueLabelDecorationRule
-    @VP.dropActionContribution ISSUE.Issue IBC.IssueContextDropAction 1.0
+ACTIONS.SeverityActionCategory : VP.ActionCategory
+    L0.HasLabel "Set Severity"
+    VP.ActionCategory.IsSubmenu L0.True
 
-//--------------------------------------------------------------------------
-// Batch Issue Source Browse context
+ACTIONS.SetSeverityAction <T ACT.Action
+    >-- ACTIONS.SetSeverityAction.HasSeverity --> ISSUE.Severity <R L0.DependsOn : L0.FunctionalRelation
 
-BISBC = UI.BatchIssueSourceBrowseContext : VP.BrowseContext
 
-// Rules
-BISBC.IssueSourceRule : VP.ChildRule
-BISBC.IssueSourceLabelRule : VP.LabelRule
-BISBC.IssueSourceCheckRule : VP.CheckedStateRule
+//--------------------------------------------------------------------------
+// Issue Browse context
 
-// UIpoint
-BISBC
-    @VP.relationChildRule         SIMU.Model   L0.ConsistsOf ISSUE.IssueSource
-    @VP.customLabelRule           ISSUE.IssueSource VP.ResourceLabelLabelRule
-    @VP.customCheckedStateRule    ISSUE.IssueSource BISBC.IssueSourceCheckRule
+IBC = UI.IssueBrowseContext : VP.BrowseContext
 
+// Node types
 IBC.FatalFolder : VP.ResourceNodeType
 IBC.ErrorFolder : VP.ResourceNodeType
 IBC.WarningFolder : VP.ResourceNodeType
@@ -71,18 +59,36 @@ IBC.UnknownFolder : VP.ResourceNodeType
 
 IBC.Issue : VP.NodeType
     VP.HasContentType "Variable"
+IBC.DynamicIssueHierarchyNode : VP.NodeType
+    VP.HasContentType "Variable"
 
+// Rules
 IBC.SeverityFolderRule <T VP.ChildRule
     >-- IBC.SeverityFolderRule.HasSeverity --> ISSUE.Severity <R L0.DependsOn : L0.FunctionalRelation
-
 IBC.SeverityChildRule <T VP.ChildRule
     >-- IBC.SeverityChildRule.HasSeverity --> ISSUE.Severity <R L0.DependsOn : L0.FunctionalRelation
+IBC.DynamicIssueSourceRule : VP.ChildRule
+    L0.HasDescription "Looks for all ISSUE.DynamicIssueSource instances from the active index roots. Produces a separate subtree out of each dynamic issue source."
+IBC.DynamicIssueSourceHierarchyRule : VP.ChildRule
+    L0.HasDescription "Looks for all ISSUE.DynamicIssueSource instances from the active index roots. Produces a separate subtree out of each dynamic issue source."
 
 IBC.SeverityFolderLabelRule <T VP.LabelRule
     >-- IBC.SeverityFolderLabelRule.HasSeverity --> ISSUE.Severity <R L0.DependsOn : L0.FunctionalRelation
+IBC.IssueLabelRule : VP.LabelRule
+IBC.IssueImageRule : VP.ImageRule
+
+IBC.IssueLabelDecorationRule : VP.LabelDecorationRule
+IBC.IssueImageDecorationRule : VP.ImageDecorationRule
+IBC.IssueContextDropAction : ACT.DropAction
+IBC.UserIssueTest : VP.Test
 
+// Browse context
 IBC
     // Structure
+    @VP.customChildRule PROJECT.Project 
+        _ : IBC.SeverityFolderRule
+            IBC.SeverityFolderRule.HasSeverity ISSUE.Severity.Note
+        IBC.NoteFolder
     @VP.customChildRule PROJECT.Project 
         _ : IBC.SeverityFolderRule
             IBC.SeverityFolderRule.HasSeverity ISSUE.Severity.Fatal
@@ -99,11 +105,10 @@ IBC
         _ : IBC.SeverityFolderRule
             IBC.SeverityFolderRule.HasSeverity ISSUE.Severity.Info
         IBC.InfoFolder
-    @VP.customChildRule PROJECT.Project 
-        _ : IBC.SeverityFolderRule
-            IBC.SeverityFolderRule.HasSeverity ISSUE.Severity.Note
-        IBC.NoteFolder
-        
+    @VP.customChildRule PROJECT.Project
+        IBC.DynamicIssueSourceRule
+        IBC.DynamicIssueHierarchyNode
+    
     // Content
     @VP.customChildRule IBC.FatalFolder 
         _ : IBC.SeverityChildRule
@@ -125,7 +130,10 @@ IBC
         _ : IBC.SeverityChildRule
             IBC.SeverityChildRule.HasSeverity ISSUE.Severity.Note
         IBC.Issue
-        
+    @VP.customChildRule IBC.DynamicIssueHierarchyNode
+        IBC.DynamicIssueSourceHierarchyRule
+        IBC.DynamicIssueHierarchyNode
+    
     // Labels
     @VP.customLabelRule IBC.FatalFolder 
         _ : IBC.SeverityFolderLabelRule
@@ -142,9 +150,10 @@ IBC
     @VP.customLabelRule IBC.NoteFolder 
         _ : IBC.SeverityFolderLabelRule
             IBC.SeverityFolderLabelRule.HasSeverity ISSUE.Severity.Note
-    @VP.customLabelRule IBC.Issue 
-        IBC.IssueLabelRule : VP.ChildRule
+    @VP.customLabelRule IBC.Issue IBC.IssueLabelRule
+    @VP.customLabelRule IBC.DynamicIssueHierarchyNode IBC.IssueLabelRule
     @VP.customVisualsRuleWithPriorityAndTest IBC.Issue VP.VariableLabelModifierRule  1.0 IBC.UserIssueTest
+    @VP.customLabelDecorationRule ISSUE.Issue IBC.IssueLabelDecorationRule
     
     // Images
     @VP.constantImageRule IBC.FatalFolder SILK.bomb
@@ -153,20 +162,13 @@ IBC
     @VP.constantImageRule IBC.InfoFolder SILK.information
     @VP.constantImageRule IBC.NoteFolder SILK.note
     @VP.constantImageRule IBC.UnknownFolder SILK.help
-    @VP.customLabelRule IBC.Issue 
-        IBC.IssueImageRule : VP.ImageRule
-
-// ACTIONS
-
-ACTIONS = UI.Actions : L0.Library
-
-ACTIONS.SeverityActionCategory : VP.ActionCategory
-    L0.HasLabel "Set Severity"
-    VP.ActionCategory.IsSubmenu L0.True
-
-ACTIONS.SetSeverityAction <T ACT.Action
-    >-- ACTIONS.SetSeverityAction.HasSeverity --> ISSUE.Severity <R L0.DependsOn : L0.FunctionalRelation
+    @VP.customImageRule IBC.Issue IBC.IssueImageRule
+    @VP.customImageRule IBC.DynamicIssueHierarchyNode IBC.IssueImageRule
+    
+    // Drop actions
+    @VP.dropActionContribution ISSUE.Issue IBC.IssueContextDropAction 1.0
 
+// Action context for context menu
 IAC = UI.ActionContext : VP.BrowseContext
     // Set severity
     @VP.actionContribution "Fatal" IBC.Issue SILK.bomb ACTIONS.SeverityActionCategory 
@@ -193,6 +195,27 @@ IAC = UI.ActionContext : VP.BrowseContext
     @VP.actionContribution "Unhide" IBC.Issue SILK.shading VP.EditActionCategory 
         ACTIONS.Unhide : ACT.Action
 
+
+//--------------------------------------------------------------------------
+// Batch Issue Source Browse context
+
+BISBC = UI.BatchIssueSourceBrowseContext : VP.BrowseContext
+
+// Rules
+//BISBC.IssueSourceRule : VP.ChildRule
+//BISBC.IssueSourceLabelRule : VP.LabelRule
+BISBC.IssueSourceCheckRule : VP.CheckedStateRule
+
+// UIpoint
+BISBC
+    @VP.relationChildRule         SIMU.Model   L0.ConsistsOf ISSUE.IssueSource
+    @VP.customLabelRule           ISSUE.IssueSource VP.ResourceLabelLabelRule
+    @VP.customCheckedStateRule    ISSUE.IssueSource BISBC.IssueSourceCheckRule
+
+
+//--------------------------------------------------------------------------
+// Issue view UI definitions
+
 UI.IssueView.Description 
     @VIEWS.Explorer.Column.full "single" "Description" "LEFT" 150 "Description" true 1
 UI.IssueView.Resource 
@@ -226,7 +249,7 @@ UI.IssueView : VIEWS.TabFolder
                             VIEWS.Explorer.persistor MOD.Functions.standardPersistor
                             VIEWS.Explorer.browseContext _ : VIEWS.ResourceURI
                               VIEWS.ResourceURI.HasResource IBC
-            UI.IssueView.Batch : VIEWS.Composite            
+            UI.IssueView.Batch : VIEWS.Composite
                 SG.Node.children _ : L0.List
                     @L0.list
                         UI.IssueView.Batch.Explorer : VIEWS.Explorer