Esempio n. 1
0
        public async Task LoadWorkingDirectoryStatusAsync()
        {
            IsLoading = true;

            Changes = new FileStatusViewModel[0];
            Index   = new FileStatusViewModel[0];

            await Task.Run(() => {
                var repositoryStatus = repository.RetrieveStatus();

                Changes = repositoryStatus.Modified
                          .Concat(repositoryStatus.Untracked)
                          .Concat(repositoryStatus.Missing)
                          .Select(FileStatusViewModel.FromFileStatus)
                          .OrderBy(ch => (int)ch.State)
                          .ThenBy(ch => ch.Path)
                          .ToList();

                Index = repositoryStatus.Staged
                        .Concat(repositoryStatus.Added)
                        .Concat(repositoryStatus.Removed)
                        .Select(FileStatusViewModel.FromStagedChangeStatus)
                        .OrderBy(ch => (int)ch.State)
                        .ThenBy(ch => ch.Path)
                        .ToList();

                ParentCommitId = repository.Head.Tip.Id;

                NotifyOfPropertyChange(() => Changes);
                NotifyOfPropertyChange(() => Index);
            });

            IsLoading = false;
        }
		public async Task LoadWorkingDirectoryStatusAsync() {
			IsLoading = true;

			Changes = new FileStatusViewModel[0];
			Index = new FileStatusViewModel[0];

			await Task.Run(() => {
				var repositoryStatus = repository.RetrieveStatus();

				Changes = repositoryStatus.Modified
					.Concat(repositoryStatus.Untracked)
					.Concat(repositoryStatus.Missing)
					.Select(FileStatusViewModel.FromFileStatus)
					.OrderBy(ch => (int) ch.State)
					.ThenBy(ch => ch.Path)
					.ToList();

				Index = repositoryStatus.Staged
					.Concat(repositoryStatus.Added)
					.Concat(repositoryStatus.Removed)
					.Select(FileStatusViewModel.FromStagedChangeStatus)
					.OrderBy(ch => (int) ch.State)
					.ThenBy(ch => ch.Path)
					.ToList();

				ParentCommitId = repository.Head.Tip.Id;

				NotifyOfPropertyChange(() => Changes);
				NotifyOfPropertyChange(() => Index);
			});

			IsLoading = false;
		}
Esempio n. 3
0
        public async void Unstage(FileStatusViewModel change)
        {
            repository.Unstage(change.Path);

            await LoadWorkingDirectoryStatusAsync();
        }
		public async void Unstage(FileStatusViewModel change) {
			repository.Unstage(change.Path);

			await LoadWorkingDirectoryStatusAsync();
		}