if(g.NavId==id&&g.NavMoveRequest&&g.NavMoveDir==ImGuiNavDir_Right)// Nav-Right to open
{
want_open=true;
g.NavMoveRequest=false;
}
}
elseif(menu_is_open&&pressed&&menuset_is_open)// menu-bar: click open menu to close
elseif(menu_is_open&&pressed&&menuset_is_open)// Menu bar: click an open menu again to close it
{
want_close=true;
want_open=menu_is_open=false;
}
elseif(pressed||(hovered&&menuset_is_open&&!menu_is_open))// menu-bar: first click to open, then hover to open others
elseif(pressed||(hovered&&menuset_is_open&&!menu_is_open))// Menu bar: click to open a first menu, then hover to open others
want_open=true;
elseif(g.NavId==id&&g.NavMoveRequest&&g.NavMoveDir==ImGuiNavDir_Down)// Menu bar: Nav-Down to open
{
g.NavMoveRequest=false;
want_open=true;
}
if(!enabled)// explicitly close if an open menu becomes disabled, facilitate users code a lot in pattern such as 'if (BeginMenu("options", has_object)) { ..use object.. }'