ide; silence the changing of active compiler during a build so as not to interfere...
authorRejean Loyer <rejean.loyer@gmail.com>
Wed, 6 Mar 2013 05:44:06 +0000 (00:44 -0500)
committerJerome St-Louis <jerome@ecere.com>
Wed, 6 Mar 2013 13:31:01 +0000 (08:31 -0500)
ide/src/dialogs/NewProjectDialog.ec
ide/src/ide.ec
ide/src/project/ProjectView.ec

index aab3905..f4104f3 100644 (file)
@@ -197,7 +197,7 @@ class NewProjectDialog : Window
             ProjectConfig config = project.config;
             projectWindow.ShowOutputBuildLog(true);
             projectWindow.DisplayCompiler(compiler, false);
-            projectWindow.ProjectPrepareCompiler(project, compiler);
+            projectWindow.ProjectPrepareCompiler(project, compiler, false);
             projectWindow.ProjectPrepareMakefile(project, force, compiler, config);
             delete compiler;
 
@@ -543,7 +543,7 @@ class QuickProjectDialog : Window
             ProjectConfig config = project.config;
             projectWindow.ShowOutputBuildLog(true);
             projectWindow.DisplayCompiler(compiler, false);
-            projectWindow.ProjectPrepareCompiler(project, compiler);
+            projectWindow.ProjectPrepareCompiler(project, compiler, false);
             projectWindow.ProjectPrepareMakefile(project, force, compiler, config);
             delete compiler;
          }
index 447568f..39e33a4 100644 (file)
@@ -307,12 +307,14 @@ class IDEToolbar : ToolBar
       {
          if(row && strcmp(row.string, ide.workspace.compiler))
          {
+            bool silent = ide.projectView.buildInProgress == none ? false : true;
             CompilerConfig compiler = ideSettings.GetCompilerConfig(row.string);
             ide.workspace.compiler = row.string;
-            ide.projectView.ShowOutputBuildLog(true);
-            ide.projectView.DisplayCompiler(compiler, false);
+            ide.projectView.ShowOutputBuildLog(!silent);
+            if(!silent)
+               ide.projectView.DisplayCompiler(compiler, false);
             for(prj : ide.workspace.projects)
-               ide.projectView.ProjectPrepareCompiler(prj, compiler);
+               ide.projectView.ProjectPrepareCompiler(prj, compiler, silent);
             delete compiler;
             ide.workspace.Save();
          }
@@ -1614,7 +1616,7 @@ class IDEWorkSpace : Window
          projectView.ShowOutputBuildLog(true);
          projectView.DisplayCompiler(compiler, false);
          for(prj : workspace.projects)
-            projectView.ProjectPrepareCompiler(prj, compiler);
+            projectView.ProjectPrepareCompiler(prj, compiler, false);
          delete compiler;
       }
    }
index 1cc11f5..a9892f7 100644 (file)
@@ -607,14 +607,14 @@ class ProjectView : Window
       if(displayCompiler)
          DisplayCompiler(compiler, false);
 
-      ProjectPrepareCompiler(project, compiler);
+      ProjectPrepareCompiler(project, compiler, false);
       ProjectPrepareMakefile(project, method, compiler, config);
       return true;
    }
 
-   bool ProjectPrepareCompiler(Project project, CompilerConfig compiler)
+   bool ProjectPrepareCompiler(Project project, CompilerConfig compiler, bool silent)
    {
-      if(!project.GenerateCrossPlatformMk(app.includeFile) || !project.GenerateCompilerCf(compiler))
+      if((!project.GenerateCrossPlatformMk(app.includeFile) || !project.GenerateCompilerCf(compiler)) && !silent)
          ide.outputView.buildBox.Logf($"Error generating compiler configuration (Is the project/config directory writable?)\n");
       return true;
    }
@@ -1040,7 +1040,7 @@ class ProjectView : Window
       }
 
       DisplayCompiler(compiler, false);
-      ProjectPrepareCompiler(project, compiler);
+      ProjectPrepareCompiler(project, compiler, false);
       ProjectPrepareMakefile(prj, force, compiler, prj.config);
       delete compiler;
       return true;