protected IEnumerable <FileProjectItem> AddNewItems()
        {
            DirectoryNode node = ProjectBrowserPad.Instance.ProjectBrowserControl.SelectedDirectoryNode;

            if (node == null)
            {
                return(null);
            }
            node.Expand();
            node.Expanding();

            List <FileProjectItem> addedItems = new List <FileProjectItem>();

            using (NewFileDialog nfd = new NewFileDialog(node.Directory)) {
                if (nfd.ShowDialog(ICSharpCode.SharpDevelop.Gui.WorkbenchSingleton.MainForm) == DialogResult.OK)
                {
                    bool additionalProperties = false;
                    foreach (KeyValuePair <string, FileDescriptionTemplate> createdFile in nfd.CreatedFiles)
                    {
                        FileProjectItem item = node.AddNewFile(createdFile.Key);
                        addedItems.Add(item);

                        if (createdFile.Value.SetProjectItemProperties(item))
                        {
                            additionalProperties = true;
                        }
                    }
                    if (additionalProperties)
                    {
                        node.Project.Save();
                        node.RecreateSubNodes();
                    }
                }
            }

            return(addedItems.AsReadOnly());
        }
Exemplo n.º 2
0
 public void AddNewFile(string path)
 {
     directoryNode.AddNewFile(path);
 }