diff --git a/ui/widgets/menu/menu.cpp b/ui/widgets/menu/menu.cpp index 8b7a90e..1460114 100644 --- a/ui/widgets/menu/menu.cpp +++ b/ui/widgets/menu/menu.cpp @@ -68,10 +68,12 @@ not_null Menu::addAction( not_null Menu::addAction( const QString &text, - std::unique_ptr submenu) { + std::unique_ptr submenu, + const style::icon *icon, + const style::icon *iconOver) { const auto action = new QAction(text, this); action->setMenu(submenu.release()); - return addAction(action, nullptr, nullptr); + return addAction(action, icon, iconOver); } not_null Menu::addAction( diff --git a/ui/widgets/menu/menu.h b/ui/widgets/menu/menu.h index 0af9898..3aa0b05 100644 --- a/ui/widgets/menu/menu.h +++ b/ui/widgets/menu/menu.h @@ -40,7 +40,9 @@ public: const style::icon *iconOver = nullptr); not_null addAction( const QString &text, - std::unique_ptr submenu); + std::unique_ptr submenu, + const style::icon *icon = nullptr, + const style::icon *iconOver = nullptr); not_null addSeparator(); void clearActions(); void finishAnimating(); diff --git a/ui/widgets/popup_menu.cpp b/ui/widgets/popup_menu.cpp index 37faaaa..308fed7 100644 --- a/ui/widgets/popup_menu.cpp +++ b/ui/widgets/popup_menu.cpp @@ -357,14 +357,24 @@ not_null PopupMenu::addAction( return _menu->addAction(std::move(widget)); } -not_null PopupMenu::addAction(const QString &text, Fn callback, const style::icon *icon, const style::icon *iconOver) { +not_null PopupMenu::addAction( + const QString &text, + Fn callback, + const style::icon *icon, + const style::icon *iconOver) { return _menu->addAction(text, std::move(callback), icon, iconOver); } not_null PopupMenu::addAction( const QString &text, - std::unique_ptr submenu) { - const auto action = _menu->addAction(text, std::make_unique()); + std::unique_ptr submenu, + const style::icon *icon, + const style::icon *iconOver) { + const auto action = _menu->addAction( + text, + std::make_unique(), + icon, + iconOver); const auto saved = _submenus.emplace( action, base::unique_qptr(submenu.release()) diff --git a/ui/widgets/popup_menu.h b/ui/widgets/popup_menu.h index 510015e..26937dd 100644 --- a/ui/widgets/popup_menu.h +++ b/ui/widgets/popup_menu.h @@ -29,8 +29,16 @@ public: } not_null addAction(base::unique_qptr widget); - not_null addAction(const QString &text, Fn callback, const style::icon *icon = nullptr, const style::icon *iconOver = nullptr); - not_null addAction(const QString &text, std::unique_ptr submenu); + not_null addAction( + const QString &text, + Fn callback, + const style::icon *icon = nullptr, + const style::icon *iconOver = nullptr); + not_null addAction( + const QString &text, + std::unique_ptr submenu, + const style::icon *icon = nullptr, + const style::icon *iconOver = nullptr); not_null addSeparator(); void clearActions();