Browse Source

- Do not select the outer list box that displays images.

- Refresh the ProjectBrowser rather than adding FileNode(image file) to the ProjectNode.
- Update the URL text box when adding image files.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@6326 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Kumar Devvrat 16 years ago
parent
commit
742659979e
  1. 25
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/ImageSourceEditor/ChooseImageDialog.xaml.cs
  2. 14
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/ProjectTools.cs

25
src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/ImageSourceEditor/ChooseImageDialog.xaml.cs

@ -38,10 +38,10 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
private static string[] Extension; private static string[] Extension;
private PropertyNode _node; private PropertyNode _node;
private List<ImageData> _data; private List<ImageData> _data;
static ChooseImageDialog() static ChooseImageDialog()
{ {
Extension = new String[]{".jpg", ".bmp", ".png", ".gif", ".ico", ".dib", ".jpe", ".jpeg", ".tif", ".tiff"}; Extension = new String[]{".jpg", ".bmp", ".png", ".gif", ".ico", ".dib", ".jpe", ".jpeg", ".tif", ".tiff"};
} }
@ -71,6 +71,7 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
} }
Display.ItemsSource=_data; Display.ItemsSource=_data;
Display.SelectionChanged+=delegate { Display.SelectedItem=null; };
} }
#region Event Handlers #region Event Handlers
@ -91,8 +92,10 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
List<string> temp=new List<string>(); List<string> temp=new List<string>();
foreach(var file in fileNames){ foreach(var file in fileNames){
temp.Add(Path.GetFileName(file)); temp.Add(Path.GetFileName(file));
} }
_data.OrderBy(image => image.Header).ElementAt(0).Images.AddRange(fileNames); if(fileNames.Length!=0)
txURL.Text = fileNames.Last();
_data.OrderBy(image => image.Header).ElementAt(0).Images.AddRange(fileNames);
} }
} }
@ -121,7 +124,7 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
_node.Value=_imgDisplay.SelectedItem; _node.Value=_imgDisplay.SelectedItem;
Close(); Close();
} }
} }
protected override void OnPreviewKeyUp(KeyEventArgs e) protected override void OnPreviewKeyUp(KeyEventArgs e)
@ -144,7 +147,7 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
else else
MessageBox.Show(this, "The specified file is not a valid image file", "Error", MessageBoxButton.OK, MessageBoxImage.Error); MessageBox.Show(this, "The specified file is not a valid image file", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
Close(); Close();
} }
else{ else{
MessageBox.Show(this, "The specified file does not exist on the disk", "Error", MessageBoxButton.OK, MessageBoxImage.Error); MessageBox.Show(this, "The specified file does not exist on the disk", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
@ -156,13 +159,7 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
{ {
Close(); Close();
} }
#endregion
void DisplaySelectionChanged(object sender, SelectionChangedEventArgs e)
{
Display.SelectedItem=null;
}
#endregion
} }
public class ImageData public class ImageData
@ -181,6 +178,6 @@ namespace ICSharpCode.WpfDesign.AddIn.ImageSourceEditor
{ {
this.Header=header; this.Header=header;
this.Images=images; this.Images=images;
} }
} }
} }

14
src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/ProjectTools.cs

@ -17,28 +17,26 @@ namespace ICSharpCode.WpfDesign.AddIn
/// <summary> /// <summary>
/// Static helper methods to interact with the project /// Static helper methods to interact with the project
/// </summary> /// </summary>
public class ProjectTools internal class ProjectTools
{ {
/// <summary> /// <summary>
/// Add files to the current project at the project node. /// Add files to the current project at the project node.
/// </summary> /// </summary>
/// <param name="fileNames"></param> /// <param name="fileNames">list of files that have to be added.</param>
internal static void AddFiles(string []fileNames) internal static void AddFiles(string []fileNames)
{ {
IProject project=ProjectService.CurrentProject; IProject project=ProjectService.CurrentProject;
ProjectNode projectNode=ProjectBrowserPad.Instance.CurrentProject; Debug.Assert(project!=null);
Debug.Assert(project!=null);
Debug.Assert(projectNode!=null);
foreach(var file in fileNames){ foreach(var file in fileNames){
string relFileName=FileUtility.GetRelativePath(project.Directory,file); string relFileName=FileUtility.GetRelativePath(project.Directory,file);
FileProjectItem fileProjectItem=new FileProjectItem(project,project.GetDefaultItemType(file),relFileName); FileProjectItem fileProjectItem=new FileProjectItem(project,project.GetDefaultItemType(file),relFileName);
FileNode fileNode=new FileNode(file,FileNodeStatus.InProject); FileNode fileNode=new FileNode(file,FileNodeStatus.InProject);
fileNode.ProjectItem=fileProjectItem; fileNode.ProjectItem=fileProjectItem;
fileNode.InsertSorted(projectNode);
ProjectService.AddProjectItem(project,fileProjectItem); ProjectService.AddProjectItem(project,fileProjectItem);
} }
project.Save(); project.Save();
ProjectBrowserPad.Instance.ProjectBrowserControl.RefreshView();
} }
/// <summary> /// <summary>

Loading…
Cancel
Save