Exemple #1
0
        IList <XPathObjectNode> ActivateSuperFileElements()
        {
            var file = (SuperFile)_target;             //????

            if (!file.IsDirectory)
            {
                _elements.Target = _emptyElements;
                return(_emptyElements);
            }

            // progress
            if (_context.IncrementDirectoryCount != null)
            {
                _context.IncrementDirectoryCount(1);
            }

            var elements = new List <XPathObjectNode>();

            Explorer explorer;

            if (file.Explorer.CanExploreLocation)
            {
                var argsExplore = new ExploreLocationEventArgs(ExplorerModes.Find, file.File.Name);
                explorer = file.Explorer.ExploreLocation(argsExplore);
            }
            else
            {
                var argsExplore = new ExploreDirectoryEventArgs(ExplorerModes.Find, file.File);
                explorer = file.Explorer.ExploreDirectory(argsExplore);
            }

            if (explorer != null)
            {
                var argsFiles = new GetFilesEventArgs(ExplorerModes.Find);
                foreach (var it in explorer.GetFiles(argsFiles))
                {
                    // filter out a leaf
                    if (_context.Filter != null && !it.IsDirectory && !_context.Filter(explorer, it))
                    {
                        continue;
                    }

                    // add
                    elements.Add(new XPathObjectNode(_context, new SuperFile(explorer, it), null, this, elements, elements.Count));
                }
            }

            if (elements.Count == 0)
            {
                _elements.Target = _emptyElements;
            }
            else
            {
                _elements.Target = elements;
            }

            return(elements);
        }
Exemple #2
0
        /// <inheritdoc/>
        public override Explorer DoExploreDirectory(ExploreDirectoryEventArgs args)
        {
            if (args == null)
            {
                return(null);
            }

            return(Explore(My.PathEx.Combine(Location, args.File.Name)));
        }
Exemple #3
0
        /// <inheritdoc/>
        public override Explorer ExploreDirectory(ExploreDirectoryEventArgs args)
        {
            if (args == null)
            {
                return(null);
            }

            var xfile = (SuperFile)args.File;

            return(ExploreSuperDirectory(xfile.Explorer, args.Mode, xfile.File));
        }
Exemple #4
0
 /// <include file='doc.xml' path='doc/ScriptFork/*'/>
 /// <param name="args">.</param>
 public sealed override Explorer ExploreDirectory(ExploreDirectoryEventArgs args)
 {
     if (AsExploreDirectory == null)
     {
         return(DoExploreDirectory(args));
     }
     else
     {
         return(InvokeExplorerScript(AsExploreDirectory, args));
     }
 }
Exemple #5
0
        /// <inheritdoc/>
        public override Explorer ExploreDirectory(ExploreDirectoryEventArgs args)
        {
            if (args == null) return null;

            var xfile = (SuperFile)args.File;
            return ExploreSuperDirectory(xfile.Explorer, args.Mode, xfile.File);
        }
Exemple #6
0
 public override Explorer ExploreDirectory(ExploreDirectoryEventArgs args)
 {
     return new PlayListExplorer(args.File.Name);
 }
Exemple #7
0
 /// <summary>
 /// <see cref="Explorer.ExploreDirectory"/> worker.
 /// </summary>
 /// <param name="args">.</param>
 public virtual Explorer DoExploreDirectory(ExploreDirectoryEventArgs args)
 {
     return(null);
 }
Exemple #8
0
 /// <include file='doc.xml' path='doc/ScriptFork/*'/>
 /// <param name="args">.</param>
 public override sealed Explorer ExploreDirectory(ExploreDirectoryEventArgs args)
 {
     if (AsExploreDirectory == null)
         return DoExploreDirectory(args);
     else
         return InvokeExplorerScript(AsExploreDirectory, args);
 }
Exemple #9
0
 /// <summary>
 /// <see cref="Explorer.ExploreDirectory"/> worker.
 /// </summary>
 /// <param name="args">.</param>
 public virtual Explorer DoExploreDirectory(ExploreDirectoryEventArgs args)
 {
     return null;
 }
 public override Explorer ExploreDirectory(ExploreDirectoryEventArgs args)
 {
     return new TrackExplorer(deviceName, args.File.Name);
 }
Exemple #11
0
 /// <summary>
 /// Calls <see cref="FarNet.Explorer.ExploreDirectory"/>.
 /// </summary>
 /// <param name="args">.</param>
 public virtual Explorer UIExploreDirectory(ExploreDirectoryEventArgs args)
 {
     return Explorer.ExploreDirectory(args);
 }
Exemple #12
0
        /// <inheritdoc/>
        public override Explorer DoExploreDirectory(ExploreDirectoryEventArgs args)
        {
            if (args == null) return null;

            return Explore(My.PathEx.Combine(Location, args.File.Name));
        }