private void LoadPlugins(object state) { AddTextToCompilerMessages(VECStringResources.Get("LOAD_PLUGINS") + Environment.NewLine); PluginsController.AddPlugins(); if (PluginsController.Plugins.Count == 0) { AddTextToCompilerMessages(VECStringResources.Get("PLUGINS_NOTFOUND") + Environment.NewLine); } else { foreach (VisualPascalABCPlugins.IVisualPascalABCPlugin Plugin in PluginsController.Plugins) { AddTextToCompilerMessages(Plugin.Name + " v" + Plugin.Version + Environment.NewLine); } } if (PluginsController.ErrorList.Count > 0) { AddTextToCompilerMessages(VECStringResources.Get("PLUGINS_LOADING_ERRORS") + Environment.NewLine); foreach (VisualPascalABCPlugins.PluginLoadingError Error in PluginsController.ErrorList) { AddTextToCompilerMessages(Error.ToString() + Environment.NewLine); } } //VisualPABCSingleton.MainForm.codeCompletionParserController.ParseAllFiles(); }
public ProjectProperties() { // // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); openFileDialog1.Filter = VECStringResources.Get("DIALOGS_FILTER_ICO_FILES") + "|*.ico"; // // TODO: Add constructor code after the InitializeComponent() call. // }
void AddCompilerTextToCompilerMessages(PascalABCCompiler.ICompiler sender, string text) { if (sender.CompilerType == PascalABCCompiler.CompilerType.Standart) { AddTextToCompilerMessages(VECStringResources.Get("LOCAL_COMPILER_PREFIX") + text); } else { AddTextToCompilerMessages(VECStringResources.Get("REMOTE_COMPILER_PREFIX") + text); } }
public static string FinishMakeFilter(string Filter, string AllFilter) { if (AllFilter != "") { AllFilter = AllFilter.Substring(0, AllFilter.Length - 1); } if (Filter != "") { Filter = string.Format(VECStringResources.Get("DIALOGS_FILTER_PARTALL_{0}|{0}|{1}"), AllFilter, Filter); } return(Filter + VECStringResources.Get("DIALOGS_FILTER_ALLFILES") + " (*.*)|*.*"); }
public static string MakeProjectFilter(string Filter, string Name, string[] Extensions) { string sf = PascalABCCompiler.FormatTools.ExtensionsToString(Extensions, "*", ";"); sf = string.Format(VECStringResources.Get("DIALOGS_PROJECT_FILTER_PART_{0}{1}|{1}|"), Name, sf); if (sf.IndexOf(".pabcproj") >= 0) { return(sf + Filter); } else { return(Filter + sf); } }
public string GetAssemblyFilterForDialogs() { if (standartCompiler == null) { return(null); } string Filter = ""; string AllFilter = ""; Filter = Tools.MakeFilter(Filter, VECStringResources.Get("ASSEMBLIES"), new string[1] { ".dll" }); AllFilter = Tools.MakeAllFilter(AllFilter, VECStringResources.Get("ASSEMBLIES"), new string[1] { ".dll" }); return(Tools.FinishMakeFilter(Filter, AllFilter)); }
private void OnChangeCompilerStateEx(PascalABCCompiler.ICompiler sender, PascalABCCompiler.CompilerState State, string FullFileName) { string RusName = null; string FileName = null; if (FullFileName != null) { FileName = Path.GetFileName(FullFileName); } switch (State) { case PascalABCCompiler.CompilerState.CompilationStarting: RusName = VECStringResources.Get("STATE_START_COMPILING_ASSEMBLY{0}"); SetCompilingButtonsEnabled(false); ParsedFiles.Clear(); break; case PascalABCCompiler.CompilerState.BeginCompileFile: RusName = VECStringResources.Get("STATE_BEGINCOMPILEFILE{0}"); break; case PascalABCCompiler.CompilerState.CompileInterface: RusName = VECStringResources.Get("STATE_COMPILEINTERFACE{0}"); break; case PascalABCCompiler.CompilerState.CompileImplementation: RusName = VECStringResources.Get("STATE_COMPILEIMPLEMENTATION{0}"); break; case PascalABCCompiler.CompilerState.EndCompileFile: RusName = VECStringResources.Get("STATE_ENDCOMPILEFILE{0}"); break; case PascalABCCompiler.CompilerState.CodeGeneration: RusName = VECStringResources.Get("STATE_CODEGENERATION{0}"); break; case PascalABCCompiler.CompilerState.ReadDLL: RusName = VECStringResources.Get("STATE_READDLL{0}"); break; case PascalABCCompiler.CompilerState.SavePCUFile: RusName = VECStringResources.Get("STATE_SAVEPCUFILE{0}"); break; case PascalABCCompiler.CompilerState.ReadPCUFile: RusName = VECStringResources.Get("STATE_READPCUFILE{0}"); break; case PascalABCCompiler.CompilerState.PCUReadingError: RusName = VECStringResources.Get("STATE_PCUREADINGERROR{0}"); break; case PascalABCCompiler.CompilerState.PCUWritingError: RusName = VECStringResources.Get("STATE_PCUWRITINGERROR{0}"); break; case PascalABCCompiler.CompilerState.SemanticTreeConversion: RusName = VECStringResources.Get("STATE_SEMANTICTREECONVERSION{0}"); break; case PascalABCCompiler.CompilerState.SemanticTreeConverterConnected: RusName = VECStringResources.Get("STATE_SEMANTICTREECONVERTERCONNECTED{0}"); break; case PascalABCCompiler.CompilerState.SyntaxTreeConversion: RusName = VECStringResources.Get("STATE_SYNTAXTREECONVERSION{0}"); break; case PascalABCCompiler.CompilerState.SyntaxTreeConverterConnected: RusName = VECStringResources.Get("STATE_SYNTAXTREECONVERTERCONNECTED{0}"); break; case PascalABCCompiler.CompilerState.ParserConnected: FileName = Path.GetFileName(FileName); if (sender.CompilerType == PascalABCCompiler.CompilerType.Standart) { RusName = string.Format(VECStringResources.Get("PARSER_CONNECTED{0}{1}"), sender.ParsersController.LastParser, FileName); } else { RusName = string.Format(VECStringResources.Get("PARSER_CONNECTED{0}"), FileName); } FileName = null; break; case PascalABCCompiler.CompilerState.Ready: RusName = VECStringResources.Get("STATE_READY"); if (!StartingCompleted) { switch (sender.CompilerType) { case PascalABCCompiler.CompilerType.Standart: standartCompiler = (PascalABCCompiler.Compiler)sender; break; case PascalABCCompiler.CompilerType.Remote: remoteCompiler = (PascalABCCompiler.RemoteCompiler)sender; break; } if (!(defaultCompilerType == PascalABCCompiler.CompilerType.Remote) || (standartCompiler.State == PascalABCCompiler.CompilerState.Ready && (remoteCompiler != null && remoteCompiler.State == PascalABCCompiler.CompilerState.Ready))) { StartingCompleted = true; } AddCompilerTextToCompilerMessages(sender, VECStringResources.Get("SUPPORTED_LANGUAGES") + Environment.NewLine); foreach (PascalABCCompiler.SupportedSourceFile ssf in standartCompiler.SupportedSourceFiles) { AddCompilerTextToCompilerMessages(sender, string.Format(VECStringResources.Get("CM_LANGUAGE_{0}"), ssf) + Environment.NewLine); } if (StartingCompleted) { ChangeVisualEnvironmentState(VisualEnvironmentState.FinishCompilerLoading, standartCompiler); compilerLoaded = true; VisualPABCSingleton.MainForm.StartTimer(); /*if (!ThreadPool.QueueUserWorkItem(new WaitCallback(CompileTestProgram))) * CompileTestProgram(null);*/ if (!ThreadPool.QueueUserWorkItem(new WaitCallback(LoadPlugins))) { LoadPlugins(null); } SetCompilingButtonsEnabled(true); SetDebugButtonsEnabled(true); } } else { if (Compiler == sender) { SetCompilingButtonsEnabled(true); } } break; case PascalABCCompiler.CompilerState.Reloading: if (Compiler == sender) { SetCompilingButtonsEnabled(false); } RusName = VECStringResources.Get("STATE_RELOADING"); break; case PascalABCCompiler.CompilerState.CompilationFinished: RusName = VECStringResources.Get("STATE_COMPILATIONFINISHED{0}"); if (Compiler.ErrorsList.Count == 0) { SaveSourceFilesIfCompilationOk(); AddTextToCompilerMessages(string.Format(VECStringResources.Get("CM_OK_{0}MS") + Environment.NewLine, (DateTime.Now - compilationStartTime).TotalMilliseconds) + Environment.NewLine); } else { List <PascalABCCompiler.Errors.Error> ErrorsList = ErrorsManager.CreateErrorsList(Compiler.ErrorsList); AddTextToCompilerMessages(string.Format(VECStringResources.Get("CM_{0}_ERROS") + Environment.NewLine, ErrorsList.Count)); foreach (PascalABCCompiler.Errors.Error Err in ErrorsList) { AddTextToCompilerMessages(Err.ToString() + Environment.NewLine); } } break; default: //RusName = State.ToString(); break; } if (RusName != null) { if (FileName != null) { RusName = string.Format(RusName, FileName); } else { RusName = string.Format(RusName, ""); } RusName += Environment.NewLine; AddCompilerTextToCompilerMessages(sender, RusName); } RusName = null; switch (State) { case PascalABCCompiler.CompilerState.BeginParsingFile: ParsedFiles.Add(FullFileName); break; case PascalABCCompiler.CompilerState.BeginCompileFile: RusName = VECStringResources.Get("STATETEXT_BEGINCOMPILEFILE{0}"); break; //case PascalABCCompiler.CompilerState.ReadPCUFile: RusName = "Чтение {0}..."; break; case PascalABCCompiler.CompilerState.CodeGeneration: RusName = VECStringResources.Get("STATETEXT_CODEGENERATION{0}"); break; //case PascalABCCompiler.CompilerState.ReadDLL: //case PascalABCCompiler.CompilerState.ReadPCUFile: RusName = "Чтение {0}..."; break; case PascalABCCompiler.CompilerState.Ready: if (Compiler != null) { List <PascalABCCompiler.Errors.Error> ErrorsList = ErrorsManager.CreateErrorsList(Compiler.ErrorsList); if (ErrorsList.Count > 0) { RusName = string.Format(VECStringResources.Get("STATETEXT_{0}_ERROS"), ErrorsList.Count); } else if (Compilation) { if (Compiler.Warnings.Count > 0) { RusName = string.Format(VECStringResources.Get("STATETEXT_COMPILATION_SUCCESS_{0}LINES_{1}WARNINGS"), Compiler.LinesCompiled, Compiler.Warnings.Count); } else { RusName = string.Format(VECStringResources.Get("STATETEXT_COMPILATION_SUCCESS_{0}LINES"), Compiler.LinesCompiled); } } else { RusName = VECStringResources.Get("STATETEXT_READY"); } } else { RusName = VECStringResources.Get("STATETEXT_READY"); } break; case PascalABCCompiler.CompilerState.Reloading: RusName = VECStringResources.Get("STATETEXT_RELOADING"); break; } if (RusName != null) { if (FileName != null) { RusName = string.Format(RusName, FileName); } SetStateText(RusName); } if (!Compilation && State == PascalABCCompiler.CompilerState.CompilationStarting) { Compilation = true; } if (Compilation && State == PascalABCCompiler.CompilerState.Ready) { Compilation = false; } }