From 0ccbf29382b43d19f7ea0d1f4b5841149137842d Mon Sep 17 00:00:00 2001 From: Sergey Chebotar Date: Fri, 23 Dec 2022 21:10:43 +0300 Subject: Return to ResetStatusBar Excel macro function --- src/AddIn/AddIn.cs | 36 ------------------------------------ src/AddIn/Functions.cs | 6 ++++++ src/AddIn/RhSolutionsAddIn.cs | 37 +++++++++++++++++++++++++++++++++++++ src/Models/StatusbarBase.cs | 12 ++---------- src/RhSolutions.csproj | 2 +- src/Services/RhDatabaseClient.cs | 2 +- 6 files changed, 47 insertions(+), 48 deletions(-) delete mode 100644 src/AddIn/AddIn.cs create mode 100644 src/AddIn/RhSolutionsAddIn.cs (limited to 'src') diff --git a/src/AddIn/AddIn.cs b/src/AddIn/AddIn.cs deleted file mode 100644 index 2aa71c7..0000000 --- a/src/AddIn/AddIn.cs +++ /dev/null @@ -1,36 +0,0 @@ -using ExcelDna.Integration; -using ExcelDna.IntelliSense; -using Microsoft.Office.Interop.Excel; -using RhSolutions.Services; -using System.Net; -using System.Net.Http; - -namespace RhSolutions.AddIn -{ - class RhSolutionsAddIn : IExcelAddIn - { - public static Application Excel; - public static HttpClient httpClient; - - public void AutoOpen() - { - Excel = (Application)ExcelDnaUtil.Application; - httpClient = new HttpClient(); - IntelliSenseServer.Install(); - RegistryUtil.Initialize(); - EventsUtil.Initialize(); - - ServicePointManager.SecurityProtocol = - SecurityProtocolType.Tls12 | - SecurityProtocolType.Tls11 | - SecurityProtocolType.Tls; - } - - public void AutoClose() - { - IntelliSenseServer.Uninstall(); - RegistryUtil.Uninitialize(); - EventsUtil.Uninitialize(); - } - } -} diff --git a/src/AddIn/Functions.cs b/src/AddIn/Functions.cs index 2be19fa..0d3aef5 100644 --- a/src/AddIn/Functions.cs +++ b/src/AddIn/Functions.cs @@ -27,5 +27,11 @@ namespace RhSolutions.AddIn return result; } + + [ExcelFunction] + public static void ResetStatusBar() + { + RhSolutionsAddIn.Excel.StatusBar = false; + } } } \ No newline at end of file diff --git a/src/AddIn/RhSolutionsAddIn.cs b/src/AddIn/RhSolutionsAddIn.cs new file mode 100644 index 0000000..0e51bec --- /dev/null +++ b/src/AddIn/RhSolutionsAddIn.cs @@ -0,0 +1,37 @@ +using ExcelDna.Integration; +using ExcelDna.IntelliSense; +using Microsoft.Office.Interop.Excel; +using RhSolutions.Services; +using System.Net; +using System.Net.Http; + +namespace RhSolutions.AddIn +{ + class RhSolutionsAddIn : IExcelAddIn + { + public static Application Excel { get; private set; } + public static HttpClient HttpClient { get; private set; } + + public void AutoOpen() + { + Excel = (Application)ExcelDnaUtil.Application; + HttpClient = new HttpClient(); + IntelliSenseServer.Install(); + RegistryUtil.Initialize(); + EventsUtil.Initialize(); + + ServicePointManager.SecurityProtocol = + SecurityProtocolType.Tls12 | + SecurityProtocolType.Tls11 | + SecurityProtocolType.Tls; + } + + public void AutoClose() + { + IntelliSenseServer.Uninstall(); + RegistryUtil.Uninitialize(); + EventsUtil.Uninitialize(); + HttpClient.Dispose(); + } + } +} diff --git a/src/Models/StatusbarBase.cs b/src/Models/StatusbarBase.cs index 756abe3..8176013 100644 --- a/src/Models/StatusbarBase.cs +++ b/src/Models/StatusbarBase.cs @@ -1,9 +1,6 @@ -using ExcelDna.Integration; -using Microsoft.Office.Interop.Excel; +using Microsoft.Office.Interop.Excel; using RhSolutions.AddIn; using System; -using System.Threading; -using System.Threading.Tasks; namespace RhSolutions.Models { @@ -13,14 +10,9 @@ namespace RhSolutions.Models public abstract void Update(); - private static void ResetStatusBar() - { - RhSolutionsAddIn.Excel.StatusBar = false; - } - public void Dispose() { - Task.Delay(500).ContinueWith(t => ResetStatusBar()); + RhSolutionsAddIn.Excel.OnTime(DateTime.Now + new TimeSpan(0, 0, 5), "ResetStatusBar"); } } } diff --git a/src/RhSolutions.csproj b/src/RhSolutions.csproj index 6fb6587..d88943e 100644 --- a/src/RhSolutions.csproj +++ b/src/RhSolutions.csproj @@ -97,7 +97,7 @@ - + diff --git a/src/Services/RhDatabaseClient.cs b/src/Services/RhDatabaseClient.cs index 9664361..bfa80ad 100644 --- a/src/Services/RhDatabaseClient.cs +++ b/src/Services/RhDatabaseClient.cs @@ -11,7 +11,7 @@ namespace RhSolutions.Services { public static class RhDatabaseClient { - private static HttpClient httpClient = RhSolutionsAddIn.httpClient; + private static HttpClient httpClient = RhSolutionsAddIn.HttpClient; public static async Task GetProduct(string line) { -- cgit v1.2.3