1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-15 23:04:09 +02:00

Relaxed project name restrictions. Auto-refresh of installed libraries.

This commit is contained in:
Brian Fiete 2020-08-31 11:32:33 -07:00
parent b3354ee635
commit 4d55a32c90
6 changed files with 143 additions and 27 deletions

View file

@ -2616,18 +2616,30 @@ namespace IDE
if (let project = mWorkspace.FindProject(projectName))
return project;
if (useVerSpecRecord.mVerSpec case .SemVer)
{
for (int regEntryIdx = mBeefConfig.mRegistry.Count - 1; regEntryIdx >= 0; regEntryIdx--)
// First pass we just try to use the 'expected' project name
FindLoop: for (int pass < 2)
{
var regEntry = mBeefConfig.mRegistry[regEntryIdx];
if (regEntry.mProjName == projectName)
using (mBeefConfig.mRegistry.mMonitor.Enter())
{
useVerSpecRecord = regEntry.mLocation;
verConfigDir = regEntry.mConfigFile.mConfigDir;
for (int regEntryIdx = mBeefConfig.mRegistry.mEntries.Count - 1; regEntryIdx >= 0; regEntryIdx--)
{
var regEntry = mBeefConfig.mRegistry.mEntries[regEntryIdx];
if ((regEntry.mProjName == projectName) && (!regEntry.mParsedConfig))
mBeefConfig.mRegistry.ParseConfig(regEntry);
if (regEntry.mProjName == projectName)
{
useVerSpecRecord = regEntry.mLocation;
verConfigDir = regEntry.mConfigFile.mConfigDir;
break FindLoop;
}
}
}
mBeefConfig.mRegistry.WaitFor();
}
}
@ -11072,6 +11084,12 @@ namespace IDE
tabButton.Activate();
}
public void CheckLoadConfig()
{
if (mBeefConfig.mLibsChanged)
LoadConfig();
}
void LoadConfig()
{
delete mBeefConfig;