add support for MENU_ITEMFLAGS_SKIPINVERT

Able to test:
win/tty
win/win32
win/curses

Unable to test:
win/X11
win/Qt
win/Qt3
win/gem
win/gnome
This commit is contained in:
nhmall
2019-12-23 08:36:44 -05:00
parent c9bc2f5a2a
commit 7012e7046f
18 changed files with 63 additions and 35 deletions

View File

@@ -1773,7 +1773,10 @@ char acc; /* group accelerator, 0 => all */
tty_menu_item *curr;
int n;
for (n = 0, curr = page_start; curr != page_end; n++, curr = curr->next)
for (n = 0, curr = page_start; curr != page_end; n++, curr = curr->next) {
if ((curr->itemflags & MENU_ITEMFLAGS_SKIPINVERT) != 0)
continue;
if (curr->identifier.a_void && (acc == 0 || curr->gselector == acc)) {
if (curr->selected) {
curr->selected = FALSE;
@@ -1782,6 +1785,7 @@ char acc; /* group accelerator, 0 => all */
curr->selected = TRUE;
set_item_state(window, n, curr);
}
}
}
/*
@@ -1801,6 +1805,9 @@ char acc; /* group accelerator, 0 => all */
/* invert the rest */
for (on_curr_page = FALSE, curr = cw->mlist; curr; curr = curr->next) {
if ((curr->itemflags & MENU_ITEMFLAGS_SKIPINVERT) != 0)
continue;
if (curr == page_start)
on_curr_page = TRUE;
else if (curr == page_end)