Skip to content

Commit f53f85c

Browse files
author
SlavaRa
committed
fixes #182
1 parent e82879b commit f53f85c

File tree

3 files changed

+17
-2
lines changed

3 files changed

+17
-2
lines changed

External/Plugins/ProjectManager/Controls/TreeView/OtherNodes.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ public ProjectNode(Project project) : base(project.Directory)
1919
{
2020
this.project = project;
2121
isDraggable = false;
22-
isRenamable = false;
2322
}
2423

2524
public override void Refresh(bool recursive)

External/Plugins/ProjectManager/Controls/TreeView/ProjectContextMenu.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,7 @@ private void AddProjectItems(MergableMenu menu)
323323
menu.Add(CommandPrompt, 1);
324324
if (Win32.ShouldUseWin32()) menu.Add(ShellMenu, 1);
325325
menu.Add(Paste, 2);
326+
menu.Add(Rename, 1);
326327
menu.Add(ShowHidden, 3, showHidden);
327328
menu.Add(Properties, 4);
328329
}

External/Plugins/ProjectManager/PluginUI.cs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,22 @@ private void tree_AfterLabelEdit(Object sender, NodeLabelEditEventArgs e)
217217
{
218218
if (!string.IsNullOrEmpty(e.Label) && Rename != null)
219219
{
220-
if (!Rename((e.Node as GenericNode).BackingPath, e.Label))
220+
if (e.Node is ProjectNode)
221+
{
222+
var oldName = project.ProjectPath;
223+
string label = e.Label;
224+
int index = label.IndexOf("(" + project.LanguageDisplayName + ")");
225+
if (index != -1) label = label.Remove(index).Trim();
226+
var newName = Path.Combine(project.Directory, label);
227+
newName = Path.ChangeExtension(newName, Path.GetExtension(oldName));
228+
if (Rename(oldName, newName))
229+
{
230+
PluginBase.MainForm.OpenEditableDocument(newName);
231+
File.Delete(oldName); //slavara: because the old file remains after renaming
232+
}
233+
else e.CancelEdit = true;
234+
}
235+
else if (!Rename(((GenericNode) e.Node).BackingPath, e.Label))
221236
e.CancelEdit = true;
222237
}
223238
else e.CancelEdit = true;

0 commit comments

Comments
 (0)