From 80edb184bc35a71ff24c863458f440775ff83d80 Mon Sep 17 00:00:00 2001 From: Wizou Date: Sun, 17 Oct 2021 03:16:51 +0200 Subject: [PATCH] Removed DisplayName in favor of ToString() for User classes --- Examples/Program_ListenUpdates.cs | 7 ++++--- src/Helpers.TL.cs | 5 ++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Examples/Program_ListenUpdates.cs b/Examples/Program_ListenUpdates.cs index 1dc3c22..5172b32 100644 --- a/Examples/Program_ListenUpdates.cs +++ b/Examples/Program_ListenUpdates.cs @@ -39,7 +39,7 @@ namespace WTelegramClientTest private static readonly Dictionary users = new(); private static readonly Dictionary chats = new(); - private static string AUser(long user_id) => users.TryGetValue(user_id, out var user) ? user.DisplayName : $"User {user_id}"; + private static string AUser(long user_id) => users.TryGetValue(user_id, out var user) ? user.ToString() : $"User {user_id}"; private static string AChat(long chat_id) => chats.TryGetValue(chat_id, out var chat) ? chat.ToString() : $"Chat {chat_id}"; private static string APeer(Peer peer) => peer is null ? null : peer is PeerUser user ? AUser(user.user_id) : peer is PeerChat chat ? AChat(chat.chat_id) : peer is PeerChannel channel ? AChat(channel.channel_id) : $"Peer {peer.ID}"; @@ -71,7 +71,7 @@ namespace WTelegramClientTest switch (update) { case UpdateNewMessage unm: DisplayMessage(unm.message); break; - case UpdateEditMessage uem: Console.Write("(Edit): "); DisplayMessage(uem.message); break; + case UpdateEditMessage uem: DisplayMessage(uem.message, true); break; case UpdateDeleteChannelMessages udcm: Console.WriteLine($"{udcm.messages.Length} message(s) deleted in {AChat(udcm.channel_id)}"); break; case UpdateDeleteMessages udm: Console.WriteLine($"{udm.messages.Length} message(s) deleted"); break; case UpdateUserTyping uut: Console.WriteLine($"{AUser(uut.user_id)} is {uut.action}"); break; @@ -85,8 +85,9 @@ namespace WTelegramClientTest } } - private static void DisplayMessage(MessageBase messageBase) + private static void DisplayMessage(MessageBase messageBase, bool edit = false) { + if (edit) Console.Write("(Edit): "); switch (messageBase) { case Message m: Console.WriteLine($"{APeer(m.from_id) ?? m.post_author} in {APeer(m.peer_id)}> {m.message}"); break; diff --git a/src/Helpers.TL.cs b/src/Helpers.TL.cs index 5ec32a3..77f8f6f 100644 --- a/src/Helpers.TL.cs +++ b/src/Helpers.TL.cs @@ -64,7 +64,6 @@ namespace TL partial class UserBase { public abstract long ID { get; } - public abstract string DisplayName { get; } protected abstract InputPeer ToInputPeer(); protected abstract InputUserBase ToInputUser(); public static implicit operator InputPeer(UserBase user) => user.ToInputPeer(); @@ -73,14 +72,14 @@ namespace TL partial class UserEmpty { public override long ID => id; - public override string DisplayName => null; + public override string ToString() => null; protected override InputPeer ToInputPeer() => null; protected override InputUserBase ToInputUser() => null; } partial class User { public override long ID => id; - public override string DisplayName => username != null ? '@' + username : last_name == null ? first_name : $"{first_name} {last_name}"; + public override string ToString() => username != null ? '@' + username : last_name == null ? first_name : $"{first_name} {last_name}"; protected override InputPeer ToInputPeer() => new InputPeerUser { user_id = id, access_hash = access_hash }; protected override InputUserBase ToInputUser() => new InputUser { user_id = id, access_hash = access_hash }; }