Exemple #1
0
        public MainViewModel(
            UserAuth userAuth,
            IVpnManager vpnManager,
            IActiveUrls urls,
            IEventAggregator eventAggregator,
            AppExitHandler appExitHandler,
            IModals modals,
            IDialogs dialogs,
            IPopupWindows popups,
            MapViewModel mapViewModel,
            ConnectingViewModel connectingViewModel,
            OnboardingViewModel onboardingViewModel,
            FlashNotificationViewModel flashNotificationViewModel,
            TrayNotificationViewModel trayNotificationViewModel)
        {
            _eventAggregator = eventAggregator;
            _vpnManager      = vpnManager;
            _urls            = urls;
            _userAuth        = userAuth;
            _appExitHandler  = appExitHandler;
            _modals          = modals;
            _dialogs         = dialogs;
            _popups          = popups;

            Map               = mapViewModel;
            Connection        = connectingViewModel;
            Onboarding        = onboardingViewModel;
            TrayNotification  = trayNotificationViewModel;
            FlashNotification = flashNotificationViewModel;

            eventAggregator.Subscribe(this);

            AboutCommand          = new RelayCommand(AboutAction, CanClick);
            AccountCommand        = new RelayCommand(AccountAction, CanClick);
            ProfilesCommand       = new RelayCommand(ProfilesAction, CanClick);
            SettingsCommand       = new RelayCommand(SettingsAction, CanClick);
            HelpCommand           = new RelayCommand(HelpAction);
            ReportBugCommand      = new RelayCommand(ReportBugAction, CanClick);
            DeveloperToolsCommand = new RelayCommand(DeveloperToolsAction);
            LogoutCommand         = new RelayCommand(LogoutAction);
            ExitCommand           = new RelayCommand(ExitAction);

            SetDeveloperToolsVisibility();
        }
        public SidebarViewModel(
            IAppSettings appSettings,
            SidebarProfilesViewModel sidebarProfilesViewModel,
            TrialViewModel trialViewModel,
            ConnectionStatusViewModel connectionStatusViewModel,
            CountriesViewModel countriesViewModel,
            FlashNotificationViewModel flashNotificationsViewModel)
        {
            _appSettings        = appSettings;
            CountriesTabCommand = new RelayCommand(OpenCountriesTabAction);
            ProfilesTabCommand  = new RelayCommand(OpenProfilesTabAction);

            Tab               = countriesViewModel;
            TrialViewModel    = trialViewModel;
            Countries         = countriesViewModel;
            Profiles          = sidebarProfilesViewModel;
            ConnectionStatus  = connectionStatusViewModel;
            FlashNotification = flashNotificationsViewModel;
        }