public GetRecommendationValueViewModel(IGetRecommendationValueView view, IContainer container)
            : base(view, container)
        {
            Users                      = new ObservableCollection <User>();
            RatedMovies                = new ObservableCollection <Movie>();
            UnratedMovies              = new ObservableCollection <Movie>();
            Recommendations            = new ObservableCollection <IRecommendation>();
            GetRecommendationValue     = new DelegateAsyncCommand <object>(OnGetRecommendationValue, OnResponsivnesLost, OnResponsivnesGained);
            SelectedUserChangedCommand = new DelegateAsyncCommand <object>(OnSelectedUserChanged, OnResponsivnesLost, OnResponsivnesGained);

            Task.Run(() =>
            {
                var dataRepository = Container.GetInstance <IDataRepository>();
                Users = new ObservableCollection <User>(dataRepository.Users);

                RatedMovies   = new ObservableCollection <Movie>();
                UnratedMovies = new ObservableCollection <Movie>();

                SelectedUser  = Users.FirstOrDefault();
                SelectedMovie = RatedMovies.FirstOrDefault();

                var recProvider = Container.GetInstance <IRecommendationsProvider>();
                Recommendations = new ObservableCollection <IRecommendation>(recProvider.GetRecommendations(dataRepository.TrainingRatings));

                SelectedMethod = Recommendations.FirstOrDefault();
            });
        }
Esempio n. 2
0
 public LoadDataViewModel(ILoadDataView view, IContainer container)
     : base(view, container)
 {
     FindMoviesFile          = new DelegateCommand <object>(OnFindMoviesFile);
     FindTrainingRatingsFile = new DelegateCommand <object>(OnFindTrainingRatingsFile);
     FindTestRatingsFile     = new DelegateCommand <object>(OnFindTestRatingsFile);
     LoadFiles  = new DelegateAsyncCommand <object>(OnLoadFiles, OnResponsivnesLost, OnResponsivnesGained);
     SetPercent = 1.0;
 }
 public MainWindowViewModel(IMainWindow mainWindow, IContainer container)
     : base(mainWindow, container)
 {
     LoadData = new DelegateCommand <object>(OnLoadData);
     GetRecommendationValue = new DelegateCommand <object>(OnGetRecommandationValue);
     Exit        = new DelegateCommand <object>(OnExit);
     AddUser     = new DelegateCommand <object>(OnAddUser);
     AddMovie    = new DelegateCommand <object>(OnAddMovie);
     AddRating   = new DelegateCommand <object>(OnAddRating);
     Recommend   = new DelegateCommand <object>(OnRecommend);
     ClearData   = new DelegateAsyncCommand <object>(OnClearData);
     Evaluate    = new DelegateCommand <object>(OnEvaluate);
     LoadResults = new DelegateCommand <object>(OnLoadResults);
     RefreshDataInfo();
 }
        public DataInstallationViewModel(ViewModelBase viewModel, string propertyName)
        {
            _viewModel    = viewModel;
            _propertyName = propertyName;

            InstallCommand = new DelegateAsyncCommand(() =>
            {
                return(Task.Run(async() => { await DoInstallAndRaiseAsync(); }));
            });

            PasswordChangedCommand = new DelegateCommand <PasswordBox>(passwordBox =>
            {
                Password = passwordBox.Password;
            });
        }
Esempio n. 5
0
        public AddRatingViewModel(IAddRatingView view, IContainer container)
            : base(view, container)
        {
            Users  = new ObservableCollection <User>();
            Movies = new ObservableCollection <Movie>();
            Add    = new DelegateAsyncCommand <object>(OnAdd, OnResponsivnesLost, OnResponsivnesGained);
            SelectedUserChangedCommand = new DelegateAsyncCommand <object>(OnSelectedUserChanged, OnResponsivnesLost, OnResponsivnesGained);
            RatingValue = 3.0;

            Task.Run(() =>
            {
                var dataRepository = Container.GetInstance <IDataRepository>();
                Users         = new ObservableCollection <User>(dataRepository.Users);
                SelectedUser  = Users.FirstOrDefault();
                SelectedMovie = Movies.FirstOrDefault();
            });
        }
        public EvaluateViewModel(IEvaluateView view, IContainer container)
            : base(view, container)
        {
            EvaluateCommand   = new DelegateAsyncCommand <object>(OnEvaluate, OnResponsivnesLost, OnResponsivnesGained);
            SaveCommand       = new DelegateAsyncCommand <object>(OnSave, OnResponsivnesLost, OnResponsivnesGained);
            ShowResults       = false;
            EvaluationResults = new ObservableCollection <Pair <string, double> >();

            Task.Run(() =>
            {
                IsResponsive           = false;
                var evaluatorsProvider = Container.GetInstance <IEvaluatorsProvider>();
                Evaluators             = new ObservableCollection <IEvaluator>(evaluatorsProvider.GetEvaluators());
                SelectedEvaluator      = Evaluators.FirstOrDefault();

                var dataRepository          = Container.GetInstance <IDataRepository>();
                var recommendationsProvider = Container.GetInstance <IRecommendationsProvider>();
                var recommendations         = recommendationsProvider.GetRecommendations(dataRepository.TrainingRatings);

                RecommendationsToCompare = new ObservableCollection <Pair <IRecommendation, bool> >(recommendations.Select(r => new Pair <IRecommendation, bool>(r, false)));

                IsResponsive = true;
            });
        }
Esempio n. 7
0
 public AddUserViewModel(IAddUserView view, IContainer container)
     : base(view, container)
 {
     Add = new DelegateAsyncCommand <object>(OnAdd, OnResponsivnesLost, OnResponsivnesGained);
 }
 public LoadResultsViewModel(ILoadResultsView view, IContainer container)
     : base(view, container)
 {
     LoadResultsCommand = new DelegateAsyncCommand <object>(OnLoad, OnResponsivnesLost, OnResponsivnesGained);
 }
        public GameTreeViewModel()
        {
            LoadGameDirectoriesAsync();

            Edit = new DelegateCommand(arg =>
            {
                var selectedModel = SelectedItem;
                if (selectedModel != null && selectedModel.CanBeEdited && !selectedModel.IsInEditMode)
                {
                    selectedModel.IsInEditMode = true;
                }
            });

            Commit = new DelegateAsyncCommand(() =>
            {
                var selectedModel = SelectedItem;
                if (selectedModel == null || !selectedModel.IsInEditMode)
                {
                    return(Task.CompletedTask);
                }

                selectedModel.IsInEditMode = false;
                return(selectedModel.CommitAsync());
            });

            Cancel = new DelegateCommand(arg =>
            {
                var selectedModel = SelectedItem;
                if (selectedModel == null || !selectedModel.IsInEditMode)
                {
                    return;
                }

                selectedModel.IsInEditMode = false;
                selectedModel.Cancel();
            });

            New = new DelegateCommand(arg =>
            {
                var selectedModel = SelectedItem;
                selectedModel?.New();
            });

            Delete = new DelegateCommand(arg =>
            {
                var selectedModel = SelectedItem;
                selectedModel?.Delete();
            });

            Refresh = new DelegateAsyncCommand(() =>
            {
                var selectedModel = SelectedItem;
                return(selectedModel?.RefreshAsync());
            });

            OpenInExplorer = new DelegateAsyncCommand(() =>
            {
                var selectedModel = SelectedItem;
                if (selectedModel == null)
                {
                    return(Task.CompletedTask);
                }

                var path = Path.Combine(selectedModel.FromSoftwareFile.RootDirectory, selectedModel.FromSoftwareFile.Path, selectedModel.FromSoftwareFile.FileName);

                return(Task.Run(() =>
                {
                    try
                    {
                        System.Diagnostics.Process.Start(ExplorerProcessName, $"\"{path}\"");
                    }
                    catch (Exception exception)
                    {
                        MessageBoxHelper.ShowMessage(exception.Message, "Cannot open folder", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }));
            });

            TreeViewItemRigthClick = new DelegateCommand <TreeViewItemViewModel>(item =>
            {
                if (item == null)
                {
                    return;
                }
                item.IsSelected = true;
            });

            DropCommand = new DelegateAsyncCommand <DragDropInfoViewModel <FileViewModel> >(arg => _dragDropFileViewModel.DoDragDrop(arg));
        }