if(compilersTab.modifiedDocument)
{
- bool foundActive = false;
Workspace workspace = ide.workspace;
if(strcmp(compilersTab.compilerConfigsDir.path, ideSettings.compilerConfigsDir))
ideSettings.compilerConfigsDir = compilersTab.compilerConfigsDir.path;
for(compiler : compilersTab.compilerConfigs)
{
ideSettings.compilerConfigs.Add(compiler.Copy());
- if(!foundActive && workspace && workspace.compiler && !strcmp(workspace.compiler, compiler.name))
- foundActive = true;
}
- if(workspace && !foundActive)
- workspace.compiler = defaultCompilerName;
compilerSettingsChanged = true;
}
break;
case compilerSettings:
{
- ide.UpdateCompilerConfigs();
+ ide.UpdateCompilerConfigs(true);
break;
}
}
DropBox activeConfig
{
- this, toolTip = $"Active Configuration(s)", size = { 160 };
+ this, toolTip = $"Active Configuration(s)", size = { 160 }, disabled = true;
bool NotifySelect(DropBox dropBox, DataRow row, Modifiers mods)
{
if(row)
DropBox activeCompiler
{
- this, toolTip = $"Active Compiler", size = { 160 };
+ this, toolTip = $"Active Compiler", size = { 160 }, disabled = true;
bool NotifySelect(DropBox dropBox, DataRow row, Modifiers mods)
{
- if(row && strcmp(row.string, ide.workspace.compiler))
+ if(ide.workspace && ide.projectView && row && strcmp(row.string, ide.workspace.compiler))
{
bool silent = ide.projectView.buildInProgress == none ? false : true;
CompilerConfig compiler = ideSettings.GetCompilerConfig(row.string);
findInFilesDialog.currentDirectory = workingDir;
ideMainFrame.text = titleECEREIDE;
}
+ ide.AdjustMenus();
}
}
return true;
}
}
- void UpdateCompilerConfigs()
+ void UpdateCompilerConfigs(bool mute)
{
UpdateToolBarActiveCompilers();
if(workspace)
{
+ bool silent = mute || (ide.projectView.buildInProgress == none ? false : true);
CompilerConfig compiler = ideSettings.GetCompilerConfig(workspace.compiler);
- projectView.ShowOutputBuildLog(true);
- projectView.DisplayCompiler(compiler, false);
+ if(!silent)
+ {
+ projectView.ShowOutputBuildLog(true);
+ projectView.DisplayCompiler(compiler, false);
+ }
for(prj : workspace.projects)
- projectView.ProjectPrepareCompiler(prj, compiler, false);
+ projectView.ProjectPrepareCompiler(prj, compiler, silent);
delete compiler;
}
}
if(workspace && workspace.compiler && !strcmp(compiler.name, workspace.compiler))
toolBar.activeCompiler.currentRow = row;
}
- if(!toolBar.activeCompiler.currentRow)
- toolBar.activeCompiler.currentRow = toolBar.activeCompiler.firstRow;
- toolBar.activeCompiler.disabled = workspace == null;
+ if(!toolBar.activeCompiler.currentRow && toolBar.activeCompiler.firstRow)
+ toolBar.activeCompiler.SelectRow(toolBar.activeCompiler.firstRow);
}
void UpdateToolBarActiveConfigs(bool selectionOnly)
toolBar.activeConfig.Sort(null, 0);
if(!commonSelected)
toolBar.activeConfig.currentRow = row;
- toolBar.activeConfig.disabled = workspace == null;
}
void AdjustMenus()
ide.projectView.DisplayCompiler(compiler, false);
delete compiler;
}
- UpdateCompilerConfigs();
+ UpdateCompilerConfigs(false);
UpdateMakefiles();
{
char newWorkingDir[MAX_LOCATION];