コード例 #1
0
        //

        public ReleasesViewModel(IModRetreiverService modService)
        {
            _modService         = modService;
            SelectCommand       = new RelayCommand(Select, () => !LoadingPage);
            NextPageCommand     = new RelayCommand(NextPage, () => !LoadingPage && !LastPage);
            PreviousPageCommand = new RelayCommand(PreviousPage, () => !LoadingPage && PageNumber > 0);
        }
コード例 #2
0
        //

        public HomeViewModel(ISettingsRepository settings, IDownloadedModsRepository downloadedMods, IModRetreiverService modService)
        {
            _settings       = settings;
            _downloadedMods = downloadedMods;
            _modService     = modService;

            // Commands
            OpenSettingsCommand = new RelayCommand(() => MessengerInstance.Send(Action.ToggleSettings));
            FindModsCommand     = new RelayCommand(() =>
            {
                MessengerInstance.Send(View.Discover);
                MessengerInstance.Send(ComponentView.Categories);
            }, () => PathValid);
            AddModsCommand = new RelayCommand(() =>
            {
                MessengerInstance.Send(View.Discover);
                MessengerInstance.Send(ComponentView.Add);
            });
            StartCommand           = new RelayCommand(Start, () => PathValid && !Starting);
            DeleteCommand          = new RelayCommand(Delete);
            HighlightCommand       = new RelayCommand(Highlight);
            OpenProfileCommand     = new RelayCommand(OpenProfile);
            OpenFileBrowserCommand = new RelayCommand(OpenFileBrowser);
            DeselectCommand        = new RelayCommand(Deselect);

            PathValid = _settings.PathValid();
            Options   = _settings.Options;
            Options.PropertyChanged += (sender, args) =>
            {
                if (args.PropertyName == "GameExe")
                {
                    PathValid = _settings.PathValid();
                    StartCommand.RaiseCanExecuteChanged();
                    FindModsCommand.RaiseCanExecuteChanged();
                }
                ;
                _settings.Save();
            };

            // Lists
            LoadCollections();

            // Messages
            MessengerInstance.Register <Mod>(this, StartSingle);
        }
コード例 #3
0
        //

        public ReleaseViewModel(IModRetreiverService modService, IDownloadedModsRepository downloadedMods, ISettingsRepository settingsRepository)
        {
            _modService         = modService;
            _downloadedMods     = downloadedMods;
            _settingsRepository = settingsRepository;

            DownloadCommand      = new RelayCommand(Download, CanDownload);
            RefreshCommand       = new RelayCommand(Refresh);
            UpdateCommand        = new RelayCommand(Update, () => !Updating);
            PreviousImageCommand = new RelayCommand(PreviousImage, () => !LoadingImage);
            NextImageCommand     = new RelayCommand(NextImage, () => !LoadingImage);
            WebpageCommand       = new RelayCommand(() => Process.Start(_model.ReleaseInfo.Url));
            StandaloneCommand    = new RelayCommand(() =>
            {
                MessengerInstance.Send(View.Home);
                MessengerInstance.Send(Mod);
            });
        }