diff options
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/IStudioViewModel.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/IStudioViewModel.cs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/IStudioViewModel.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/IStudioViewModel.cs new file mode 100644 index 000000000..35ed50cd9 --- /dev/null +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/IStudioViewModel.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.MachineStudio.Common +{ + /// <summary> + /// Represents a Machine Studio view model. + /// </summary> + public interface IStudioViewModel + { + /// <summary> + /// Called when the user has navigated in to the module. + /// </summary> + void OnNavigatedTo(); + + /// <summary> + /// Called when the user has navigated out of the module. + /// </summary> + void OnNavigatedFrom(); + + /// <summary> + /// Called when application is shutting down. + /// </summary> + void OnShuttingDown(); + + /// <summary> + /// Called before the application is shutting down. + /// Return false to cancel the shutdown in case an important process is in progress. + /// </summary> + /// <returns></returns> + Task<bool> OnShutdownRequest(); + + /// <summary> + /// Called when another module has wants to navigate to this module with some arguments. + /// </summary> + /// <param name="args">The arguments.</param> + void OnModuleRequest(params object[] args); + } +} |
