diff --git a/ui/widgets/dropdown_menu.cpp b/ui/widgets/dropdown_menu.cpp index c3a3d64..d1dd929 100644 --- a/ui/widgets/dropdown_menu.cpp +++ b/ui/widgets/dropdown_menu.cpp @@ -72,6 +72,10 @@ const std::vector> &DropdownMenu::actions() const { return _menu->actions(); } +bool DropdownMenu::empty() const { + return _menu->empty(); +} + void DropdownMenu::handleActivated(const Menu::CallbackData &data) { if (data.source == TriggeredSource::Mouse) { if (!popupSubmenuFromAction(data)) { diff --git a/ui/widgets/dropdown_menu.h b/ui/widgets/dropdown_menu.h index 0b03a06..8b34f9c 100644 --- a/ui/widgets/dropdown_menu.h +++ b/ui/widgets/dropdown_menu.h @@ -27,6 +27,7 @@ public: } const std::vector> &actions() const; + bool empty() const; ~DropdownMenu(); diff --git a/ui/widgets/menu/menu.cpp b/ui/widgets/menu/menu.cpp index 964ff2a..58d2913 100644 --- a/ui/widgets/menu/menu.cpp +++ b/ui/widgets/menu/menu.cpp @@ -159,6 +159,10 @@ void Menu::clearActions() { void Menu::finishAnimating() { } +bool Menu::empty() const { + return _actionWidgets.empty(); +} + void Menu::setShowSource(TriggeredSource source) { _mouseSelection = (source == TriggeredSource::Mouse); setSelected((source == TriggeredSource::Mouse || _actions.empty()) ? -1 : 0); diff --git a/ui/widgets/menu/menu.h b/ui/widgets/menu/menu.h index b90eda3..a172e00 100644 --- a/ui/widgets/menu/menu.h +++ b/ui/widgets/menu/menu.h @@ -31,6 +31,8 @@ public: void clearActions(); void finishAnimating(); + bool empty() const; + void clearSelection(); void setChildShown(bool shown) { diff --git a/ui/widgets/popup_menu.cpp b/ui/widgets/popup_menu.cpp index 814cc06..cb8a6ba 100644 --- a/ui/widgets/popup_menu.cpp +++ b/ui/widgets/popup_menu.cpp @@ -118,6 +118,10 @@ const std::vector> &PopupMenu::actions() const { return _menu->actions(); } +bool PopupMenu::empty() const { + return _menu->empty(); +} + void PopupMenu::paintEvent(QPaintEvent *e) { QPainter p(this); diff --git a/ui/widgets/popup_menu.h b/ui/widgets/popup_menu.h index f7c7bd5..8f3c193 100644 --- a/ui/widgets/popup_menu.h +++ b/ui/widgets/popup_menu.h @@ -27,6 +27,7 @@ public: void clearActions(); const std::vector> &actions() const; + bool empty() const; void deleteOnHide(bool del); void popup(const QPoint &p);