From 6101f49f44a1bd8a06fc5cab4a92386ac3690c05 Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Mon, 26 Sep 2022 19:25:51 +0200 Subject: [PATCH] Added an event for a changed translation --- I18N Commander/UI WinForms/AppEvents.cs | 10 ++++++++++ I18N Commander/UI WinForms/Components/Translation.cs | 7 +++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/I18N Commander/UI WinForms/AppEvents.cs b/I18N Commander/UI WinForms/AppEvents.cs index 5cd9ce9..5ba9c0d 100644 --- a/I18N Commander/UI WinForms/AppEvents.cs +++ b/I18N Commander/UI WinForms/AppEvents.cs @@ -23,4 +23,14 @@ internal static class AppEvents internal static void TextElementChanged(TextElement? textElement) => WhenTextElementChanged?.Invoke(null, textElement); #endregion + + #region Translation was changed + + // Translation changed event which can be subscribed: + internal static event EventHandler WhenTranslationChanged; + + // Method to raise the translation changed event: + internal static void TranslationChanged(Translation? translation) => WhenTranslationChanged?.Invoke(null, translation); + + #endregion } \ No newline at end of file diff --git a/I18N Commander/UI WinForms/Components/Translation.cs b/I18N Commander/UI WinForms/Components/Translation.cs index f823876..80cee88 100644 --- a/I18N Commander/UI WinForms/Components/Translation.cs +++ b/I18N Commander/UI WinForms/Components/Translation.cs @@ -124,8 +124,11 @@ public sealed partial class Translation : UserControl private async void SaveChanges(object? sender, ElapsedEventArgs e) { if (this.currentTranslationId > -1) - await TranslationProcessor.SaveChangedTranslation(this.currentTranslationId, this.textBox.Text, this.checkBoxManual.Checked); - + { + var storedTranslation = await TranslationProcessor.SaveChangedTranslation(this.currentTranslationId, this.textBox.Text, this.checkBoxManual.Checked); + AppEvents.TranslationChanged(storedTranslation.Result); + } + if(this.ParentForm is UI_WinForms.Main main) main.RemoveDeferredSaveOperation(this.currentTranslationId);