Exemplo n.º 1
0
        static Dictionary<Guid, Dictionary<Explorer, List<SuperFile>>> GroupFiles(IList<FarFile> files, ExplorerFunctions function)
        {
            var result = new Dictionary<Guid, Dictionary<Explorer, List<SuperFile>>>();
            foreach (SuperFile file in files)
            {
                if (function != ExplorerFunctions.None && 0 == (file.Explorer.Functions & function))
                    continue;

                Dictionary<Explorer, List<SuperFile>> dicExplorer;
                if (!result.TryGetValue(file.Explorer.TypeId, out dicExplorer))
                {
                    dicExplorer = new Dictionary<Explorer, List<SuperFile>>();
                    result.Add(file.Explorer.TypeId, dicExplorer);
                }

                List<SuperFile> efiles;
                if (!dicExplorer.TryGetValue(file.Explorer, out efiles))
                {
                    efiles = new List<SuperFile>();
                    dicExplorer.Add(file.Explorer, efiles);
                }
                efiles.Add(file);
            }
            return result;
        }
Exemplo n.º 2
0
        static Dictionary <Guid, Dictionary <Explorer, List <SuperFile> > > GroupFiles(IList <FarFile> files, ExplorerFunctions function)
        {
            var result = new Dictionary <Guid, Dictionary <Explorer, List <SuperFile> > >();

            foreach (SuperFile file in files)
            {
                if (function != ExplorerFunctions.None && 0 == (file.Explorer.Functions & function))
                {
                    continue;
                }

                if (!result.TryGetValue(file.Explorer.TypeId, out Dictionary <Explorer, List <SuperFile> > dicExplorer))
                {
                    dicExplorer = new Dictionary <Explorer, List <SuperFile> >();
                    result.Add(file.Explorer.TypeId, dicExplorer);
                }

                if (!dicExplorer.TryGetValue(file.Explorer, out List <SuperFile> efiles))
                {
                    efiles = new List <SuperFile>();
                    dicExplorer.Add(file.Explorer, efiles);
                }
                efiles.Add(file);
            }
            return(result);
        }