2016-09-27 19:45:26 +08:00
|
|
|
|
//Copyright (c) 2007-2016 ppy Pty Ltd <contact@ppy.sh>.
|
|
|
|
|
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
|
|
|
|
|
|
|
|
|
using osu.Framework.Graphics;
|
|
|
|
|
using osu.Framework.Graphics.Containers;
|
2016-11-14 16:23:33 +08:00
|
|
|
|
using osu.Framework.Graphics.Primitives;
|
2016-09-27 19:45:26 +08:00
|
|
|
|
using osu.Framework.Graphics.Sprites;
|
|
|
|
|
using OpenTK;
|
|
|
|
|
using OpenTK.Graphics;
|
|
|
|
|
|
|
|
|
|
namespace osu.Game.Online.Chat.Display
|
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
public class ChatLine : Container
|
2016-09-27 19:45:26 +08:00
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
public readonly Message Message;
|
2016-09-28 15:33:20 +08:00
|
|
|
|
|
2016-11-14 16:23:33 +08:00
|
|
|
|
const float padding = 200;
|
|
|
|
|
const float text_size = 20;
|
2016-10-08 22:25:38 +08:00
|
|
|
|
|
2016-11-14 16:23:33 +08:00
|
|
|
|
public ChatLine(Message message)
|
|
|
|
|
{
|
|
|
|
|
this.Message = message;
|
2016-11-13 01:34:36 +08:00
|
|
|
|
|
2016-11-14 16:23:33 +08:00
|
|
|
|
RelativeSizeAxes = Axes.X;
|
|
|
|
|
AutoSizeAxes = Axes.Y;
|
2016-09-27 19:45:26 +08:00
|
|
|
|
|
2016-11-14 16:23:33 +08:00
|
|
|
|
Children = new Drawable[]
|
|
|
|
|
{
|
|
|
|
|
new Container
|
2016-09-27 19:45:26 +08:00
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
Size = new Vector2(padding, text_size),
|
|
|
|
|
Children = new Drawable[]
|
2016-10-08 22:25:38 +08:00
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
new SpriteText
|
|
|
|
|
{
|
|
|
|
|
Text = Message.Timestamp.LocalDateTime.ToLongTimeString(),
|
|
|
|
|
TextSize = text_size,
|
|
|
|
|
Colour = new Color4(128, 128, 128, 255)
|
|
|
|
|
},
|
|
|
|
|
new SpriteText
|
2016-10-08 22:25:38 +08:00
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
Text = Message.User.Name,
|
|
|
|
|
TextSize = text_size,
|
|
|
|
|
Origin = Anchor.TopRight,
|
|
|
|
|
Anchor = Anchor.TopRight,
|
2016-10-08 22:25:38 +08:00
|
|
|
|
}
|
2016-11-14 16:23:33 +08:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
new Container
|
|
|
|
|
{
|
|
|
|
|
RelativeSizeAxes = Axes.X,
|
|
|
|
|
AutoSizeAxes = Axes.Y,
|
|
|
|
|
Padding = new MarginPadding { Left = padding + 10 },
|
|
|
|
|
Children = new Drawable[]
|
2016-10-08 22:25:38 +08:00
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
new SpriteText
|
2016-10-08 22:25:38 +08:00
|
|
|
|
{
|
2016-11-14 16:23:33 +08:00
|
|
|
|
Text = Message.Content,
|
|
|
|
|
TextSize = text_size,
|
2016-11-16 10:51:39 +08:00
|
|
|
|
AutoSizeAxes = Axes.Y,
|
2016-11-14 16:23:33 +08:00
|
|
|
|
RelativeSizeAxes = Axes.X,
|
2016-10-08 22:25:38 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
2016-11-14 16:23:33 +08:00
|
|
|
|
}
|
|
|
|
|
};
|
2016-09-27 19:45:26 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|