Browse Source

Fixed SD2-748: Files Window throws an exception when copying a file

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1266 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 20 years ago
parent
commit
e22aa37319
  1. 64
      src/Main/Base/Project/Src/Gui/Pads/FileScout.cs

64
src/Main/Base/Project/Src/Gui/Pads/FileScout.cs

@ -256,51 +256,61 @@ namespace ICSharpCode.SharpDevelop.Gui @@ -256,51 +256,61 @@ namespace ICSharpCode.SharpDevelop.Gui
void fileDeleted(object sender, FileSystemEventArgs e)
{
foreach(FileListItem fileItem in Items)
{
if(fileItem.FullName.Equals(e.FullPath, StringComparison.OrdinalIgnoreCase)) {
Items.Remove(fileItem);
break;
MethodInvoker method = delegate {
foreach(FileListItem fileItem in Items)
{
if(fileItem.FullName.Equals(e.FullPath, StringComparison.OrdinalIgnoreCase)) {
Items.Remove(fileItem);
break;
}
}
}
};
WorkbenchSingleton.SafeThreadAsyncCall(method);
}
void fileChanged(object sender, FileSystemEventArgs e)
{
foreach(FileListItem fileItem in Items)
{
if(fileItem.FullName.Equals(e.FullPath, StringComparison.OrdinalIgnoreCase)) {
MethodInvoker method = delegate {
foreach(FileListItem fileItem in Items)
{
if(fileItem.FullName.Equals(e.FullPath, StringComparison.OrdinalIgnoreCase)) {
FileInfo info = new FileInfo(e.FullPath);
FileInfo info = new FileInfo(e.FullPath);
fileItem.SubItems[1].Text = Math.Round((double)info.Length / 1024).ToString() + " KB";
fileItem.SubItems[2].Text = info.LastWriteTime.ToString();
break;
fileItem.SubItems[1].Text = Math.Round((double)info.Length / 1024).ToString() + " KB";
fileItem.SubItems[2].Text = info.LastWriteTime.ToString();
break;
}
}
}
};
WorkbenchSingleton.SafeThreadAsyncCall(method);
}
void fileCreated(object sender, FileSystemEventArgs e)
{
FileInfo info = new FileInfo(e.FullPath);
ListViewItem fileItem = Items.Add(new FileListItem(e.FullPath));
fileItem.SubItems.Add(Math.Round((double)info.Length / 1024).ToString() + " KB");
fileItem.SubItems.Add(info.LastWriteTime.ToString());
MethodInvoker method = delegate {
FileInfo info = new FileInfo(e.FullPath);
Items.Add(fileItem);
ListViewItem fileItem = Items.Add(new FileListItem(e.FullPath));
fileItem.SubItems.Add(Math.Round((double)info.Length / 1024).ToString() + " KB");
fileItem.SubItems.Add(info.LastWriteTime.ToString());
};
WorkbenchSingleton.SafeThreadAsyncCall(method);
}
void fileRenamed(object sender, RenamedEventArgs e)
{
foreach(FileListItem fileItem in Items)
{
if(fileItem.FullName.Equals(e.OldFullPath, StringComparison.OrdinalIgnoreCase)) {
fileItem.FullName = e.FullPath;
fileItem.Text = e.Name;
break;
MethodInvoker method = delegate {
foreach(FileListItem fileItem in Items)
{
if(fileItem.FullName.Equals(e.OldFullPath, StringComparison.OrdinalIgnoreCase)) {
fileItem.FullName = e.FullPath;
fileItem.Text = e.Name;
break;
}
}
}
};
WorkbenchSingleton.SafeThreadAsyncCall(method);
}
void renameFile(object sender, EventArgs e)

Loading…
Cancel
Save