1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 12:32:20 +02:00

Fixed manually added files with same name as auto files in IDE

This commit is contained in:
Brian Fiete 2020-01-23 07:43:44 -08:00
parent d59f79ef79
commit 480f909cec
3 changed files with 28 additions and 12 deletions

View file

@ -37,6 +37,14 @@ namespace IDE
public String mName = new String() ~ delete _;
public String mComment = new String() ~ delete _;
public bool IncludeInMap
{
get
{
return mIncludeKind != .Manual;
}
}
public ~this()
{
Debug.Assert(mRefCount == 0);
@ -236,9 +244,12 @@ namespace IDE
bool didNameMatch = mName == fileName;
mParentFolder.mChildMap.Remove(mName);
mName.Set(newName);
mParentFolder.mChildMap.Add(mName, this);
if (IncludeInMap)
{
mParentFolder.mChildMap.Remove(mName);
mName.Set(newName);
mParentFolder.mChildMap.Add(mName, this);
}
if ((didNameMatch) && (changePath))
{
@ -480,8 +491,12 @@ namespace IDE
}
mChildItems.Insert(index, item);
bool added = mChildMap.TryAdd(item.mName, item);
Debug.Assert(added);
if (item.IncludeInMap)
{
bool added = mChildMap.TryAdd(item.mName, item);
Debug.Assert(added);
}
}
public virtual void InsertChild(ProjectItem item, ProjectItem insertBefore)
@ -505,7 +520,8 @@ namespace IDE
projectFileItem.StopWatching();
}
mChildMap.Remove(item.mName);
if (item.IncludeInMap)
mChildMap.Remove(item.mName);
mChildItems.Remove(item);
item.mParentFolder = null;
}

View file

@ -1103,7 +1103,7 @@ namespace IDE.ui
app.RemoveProject(project);
}
void ProjectItemUnregister(ProjectItem projectItem, bool isDeleting)
void ProjectItemUnregister(ProjectItem projectItem, bool isRemovingProjectSource)
{
var projectSource = projectItem as ProjectSource;
if (projectSource != null)
@ -1136,7 +1136,7 @@ namespace IDE.ui
var sourceViewPanel = tab.mContent as SourceViewPanel;
if ((sourceViewPanel != null) && (sourceViewPanel.mProjectSource == projectSource))
{
if (isDeleting)
if (isRemovingProjectSource)
sourceViewPanel.DetachFromProjectItem();
else
sourceViewPanel.QueueFullRefresh(true);
@ -1145,7 +1145,7 @@ namespace IDE.ui
if (isProjectEnabled)
{
if (isDeleting)
if (isRemovingProjectSource)
{
gApp.mBfResolveHelper.ProjectSourceRemoved(projectSource);
gApp.mWorkspace.ProjectSourceRemoved(projectSource);
@ -1198,8 +1198,6 @@ namespace IDE.ui
if (projectItem == null)
return;
ProjectItemUnregister(projectItem, forceRemove);
bool doReleaseRef = false;
bool didRemove = false;
if ((forceRemove) || (projectItem.mParentFolder == null) || (projectItem.mParentFolder.mIncludeKind == .Manual) || (projectItem.mIncludeKind == .Manual) || (deletePathFunc != null))
@ -1252,6 +1250,8 @@ namespace IDE.ui
}
}
ProjectItemUnregister(projectItem, didRemove);
if ((didRemove) || (!mShowIgnored))
{
listItem.mParentItem.RemoveChildItem(listItem);

View file

@ -297,7 +297,7 @@ namespace IDE.ui
{
scope AutoBeefPerf("ExpressionEditWidget.UpdateText");
if (keyChar == 0)
if ((keyChar == 0) && (doAutoComplete))
return; // Is documentation pass
DeleteAndNullify!(mLastError);