git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1214 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
@ -115,7 +115,7 @@ namespace ICSharpCode.SharpDevelop.Gui
}
#region Label edit
protected bool canLabelEdit = true;
protected bool canLabelEdit = false;
public virtual bool CanLabelEdit {
get {
return canLabelEdit;
@ -139,21 +139,24 @@ namespace ICSharpCode.SharpDevelop.Gui
if (node == null) {
return;
node.EnsureVisible();
SelectedNode = node;
if (node.CanLabelEdit) {
LabelEdit = true;
node.BeforeLabelEdit();
node.BeginEdit();
protected override bool ProcessDialogKey(Keys keyData)
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
switch (keyData) {
case Keys.F2:
StartLabelEdit(SelectedNode as ExtTreeNode);
break;
return base.ProcessDialogKey(keyData);
return base.ProcessCmdKey(ref msg, keyData);
protected override void OnAfterLabelEdit(NodeLabelEditEventArgs e)
@ -30,17 +30,6 @@ namespace ICSharpCode.SharpDevelop.Project
string toolbarAddinTreePath = null;
protected bool autoClearNodes = true;
protected bool canLabelEdited = true;
/// <returns>
/// True, if this node can be label edited, false otherwise.
/// </returns>
public bool CanLabelEdited {
return canLabelEdited;
public virtual string ToolbarAddinTreePath {
@ -244,11 +244,13 @@ namespace ICSharpCode.SharpDevelop.Project
sortOrder = 1;
SetIcon();
canLabelEdit = true;
public DirectoryNode(string directory) : this(directory, FileNodeStatus.None)
CustomNode removeMe = null;
public DirectoryNode(string directory, FileNodeStatus fileNodeStatus)
@ -262,6 +264,7 @@ namespace ICSharpCode.SharpDevelop.Project
removeMe.AddTo(this);
/// <summary>
@ -482,6 +485,9 @@ namespace ICSharpCode.SharpDevelop.Project
if (!FileService.CheckDirectoryName(newName)) {
if (String.Compare(Text, newName, true) == 0) {
string oldText = Text;
Text = newName;
if (Directory != null) {
@ -19,7 +19,7 @@ namespace ICSharpCode.SharpDevelop.Project
string fileName = String.Empty;
FileNodeStatus fileNodeStatus = FileNodeStatus.None;
ProjectItem projectItem = null;
public override bool Visible {
return ShowAll || fileNodeStatus != FileNodeStatus.None;
@ -112,11 +112,13 @@ namespace ICSharpCode.SharpDevelop.Project
autoClearNodes = false;
public FileNode(string fileName) : this (fileName, FileNodeStatus.None)
sortOrder = 5;
public override void ActivateItem()
@ -60,6 +60,7 @@ namespace ICSharpCode.SharpDevelop.Project
public SolutionFolderNode(Solution solution, SolutionFolder folder)
sortOrder = 0;
ContextmenuAddinTreePath = "/SharpDevelop/Pads/ProjectBrowser/ContextMenu/SolutionFolderNode";
this.solution = solution;
@ -35,6 +35,7 @@ namespace ICSharpCode.SharpDevelop.Project
public SolutionItemNode(Solution solution, SolutionItem item)
sortOrder = 2;
ContextmenuAddinTreePath = "/SharpDevelop/Pads/ProjectBrowser/ContextMenu/SolutionItemNode";
@ -39,6 +39,7 @@ namespace ICSharpCode.SharpDevelop.Project
Text = "Solution " + solution.Name;
ContextmenuAddinTreePath = "/SharpDevelop/Pads/ProjectBrowser/ContextMenu/SolutionNode";