diff --git a/VisualPascalABCNET/IB/CodeCompletion/CodeCompletionActions.cs b/VisualPascalABCNET/IB/CodeCompletion/CodeCompletionActions.cs index 8d0b06363..3d553bc23 100644 --- a/VisualPascalABCNET/IB/CodeCompletion/CodeCompletionActions.cs +++ b/VisualPascalABCNET/IB/CodeCompletion/CodeCompletionActions.cs @@ -127,7 +127,7 @@ namespace VisualPascalABC string expressionResult = FindFullExpression(textContent, textArea, out ccp.keyword, out full_expr); if (expressionResult != null) expressionResult = expressionResult.Trim(); - if (ccp.keyword == KeywordKind.CommonKeyword && !expressionResult.Contains(" ")) + if (expressionResult != full_expr && full_expr.StartsWith("(")) return new List(); List poses = ccp.GetDefinition(full_expr, textArea.MotherTextEditorControl.FileName, textArea.Caret.Line, textArea.Caret.Column, only_check); if (poses == null) diff --git a/VisualPascalABCNET/Workbench/UpdateService.cs b/VisualPascalABCNET/Workbench/UpdateService.cs index 0e2dba9b1..8d0c4a268 100644 --- a/VisualPascalABCNET/Workbench/UpdateService.cs +++ b/VisualPascalABCNET/Workbench/UpdateService.cs @@ -8,6 +8,7 @@ using System.Windows.Forms; using VisualPascalABCPlugins; using System.Net; using System.Reflection; +using Microsoft.Win32; namespace VisualPascalABC { @@ -18,11 +19,37 @@ namespace VisualPascalABC } + public bool IsDotnet71Installed() + { + if (Environment.OSVersion.Version.Major < 6) + return true; + try + { + using (var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\1033")) + { + return key != null && (key.GetValue("Version") as string).StartsWith("4.7"); + } + } + catch (Exception ex) + { + return true; + } + } + public void CheckForUpdates() { int status = 1;//1 - up to date, 0 - not up to date, -1 error string newVersion = null; string curVersion = null; + if (!IsDotnet71Installed()) + { + if (MessageBox.Show(PascalABCCompiler.StringResources.Get("VP_MF_DOTNET_AVAILABLE"), + PascalABCCompiler.StringResources.Get("VP_MF_DOTNET_UPDATE_CHECK"), + MessageBoxButtons.YesNo) == DialogResult.Yes) + { + WorkbenchServiceFactory.OperationsService.AddTabWithUrl(".NET Framework", PascalABCCompiler.StringResources.Get("VP_MF_FRAMEWORK_DOWNLOAD_PAGE")); + } + } try { WebClient client = new WebClient(); diff --git a/bin/Lng/Eng/VisualPascalABCNET.dat b/bin/Lng/Eng/VisualPascalABCNET.dat index 00aa8ebbb..89948c2cb 100644 --- a/bin/Lng/Eng/VisualPascalABCNET.dat +++ b/bin/Lng/Eng/VisualPascalABCNET.dat @@ -346,6 +346,9 @@ UPDATE_CHECK_ERROR=An error occurred while checking for updates UPDATE_CHECK=Checking for updates PABC_DOWNLOAD_PAGE=http://pascalabc.net/en/download M_CHECKUPDATES=Check for updates +FRAMEWORK_DOWNLOAD_PAGE=https://www.microsoft.com/en-US/download/details.aspx?id=56116 +DOTNET_UPDATE_CHECK=Checking for updates of .NET Framework +DOTNET_AVAILABLE=New version of .NET Framework is available(.NET Framework 4.7.1). Do you want to visit the download page? //Options %PREFIX%=VP_OC_VIEWOPTIONS_ NAME=General diff --git a/bin/Lng/Rus/VisualPascalABCNET.dat b/bin/Lng/Rus/VisualPascalABCNET.dat index 518cf53db..2d3430b49 100644 --- a/bin/Lng/Rus/VisualPascalABCNET.dat +++ b/bin/Lng/Rus/VisualPascalABCNET.dat @@ -337,14 +337,18 @@ PRJ_NAMESPACE=Пространство имен NUGET_PACKAGE=Идентификатор пакета NUGET_INSTALL=Установить пакет NUGET_LOG=Лог -VERSION_IS_UP_TO_DATE=Вы используете актуальную версию +VERSION_IS_UP_TO_DATE=Вы используете актуальную версию PascalABC.NET UPDATE_AVAILABLE=Доступна новая версия PascalABC.NET. Перейти на страницу скачивания? UPDATE_AVAILABLE_CURRENT_VESION{0}=Установленная версия: {0} UPDATE_AVAILABLE_NEW_VESION{0}=Доступная версия: {0} UPDATE_CHECK_ERROR=Ошибка при проверке обновлений -UPDATE_CHECK=Проверка обновлений +UPDATE_CHECK=Проверка обновлений PascalABC.NET PABC_DOWNLOAD_PAGE=http://pascalabc.net/ssyilki-dlya-skachivaniya M_CHECKUPDATES=Проверить обновления +FRAMEWORK_DOWNLOAD_PAGE=https://www.microsoft.com/ru-RU/download/details.aspx?id=56116 +DOTNET_UPDATE_CHECK=Проверка обновлений .NET Framework +DOTNET_AVAILABLE=Доступна новая версия .NET Framework (.NET Framework 4.7.1). Перейти на страницу скачивания? + //Options %PREFIX%=VP_OC_VIEWOPTIONS_ NAME=Общие diff --git a/bin/Lng/Ukr/VisualPascalABCNET.dat b/bin/Lng/Ukr/VisualPascalABCNET.dat index c490fb7af..eb3cc8e55 100644 --- a/bin/Lng/Ukr/VisualPascalABCNET.dat +++ b/bin/Lng/Ukr/VisualPascalABCNET.dat @@ -344,6 +344,9 @@ UPDATE_CHECK_ERROR=Не вдалося перевірити оновлення UPDATE_CHECK=Перевірка оновлення PABC_DOWNLOAD_PAGE=http://pascalabc.net/ssyilki-dlya-skachivaniya M_CHECKUPDATES=Перевірити оновлення +FRAMEWORK_DOWNLOAD_PAGE=https://www.microsoft.com/ru-RU/download/details.aspx?id=56116 +DOTNET_UPDATE_CHECK=Перевірка оновлення .NET Framework +DOTNET_AVAILABLE=Доступна нова версія .NET Framework (.NET Framework 4.7.1). Перейти на сторінку завантаження? //Options %PREFIX%=VP_OC_VIEWOPTIONS_ NAME=Загальні