public override int OnCompare(ListItemInfo x, ListItemInfo y, string xtext, string ytext) { if (x.FileInfo.Length == y.FileInfo.Length) { return(0); } return(x.FileInfo.Length > y.FileInfo.Length ? 1 : -1); }
public void ListFiles(List <ListItemInfo> viewList, ListView listView, bool local) { ListViewItem item; // Clear the list. listView.Items.Clear(); for (int i = 0; i < viewList.Count; i++) { ListItemInfo listitem = viewList[i]; AbstractFileInfo f = listitem.FileInfo; if (f.IsDirectory) { item = listView.Items.Add(f.Name, _folderIconIndex); item.SubItems.Add(""); } else { if (listitem.LinkedFile != null) { item = listView.Items.Add(f.Name, listitem.LinkedFile.IsDirectory ? FolderLinkImageIndex : SymlinkImageIndex); } else { item = listView.Items.Add(f.Name, SetFileIcon(Path.Combine(txtLocalDir.Text, f.Name))); } item.SubItems.Add(Util.FormatSize(f.Length)); } if (f.LastWriteTime != DateTime.MinValue) { item.SubItems.Add(f.LastWriteTime.ToString()); } item.SubItems.Add(listitem.Permissions); item.Tag = listitem; } if (local) { UpdateLocalListViewSorter(); } else { UpdateRemoteListViewSorter(); } if (viewList.Count > 0) { listView.Items[0].Selected = true; } }
private void ListFiles(FileInfoCollection files, bool rootDir, bool local) { List <ListItemInfo> viewList = new List <ListItemInfo>(); ListItemInfo item; // Add directories into the list first. for (int i = 0; i < files.Count; i++) { AbstractFileInfo f = files[i]; if (f.IsDirectory) { if (f.Name != "." && f.Name != "..") { item = new ListItemInfo(); item.FileInfo = f; if (!local) { item.Permissions = _clientPlugin.GetPermissionsString(f); } viewList.Add(item); } } else if (f.IsSymlink) // Add symlinks. { item = new ListItemInfo(); item.FileInfo = f; item.LinkedFile = _client.GetFileInfo(f.SymlinkPath); item.Permissions = _clientPlugin.GetPermissionsString(f); viewList.Add(item); } else //Add Files. { item = new ListItemInfo(); item.FileInfo = f; if (!local) { item.Permissions = _clientPlugin.GetPermissionsString(f); } viewList.Add(item); } } if (!rootDir) { // Add Cdup list item. item = new ListItemInfo(); if (local) { item.FileInfo = DiskFileSystem.Default.CreateFileInfo("..", FileAttributes.Directory, -1, DateTime.MinValue); } else { item.FileInfo = _client.CreateFileInfo("..", FileAttributes.Directory, -1, DateTime.MinValue); } viewList.Add(item); } if (local) { _view.ListLocalFiles(viewList); } else { _view.ListRemoteFiles(viewList); } }
public override int OnCompare(ListItemInfo x, ListItemInfo y, string xtext, string ytext) { return(string.Compare(xtext, ytext, true)); }
public override int OnCompare(ListItemInfo x, ListItemInfo y, string xtext, string ytext) { return(string.Compare(x.Permissions, x.Permissions)); }
public override int OnCompare(ListItemInfo x, ListItemInfo y, string xtext, string ytext) { return(DateTime.Compare(x.FileInfo.LastWriteTime, y.FileInfo.LastWriteTime)); }
public abstract int OnCompare(ListItemInfo x, ListItemInfo y, string xtext, string ytext);