From 9d28d8379ebbcb48c0c3bde3efea411367c573fc Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Wed, 24 Jul 2024 14:15:09 +0200 Subject: [PATCH] Added possibility to inform the entire system about changed settings --- .../Components/ConfigurationBase.razor.cs | 8 +++++++- .../Components/ConfigurationOption.razor.cs | 1 + .../Components/ConfigurationSelect.razor.cs | 1 + app/MindWork AI Studio/Tools/Event.cs | 1 + 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/app/MindWork AI Studio/Components/ConfigurationBase.razor.cs b/app/MindWork AI Studio/Components/ConfigurationBase.razor.cs index 9f0f047c..03dc7dbc 100644 --- a/app/MindWork AI Studio/Components/ConfigurationBase.razor.cs +++ b/app/MindWork AI Studio/Components/ConfigurationBase.razor.cs @@ -1,4 +1,5 @@ using AIStudio.Settings; +using AIStudio.Tools; using Microsoft.AspNetCore.Components; @@ -23,7 +24,12 @@ public partial class ConfigurationBase : ComponentBase public string OptionHelp { get; set; } = string.Empty; [Inject] - public SettingsManager SettingsManager { get; init; } = null!; + protected SettingsManager SettingsManager { get; init; } = null!; + + [Inject] + protected MessageBus MessageBus { get; init; } = null!; protected const string MARGIN_CLASS = "mb-6"; + + protected async Task InformAboutChange() => await this.MessageBus.SendMessage(this, Event.CONFIGURATION_CHANGED); } \ No newline at end of file diff --git a/app/MindWork AI Studio/Components/ConfigurationOption.razor.cs b/app/MindWork AI Studio/Components/ConfigurationOption.razor.cs index f2c65939..b3bed551 100644 --- a/app/MindWork AI Studio/Components/ConfigurationOption.razor.cs +++ b/app/MindWork AI Studio/Components/ConfigurationOption.razor.cs @@ -35,5 +35,6 @@ public partial class ConfigurationOption : ConfigurationBase { this.StateUpdate(updatedState); await this.SettingsManager.StoreSettings(); + await this.InformAboutChange(); } } \ No newline at end of file diff --git a/app/MindWork AI Studio/Components/ConfigurationSelect.razor.cs b/app/MindWork AI Studio/Components/ConfigurationSelect.razor.cs index 8a0f9a72..07c8abfd 100644 --- a/app/MindWork AI Studio/Components/ConfigurationSelect.razor.cs +++ b/app/MindWork AI Studio/Components/ConfigurationSelect.razor.cs @@ -30,6 +30,7 @@ public partial class ConfigurationSelect : ConfigurationBase { this.SelectionUpdate(updatedValue); await this.SettingsManager.StoreSettings(); + await this.InformAboutChange(); } private static string GetClass => $"{MARGIN_CLASS} rounded-lg"; diff --git a/app/MindWork AI Studio/Tools/Event.cs b/app/MindWork AI Studio/Tools/Event.cs index 62a6ae93..3d124d78 100644 --- a/app/MindWork AI Studio/Tools/Event.cs +++ b/app/MindWork AI Studio/Tools/Event.cs @@ -6,6 +6,7 @@ public enum Event // Common events: STATE_HAS_CHANGED, + CONFIGURATION_CHANGED, // Update events: USER_SEARCH_FOR_UPDATE,