close all parent PopupMenus fix
This commit is contained in:
parent
c2e2f2e0ae
commit
cff2509ecd
@ -738,10 +738,18 @@ int PopupMenu::find_item_by_accelerator(uint32_t p_accel) const {
|
|||||||
|
|
||||||
void PopupMenu::activate_item(int p_item) {
|
void PopupMenu::activate_item(int p_item) {
|
||||||
|
|
||||||
|
|
||||||
ERR_FAIL_INDEX(p_item,items.size());
|
ERR_FAIL_INDEX(p_item,items.size());
|
||||||
ERR_FAIL_COND(items[p_item].separator);
|
ERR_FAIL_COND(items[p_item].separator);
|
||||||
emit_signal("item_pressed",items[p_item].ID);
|
emit_signal("item_pressed",items[p_item].ID);
|
||||||
|
|
||||||
|
//hide all parent PopupMenue's
|
||||||
|
Node *next = get_parent();
|
||||||
|
PopupMenu *pop = next->cast_to<PopupMenu>();
|
||||||
|
while (pop) {
|
||||||
|
pop->hide();
|
||||||
|
next = next->get_parent();
|
||||||
|
pop = next->cast_to<PopupMenu>();
|
||||||
|
}
|
||||||
hide();
|
hide();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user