|
|
@@ -105,23 +105,79 @@
|
|
|
</transition>
|
|
|
</state>
|
|
|
|
|
|
- <state id="logging_in_modelverse">
|
|
|
- <onentry>
|
|
|
- <raise event="mv_request">
|
|
|
- <parameter expr="'login'"/>
|
|
|
- <parameter expr="[self.username, self.password]"/>
|
|
|
- </raise>
|
|
|
+ <state id="logging_in_modelverse" initial="prompt_username">
|
|
|
+ <state id="prompt_username">
|
|
|
+ <onentry>
|
|
|
+ <raise event="create_instance" scope="cd">
|
|
|
+ <parameter expr="'windows'"/>
|
|
|
+ <parameter expr="'PromptWindow'"/>
|
|
|
+ <parameter expr="{'username': self.username, 'password': self.password}"/>
|
|
|
+ <parameter expr="{'password': {'show': '*'}}"/>
|
|
|
+ </raise>
|
|
|
+ </onentry>
|
|
|
|
|
|
- <raise event="update_status" scope="narrow" target="self.splash_window">
|
|
|
- <parameter expr="90"/>
|
|
|
- <parameter expr="'Logging in...'"/>
|
|
|
- </raise>
|
|
|
+ <transition event="instance_created" target="../wait_for_credentials">
|
|
|
+ <parameter name="association_name"/>
|
|
|
+
|
|
|
+ <raise event="start_instance" scope="cd">
|
|
|
+ <parameter expr="association_name"/>
|
|
|
+ </raise>
|
|
|
+
|
|
|
+ <script>
|
|
|
+ self.prompt_window = association_name
|
|
|
+ </script>
|
|
|
+ </transition>
|
|
|
+ </state>
|
|
|
+
|
|
|
+ <state id="wait_for_credentials">
|
|
|
+ <transition event="prompt_results" target="../login">
|
|
|
+ <parameter name="results"/>
|
|
|
+ <script>
|
|
|
+ print("Got results from prompt: " + str(results))
|
|
|
+ self.username = results["username"]
|
|
|
+ self.password = results["password"]
|
|
|
+ </script>
|
|
|
+ </transition>
|
|
|
+
|
|
|
+ <transition event="close_window" target="../prompt_username"/>
|
|
|
+
|
|
|
+ <onexit>
|
|
|
+ <raise event="delete_instance" scope="cd">
|
|
|
+ <parameter expr="self.prompt_window"/>
|
|
|
+ </raise>
|
|
|
+ </onexit>
|
|
|
+ </state>
|
|
|
+
|
|
|
+ <state id="login">
|
|
|
+ <onentry>
|
|
|
+ <raise event="mv_request">
|
|
|
+ <parameter expr="'login'"/>
|
|
|
+ <parameter expr="[self.username, self.password]"/>
|
|
|
+ </raise>
|
|
|
+
|
|
|
+ <raise event="update_status" scope="narrow" target="self.splash_window">
|
|
|
+ <parameter expr="90"/>
|
|
|
+ <parameter expr="'Logging in...'"/>
|
|
|
+ </raise>
|
|
|
+ </onentry>
|
|
|
+
|
|
|
+ <transition event="mv_response" target="../../closing_splash">
|
|
|
+ <raise event="update_status" scope="narrow" target="self.splash_window">
|
|
|
+ <parameter expr="100"/>
|
|
|
+ <parameter expr="'Logging in... OK'"/>
|
|
|
+ </raise>
|
|
|
+ </transition>
|
|
|
+ </state>
|
|
|
+ </state>
|
|
|
+
|
|
|
+ <state id="closing_splash">
|
|
|
+ <onentry>
|
|
|
+ <raise event="close" scope="narrow" target="self.splash_window"/>
|
|
|
</onentry>
|
|
|
|
|
|
- <transition event="mv_response" target="../../init_main_window">
|
|
|
- <raise event="update_status" scope="narrow" target="self.splash_window">
|
|
|
- <parameter expr="100"/>
|
|
|
- <parameter expr="'Logging in... OK'"/>
|
|
|
+ <transition event="close_window" target="../../init_main_window">
|
|
|
+ <raise event="delete_instance" scope="cd">
|
|
|
+ <parameter expr="self.splash_window"/>
|
|
|
</raise>
|
|
|
</transition>
|
|
|
</state>
|
|
|
@@ -134,9 +190,7 @@
|
|
|
<parameter expr="'MainWindow'"/>
|
|
|
</raise>
|
|
|
|
|
|
- <raise event="delete_instance" scope="cd">
|
|
|
- <parameter expr="self.splash_window"/>
|
|
|
- </raise>
|
|
|
+ <raise event="close" target="self.splash_window"/>
|
|
|
</onentry>
|
|
|
|
|
|
<transition event="instance_created" target="../main_behaviour"/>
|