From c08ce14c922f58de2746e6080abe5b46b5c22fca Mon Sep 17 00:00:00 2001 From: UnknownShadow200 Date: Mon, 23 Nov 2015 13:21:13 +1100 Subject: [PATCH] Option to disable clicking chat copies to input bar. --- ClassicalSharp/2D/Screens/ChatScreen.cs | 3 ++- ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs | 7 +++++++ ClassicalSharp/Game/Game.cs | 3 ++- ClassicalSharp/Utils/Options.cs | 1 + 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ClassicalSharp/2D/Screens/ChatScreen.cs b/ClassicalSharp/2D/Screens/ChatScreen.cs index 5ae9efc3f..2dbf0f705 100644 --- a/ClassicalSharp/2D/Screens/ChatScreen.cs +++ b/ClassicalSharp/2D/Screens/ChatScreen.cs @@ -306,7 +306,7 @@ namespace ClassicalSharp { "Be careful - urls from strangers may link to websites that", " may have viruses, or things you may not want to open/see." ) ); - } else { + } else if( game.ClickableChat ) { textInput.AppendText( text ); } return true; @@ -325,6 +325,7 @@ namespace ClassicalSharp { } void AppendUrl( WarningScreen screen ) { + if( !game.ClickableChat ) return; textInput.AppendText( (string)screen.Metadata ); } diff --git a/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs b/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs index df46f44ff..0512f948e 100644 --- a/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs +++ b/ClassicalSharp/2D/Screens/Menu/GuiOptionsScreen.cs @@ -24,6 +24,12 @@ namespace ClassicalSharp { g.RefreshHud(); } ), + Make( -140, 50, "Clickable chat", Anchor.Centre, OnWidgetClick, + g => g.ClickableChat ? "yes" : "no", + (g, v) => { g.ClickableChat = v == "yes"; + Options.Set( OptionsKey.ClickableChat, v == "yes" ); + } ), + // Column 2 Make( 140, -50, "Chat scale", Anchor.Centre, OnWidgetClick, g => g.ChatScale.ToString(), @@ -56,6 +62,7 @@ namespace ClassicalSharp { validators = new MenuInputValidator[] { new BooleanValidator(), new RealValidator( 0.25f, 5f ), + new BooleanValidator(), new RealValidator( 0.25f, 5f ), new IntegerValidator( 1, 30 ), diff --git a/ClassicalSharp/Game/Game.cs b/ClassicalSharp/Game/Game.cs index a2458ea67..562f37ccb 100644 --- a/ClassicalSharp/Game/Game.cs +++ b/ClassicalSharp/Game/Game.cs @@ -73,7 +73,7 @@ namespace ClassicalSharp { public Matrix4 View, Projection; public int MouseSensitivity = 30; public int ChatLines = 12; - public bool HideGui = false, ShowFPS = true; + public bool ClickableChat, HideGui, ShowFPS; internal float HudScale = 1.0f, ChatScale = 1.0f; public Animations Animations; @@ -134,6 +134,7 @@ namespace ClassicalSharp { BlockInfo = new BlockInfo(); BlockInfo.Init(); ChatLines = Options.GetInt( OptionsKey.ChatLines, 1, 30, 12 ); + ClickableChat = Options.GetBool( OptionsKey.ClickableChat, true ); ModelCache = new ModelCache( this ); ModelCache.InitCache(); AsyncDownloader = new AsyncDownloader( skinServer ); diff --git a/ClassicalSharp/Utils/Options.cs b/ClassicalSharp/Utils/Options.cs index 45b6bd02c..199e63898 100644 --- a/ClassicalSharp/Utils/Options.cs +++ b/ClassicalSharp/Utils/Options.cs @@ -13,6 +13,7 @@ namespace ClassicalSharp { public const string Sensitivity = "mousesensitivity"; public const string Speed = "speedmultiplier"; public const string ChatLines = "chatlines"; + public const string ClickableChat = "clickablechat"; public const string ArialChatFont = "arialchatfont"; public const string DefaultTexturePack = "defaulttexpack"; public const string SingleplayerPhysics = "singleplayerphysics";