diff options
author | Dylan Katz <dykatz@uw.edu> | 2022-01-10 19:00:44 -0800 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2022-01-21 22:14:13 +0100 |
commit | a2a93727db565eb1aba27f17b79735e4966b98a1 (patch) | |
tree | abe1bd29a99e688088af7cfa46b7ccf756412ffe | |
parent | 12a6ec929297fb7dc699c6093b508a402e1ded04 (diff) | |
download | serenity-a2a93727db565eb1aba27f17b79735e4966b98a1.zip |
LibGUI: Allow Button::set_icon to accept a bitmap without a move
Previously, Button::set_icon required moving the bitmap into the
button, preventing the same bitmap from being used by multiple
buttons at once. While this works for buttons that are created once,
any button that is dynamically added would require the same bitmap to
be loaded every single time. In addition to being ineffecient, this
also makes error checking more difficult.
With this change, a bitmap can be loaded once, and passed to multiple
buttons.
-rw-r--r-- | Userland/Libraries/LibGUI/Button.cpp | 2 | ||||
-rw-r--r-- | Userland/Libraries/LibGUI/Button.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/Userland/Libraries/LibGUI/Button.cpp b/Userland/Libraries/LibGUI/Button.cpp index 7cd7d440a0..60cbaa2648 100644 --- a/Userland/Libraries/LibGUI/Button.cpp +++ b/Userland/Libraries/LibGUI/Button.cpp @@ -134,7 +134,7 @@ void Button::set_action(Action& action) set_checked(action.is_checked()); } -void Button::set_icon(RefPtr<Gfx::Bitmap>&& icon) +void Button::set_icon(RefPtr<Gfx::Bitmap> icon) { if (m_icon == icon) return; diff --git a/Userland/Libraries/LibGUI/Button.h b/Userland/Libraries/LibGUI/Button.h index 0ab17fd88d..54c79772ec 100644 --- a/Userland/Libraries/LibGUI/Button.h +++ b/Userland/Libraries/LibGUI/Button.h @@ -20,7 +20,7 @@ class Button : public AbstractButton { public: virtual ~Button() override; - void set_icon(RefPtr<Gfx::Bitmap>&&); + void set_icon(RefPtr<Gfx::Bitmap>); void set_icon_from_path(String const&); const Gfx::Bitmap* icon() const { return m_icon.ptr(); } Gfx::Bitmap* icon() { return m_icon.ptr(); } |