From 725654654d44554c7ce2ebd86d242f7c46b13591 Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 25 Nov 2021 17:22:46 +0400 Subject: [PATCH] Allow changing menu action icons in realtime. --- ui/widgets/menu/menu_action.cpp | 8 ++++++++ ui/widgets/menu/menu_action.h | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/ui/widgets/menu/menu_action.cpp b/ui/widgets/menu/menu_action.cpp index 20af513..db4a610 100644 --- a/ui/widgets/menu/menu_action.cpp +++ b/ui/widgets/menu/menu_action.cpp @@ -192,4 +192,12 @@ void Action::handleKeyPress(not_null e) { } } +void Action::setIcon( + const style::icon *icon, + const style::icon *iconOver) { + _icon = icon; + _iconOver = iconOver ? iconOver : icon; + update(); +} + } // namespace Ui::Menu diff --git a/ui/widgets/menu/menu_action.h b/ui/widgets/menu/menu_action.h index 2600788..3149434 100644 --- a/ui/widgets/menu/menu_action.h +++ b/ui/widgets/menu/menu_action.h @@ -28,6 +28,10 @@ public: void handleKeyPress(not_null e) override; + void setIcon( + const style::icon *icon, + const style::icon *iconOver = nullptr); + protected: QPoint prepareRippleStartPosition() const override; QImage prepareRippleMask() const override;