Browse Source

Fixes to concrete syntax front-end

Yentl Van Tendeloo 6 years ago
parent
commit
9095484e0d

+ 2 - 1
interface/graphical/main.py

@@ -281,6 +281,7 @@ class Window(object):
 
         #TODO visualize rendered model
         import json
+        print("Got model: " + str(rendered))
         self.visualize(json.loads(rendered))
 
     def open_model(self):
@@ -294,7 +295,7 @@ class Window(object):
 
         self.mm_buttons = []
         for i, t in enumerate(available_types):
-            self.mm_buttons.append(Button(root, text=t, command=lambda : self.create_element(t)))
+            self.mm_buttons.append(Button(root, text=t, command=self.create_element(t)))
             self.mm_buttons[-1].grid(row=1, column=i)
 
     def instantiate_model(self):

+ 9 - 4
interface/graphical/upload_mappers.py

@@ -13,7 +13,12 @@ model_add("MM_rendered_graphical", "SimpleClassDiagrams", open("models/MM_render
 model_add("MM_rendered_plot", "SimpleClassDiagrams", open("models/MM_rendered_plot.mvc", 'r').read())
 model_add("my_CBD", "CausalBlockDiagrams", open("integration/code/my_cbd.mvc", 'r').read())
 model_add("trace_example", "Trace", open("models/trace_example.mvc", 'r').read())
-instantiate("__merged_CBD_RAM", "Association", ("CausalBlockDiagrams/Block", "MM_rendered_graphical/Group"), ID="TracabilityGraphical")
-instantiate("__merged_CBD_RAM", "Association", ("Trace/Signal", "MM_rendered_plot/Dataset"), ID="TracabilityPlot")
-transformation_add_MT({"CausalBlockDiagrams": "CausalBlockDiagrams", "MM_rendered_graphical": "MM_rendered_graphical"}, {"CausalBlockDiagrams": "CausalBlockDiagrams", "MM_rendered_graphical": "MM_rendered_graphical"}, "render_graphical_CBD", open("models/CBD_mapper.mvc", 'r').read())
-transformation_add_MT({"Trace": "Trace", "MM_rendered_plot": "MM_rendered_plot"}, {"Trace": "Trace", "MM_rendered_plot": "MM_rendered_plot"}, "render_plot_trace", open("models/trace_mapper.mvc", 'r').read())
+
+def callback_graphical():
+    instantiate(None, "Association", ("abstract/Block", "rendered/Group"), ID="TracabilityLink")
+
+def callback_plot():
+    instantiate(None, "Association", ("abstract/Signal", "rendered/Dataset"), ID="TracabilityLink")
+
+transformation_add_MT({"abstract": "CausalBlockDiagrams", "rendered": "MM_rendered_graphical"}, {"abstract": "CausalBlockDiagrams", "rendered": "MM_rendered_graphical"}, "render_graphical_CBD", open("models/CBD_mapper.mvc", 'r').read(), callback_graphical)
+transformation_add_MT({"abstract": "Trace", "rendered": "MM_rendered_plot"}, {"abstract": "Trace", "rendered": "MM_rendered_plot"}, "render_plot_trace", open("models/trace_mapper.mvc", 'r').read(), callback_plot)

+ 1 - 0
models/CBD_mapper.mvc

@@ -4,6 +4,7 @@ include "object_operations.alh"
 
 Composite schedule {
     {Contains} Success success {}
+    {Contains} Failure failure {}
 
     {Contains} ForAll render_blocks {
         LHS {

+ 23 - 22
models/trace_mapper.mvc

@@ -4,18 +4,19 @@ include "object_operations.alh"
 
 Composite schedule {
     {Contains} Success success {}
+    {Contains} Failure failure {}
 
     {Contains} ForAll render_dataset {
         LHS {
-            Pre_Abstract/Signal {
+            Pre_abstract/Signal {
                 label = "0"
             }
         }
         RHS {
-            Post_Abstract/Signal post_ds_0 {
+            Post_abstract/Signal post_ds_0 {
                 label = "0"
             }
-            Post_Rendered/Plot post_ds_1 {
+            Post_rendered/Plot post_ds_1 {
                 label = "1"
                 value_title = $
                     String function value(model : Element, name : String, mapping : Element):
@@ -26,7 +27,7 @@ Composite schedule {
                         return False!
                     $
             }
-            Post_Rendered/Dataset post_ds_2 {
+            Post_rendered/Dataset post_ds_2 {
                 label = "2"
                 value_legend = $
                     String function value(model : Element, name : String, mapping : Element):
@@ -41,10 +42,10 @@ Composite schedule {
                         return "solid"!
                     $
             }
-            Post_TracabilityPlot (post_ds_0, post_ds_2) {
+            Post_TracabilityLink (post_ds_0, post_ds_2) {
                 label = "3"
             }
-            Post_Rendered/XAxis post_ds_4 {
+            Post_rendered/XAxis post_ds_4 {
                 label = "4"
                 value_name = $
                     String function value(model : Element, name : String, mapping : Element):
@@ -55,7 +56,7 @@ Composite schedule {
                         return "seconds"!
                     $
             }
-            Post_Rendered/YAxis post_ds_5 {
+            Post_rendered/YAxis post_ds_5 {
                 label = "5"
                 value_name = $
                     String function value(model : Element, name : String, mapping : Element):
@@ -66,13 +67,13 @@ Composite schedule {
                         return "power"!
                     $
             }
-            Post_Rendered/x (post_ds_1, post_ds_4) {
+            Post_rendered/x (post_ds_1, post_ds_4) {
                 label = "6"
             }
-            Post_Rendered/y (post_ds_1, post_ds_5) {
+            Post_rendered/y (post_ds_1, post_ds_5) {
                 label = "7"
             }
-            Post_Rendered/data (post_ds_1, post_ds_2) {
+            Post_rendered/data (post_ds_1, post_ds_2) {
                 label = "8"
             }
         }
@@ -80,39 +81,39 @@ Composite schedule {
 
     {Contains} ForAll render_points {
         LHS {
-            Pre_Abstract/Signal pre_p_0 {
+            Pre_abstract/Signal pre_p_0 {
                 label = "0"
             }
-            Pre_Abstract/Point pre_p_1 {
+            Pre_abstract/Point pre_p_1 {
                 label = "1"
             }
-            Pre_Rendered/Dataset pre_p_2 {
+            Pre_rendered/Dataset pre_p_2 {
                 label = "2"
             }
-            Pre_TracabilityPlot (pre_p_0, pre_p_2) {
+            Pre_TracabilityLink (pre_p_0, pre_p_2) {
                 label = "3"
             }
-            Pre_Abstract/contains (pre_p_0, pre_p_1) {
+            Pre_abstract/contains (pre_p_0, pre_p_1) {
                 label = "4"
             }
         }
         RHS {
-            Post_Abstract/Signal post_p_0 {
+            Post_abstract/Signal post_p_0 {
                 label = "0"
             }
-            Post_Abstract/Point post_p_1 {
+            Post_abstract/Point post_p_1 {
                 label = "1"
             }
-            Post_Rendered/Dataset post_p_2 {
+            Post_rendered/Dataset post_p_2 {
                 label = "2"
             }
-            Post_TracabilityPlot (post_p_0, post_p_2) {
+            Post_TracabilityLink (post_p_0, post_p_2) {
                 label = "3"
             }
-            Post_Abstract/contains (post_p_0, post_p_1) {
+            Post_abstract/contains (post_p_0, post_p_1) {
                 label = "4"
             }
-            Post_Rendered/Datapoint post_p_5 {
+            Post_rendered/Datapoint post_p_5 {
                 label = "5"
                 value_x = $
                     Float function value(model : Element, name : String, mapping : Element):
@@ -123,7 +124,7 @@ Composite schedule {
                         return read_attribute(model, mapping["1"], "y")!
                     $
             }
-            Post_Rendered/point (post_p_2, post_p_5) {
+            Post_rendered/point (post_p_2, post_p_5) {
                 label = "6"
             }
         }