From df443863bdca014660c26f65d9a3ad4d9831cb83 Mon Sep 17 00:00:00 2001 From: thankyouverycool <66646555+thankyouverycool@users.noreply.github.com> Date: Fri, 18 Mar 2022 20:34:58 -0400 Subject: [PATCH] LibGUI: Add set_selection() convenience helper to GlyphMapWidget --- Userland/Libraries/LibGUI/GlyphMapWidget.cpp | 8 ++++++++ Userland/Libraries/LibGUI/GlyphMapWidget.h | 1 + 2 files changed, 9 insertions(+) diff --git a/Userland/Libraries/LibGUI/GlyphMapWidget.cpp b/Userland/Libraries/LibGUI/GlyphMapWidget.cpp index 80fbb4eb675..b529f7c7df3 100644 --- a/Userland/Libraries/LibGUI/GlyphMapWidget.cpp +++ b/Userland/Libraries/LibGUI/GlyphMapWidget.cpp @@ -89,6 +89,14 @@ void GlyphMapWidget::set_active_glyph(int glyph, ShouldResetSelection should_res update(); } +void GlyphMapWidget::set_selection(int start, int size, Optional active_glyph) +{ + m_selection.set_start(start); + m_selection.set_size(size); + if (active_glyph.has_value()) + set_active_glyph(active_glyph.value(), ShouldResetSelection::No); +} + Gfx::IntRect GlyphMapWidget::get_outer_rect(int glyph) const { glyph -= m_active_range.first; diff --git a/Userland/Libraries/LibGUI/GlyphMapWidget.h b/Userland/Libraries/LibGUI/GlyphMapWidget.h index 9d1dfe2b3c9..66afecf806a 100644 --- a/Userland/Libraries/LibGUI/GlyphMapWidget.h +++ b/Userland/Libraries/LibGUI/GlyphMapWidget.h @@ -55,6 +55,7 @@ public: void set_active_range(Unicode::CodePointRange); void set_active_glyph(int, ShouldResetSelection = ShouldResetSelection::Yes); + void set_selection(int start, int size, Optional active_glyph = {}); void clear_selection() { m_selection.set_size(0); } void scroll_to_glyph(int); void update_glyph(int);