diff options
Diffstat (limited to 'Software/Visual_Studio/StubsUtils/Tango.StubsUtils.Service.UI/ViewModels/MainViewVM.cs')
| -rw-r--r-- | Software/Visual_Studio/StubsUtils/Tango.StubsUtils.Service.UI/ViewModels/MainViewVM.cs | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Software/Visual_Studio/StubsUtils/Tango.StubsUtils.Service.UI/ViewModels/MainViewVM.cs b/Software/Visual_Studio/StubsUtils/Tango.StubsUtils.Service.UI/ViewModels/MainViewVM.cs new file mode 100644 index 000000000..4e8b144e5 --- /dev/null +++ b/Software/Visual_Studio/StubsUtils/Tango.StubsUtils.Service.UI/ViewModels/MainViewVM.cs @@ -0,0 +1,68 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using Tango.Core.Commands; +using Tango.SharedUI; +using Tango.SharedUI.Helpers; + +namespace Tango.StubsUtils.Service.UI.ViewModels +{ + public class MainViewVM : ViewModel + { + private StubsService _service; + public StubsService Service + { + get { return _service; } + set { _service = value; RaisePropertyChangedAuto(); } + } + + private bool _isTrayIconVisible; + public bool IsTrayIconVisible + { + get { return _isTrayIconVisible; } + set { _isTrayIconVisible = value; RaisePropertyChangedAuto(); } + } + + + public RelayCommand ExitCommand { get; set; } + public RelayCommand OpenCommand { get; set; } + + public MainViewVM() + { + Init(); + ExitCommand = new RelayCommand(ExitApplication); + OpenCommand = new RelayCommand(OpenMainWindow); + IsTrayIconVisible = true; + } + + public async void Init() + { + Service = new StubsService(); + await Service.Start(); + + await Task.Delay(10000); + await Service.Connect(); + } + + private async void OpenMainWindow() + { + Application.Current.MainWindow.Visibility = Visibility.Visible; + await Task.Delay(200); + Application.Current.MainWindow.WindowState = WindowState.Normal; + Application.Current.MainWindow.Focus(); + Application.Current.MainWindow.Activate(); + IsTrayIconVisible = false; + } + + public async void ExitApplication() + { + IsTrayIconVisible = false; + UIHelper.DoEvents(); + await Task.Delay(1000); + Environment.Exit(0); + } + } +} |
