protected CommitsViewModel()
        {
            Commits = new ReactiveList <CommitModel>();

            GoToChangesetCommand = ReactiveCommand.Create();
            GoToChangesetCommand.OfType <CommitModel>().Subscribe(x =>
            {
                var vm             = CreateViewModel <ChangesetViewModel>();
                vm.RepositoryOwner = RepositoryOwner;
                vm.RepositoryName  = RepositoryName;
                vm.Node            = x.Sha;
                ShowViewModel(vm);
            });

            LoadCommand = ReactiveCommand.CreateAsyncTask(x => Commits.SimpleCollectionLoad(GetRequest(), x as bool?));
        }
Beispiel #2
0
        protected CommitsViewModel()
        {
            var commits = new ReactiveList <CommitModel>();

            Commits = commits.CreateDerivedCollection(
                x => new CommitItemViewModel(x, GoToChangesetCommand.ExecuteIfCan),
                ContainsSearchKeyword,
                signalReset: this.WhenAnyValue(x => x.SearchKeyword));

            GoToChangesetCommand = ReactiveCommand.Create();
            GoToChangesetCommand.OfType <CommitItemViewModel>().Subscribe(x =>
            {
                var vm             = CreateViewModel <ChangesetViewModel>();
                vm.RepositoryOwner = RepositoryOwner;
                vm.RepositoryName  = RepositoryName;
                vm.Node            = x.Commit.Sha;
                ShowViewModel(vm);
            });

            LoadCommand = ReactiveCommand.CreateAsyncTask(x => commits.SimpleCollectionLoad(GetRequest(), x as bool?));
        }