1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-07 03:17:28 +08:00
osu-lazer/osu.Game/Overlays/Options/Online/InGameChatOptions.cs

46 lines
2.1 KiB
C#
Raw Normal View History

2016-11-09 11:38:40 +08:00
using osu.Framework;
using osu.Framework.Graphics;
2016-11-03 12:43:05 +08:00
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.UserInterface;
2016-11-09 11:38:40 +08:00
using osu.Game.Configuration;
2016-11-03 12:43:05 +08:00
2016-11-08 10:24:41 +08:00
namespace osu.Game.Overlays.Options.Online
2016-11-03 12:43:05 +08:00
{
public class InGameChatOptions : OptionsSubsection
{
2016-11-09 11:38:40 +08:00
protected override string Header => "In-game Chat";
2016-11-11 07:15:30 +08:00
private CheckBoxOption filterWords, filterForeign, logPMs, blockPMs;
private TextBoxOption chatIgnoreList, chatHighlightWords;
2016-11-09 11:38:40 +08:00
2016-11-03 12:43:05 +08:00
public InGameChatOptions()
{
Children = new Drawable[]
{
2016-11-09 11:38:40 +08:00
filterWords = new CheckBoxOption { LabelText = "Filter offensive words" },
filterForeign = new CheckBoxOption { LabelText = "Filter foreign characters" },
logPMs = new CheckBoxOption { LabelText = "Log private messages" },
blockPMs = new CheckBoxOption { LabelText = "Block private messages from non-friends" },
2016-11-03 12:43:05 +08:00
new SpriteText { Text = "Chat ignore list (space-seperated list)" },
2016-11-11 07:15:30 +08:00
chatIgnoreList = new TextBoxOption { Height = 20, RelativeSizeAxes = Axes.X },
2016-11-03 12:43:05 +08:00
new SpriteText { Text = "Chat highlight words (space-seperated list)" },
2016-11-11 07:15:30 +08:00
chatHighlightWords = new TextBoxOption { Height = 20, RelativeSizeAxes = Axes.X },
2016-11-03 12:43:05 +08:00
};
2016-11-09 11:38:40 +08:00
}
protected override void Load(BaseGame game)
{
base.Load(game);
var osuGame = game as OsuGameBase;
if (osuGame != null)
{
filterWords.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.ChatFilter);
filterForeign.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.ChatRemoveForeign);
logPMs.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.LogPrivateMessages);
blockPMs.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.BlockNonFriendPM);
2016-11-11 07:15:30 +08:00
chatIgnoreList.Bindable = osuGame.Config.GetBindable<string>(OsuConfig.IgnoreList);
chatHighlightWords.Bindable = osuGame.Config.GetBindable<string>(OsuConfig.HighlightWords);
2016-11-09 11:38:40 +08:00
}
2016-11-03 12:43:05 +08:00
}
}
}