aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/cursor.hpp
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2022-06-23 20:16:07 +0200
committerHampusM <hampus@hampusmat.com>2022-06-23 20:16:07 +0200
commitafa22dc6450a7f2341c432604d5e50735d6830c7 (patch)
treeb2d3b9a27f8403b1b1117ae7dfef951b14b3c013 /src/interfaces/cursor.hpp
parent0f9d874b6af4698234be96de1fddad15aa882a1d (diff)
perf: reduce cout flushing
Diffstat (limited to 'src/interfaces/cursor.hpp')
-rw-r--r--src/interfaces/cursor.hpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/interfaces/cursor.hpp b/src/interfaces/cursor.hpp
index b09f06f..35c3047 100644
--- a/src/interfaces/cursor.hpp
+++ b/src/interfaces/cursor.hpp
@@ -22,10 +22,12 @@ class ICursorController
public:
virtual ~ICursorController() noexcept = default;
- virtual void move(const Vector2 &direction, const uint32_t &amount) noexcept = 0;
+ virtual void move(
+ const Vector2 &direction,
+ const uint32_t &amount,
+ bool flush_cout = false) noexcept = 0;
- // NOLINTNEXTLINE(google-default-arguments)
- virtual void move_to(const Vector2 &position) noexcept = 0;
+ virtual void move_to(const Vector2 &position, bool flush_cout = false) noexcept = 0;
[[nodiscard]] virtual auto where() const noexcept -> Vector2 = 0;
@@ -38,11 +40,12 @@ public:
*/
virtual void update_position(const Vector2 &position) noexcept = 0;
- virtual void hide() noexcept = 0;
+ virtual void hide(bool flush_cout = false) noexcept = 0;
- virtual void show() noexcept = 0;
+ virtual void show(bool flush_cout = false) noexcept = 0;
- virtual void set_cursor_style(CursorStyle cursor_style) noexcept = 0;
+ virtual void
+ set_cursor_style(CursorStyle cursor_style, bool flush_cout = false) noexcept = 0;
virtual void set_bounds(const Bounds &bounds) noexcept = 0;
};