diff options
Diffstat (limited to 'src/Interface')
-rw-r--r-- | src/Interface/AbstractBar.cs | 17 | ||||
-rw-r--r-- | src/Interface/ProgressBar.cs | 11 | ||||
-rw-r--r-- | src/Interface/ResultBar.cs | 3 | ||||
-rw-r--r-- | src/Interface/RibbonController.cs | 1 |
4 files changed, 19 insertions, 13 deletions
diff --git a/src/Interface/AbstractBar.cs b/src/Interface/AbstractBar.cs index c5918a8..dda7ea1 100644 --- a/src/Interface/AbstractBar.cs +++ b/src/Interface/AbstractBar.cs @@ -1,11 +1,24 @@ -using Microsoft.Office.Interop.Excel; +using ExcelDna.Integration; +using Microsoft.Office.Interop.Excel; +using System; namespace RehauSku.Interface { - internal abstract class AbstractBar + internal abstract class AbstractBar : IDisposable { protected Application Excel = AddIn.Excel; public abstract void Update(); + + [ExcelFunction] + public static void ResetStatusBar() + { + AddIn.Excel.StatusBar = false; + } + + public void Dispose() + { + AddIn.Excel.OnTime(DateTime.Now + new TimeSpan(0, 0, 5), "ResetStatusBar"); + } } } diff --git a/src/Interface/ProgressBar.cs b/src/Interface/ProgressBar.cs index 416c7d6..f0f2985 100644 --- a/src/Interface/ProgressBar.cs +++ b/src/Interface/ProgressBar.cs @@ -16,16 +16,7 @@ public override void Update() { double percent = (++CurrentProgress / TaskWeight) * 100; - - if (percent < 100) - { - Excel.StatusBar = $"{Message} Выполнено {percent:#.#} %"; - } - - else - { - Excel.StatusBar = false; - } + Excel.StatusBar = $"{Message} Выполнено {percent:#.#} %"; } } } diff --git a/src/Interface/ResultBar.cs b/src/Interface/ResultBar.cs index 1b4d7f4..f59eb0a 100644 --- a/src/Interface/ResultBar.cs +++ b/src/Interface/ResultBar.cs @@ -1,4 +1,5 @@ -using System.Text; +using System; +using System.Text; namespace RehauSku.Interface { diff --git a/src/Interface/RibbonController.cs b/src/Interface/RibbonController.cs index 7bf9ee1..2d3290c 100644 --- a/src/Interface/RibbonController.cs +++ b/src/Interface/RibbonController.cs @@ -93,6 +93,7 @@ namespace RehauSku.Interface "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Information); + AddIn.Excel.StatusBar = false; return; } } |