|
|
@@ -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: Wed Sep 27 15:50:59 2017
|
|
|
+Date: Wed Sep 27 16:23:55 2017
|
|
|
|
|
|
Model author: Yentl Van Tendeloo
|
|
|
Model name: Modelverse Visual Editor - Tkinter Version
|
|
|
@@ -4130,6 +4130,9 @@ class MainWindow(RuntimeClassBase, tk.Toplevel, SCCDWidget):
|
|
|
_running_idle_1 = Transition(self, self.states["/running/idle"], [self.states["/running/open_model"]])
|
|
|
_running_idle_1.setTrigger(Event("open_model", None))
|
|
|
self.states["/running/idle"].addTransition(_running_idle_1)
|
|
|
+ _running_idle_2 = Transition(self, self.states["/running/idle"], [self.states["/running/rerender_model"]])
|
|
|
+ _running_idle_2.setTrigger(Event("rerender_model", None))
|
|
|
+ self.states["/running/idle"].addTransition(_running_idle_2)
|
|
|
|
|
|
# transition /running/open_model/query_model
|
|
|
_running_open_model_query_model_0 = Transition(self, self.states["/running/open_model/query_model"], [self.states["/running/open_model/wait_for_model"]])
|
|
|
@@ -5825,6 +5828,8 @@ class CanvasElement(RuntimeClassBase, SCCDWidget):
|
|
|
self.diff_results = {}
|
|
|
|
|
|
def user_defined_destructor(self):
|
|
|
+ for f in self.elements:
|
|
|
+ self.containing_canvas.delete(f)
|
|
|
# call super class destructors
|
|
|
if hasattr(SCCDWidget, "__del__"):
|
|
|
SCCDWidget.__del__(self)
|
|
|
@@ -5866,16 +5871,12 @@ class CanvasElement(RuntimeClassBase, SCCDWidget):
|
|
|
# state /update_mv
|
|
|
self.states["/update_mv"] = State(9, "/update_mv", self)
|
|
|
|
|
|
- # state /update_mv/mark_dirty
|
|
|
- self.states["/update_mv/mark_dirty"] = State(10, "/update_mv/mark_dirty", self)
|
|
|
- self.states["/update_mv/mark_dirty"].setEnter(self._update_mv_mark_dirty_enter)
|
|
|
-
|
|
|
# state /update_mv/x
|
|
|
- self.states["/update_mv/x"] = State(11, "/update_mv/x", self)
|
|
|
+ self.states["/update_mv/x"] = State(10, "/update_mv/x", self)
|
|
|
self.states["/update_mv/x"].setEnter(self._update_mv_x_enter)
|
|
|
|
|
|
# state /update_mv/y
|
|
|
- self.states["/update_mv/y"] = State(12, "/update_mv/y", self)
|
|
|
+ self.states["/update_mv/y"] = State(11, "/update_mv/y", self)
|
|
|
self.states["/update_mv/y"].setEnter(self._update_mv_y_enter)
|
|
|
|
|
|
# add children
|
|
|
@@ -5888,13 +5889,12 @@ class CanvasElement(RuntimeClassBase, SCCDWidget):
|
|
|
self.states["/update_attrs"].addChild(self.states["/update_attrs/wait_for_results"])
|
|
|
self.states["/update_attrs"].addChild(self.states["/update_attrs/process_results"])
|
|
|
self.states["/update_attrs"].addChild(self.states["/update_attrs/mark_dirty"])
|
|
|
- self.states["/update_mv"].addChild(self.states["/update_mv/mark_dirty"])
|
|
|
self.states["/update_mv"].addChild(self.states["/update_mv/x"])
|
|
|
self.states["/update_mv"].addChild(self.states["/update_mv/y"])
|
|
|
self.states[""].fixTree()
|
|
|
self.states[""].default_state = self.states["/main"]
|
|
|
self.states["/update_attrs"].default_state = self.states["/update_attrs/query"]
|
|
|
- self.states["/update_mv"].default_state = self.states["/update_mv/mark_dirty"]
|
|
|
+ self.states["/update_mv"].default_state = self.states["/update_mv/x"]
|
|
|
|
|
|
# transition /main
|
|
|
_main_0 = Transition(self, self.states["/main"], [self.states["/main"]])
|
|
|
@@ -5962,14 +5962,10 @@ class CanvasElement(RuntimeClassBase, SCCDWidget):
|
|
|
|
|
|
# transition /update_attrs/mark_dirty
|
|
|
_update_attrs_mark_dirty_0 = Transition(self, self.states["/update_attrs/mark_dirty"], [self.states["/main"]])
|
|
|
- _update_attrs_mark_dirty_0.setTrigger(None)
|
|
|
+ _update_attrs_mark_dirty_0.setAction(self._update_attrs_mark_dirty_0_exec)
|
|
|
+ _update_attrs_mark_dirty_0.setTrigger(Event("mv_response", None))
|
|
|
self.states["/update_attrs/mark_dirty"].addTransition(_update_attrs_mark_dirty_0)
|
|
|
|
|
|
- # transition /update_mv/mark_dirty
|
|
|
- _update_mv_mark_dirty_0 = Transition(self, self.states["/update_mv/mark_dirty"], [self.states["/update_mv/x"]])
|
|
|
- _update_mv_mark_dirty_0.setTrigger(Event("mv_response", None))
|
|
|
- self.states["/update_mv/mark_dirty"].addTransition(_update_mv_mark_dirty_0)
|
|
|
-
|
|
|
# transition /update_mv/x
|
|
|
_update_mv_x_0 = Transition(self, self.states["/update_mv/x"], [self.states["/update_mv/y"]])
|
|
|
_update_mv_x_0.setTrigger(Event("mv_response", None))
|
|
|
@@ -5989,9 +5985,6 @@ class CanvasElement(RuntimeClassBase, SCCDWidget):
|
|
|
def _update_attrs_mark_dirty_enter(self):
|
|
|
self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['attr_assign', [current_rendered_model, self.cs_element, 'dirty', True]])]))
|
|
|
|
|
|
- def _update_mv_mark_dirty_enter(self):
|
|
|
- self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['attr_assign', [current_rendered_model, self.cs_element, 'dirty', True]])]))
|
|
|
-
|
|
|
def _update_mv_x_enter(self):
|
|
|
self.big_step.outputEventOM(Event("broad_cast", None, [self, Event("mv_request", None, ['attr_assign', [current_rendered_model, self.cs_element, 'x', self.coordinates[0]]])]))
|
|
|
|
|
|
@@ -6100,6 +6093,9 @@ class CanvasElement(RuntimeClassBase, SCCDWidget):
|
|
|
def _update_attrs_process_results_2_exec(self, parameters):
|
|
|
self.remaining_responses -= 1
|
|
|
|
|
|
+ def _update_attrs_mark_dirty_0_exec(self, parameters):
|
|
|
+ self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'parent/parent', Event("rerender_model", None, [])]))
|
|
|
+
|
|
|
def initializeStatechart(self):
|
|
|
# enter default state
|
|
|
self.default_targets = self.states["/main"].getEffectiveTargetStates()
|