summary refs log tree commit diff
path: root/scripts/kconfig/menu.c
diff options
context:
space:
mode:
authorDirk Gouders <dirk@gouders.net>2013-05-19 21:49:34 +0200
committerYann E. MORIN <yann.morin.1998@free.fr>2013-06-18 23:58:59 +0200
commit1278ebdbc3167883f32095491990fbdc7cdf8b5e (patch)
tree782074e7597e09796a5307e1facaf4657cdd95e9 /scripts/kconfig/menu.c
parente0b42605e685a0833303e1d4dde277c99d9e17b5 (diff)
downloadlinux-1278ebdbc3167883f32095491990fbdc7cdf8b5e.tar.gz
mconf/nconf: mark empty menus/menuconfigs different from non-empty ones
Submenus are sometimes empty and it would be nice if there is
something that notifies us that we should not expect any content
_before_ we enter a submenu.

A new function menu_is_empty() was introduced and empty menus and
menuconfigs are now marked by "----" as opposed to non-empty ones that
are marked by "--->".

This scheme was suggested by "Yann E. MORIN" <yann.morin.1998@free.fr>.

Signed-off-by: Dirk Gouders <dirk@gouders.net>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Diffstat (limited to 'scripts/kconfig/menu.c')
-rw-r--r--scripts/kconfig/menu.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c
index b5c7d90df9df..6d11c8f63eb0 100644
--- a/scripts/kconfig/menu.c
+++ b/scripts/kconfig/menu.c
@@ -430,6 +430,22 @@ bool menu_has_prompt(struct menu *menu)
 	return true;
 }
 
+/*
+ * Determine if a menu is empty.
+ * A menu is considered empty if it contains no or only
+ * invisible entries.
+ */
+bool menu_is_empty(struct menu *menu)
+{
+	struct menu *child;
+
+	for (child = menu->list; child; child = child->next) {
+		if (menu_is_visible(child))
+			return(false);
+	}
+	return(true);
+}
+
 bool menu_is_visible(struct menu *menu)
 {
 	struct menu *child;