Esempio n. 1
0
        internal void SetViewMode(DiffViewModeEnum requestedViewMode)
        {
            if (_Results == null)
            {
                return;
            }

            SetData(_Results, requestedViewMode);
            _CurrentViewMode = requestedViewMode;
        }
Esempio n. 2
0
        private void SetData(IDirectoryDiffRoot results,
                             DiffViewModeEnum requestedViewMode)
        {
            string currentPathA = results.RootPathA;
            string currentPathB = results.RootPathB;

            List <IDirEntryViewModel> dirs = null;

            switch (requestedViewMode)
            {
            case DiffViewModeEnum.DirectoriesAndFiles:
                dirs = CreateViewModelEntries(results.RootEntry.Subentries, currentPathA, currentPathB);
                break;

            case DiffViewModeEnum.FilesOnly:
                // Sort list of different files by their type of difference and show them in UI
                var sortedList = results.DifferentFiles
                                 .OrderByDescending(x => (int)(x.EditContext))
                                 .ToList();

                dirs = CreateViewModelEntries(sortedList, currentPathA, currentPathB);
                break;

            default:
                throw new ArgumentOutOfRangeException(requestedViewMode.ToString());
            }

            _DirPathStack.Clear();
            SetDirDiffCollectionData(dirs);

            CountFilesDeleted = results.CountFilesDeleted;
            CountFilesAdded   = results.CountFilesAdded;
            CountFilesChanged = results.CountFilesChanged;

            PathA = string.Empty;
            PathB = string.Empty;

            // Set a filter description
            if (results.Filter == null)
            {
                this.LblFilter = "All Files";
            }
            else
            {
                DirectoryDiffFileFilter filter = results.Filter;
                this.LblFilter = string.Format("{0}: {1}", filter.Include ? "Includes" : "Excludes", filter.FilterString);
            }
        }