mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-11 04:52:21 +02:00
Fixed manually added files with same name as auto files in IDE
This commit is contained in:
parent
d59f79ef79
commit
480f909cec
3 changed files with 28 additions and 12 deletions
|
@ -37,6 +37,14 @@ namespace IDE
|
||||||
public String mName = new String() ~ delete _;
|
public String mName = new String() ~ delete _;
|
||||||
public String mComment = new String() ~ delete _;
|
public String mComment = new String() ~ delete _;
|
||||||
|
|
||||||
|
public bool IncludeInMap
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return mIncludeKind != .Manual;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public ~this()
|
public ~this()
|
||||||
{
|
{
|
||||||
Debug.Assert(mRefCount == 0);
|
Debug.Assert(mRefCount == 0);
|
||||||
|
@ -236,9 +244,12 @@ namespace IDE
|
||||||
|
|
||||||
bool didNameMatch = mName == fileName;
|
bool didNameMatch = mName == fileName;
|
||||||
|
|
||||||
mParentFolder.mChildMap.Remove(mName);
|
if (IncludeInMap)
|
||||||
mName.Set(newName);
|
{
|
||||||
mParentFolder.mChildMap.Add(mName, this);
|
mParentFolder.mChildMap.Remove(mName);
|
||||||
|
mName.Set(newName);
|
||||||
|
mParentFolder.mChildMap.Add(mName, this);
|
||||||
|
}
|
||||||
|
|
||||||
if ((didNameMatch) && (changePath))
|
if ((didNameMatch) && (changePath))
|
||||||
{
|
{
|
||||||
|
@ -480,8 +491,12 @@ namespace IDE
|
||||||
}
|
}
|
||||||
|
|
||||||
mChildItems.Insert(index, item);
|
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)
|
public virtual void InsertChild(ProjectItem item, ProjectItem insertBefore)
|
||||||
|
@ -505,7 +520,8 @@ namespace IDE
|
||||||
projectFileItem.StopWatching();
|
projectFileItem.StopWatching();
|
||||||
}
|
}
|
||||||
|
|
||||||
mChildMap.Remove(item.mName);
|
if (item.IncludeInMap)
|
||||||
|
mChildMap.Remove(item.mName);
|
||||||
mChildItems.Remove(item);
|
mChildItems.Remove(item);
|
||||||
item.mParentFolder = null;
|
item.mParentFolder = null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1103,7 +1103,7 @@ namespace IDE.ui
|
||||||
app.RemoveProject(project);
|
app.RemoveProject(project);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ProjectItemUnregister(ProjectItem projectItem, bool isDeleting)
|
void ProjectItemUnregister(ProjectItem projectItem, bool isRemovingProjectSource)
|
||||||
{
|
{
|
||||||
var projectSource = projectItem as ProjectSource;
|
var projectSource = projectItem as ProjectSource;
|
||||||
if (projectSource != null)
|
if (projectSource != null)
|
||||||
|
@ -1136,7 +1136,7 @@ namespace IDE.ui
|
||||||
var sourceViewPanel = tab.mContent as SourceViewPanel;
|
var sourceViewPanel = tab.mContent as SourceViewPanel;
|
||||||
if ((sourceViewPanel != null) && (sourceViewPanel.mProjectSource == projectSource))
|
if ((sourceViewPanel != null) && (sourceViewPanel.mProjectSource == projectSource))
|
||||||
{
|
{
|
||||||
if (isDeleting)
|
if (isRemovingProjectSource)
|
||||||
sourceViewPanel.DetachFromProjectItem();
|
sourceViewPanel.DetachFromProjectItem();
|
||||||
else
|
else
|
||||||
sourceViewPanel.QueueFullRefresh(true);
|
sourceViewPanel.QueueFullRefresh(true);
|
||||||
|
@ -1145,7 +1145,7 @@ namespace IDE.ui
|
||||||
|
|
||||||
if (isProjectEnabled)
|
if (isProjectEnabled)
|
||||||
{
|
{
|
||||||
if (isDeleting)
|
if (isRemovingProjectSource)
|
||||||
{
|
{
|
||||||
gApp.mBfResolveHelper.ProjectSourceRemoved(projectSource);
|
gApp.mBfResolveHelper.ProjectSourceRemoved(projectSource);
|
||||||
gApp.mWorkspace.ProjectSourceRemoved(projectSource);
|
gApp.mWorkspace.ProjectSourceRemoved(projectSource);
|
||||||
|
@ -1198,8 +1198,6 @@ namespace IDE.ui
|
||||||
if (projectItem == null)
|
if (projectItem == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ProjectItemUnregister(projectItem, forceRemove);
|
|
||||||
|
|
||||||
bool doReleaseRef = false;
|
bool doReleaseRef = false;
|
||||||
bool didRemove = false;
|
bool didRemove = false;
|
||||||
if ((forceRemove) || (projectItem.mParentFolder == null) || (projectItem.mParentFolder.mIncludeKind == .Manual) || (projectItem.mIncludeKind == .Manual) || (deletePathFunc != null))
|
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))
|
if ((didRemove) || (!mShowIgnored))
|
||||||
{
|
{
|
||||||
listItem.mParentItem.RemoveChildItem(listItem);
|
listItem.mParentItem.RemoveChildItem(listItem);
|
||||||
|
|
|
@ -297,7 +297,7 @@ namespace IDE.ui
|
||||||
{
|
{
|
||||||
scope AutoBeefPerf("ExpressionEditWidget.UpdateText");
|
scope AutoBeefPerf("ExpressionEditWidget.UpdateText");
|
||||||
|
|
||||||
if (keyChar == 0)
|
if ((keyChar == 0) && (doAutoComplete))
|
||||||
return; // Is documentation pass
|
return; // Is documentation pass
|
||||||
|
|
||||||
DeleteAndNullify!(mLastError);
|
DeleteAndNullify!(mLastError);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue