示例#1
0
        private DirectoryItemModel LoadChildFilesForDirectory(DirectoryItemModel directoryItemModel)
        {
            List <string> files = this.FileSystemAccess.GetFiles(directoryItemModel.FullName);

            directoryItemModel.Childs.AddRange(this.FileParser.FilesToFileItemModel(files, directoryItemModel));
            return(directoryItemModel);
        }
 internal static DirectoryItemViewModel CreateDirectoryItemVM
     (DirectoryItemModel directoryItemModel,
     IExplorerTreeItemModelViewModelParser explorerTreeItemModelViewModelParser,
     IConfiguration configuration,
     IExplorerTreeItemViewModel parentItemVM)
 {
     return(new DirectoryItemViewModel(directoryItemModel, explorerTreeItemModelViewModelParser, configuration, parentItemVM));
 }
示例#3
0
        public List <AExplorerTreeChildItemModel> DirectoriesToDirectoryItemModel(List <string> directories, IExplorerTreeItemModel parentItem)
        {
            List <AExplorerTreeChildItemModel> returnList = new List <AExplorerTreeChildItemModel>();

            foreach (var directory in directories)
            {
                DirectoryItemModel directoryItemModel = new DirectoryItemModel();
                directoryItemModel.DirectoryInfo = new DirectoryInfo(directory);
                directoryItemModel.IsHidden      = this.CheckIfFileOrDirectoryIsHidden(directoryItemModel.DirectoryInfo.Attributes);
                directoryItemModel.FullName      = directory;
                directoryItemModel.Name          = Path.GetFileName(directory);
                directoryItemModel.IconModel     = IconModelParser.ParseIconModel(directoryItemModel.IconModel, directory);
                directoryItemModel.ParentItem    = parentItem;
                returnList.Add(directoryItemModel);
            }
            return(returnList);
        }
示例#4
0
 /// <summary>
 ///
 /// <para>
 /// Exclusively use <see cref="ExplorerTreeItemViewModelsFactory"/>
 /// to instantiate this class.
 /// -> Except for test purposes.
 /// </para>
 /// </summary>
 internal DirectoryItemViewModel
     (DirectoryItemModel directoryItemModel,
     IExplorerTreeItemModelViewModelParser explorerTreeItemModelViewModelParser,
     IConfiguration configuration,
     IExplorerTreeItemViewModel parentItemVM) : base()
 {
     this.Configuration      = configuration;
     this.ChildTreeItemVMs   = new ObservableCollection <AExplorerTreeChildItemViewModel>();
     this.DirectoryItemModel = directoryItemModel;
     this.ExplorerTreeItemModelViewModelParser = explorerTreeItemModelViewModelParser;
     this.ExplorerTreeVM = configuration.ExplorerTreeVM;
     this.FontVM         = new FontViewModel(configuration.Directory.Font);
     this.FullName       = directoryItemModel.FullName;
     this.IsExpanded     = false;
     this.IsSelected     = false;
     this.IsHidden       = directoryItemModel.IsHidden;
     this.IconVM         = new IconViewModel(directoryItemModel.IconModel, configuration.Directory.Icon);
     this.Name           = directoryItemModel.Name;
     this.ParentItem     = parentItemVM;
     this.AddDummyTreeViewItemToBeExpandable();
     this.SetVisibilityAccordingToConfigruation(configuration.HiddenOverall);
 }
示例#5
0
 /// <inheritdoc/>
 public DirectoryItemModel LoadChildDirectoriesAndFiles(DirectoryItemModel directoryItemModel)
 {
     return(this.Data.LoadChildDirectoriesAndFiles(directoryItemModel));
 }
示例#6
0
 /// <inheritdoc/>
 public DirectoryItemModel LoadChildDirectoriesAndFiles(DirectoryItemModel directoryItemModel)
 {
     return(this.BusinessLogic.LoadChildDirectoriesAndFiles(directoryItemModel));
 }
示例#7
0
 /// <inheritdoc/>
 public DirectoryItemModel LoadChildDirectoriesAndFiles(DirectoryItemModel directoryItemModel)
 {
     directoryItemModel = this.LoadChildDirectoriesForDirectory(directoryItemModel);
     directoryItemModel = this.LoadChildFilesForDirectory(directoryItemModel);
     return(directoryItemModel);
 }
示例#8
0
 public DirectoryItemViewModel(DirectoryItemModel directoryItem)
 {
     DirectoryItem      = directoryItem;
     SelectDirectoryCmd = new RelayCommand(SelectDirectory);
     AllowBlank         = false;
 }
示例#9
0
文件: Data.cs 项目: iomeone/FoBOFD
 /// <inheritdoc/>
 public DirectoryItemModel LoadChildDirectoriesAndFiles(DirectoryItemModel directoryItemModel)
 {
     return(this.FileSystemHandler.LoadChildDirectoriesAndFiles(directoryItemModel));
 }