using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; using Tango.BL.Enumerations; using Tango.Console; using Tango.FSE.Common; using Tango.FSE.Common.Navigation; using Tango.FSE.PPCConsole.Navigation; using Tango.SharedUI.Helpers; namespace Tango.FSE.PPCConsole.ViewModels { public class MainViewVM : FSEViewModel, INavigationObjectReceiver { public enum NavigationView { ConsoleView, RemoteDesktopView, MonitoringView, FileSystemView, UpdatesView, LogsView, } private NavigationView _selectedView; public NavigationView SelectedView { get { return _selectedView; } set { _selectedView = value; RaisePropertyChangedAuto(); } } public override void OnApplicationReady() { base.OnApplicationReady(); if (AuthenticationProvider.CurrentUser.HasAnyPermission(Permissions.FSE_RunFSE, Permissions.TwineRSMAccess)) { InvokeUI(() => { NavigationManager.MenuItems.Add(new NavigationMenuItem(() => { NavigationManager.NavigateTo(); }) { Name = "Application", Index = 2, Description = "Manage and monitor the remote machine's Panel PC.", Image = ResourceHelper.GetImageFromResources("Images/ppc_console.png"), }); }); } } public void OnNavigatedToWithObject(PeekLogsNavigationObject obj) { SelectedView = NavigationView.LogsView; RaiseMessage(obj); } } }