|
|
@@ -1,7 +1,7 @@
|
|
|
"""
|
|
|
Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
|
|
|
|
|
|
-Date: Fri Sep 29 14:38:12 2017
|
|
|
+Date: Fri Sep 29 15:54:59 2017
|
|
|
|
|
|
Model author: Yentl Van Tendeloo
|
|
|
Model name: Modelverse Visual Editor - Tkinter Version
|
|
|
@@ -3965,130 +3965,144 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.states["/running/idle"] = State(7, "/running/idle", self)
|
|
|
self.states["/running/idle"].setEnter(self._running_idle_enter)
|
|
|
|
|
|
+ # state /running/change_metamodel
|
|
|
+ self.states["/running/change_metamodel"] = State(8, "/running/change_metamodel", self)
|
|
|
+ self.states["/running/change_metamodel"].setEnter(self._running_change_metamodel_enter)
|
|
|
+
|
|
|
# state /running/verify_model
|
|
|
- self.states["/running/verify_model"] = State(8, "/running/verify_model", self)
|
|
|
+ self.states["/running/verify_model"] = State(9, "/running/verify_model", self)
|
|
|
|
|
|
# state /running/verify_model/request
|
|
|
- self.states["/running/verify_model/request"] = State(9, "/running/verify_model/request", self)
|
|
|
+ self.states["/running/verify_model/request"] = State(10, "/running/verify_model/request", self)
|
|
|
self.states["/running/verify_model/request"].setEnter(self._running_verify_model_request_enter)
|
|
|
|
|
|
# state /running/verify_model/show_result
|
|
|
- self.states["/running/verify_model/show_result"] = State(10, "/running/verify_model/show_result", self)
|
|
|
+ self.states["/running/verify_model/show_result"] = State(11, "/running/verify_model/show_result", self)
|
|
|
|
|
|
# state /running/verify_model/wait_for_close
|
|
|
- self.states["/running/verify_model/wait_for_close"] = State(11, "/running/verify_model/wait_for_close", self)
|
|
|
+ self.states["/running/verify_model/wait_for_close"] = State(12, "/running/verify_model/wait_for_close", self)
|
|
|
|
|
|
# state /running/open_model
|
|
|
- self.states["/running/open_model"] = State(12, "/running/open_model", self)
|
|
|
+ self.states["/running/open_model"] = State(13, "/running/open_model", self)
|
|
|
|
|
|
# state /running/open_model/query_model
|
|
|
- self.states["/running/open_model/query_model"] = State(13, "/running/open_model/query_model", self)
|
|
|
+ self.states["/running/open_model/query_model"] = State(14, "/running/open_model/query_model", self)
|
|
|
self.states["/running/open_model/query_model"].setEnter(self._running_open_model_query_model_enter)
|
|
|
|
|
|
# state /running/open_model/wait_for_model
|
|
|
- self.states["/running/open_model/wait_for_model"] = State(14, "/running/open_model/wait_for_model", self)
|
|
|
+ self.states["/running/open_model/wait_for_model"] = State(15, "/running/open_model/wait_for_model", self)
|
|
|
|
|
|
# state /running/open_model/got_model
|
|
|
- self.states["/running/open_model/got_model"] = State(15, "/running/open_model/got_model", self)
|
|
|
+ self.states["/running/open_model/got_model"] = State(16, "/running/open_model/got_model", self)
|
|
|
|
|
|
# state /running/open_model/search_metamodels
|
|
|
- self.states["/running/open_model/search_metamodels"] = State(16, "/running/open_model/search_metamodels", self)
|
|
|
+ self.states["/running/open_model/search_metamodels"] = State(17, "/running/open_model/search_metamodels", self)
|
|
|
self.states["/running/open_model/search_metamodels"].setEnter(self._running_open_model_search_metamodels_enter)
|
|
|
|
|
|
# state /running/open_model/prompt_metamodel
|
|
|
- self.states["/running/open_model/prompt_metamodel"] = State(17, "/running/open_model/prompt_metamodel", self)
|
|
|
+ self.states["/running/open_model/prompt_metamodel"] = State(18, "/running/open_model/prompt_metamodel", self)
|
|
|
self.states["/running/open_model/prompt_metamodel"].setEnter(self._running_open_model_prompt_metamodel_enter)
|
|
|
|
|
|
# state /running/open_model/waiting_for_metamodel_name
|
|
|
- self.states["/running/open_model/waiting_for_metamodel_name"] = State(18, "/running/open_model/waiting_for_metamodel_name", self)
|
|
|
+ self.states["/running/open_model/waiting_for_metamodel_name"] = State(19, "/running/open_model/waiting_for_metamodel_name", self)
|
|
|
|
|
|
# state /running/open_model/store_metamodel
|
|
|
- self.states["/running/open_model/store_metamodel"] = State(19, "/running/open_model/store_metamodel", self)
|
|
|
+ self.states["/running/open_model/store_metamodel"] = State(20, "/running/open_model/store_metamodel", self)
|
|
|
self.states["/running/open_model/store_metamodel"].setEnter(self._running_open_model_store_metamodel_enter)
|
|
|
|
|
|
# state /running/create_new_model
|
|
|
- self.states["/running/create_new_model"] = State(20, "/running/create_new_model", self)
|
|
|
+ self.states["/running/create_new_model"] = State(21, "/running/create_new_model", self)
|
|
|
|
|
|
# state /running/create_new_model/query_metamodel
|
|
|
- self.states["/running/create_new_model/query_metamodel"] = State(21, "/running/create_new_model/query_metamodel", self)
|
|
|
+ self.states["/running/create_new_model/query_metamodel"] = State(22, "/running/create_new_model/query_metamodel", self)
|
|
|
self.states["/running/create_new_model/query_metamodel"].setEnter(self._running_create_new_model_query_metamodel_enter)
|
|
|
|
|
|
# state /running/create_new_model/wait_for_metamodel
|
|
|
- self.states["/running/create_new_model/wait_for_metamodel"] = State(22, "/running/create_new_model/wait_for_metamodel", self)
|
|
|
+ self.states["/running/create_new_model/wait_for_metamodel"] = State(23, "/running/create_new_model/wait_for_metamodel", self)
|
|
|
|
|
|
# state /running/create_new_model/got_mm
|
|
|
- self.states["/running/create_new_model/got_mm"] = State(23, "/running/create_new_model/got_mm", self)
|
|
|
+ self.states["/running/create_new_model/got_mm"] = State(24, "/running/create_new_model/got_mm", self)
|
|
|
|
|
|
# state /running/create_new_model/prompt_model_name
|
|
|
- self.states["/running/create_new_model/prompt_model_name"] = State(24, "/running/create_new_model/prompt_model_name", self)
|
|
|
+ self.states["/running/create_new_model/prompt_model_name"] = State(25, "/running/create_new_model/prompt_model_name", self)
|
|
|
self.states["/running/create_new_model/prompt_model_name"].setEnter(self._running_create_new_model_prompt_model_name_enter)
|
|
|
|
|
|
# state /running/create_new_model/waiting_for_model_name
|
|
|
- self.states["/running/create_new_model/waiting_for_model_name"] = State(25, "/running/create_new_model/waiting_for_model_name", self)
|
|
|
+ self.states["/running/create_new_model/waiting_for_model_name"] = State(26, "/running/create_new_model/waiting_for_model_name", self)
|
|
|
|
|
|
# state /running/create_new_model/creating_model
|
|
|
- self.states["/running/create_new_model/creating_model"] = State(26, "/running/create_new_model/creating_model", self)
|
|
|
+ self.states["/running/create_new_model/creating_model"] = State(27, "/running/create_new_model/creating_model", self)
|
|
|
self.states["/running/create_new_model/creating_model"].setEnter(self._running_create_new_model_creating_model_enter)
|
|
|
|
|
|
# state /running/rerender_model
|
|
|
- self.states["/running/rerender_model"] = State(27, "/running/rerender_model", self)
|
|
|
+ self.states["/running/rerender_model"] = State(28, "/running/rerender_model", self)
|
|
|
|
|
|
# state /running/rerender_model/initial_render
|
|
|
- self.states["/running/rerender_model/initial_render"] = State(28, "/running/rerender_model/initial_render", self)
|
|
|
+ self.states["/running/rerender_model/initial_render"] = State(29, "/running/rerender_model/initial_render", self)
|
|
|
+
|
|
|
+ # state /running/rerender_model/recreate_toolbars
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars"] = State(30, "/running/rerender_model/recreate_toolbars", self)
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars"].setEnter(self._running_rerender_model_recreate_toolbars_enter)
|
|
|
+
|
|
|
+ # state /running/rerender_model/recreate_toolbars/waiting
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars/waiting"] = State(31, "/running/rerender_model/recreate_toolbars/waiting", self)
|
|
|
+
|
|
|
+ # state /running/rerender_model/recreate_toolbars/close_all
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars/close_all"] = State(32, "/running/rerender_model/recreate_toolbars/close_all", self)
|
|
|
|
|
|
# state /running/rerender_model/canvas
|
|
|
- self.states["/running/rerender_model/canvas"] = State(29, "/running/rerender_model/canvas", self)
|
|
|
+ self.states["/running/rerender_model/canvas"] = State(33, "/running/rerender_model/canvas", self)
|
|
|
self.states["/running/rerender_model/canvas"].setEnter(self._running_rerender_model_canvas_enter)
|
|
|
|
|
|
# state /running/rerender_model/pack_canvas
|
|
|
- self.states["/running/rerender_model/pack_canvas"] = State(30, "/running/rerender_model/pack_canvas", self)
|
|
|
+ self.states["/running/rerender_model/pack_canvas"] = State(34, "/running/rerender_model/pack_canvas", self)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars
|
|
|
- self.states["/running/rerender_model/model_toolbars"] = State(31, "/running/rerender_model/model_toolbars", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars"] = State(35, "/running/rerender_model/model_toolbars", self)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars/mm_toolbar
|
|
|
- self.states["/running/rerender_model/model_toolbars/mm_toolbar"] = State(32, "/running/rerender_model/model_toolbars/mm_toolbar", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars/mm_toolbar"] = State(36, "/running/rerender_model/model_toolbars/mm_toolbar", self)
|
|
|
self.states["/running/rerender_model/model_toolbars/mm_toolbar"].setEnter(self._running_rerender_model_model_toolbars_mm_toolbar_enter)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars/pack_mm_toolbar
|
|
|
- self.states["/running/rerender_model/model_toolbars/pack_mm_toolbar"] = State(33, "/running/rerender_model/model_toolbars/pack_mm_toolbar", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars/pack_mm_toolbar"] = State(37, "/running/rerender_model/model_toolbars/pack_mm_toolbar", self)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars/cs_toolbar
|
|
|
- self.states["/running/rerender_model/model_toolbars/cs_toolbar"] = State(34, "/running/rerender_model/model_toolbars/cs_toolbar", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars/cs_toolbar"] = State(38, "/running/rerender_model/model_toolbars/cs_toolbar", self)
|
|
|
self.states["/running/rerender_model/model_toolbars/cs_toolbar"].setEnter(self._running_rerender_model_model_toolbars_cs_toolbar_enter)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars/pack_cs_toolbar
|
|
|
- self.states["/running/rerender_model/model_toolbars/pack_cs_toolbar"] = State(35, "/running/rerender_model/model_toolbars/pack_cs_toolbar", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars/pack_cs_toolbar"] = State(39, "/running/rerender_model/model_toolbars/pack_cs_toolbar", self)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars/dsl_toolbar
|
|
|
- self.states["/running/rerender_model/model_toolbars/dsl_toolbar"] = State(36, "/running/rerender_model/model_toolbars/dsl_toolbar", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars/dsl_toolbar"] = State(40, "/running/rerender_model/model_toolbars/dsl_toolbar", self)
|
|
|
self.states["/running/rerender_model/model_toolbars/dsl_toolbar"].setEnter(self._running_rerender_model_model_toolbars_dsl_toolbar_enter)
|
|
|
|
|
|
# state /running/rerender_model/model_toolbars/pack_dsl_toolbar
|
|
|
- self.states["/running/rerender_model/model_toolbars/pack_dsl_toolbar"] = State(37, "/running/rerender_model/model_toolbars/pack_dsl_toolbar", self)
|
|
|
+ self.states["/running/rerender_model/model_toolbars/pack_dsl_toolbar"] = State(41, "/running/rerender_model/model_toolbars/pack_dsl_toolbar", self)
|
|
|
|
|
|
# state /running/rerender_model/request_render
|
|
|
- self.states["/running/rerender_model/request_render"] = State(38, "/running/rerender_model/request_render", self)
|
|
|
+ self.states["/running/rerender_model/request_render"] = State(42, "/running/rerender_model/request_render", self)
|
|
|
self.states["/running/rerender_model/request_render"].setEnter(self._running_rerender_model_request_render_enter)
|
|
|
|
|
|
# state /running/rerender_model/render_model
|
|
|
- self.states["/running/rerender_model/render_model"] = State(39, "/running/rerender_model/render_model", self)
|
|
|
+ self.states["/running/rerender_model/render_model"] = State(43, "/running/rerender_model/render_model", self)
|
|
|
self.states["/running/rerender_model/render_model"].setEnter(self._running_rerender_model_render_model_enter)
|
|
|
|
|
|
# state /running/rerender_model/render_model/allocate_groups
|
|
|
- self.states["/running/rerender_model/render_model/allocate_groups"] = State(40, "/running/rerender_model/render_model/allocate_groups", self)
|
|
|
+ self.states["/running/rerender_model/render_model/allocate_groups"] = State(44, "/running/rerender_model/render_model/allocate_groups", self)
|
|
|
|
|
|
# state /running/rerender_model/render_model/allocating_group
|
|
|
- self.states["/running/rerender_model/render_model/allocating_group"] = State(41, "/running/rerender_model/render_model/allocating_group", self)
|
|
|
+ self.states["/running/rerender_model/render_model/allocating_group"] = State(45, "/running/rerender_model/render_model/allocating_group", self)
|
|
|
|
|
|
# state /running/rerender_model/render_model/allocate_contains
|
|
|
- self.states["/running/rerender_model/render_model/allocate_contains"] = State(42, "/running/rerender_model/render_model/allocate_contains", self)
|
|
|
+ self.states["/running/rerender_model/render_model/allocate_contains"] = State(46, "/running/rerender_model/render_model/allocate_contains", self)
|
|
|
|
|
|
# state /running/rerender_model/render_model/render_elements
|
|
|
- self.states["/running/rerender_model/render_model/render_elements"] = State(43, "/running/rerender_model/render_model/render_elements", self)
|
|
|
+ self.states["/running/rerender_model/render_model/render_elements"] = State(47, "/running/rerender_model/render_model/render_elements", self)
|
|
|
|
|
|
# state /close
|
|
|
- self.states["/close"] = State(44, "/close", self)
|
|
|
+ self.states["/close"] = State(48, "/close", self)
|
|
|
self.states["/close"].setEnter(self._close_enter)
|
|
|
|
|
|
# add children
|
|
|
@@ -4100,6 +4114,7 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.states["/init"].addChild(self.states["/init/progressbar"])
|
|
|
self.states["/init"].addChild(self.states["/init/pack_progressbar"])
|
|
|
self.states["/running"].addChild(self.states["/running/idle"])
|
|
|
+ self.states["/running"].addChild(self.states["/running/change_metamodel"])
|
|
|
self.states["/running"].addChild(self.states["/running/verify_model"])
|
|
|
self.states["/running"].addChild(self.states["/running/open_model"])
|
|
|
self.states["/running"].addChild(self.states["/running/create_new_model"])
|
|
|
@@ -4121,11 +4136,14 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.states["/running/create_new_model"].addChild(self.states["/running/create_new_model/waiting_for_model_name"])
|
|
|
self.states["/running/create_new_model"].addChild(self.states["/running/create_new_model/creating_model"])
|
|
|
self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/initial_render"])
|
|
|
+ self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/recreate_toolbars"])
|
|
|
self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/canvas"])
|
|
|
self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/pack_canvas"])
|
|
|
self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/model_toolbars"])
|
|
|
self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/request_render"])
|
|
|
self.states["/running/rerender_model"].addChild(self.states["/running/rerender_model/render_model"])
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars"].addChild(self.states["/running/rerender_model/recreate_toolbars/waiting"])
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars"].addChild(self.states["/running/rerender_model/recreate_toolbars/close_all"])
|
|
|
self.states["/running/rerender_model/model_toolbars"].addChild(self.states["/running/rerender_model/model_toolbars/mm_toolbar"])
|
|
|
self.states["/running/rerender_model/model_toolbars"].addChild(self.states["/running/rerender_model/model_toolbars/pack_mm_toolbar"])
|
|
|
self.states["/running/rerender_model/model_toolbars"].addChild(self.states["/running/rerender_model/model_toolbars/cs_toolbar"])
|
|
|
@@ -4144,6 +4162,7 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.states["/running/open_model"].default_state = self.states["/running/open_model/query_model"]
|
|
|
self.states["/running/create_new_model"].default_state = self.states["/running/create_new_model/query_metamodel"]
|
|
|
self.states["/running/rerender_model"].default_state = self.states["/running/rerender_model/initial_render"]
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars"].default_state = self.states["/running/rerender_model/recreate_toolbars/waiting"]
|
|
|
self.states["/running/rerender_model/model_toolbars"].default_state = self.states["/running/rerender_model/model_toolbars/mm_toolbar"]
|
|
|
self.states["/running/rerender_model/render_model"].default_state = self.states["/running/rerender_model/render_model/allocate_groups"]
|
|
|
|
|
|
@@ -4184,6 +4203,15 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
_running_idle_3 = Transition(self, self.states["/running/idle"], [self.states["/running/verify_model"]])
|
|
|
_running_idle_3.setTrigger(Event("verify", None))
|
|
|
self.states["/running/idle"].addTransition(_running_idle_3)
|
|
|
+ _running_idle_4 = Transition(self, self.states["/running/idle"], [self.states["/running/change_metamodel"]])
|
|
|
+ _running_idle_4.setAction(self._running_idle_4_exec)
|
|
|
+ _running_idle_4.setTrigger(Event("change_metamodel", None))
|
|
|
+ self.states["/running/idle"].addTransition(_running_idle_4)
|
|
|
+
|
|
|
+ # transition /running/change_metamodel
|
|
|
+ _running_change_metamodel_0 = Transition(self, self.states["/running/change_metamodel"], [self.states["/running/rerender_model"]])
|
|
|
+ _running_change_metamodel_0.setTrigger(Event("mv_response", None))
|
|
|
+ self.states["/running/change_metamodel"].addTransition(_running_change_metamodel_0)
|
|
|
|
|
|
# transition /running/verify_model/request
|
|
|
_running_verify_model_request_0 = Transition(self, self.states["/running/verify_model/request"], [self.states["/running/verify_model/request"]])
|
|
|
@@ -4313,7 +4341,7 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.states["/running/create_new_model/creating_model"].addTransition(_running_create_new_model_creating_model_0)
|
|
|
|
|
|
# transition /running/rerender_model/initial_render
|
|
|
- _running_rerender_model_initial_render_0 = Transition(self, self.states["/running/rerender_model/initial_render"], [self.states["/running/rerender_model/request_render"]])
|
|
|
+ _running_rerender_model_initial_render_0 = Transition(self, self.states["/running/rerender_model/initial_render"], [self.states["/running/rerender_model/recreate_toolbars"]])
|
|
|
_running_rerender_model_initial_render_0.setTrigger(None)
|
|
|
_running_rerender_model_initial_render_0.setGuard(self._running_rerender_model_initial_render_0_guard)
|
|
|
self.states["/running/rerender_model/initial_render"].addTransition(_running_rerender_model_initial_render_0)
|
|
|
@@ -4323,6 +4351,22 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
_running_rerender_model_initial_render_1.setGuard(self._running_rerender_model_initial_render_1_guard)
|
|
|
self.states["/running/rerender_model/initial_render"].addTransition(_running_rerender_model_initial_render_1)
|
|
|
|
|
|
+ # transition /running/rerender_model/recreate_toolbars/waiting
|
|
|
+ _running_rerender_model_recreate_toolbars_waiting_0 = Transition(self, self.states["/running/rerender_model/recreate_toolbars/waiting"], [self.states["/running/rerender_model/recreate_toolbars/waiting"]])
|
|
|
+ _running_rerender_model_recreate_toolbars_waiting_0.setAction(self._running_rerender_model_recreate_toolbars_waiting_0_exec)
|
|
|
+ _running_rerender_model_recreate_toolbars_waiting_0.setTrigger(Event("close_window", None))
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars/waiting"].addTransition(_running_rerender_model_recreate_toolbars_waiting_0)
|
|
|
+ _running_rerender_model_recreate_toolbars_waiting_1 = Transition(self, self.states["/running/rerender_model/recreate_toolbars/waiting"], [self.states["/running/rerender_model/recreate_toolbars/close_all"]])
|
|
|
+ _running_rerender_model_recreate_toolbars_waiting_1.setTrigger(None)
|
|
|
+ _running_rerender_model_recreate_toolbars_waiting_1.setGuard(self._running_rerender_model_recreate_toolbars_waiting_1_guard)
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars/waiting"].addTransition(_running_rerender_model_recreate_toolbars_waiting_1)
|
|
|
+
|
|
|
+ # transition /running/rerender_model/recreate_toolbars/close_all
|
|
|
+ _running_rerender_model_recreate_toolbars_close_all_0 = Transition(self, self.states["/running/rerender_model/recreate_toolbars/close_all"], [self.states["/running/rerender_model/model_toolbars"]])
|
|
|
+ _running_rerender_model_recreate_toolbars_close_all_0.setAction(self._running_rerender_model_recreate_toolbars_close_all_0_exec)
|
|
|
+ _running_rerender_model_recreate_toolbars_close_all_0.setTrigger(None)
|
|
|
+ self.states["/running/rerender_model/recreate_toolbars/close_all"].addTransition(_running_rerender_model_recreate_toolbars_close_all_0)
|
|
|
+
|
|
|
# transition /running/rerender_model/canvas
|
|
|
_running_rerender_model_canvas_0 = Transition(self, self.states["/running/rerender_model/canvas"], [self.states["/running/rerender_model/pack_canvas"]])
|
|
|
_running_rerender_model_canvas_0.setAction(self._running_rerender_model_canvas_0_exec)
|
|
|
@@ -4424,6 +4468,10 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
_running_0.setGuard(self._running_0_guard)
|
|
|
self.states["/running"].addTransition(_running_0)
|
|
|
|
|
|
+ def _running_rerender_model_recreate_toolbars_enter(self):
|
|
|
+ self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'model_toolbars', Event("close", None, [])]))
|
|
|
+ self.nr_toolbars = 3
|
|
|
+
|
|
|
def _running_rerender_model_render_model_enter(self):
|
|
|
self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'progress_bar', Event("update_status", None, [80, 'Perceptualizing model... OK'])]))
|
|
|
self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'canvas', Event("clear_canvas", None, [])]))
|
|
|
@@ -4434,7 +4482,7 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['alter_context', ['rendered/%s' % (current_model), 'formalisms/MM_render']])]))
|
|
|
|
|
|
def _init_generic_toolbar_enter(self):
|
|
|
- self.big_step.outputEventOM(Event("create_instance", None, [self, 'toolbars', 'GenericToolbar', self.toolbar_frame]))
|
|
|
+ self.big_step.outputEventOM(Event("create_instance", None, [self, 'generic_toolbars', 'GenericToolbar', self.toolbar_frame]))
|
|
|
|
|
|
def _init_progressbar_enter(self):
|
|
|
self.big_step.outputEventOM(Event("create_instance", None, [self, 'progress_bar', 'ProgressBar', {'parent': self.progressbar_frame}]))
|
|
|
@@ -4442,6 +4490,10 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
def _running_idle_enter(self):
|
|
|
self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'progress_bar', Event("update_status", None, [0, 'Ready for action!'])]))
|
|
|
|
|
|
+ def _running_change_metamodel_enter(self):
|
|
|
+ self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['alter_context', [current_model, current_metamodel]])]))
|
|
|
+ self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'progress_bar', Event("update_status", None, [20, 'Storing model context...'])]))
|
|
|
+
|
|
|
def _running_verify_model_request_enter(self):
|
|
|
self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['verify', [current_model, current_metamodel]])]))
|
|
|
|
|
|
@@ -4477,13 +4529,13 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
self.big_step.outputEventOM(Event("create_instance", None, [self, 'canvas', 'Canvas', self.canvas_frame]))
|
|
|
|
|
|
def _running_rerender_model_model_toolbars_mm_toolbar_enter(self):
|
|
|
- self.big_step.outputEventOM(Event("create_instance", None, [self, 'toolbars', 'MetamodellingToolbar', self.toolbar_frame]))
|
|
|
+ self.big_step.outputEventOM(Event("create_instance", None, [self, 'model_toolbars', 'MetamodellingToolbar', self.toolbar_frame, current_metamodel, self.allowed_metamodels]))
|
|
|
|
|
|
def _running_rerender_model_model_toolbars_cs_toolbar_enter(self):
|
|
|
- self.big_step.outputEventOM(Event("create_instance", None, [self, 'toolbars', 'ConcreteSyntaxToolbar', self.toolbar_frame]))
|
|
|
+ self.big_step.outputEventOM(Event("create_instance", None, [self, 'model_toolbars', 'ConcreteSyntaxToolbar', self.toolbar_frame]))
|
|
|
|
|
|
def _running_rerender_model_model_toolbars_dsl_toolbar_enter(self):
|
|
|
- self.big_step.outputEventOM(Event("create_instance", None, [self, 'toolbars', 'DSLToolbar', self.toolbar_frame]))
|
|
|
+ self.big_step.outputEventOM(Event("create_instance", None, [self, 'model_toolbars', 'DSLToolbar', self.toolbar_frame]))
|
|
|
|
|
|
def _running_rerender_model_request_render_enter(self):
|
|
|
self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['model_render', [current_model, 'models/render_SCD']])]))
|
|
|
@@ -4514,6 +4566,11 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
tk_elem = parameters[0]
|
|
|
tk_elem.pack(side=tk.BOTTOM, fill=tk.X, expand=tk.TRUE)
|
|
|
|
|
|
+ def _running_idle_4_exec(self, parameters):
|
|
|
+ new_metamodel = parameters[0]
|
|
|
+ global current_metamodel
|
|
|
+ current_metamodel = new_metamodel
|
|
|
+
|
|
|
def _running_verify_model_request_0_exec(self, parameters):
|
|
|
result = parameters[0]
|
|
|
self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'progress_bar', Event("update_status", None, [result * 100, 'Verifying...'])]))
|
|
|
@@ -4554,6 +4611,7 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
current_metamodel = next(iter(result))
|
|
|
else:
|
|
|
current_metamodel = ''
|
|
|
+ self.allowed_metamodels = result
|
|
|
self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'progress_bar', Event("update_status", None, [20, 'Querying existing metamodels... OK'])]))
|
|
|
|
|
|
def _running_open_model_prompt_metamodel_0_exec(self, parameters):
|
|
|
@@ -4635,6 +4693,16 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
def _running_rerender_model_initial_render_1_guard(self, parameters):
|
|
|
return not self.model_loaded
|
|
|
|
|
|
+ def _running_rerender_model_recreate_toolbars_waiting_0_exec(self, parameters):
|
|
|
+ self.nr_toolbars -= 1
|
|
|
+ print("CLOSE WINDOW -- " + str(self.nr_toolbars))
|
|
|
+
|
|
|
+ def _running_rerender_model_recreate_toolbars_waiting_1_guard(self, parameters):
|
|
|
+ return self.nr_toolbars == 0
|
|
|
+
|
|
|
+ def _running_rerender_model_recreate_toolbars_close_all_0_exec(self, parameters):
|
|
|
+ self.big_step.outputEventOM(Event("delete_instance", None, [self, 'model_toolbars']))
|
|
|
+
|
|
|
def _running_rerender_model_canvas_0_exec(self, parameters):
|
|
|
association_name = parameters[0]
|
|
|
self.big_step.outputEventOM(Event("start_instance", None, [self, association_name]))
|
|
|
@@ -5704,8 +5772,8 @@ class DSLToolbar(Toolbar):
|
|
|
|
|
|
def user_defined_constructor(self, parent):
|
|
|
Toolbar.user_defined_constructor(self, parent)
|
|
|
- self.to_create = ["new"]
|
|
|
- self.button_info = {"new": "REMOVE"}
|
|
|
+ self.to_create = ["todo"]
|
|
|
+ self.button_info = {"todo": "REMOVE"}
|
|
|
self.buttons = {}
|
|
|
tk.Label(self, text="Domain-Specific").pack(side=tk.LEFT)
|
|
|
|
|
|
@@ -5860,7 +5928,7 @@ class DSLToolbar(Toolbar):
|
|
|
RuntimeClassBase.initializeStatechart(self)
|
|
|
|
|
|
class MetamodellingToolbar(Toolbar):
|
|
|
- def __init__(self, controller, parent):
|
|
|
+ def __init__(self, controller, parent, selected_metamodel, metamodels):
|
|
|
RuntimeClassBase.__init__(self, controller)
|
|
|
|
|
|
self.semantics.big_step_maximality = StatechartSemantics.TakeMany
|
|
|
@@ -5873,9 +5941,9 @@ class MetamodellingToolbar(Toolbar):
|
|
|
self.build_statechart_structure()
|
|
|
|
|
|
# call user defined constructor
|
|
|
- MetamodellingToolbar.user_defined_constructor(self, parent)
|
|
|
+ MetamodellingToolbar.user_defined_constructor(self, parent, selected_metamodel, metamodels)
|
|
|
|
|
|
- def user_defined_constructor(self, parent):
|
|
|
+ def user_defined_constructor(self, parent, selected_metamodel, metamodels):
|
|
|
Toolbar.user_defined_constructor(self, parent)
|
|
|
self.to_create = ["verify", "custom_MM", "conf_bottom", "upload_ALC", "upload_MVC"]
|
|
|
self.button_info = {"verify": "Verify if the current model conforms to the current metamodel.",
|
|
|
@@ -5886,6 +5954,11 @@ class MetamodellingToolbar(Toolbar):
|
|
|
}
|
|
|
self.buttons = {}
|
|
|
tk.Label(self, text="Management").pack(side=tk.LEFT)
|
|
|
+ strvar = tk.StringVar(self)
|
|
|
+ strvar.set(selected_metamodel)
|
|
|
+ selected_metamodel = strvar
|
|
|
+ tk.OptionMenu(self, selected_metamodel, *list(metamodels)).pack(side=tk.LEFT)
|
|
|
+ selected_metamodel.trace('w', lambda name, index, mode: self.controller.addInput(Event("changed_metamodel", "input", [id(self), selected_metamodel.get()])))
|
|
|
|
|
|
def user_defined_destructor(self):
|
|
|
# call super class destructors
|
|
|
@@ -5963,9 +6036,14 @@ class MetamodellingToolbar(Toolbar):
|
|
|
_root_0.setTrigger(Event("button_pressed", None))
|
|
|
_root_0.setGuard(self._root_0_guard)
|
|
|
self.states["/root"].addTransition(_root_0)
|
|
|
- _root_1 = Transition(self, self.states["/root"], [self.states["/closing"]])
|
|
|
- _root_1.setTrigger(Event("close", None))
|
|
|
+ _root_1 = Transition(self, self.states["/root"], [self.states["/root"]])
|
|
|
+ _root_1.setAction(self._root_1_exec)
|
|
|
+ _root_1.setTrigger(Event("changed_metamodel", None))
|
|
|
+ _root_1.setGuard(self._root_1_guard)
|
|
|
self.states["/root"].addTransition(_root_1)
|
|
|
+ _root_2 = Transition(self, self.states["/root"], [self.states["/closing"]])
|
|
|
+ _root_2.setTrigger(Event("close", None))
|
|
|
+ self.states["/root"].addTransition(_root_2)
|
|
|
|
|
|
# transition /closing
|
|
|
_closing_0 = Transition(self, self.states["/closing"], [self.states["/closing"]])
|
|
|
@@ -6013,6 +6091,16 @@ class MetamodellingToolbar(Toolbar):
|
|
|
event_name = parameters[0]
|
|
|
return event_name == 'verify'
|
|
|
|
|
|
+ def _root_1_exec(self, parameters):
|
|
|
+ ID = parameters[0]
|
|
|
+ new_metamodel = parameters[1]
|
|
|
+ self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'parent', Event("change_metamodel", None, [new_metamodel])]))
|
|
|
+
|
|
|
+ def _root_1_guard(self, parameters):
|
|
|
+ ID = parameters[0]
|
|
|
+ new_metamodel = parameters[1]
|
|
|
+ return ID == id(self) and new_metamodel != current_metamodel
|
|
|
+
|
|
|
def _closing_0_guard(self, parameters):
|
|
|
return len(self.buttons) > 0
|
|
|
|
|
|
@@ -6997,7 +7085,8 @@ class ObjectManager(ObjectManagerBase):
|
|
|
instance = MainWindow(self.controller)
|
|
|
instance.associations = {}
|
|
|
instance.associations["parent"] = Association("A", 0, -1)
|
|
|
- instance.associations["toolbars"] = Association("Toolbar", 0, -1)
|
|
|
+ instance.associations["generic_toolbars"] = Association("Toolbar", 0, -1)
|
|
|
+ instance.associations["model_toolbars"] = Association("Toolbar", 0, -1)
|
|
|
instance.associations["subwindow"] = Association("Window", 0, -1)
|
|
|
instance.associations["canvas"] = Association("Canvas", 0, -1)
|
|
|
instance.associations["progress_bar"] = Association("ProgressBar", 0, -1)
|
|
|
@@ -7032,7 +7121,7 @@ class ObjectManager(ObjectManagerBase):
|
|
|
instance.associations["buttons"] = Association("Button", 0, -1)
|
|
|
instance.associations["parent"] = Association("A", 0, -1)
|
|
|
elif class_name == "MetamodellingToolbar":
|
|
|
- instance = MetamodellingToolbar(self.controller, construct_params[0])
|
|
|
+ instance = MetamodellingToolbar(self.controller, construct_params[0], construct_params[1], construct_params[2])
|
|
|
instance.associations = {}
|
|
|
instance.associations["buttons"] = Association("Button", 0, -1)
|
|
|
instance.associations["parent"] = Association("A", 0, -1)
|