* #272 restructure and restyle chat line edit section * #272 no arrow, actually change id on channel changer * #272 nice round chat channel picker * #272 add chat channel selection logic, and auto-select when a prefix is entered * #272 consistent width of chat channel btn * #272 only show admin channel filter if asay perms * #272 add tutorial info on chat prefixes * #272 added chat filter button * #272 added chat filter button * #272 WIP on filter popup * #272 fix filter popup pressed / unpressed logic * #272 fix filter popup positioning and layout * #272 WIP channel filter logic * #272 WIP channel filter logic * #272 WIP refactoring how chatbox / manager manages available filters and channels to send on * #272 WIP implementing filtering UI / logic and refactoring how chat UI is managed * #272 fix various bugs with new chat filter / selector logic * #272 remove outdated todos * #272 WIP working chat window resize * #272 bounded chatbox resizing * #272 alertUI moves with resized chat * #272 WIP making alertUI not be too large when changing size / UIScale * #272 WIP fixing window / uiscale adjustment * #272 WIP hacky approach for resizing, will try another approach * #272 implement hacky approach for bounded chat resize * #272 no resizing of lobby chat * #272 WIP adding unread marker to chat filters * #272 basic working unread chat message indicators * #272 WIP adding horizontal channel selector items * #272 horizontal channel selector popup * #272 workaround for chat selector staying highlighted when right clicking it while toggled * #272 workaround for chat selector staying highlighted when right clicking it while toggled * #272 wip trying to add tests for chatbox * #272 remove test, not really possible with current system * #272 merge latest * #272 merge latest * #272 fix csproj changes * It works if you disable the lobby * Fixes lobby chat * Adds more channel focusses * Channel cycler * Address review * Address nitpicks * Address more of the review * Fix chat post-viewport * Finalize review stuff Co-authored-by: chairbender <kwhipke1@gmail.com> Co-authored-by: ike709 <sparebytes@protonmail.com>
52 lines
1.5 KiB
C#
52 lines
1.5 KiB
C#
using Content.Shared.Chat;
|
|
using Robust.Shared.Log;
|
|
using Robust.Shared.Maths;
|
|
|
|
namespace Content.Client.Chat
|
|
{
|
|
public class StoredChatMessage
|
|
{
|
|
// TODO Make me reflected with respect to MsgChatMessage
|
|
|
|
/// <summary>
|
|
/// Client's own copies of chat messages used in filtering locally
|
|
/// </summary>
|
|
|
|
/// <summary>
|
|
/// Actual Message contents, i.e. words
|
|
/// </summary>
|
|
public string Message { get; set; }
|
|
|
|
/// <summary>
|
|
/// Message channel, used for filtering
|
|
/// </summary>
|
|
public ChatChannel Channel { get; set; }
|
|
|
|
/// <summary>
|
|
/// What to "wrap" the message contents with. Example is stuff like 'Joe says: "{0}"'
|
|
/// </summary>
|
|
public string MessageWrap { get; set; }
|
|
|
|
/// <summary>
|
|
/// The override color of the message
|
|
/// </summary>
|
|
public Color MessageColorOverride { get; set; }
|
|
|
|
/// <summary>
|
|
/// Whether the user has read this message at least once.
|
|
/// </summary>
|
|
public bool Read { get; set; }
|
|
|
|
/// <summary>
|
|
/// Constructor to copy a net message into stored client variety
|
|
/// </summary>
|
|
public StoredChatMessage(MsgChatMessage netMsg)
|
|
{
|
|
Message = netMsg.Message;
|
|
Channel = netMsg.Channel;
|
|
MessageWrap = netMsg.MessageWrap;
|
|
MessageColorOverride = netMsg.MessageColorOverride;
|
|
}
|
|
}
|
|
}
|