| 836 | } |
| 837 | |
| 838 | void MenuControl::_setItemSelected(IItem* _item) |
| 839 | { |
| 840 | MenuItem* item = static_cast<MenuItem*>(_item); |
| 841 | for (auto& iter : mItemsInfo) |
| 842 | { |
| 843 | if (iter.type == MenuItemType::Popup) |
| 844 | { |
| 845 | iter.item->setStateSelected(false); |
| 846 | |
| 847 | if (iter.submenu != nullptr) |
| 848 | iter.submenu->setVisible(false); |
| 849 | } |
| 850 | } |
| 851 | |
| 852 | if (item->getItemType() == MenuItemType::Popup) |
| 853 | { |
| 854 | item->setStateSelected(true); |
| 855 | size_t index = getItemIndex(item); |
| 856 | |
| 857 | _setItemChildVisibleAt(index, true, false); |
| 858 | |
| 859 | _updateItems(index); |
| 860 | } |
| 861 | } |
| 862 | |
| 863 | void MenuControl::_updateItems(size_t _index) |
| 864 | { |
no test coverage detected