protected virtual void SortListByTypeAndName(List<IFileSystemInfo> output)
{
output.Sort(delegate(IFileSystemInfo info1, IFileSystemInfo info2)
{
if (info1.Type == FileSystemType.Directory && info2.Type == FileSystemType.File)
return 1;
else if (info1.Type == FileSystemType.File && info2.Type == FileSystemType.Directory)
return -1;
else
return info1.Path.CompareTo(info2.Path);
});
}