public IAsyncOperation ExecuteFile(string file)
 {
     Project tempProject = CreateSingleFileProject (file);
     if (tempProject != null) {
         IAsyncOperation aop = Execute (tempProject);
         ProjectOperationHandler h = new ProjectOperationHandler ();
         h.Project = tempProject;
         aop.Completed += new OperationHandler (h.Run);
         return aop;
     } else {
         Runtime.MessageService.ShowError(GettextCatalog.GetString ("No runnable executable found."));
         return NullAsyncOperation.Failure;
     }
 }
 public IAsyncOperation BuildFile(string file)
 {
     Project tempProject = CreateSingleFileProject (file);
     if (tempProject != null) {
         IAsyncOperation aop = Build (tempProject);
         ProjectOperationHandler h = new ProjectOperationHandler ();
         h.Project = tempProject;
         aop.Completed += new OperationHandler (h.Run);
         return aop;
     } else {
         Runtime.MessageService.ShowError (string.Format (GettextCatalog.GetString ("The file {0} can't be compiled."), file));
         return NullAsyncOperation.Failure;
     }
 }