private void listViewFolders_DragDrop(object sender, DragEventArgs e)
{
// Determine whether dropped object is a file or folder.
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
string[] filePath = ((string[])e.Data.GetData(DataFormats.FileDrop));
foreach (string p in filePath)
{
if(File.Exists(p))
AddFile(p);
else if(Directory.Exists(p))
AddFolder(p);
}
}
else // otherwise assume it is a DragAndDropListView.DragItem
{
try
{
DragAndDropListView.DragItemData data = (DragAndDropListView.DragItemData)e.Data.GetData(typeof(DragAndDropListView.DragItemData));
ListViewItem item = (ListViewItem)data.DragItems[0];
folders.Remove((ScmRepository)item.Tag);
folders.Insert(item.Index, (ScmRepository)item.Tag);
Config.SaveSvnFolders(folders);
}
catch (Exception ex)
{
OnThreadException(this, new ThreadExceptionEventArgs(ex));
}
}
}