From ad79699b218eec8ebcec2a3f95421137e511c39b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 1 May 2024 12:27:51 +0200 Subject: [PATCH] Reduce transient inclusion of `` (#21944) --- src/openrct2-ui/interface/InGameConsole.h | 1 + src/openrct2/Context.cpp | 1 + src/openrct2/interface/InteractiveConsole.h | 26 -------------- src/openrct2/interface/StdInOutConsole.cpp | 3 +- src/openrct2/interface/StdInOutConsole.h | 39 +++++++++++++++++++++ 5 files changed, 43 insertions(+), 27 deletions(-) create mode 100644 src/openrct2/interface/StdInOutConsole.h diff --git a/src/openrct2-ui/interface/InGameConsole.h b/src/openrct2-ui/interface/InGameConsole.h index d51a24f407..2078386ff3 100644 --- a/src/openrct2-ui/interface/InGameConsole.h +++ b/src/openrct2-ui/interface/InGameConsole.h @@ -9,6 +9,7 @@ #pragma once +#include #include #include #include diff --git a/src/openrct2/Context.cpp b/src/openrct2/Context.cpp index c69e4906a1..0198f476d8 100644 --- a/src/openrct2/Context.cpp +++ b/src/openrct2/Context.cpp @@ -45,6 +45,7 @@ #include "entity/EntityTweener.h" #include "interface/Chat.h" #include "interface/InteractiveConsole.h" +#include "interface/StdInOutConsole.h" #include "interface/Viewport.h" #include "localisation/Date.h" #include "localisation/Formatter.h" diff --git a/src/openrct2/interface/InteractiveConsole.h b/src/openrct2/interface/InteractiveConsole.h index d474169f10..ca5b76e7c3 100644 --- a/src/openrct2/interface/InteractiveConsole.h +++ b/src/openrct2/interface/InteractiveConsole.h @@ -12,9 +12,6 @@ #include "../common.h" #include "../localisation/FormatCodes.h" -#include -#include -#include #include struct DrawPixelInfo; @@ -49,26 +46,3 @@ public: virtual void Hide() abstract; virtual void WriteLine(const std::string& s, FormatToken colourFormat) abstract; }; - -class StdInOutConsole final : public InteractiveConsole -{ -private: - std::queue, std::string>> _evalQueue; - std::atomic _isPromptShowing{}; - -public: - void Start(); - std::future Eval(const std::string& s); - void ProcessEvalQueue(); - - void Clear() override; - void Close() override; - void Hide() override - { - } - void WriteLine(const std::string& s) - { - InteractiveConsole::WriteLine(s); - } - void WriteLine(const std::string& s, FormatToken colourFormat) override; -}; diff --git a/src/openrct2/interface/StdInOutConsole.cpp b/src/openrct2/interface/StdInOutConsole.cpp index fa76b1d639..145870ad51 100644 --- a/src/openrct2/interface/StdInOutConsole.cpp +++ b/src/openrct2/interface/StdInOutConsole.cpp @@ -7,11 +7,12 @@ * OpenRCT2 is licensed under the GNU General Public License version 3. *****************************************************************************/ +#include "StdInOutConsole.h" + #include "../Context.h" #include "../OpenRCT2.h" #include "../platform/Platform.h" #include "../scripting/ScriptEngine.h" -#include "InteractiveConsole.h" #include diff --git a/src/openrct2/interface/StdInOutConsole.h b/src/openrct2/interface/StdInOutConsole.h new file mode 100644 index 0000000000..49926d71b4 --- /dev/null +++ b/src/openrct2/interface/StdInOutConsole.h @@ -0,0 +1,39 @@ +/***************************************************************************** + * Copyright (c) 2014-2024 OpenRCT2 developers + * + * For a complete list of all authors, please refer to contributors.md + * Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2 + * + * OpenRCT2 is licensed under the GNU General Public License version 3. + *****************************************************************************/ + +#pragma once + +#include "InteractiveConsole.h" + +#include +#include +#include + +class StdInOutConsole final : public InteractiveConsole +{ +private: + std::queue, std::string>> _evalQueue; + std::atomic _isPromptShowing{}; + +public: + void Start(); + std::future Eval(const std::string& s); + void ProcessEvalQueue(); + + void Clear() override; + void Close() override; + void Hide() override + { + } + void WriteLine(const std::string& s) + { + InteractiveConsole::WriteLine(s); + } + void WriteLine(const std::string& s, FormatToken colourFormat) override; +};