From 79106ad47db2029b2f326f51b736e8bd30da62d5 Mon Sep 17 00:00:00 2001 From: Andriy <30056636+West14@users.noreply.github.com> Date: Fri, 21 Jul 2023 19:50:48 +0300 Subject: [PATCH] [core] show choice short name in option button --- Core/Handler/SettingsHandler.cs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/Core/Handler/SettingsHandler.cs b/Core/Handler/SettingsHandler.cs index bd50c70..f192994 100644 --- a/Core/Handler/SettingsHandler.cs +++ b/Core/Handler/SettingsHandler.cs @@ -141,10 +141,22 @@ public class SettingsHandler : CommonHandler CallbackData = $"option|{From.Id}|edit|{option.OptionId}" }; - if (option.OptionType == OptionType.OnOff) + switch (option.OptionType) { - var isEnabled = await ((IOption) option).GetValueAsync(Chat.Id); - button.Text += isEnabled ? " 🟢" : " 🔴"; + case OptionType.OnOff: + { + var isEnabled = await ((IOption) option).GetValueAsync(Chat.Id); + button.Text += isEnabled ? " 🟢" : " 🔴"; + break; + } + + case OptionType.Select: + { + var value = await ((IOption) option).GetValueAsync(Chat.Id); + var currentChoice = option.ChoiceList.Single(x => x.Id == value); + button.Text += $" ({currentChoice.ShortName})"; + break; + } } return button;