|
@@ -67,13 +67,15 @@ static const char mconf_readme[] = N_(
|
|
|
" there is a delayed response which you may find annoying.\n"
|
|
|
"\n"
|
|
|
" Also, the <TAB> and cursor keys will cycle between <Select>,\n"
|
|
|
-" <Exit> and <Help>\n"
|
|
|
+" <Exit> and <Help>.\n"
|
|
|
"\n"
|
|
|
"o To get help with an item, use the cursor keys to highlight <Help>\n"
|
|
|
-" and Press <ENTER>.\n"
|
|
|
+" and press <ENTER>.\n"
|
|
|
"\n"
|
|
|
" Shortcut: Press <H> or <?>.\n"
|
|
|
"\n"
|
|
|
+"o To show hidden options, press <Z>.\n"
|
|
|
+"\n"
|
|
|
"\n"
|
|
|
"Radiolists (Choice lists)\n"
|
|
|
"-----------\n"
|
|
@@ -272,6 +274,7 @@ static int indent;
|
|
|
static struct menu *current_menu;
|
|
|
static int child_count;
|
|
|
static int single_menu_mode;
|
|
|
+static int show_all_options;
|
|
|
|
|
|
static void conf(struct menu *menu);
|
|
|
static void conf_choice(struct menu *menu);
|
|
@@ -346,8 +349,16 @@ static void build_conf(struct menu *menu)
|
|
|
int type, tmp, doint = 2;
|
|
|
tristate val;
|
|
|
char ch;
|
|
|
-
|
|
|
- if (!menu_is_visible(menu))
|
|
|
+ bool visible;
|
|
|
+
|
|
|
+ /*
|
|
|
+ * note: menu_is_visible() has side effect that it will
|
|
|
+ * recalc the value of the symbol.
|
|
|
+ */
|
|
|
+ visible = menu_is_visible(menu);
|
|
|
+ if (show_all_options && !menu_has_prompt(menu))
|
|
|
+ return;
|
|
|
+ else if (!show_all_options && !visible)
|
|
|
return;
|
|
|
|
|
|
sym = menu->sym;
|
|
@@ -606,6 +617,9 @@ static void conf(struct menu *menu)
|
|
|
case 7:
|
|
|
search_conf();
|
|
|
break;
|
|
|
+ case 8:
|
|
|
+ show_all_options = !show_all_options;
|
|
|
+ break;
|
|
|
}
|
|
|
}
|
|
|
}
|