1,fix ImageLoader GetIcon() trigger FileNotFoundException when file not exist;

2,In FolderPluginSettings when trigger Delete Action need confirm;
3,Add drag and drop functionality in ProgramSetting and FileSystemSettings.

Signed-off-by: 716 <525223688@qq.com>
This commit is contained in:
716
2015-01-09 10:23:48 +08:00
parent 288be8dd71
commit 6e3ca5391a
8 changed files with 97 additions and 6 deletions

View File

@@ -27,8 +27,13 @@ namespace Wox.Plugin.Folder
var selectedFolder = lbxFolders.SelectedItem as FolderLink;
if (selectedFolder != null)
{
FolderStorage.Instance.FolderLinks.Remove(selectedFolder);
lbxFolders.Items.Refresh();
string msg = string.Format(context.API.GetTranslation("wox_plugin_folder_delete_folder_link"), selectedFolder.Path);
if (MessageBox.Show(msg, string.Empty, MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
FolderStorage.Instance.FolderLinks.Remove(selectedFolder);
lbxFolders.Items.Refresh();
}
}
else
{
@@ -82,5 +87,46 @@ namespace Wox.Plugin.Folder
lbxFolders.Items.Refresh();
}
private void lbxFolders_Drop(object sender, System.Windows.DragEventArgs e)
{
string[] files = (string[])e.Data.GetData(System.Windows.DataFormats.FileDrop);
if (files != null && files.Count() > 0)
{
if (FolderStorage.Instance.FolderLinks == null)
{
FolderStorage.Instance.FolderLinks = new List<FolderLink>();
}
foreach (string s in files)
{
if (System.IO.Directory.Exists(s) == true)
{
var newFolder = new FolderLink()
{
Path = s
};
FolderStorage.Instance.FolderLinks.Add(newFolder);
FolderStorage.Instance.Save();
}
lbxFolders.Items.Refresh();
}
}
}
private void lbxFolders_DragEnter(object sender, System.Windows.DragEventArgs e)
{
if (e.Data.GetDataPresent(System.Windows.DataFormats.FileDrop))
{
e.Effects = System.Windows.DragDropEffects.Link;
}
else
{
e.Effects = System.Windows.DragDropEffects.None;
}
}
}
}