public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Sam Ravnborg <sam@ravnborg.org>
To: linux-kernel@vger.kernel.org
Subject: [PATCH 05/26] kconfig: Left aling menu items in menuconfig
Date: Tue, 3 Jan 2006 14:25:25 +0100	[thread overview]
Message-ID: <11362947252201@foobar.com> (raw)
In-Reply-To: <20060103132035.GA17485@mars.ravnborg.org>

From: Sam Ravnborg <sam@mars.ravnborg.org>
Date: 1132522881 +0100

Keeping menu lines on a fixed position creates less visual
noise when navigating the menus.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

---

 scripts/lxdialog/menubox.c |   30 +++++++++++-------------------
 1 files changed, 11 insertions(+), 19 deletions(-)

0e175d05a4e72f85918da3ea4bd9f5d3d78face4
diff --git a/scripts/lxdialog/menubox.c b/scripts/lxdialog/menubox.c
index ebfe6a3..89fcf41 100644
--- a/scripts/lxdialog/menubox.c
+++ b/scripts/lxdialog/menubox.c
@@ -58,7 +58,8 @@
 
 #include "dialog.h"
 
-static int menu_width, item_x;
+#define ITEM_IDENT 4   /* Indent of menu entries. Fixed for all menus */
+static int menu_width;
 
 /*
  * Print menu item
@@ -86,13 +87,13 @@ static void print_item(WINDOW * win, con
 	wclrtoeol(win);
 #endif
 	wattrset(win, selected ? item_selected_attr : item_attr);
-	mvwaddstr(win, choice, item_x, menu_item);
+	mvwaddstr(win, choice, ITEM_IDENT, menu_item);
 	if (hotkey) {
 		wattrset(win, selected ? tag_key_selected_attr : tag_key_attr);
-		mvwaddch(win, choice, item_x + j, menu_item[j]);
+		mvwaddch(win, choice, ITEM_IDENT + j, menu_item[j]);
 	}
 	if (selected) {
-		wmove(win, choice, item_x + 1);
+		wmove(win, choice, ITEM_IDENT + 1);
 		wrefresh(win);
 	}
 	free(menu_item);
@@ -207,19 +208,10 @@ int dialog_menu(const char *title, const
 	draw_box(dialog, box_y, box_x, menu_height + 2, menu_width + 2,
 		 menubox_border_attr, menubox_attr);
 
-	/*
-	 * Find length of longest item in order to center menu.
-	 * Set 'choice' to default item.
-	 */
-	item_x = 0;
-	for (i = 0; i < item_no; i++) {
-		item_x =
-		    MAX(item_x, MIN(menu_width, strlen(items[i * 2 + 1]) + 2));
+	/* Set choice to default item */
+	for (i = 0; i < item_no; i++)
 		if (strcmp(current, items[i * 2]) == 0)
 			choice = i;
-	}
-
-	item_x = (menu_width - item_x) / 2;
 
 	/* get the scroll info from the temp file */
 	if ((f = fopen("lxdialog.scrltmp", "r")) != NULL) {
@@ -254,10 +246,10 @@ int dialog_menu(const char *title, const
 	wnoutrefresh(menu);
 
 	print_arrows(dialog, item_no, scroll,
-		     box_y, box_x + item_x + 1, menu_height);
+		     box_y, box_x + ITEM_IDENT + 1, menu_height);
 
 	print_buttons(dialog, height, width, 0);
-	wmove(menu, choice, item_x + 1);
+	wmove(menu, choice, ITEM_IDENT + 1);
 	wrefresh(menu);
 
 	while (key != ESC) {
@@ -286,7 +278,7 @@ int dialog_menu(const char *title, const
 		    key == KEY_UP || key == KEY_DOWN ||
 		    key == '-' || key == '+' ||
 		    key == KEY_PPAGE || key == KEY_NPAGE) {
-
+			/* Remove highligt of current item */
 			print_item(menu, items[(scroll + choice) * 2 + 1],
 				   choice, FALSE,
 				   (items[(scroll + choice) * 2][0] != ':'));
@@ -364,7 +356,7 @@ int dialog_menu(const char *title, const
 				   choice, TRUE, (items[(scroll + choice) * 2][0] != ':'));
 
 			print_arrows(dialog, item_no, scroll,
-				     box_y, box_x + item_x + 1, menu_height);
+				     box_y, box_x + ITEM_IDENT + 1, menu_height);
 
 			wnoutrefresh(dialog);
 			wrefresh(menu);
-- 
1.0.6


  parent reply	other threads:[~2006-01-03 13:34 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-03 13:20 [PATCH] kbuild + kconfig updates for 2.6.16-rc Sam Ravnborg
2006-01-03 13:25 ` [PATCH 14/26] kbuild: Add ctags support for function prototypes and external variable declarations Sam Ravnborg
2006-01-03 13:25 ` [PATCH 03/26] kconfig: lxdialog is now sparse clean Sam Ravnborg
2006-01-03 13:25 ` [PATCH 07/26] kconfig: make lxdialog/menubox.c more readable Sam Ravnborg
2006-01-03 13:25 ` Sam Ravnborg [this message]
2006-01-03 13:25 ` [PATCH 10/26] kbuild: remove the deprecated check_gcc Sam Ravnborg
2006-01-03 13:25 ` [PATCH 13/26] kbuild: Fix crc-error warning on modules Sam Ravnborg
2006-01-03 13:25 ` [PATCH 08/26] kconfig: truncate too long menu lines in menuconfig Sam Ravnborg
2006-01-03 13:25 ` [PATCH 06/26] kconfig: Fix indention when using menuconfig in text-onle consoles Sam Ravnborg
2006-01-03 13:25 ` [PATCH 09/26] kconfig: move lxdialog to scripts/kconfig/lxdialog Sam Ravnborg
2006-01-03 13:25 ` [PATCH 02/26] kconfig: fixup after Lindent Sam Ravnborg
2006-01-03 13:25 ` [PATCH 11/26] kbuild: patch to Documentation/kbuild/modules.txt Sam Ravnborg
2006-01-03 13:25 ` [PATCH 04/26] kconfig: Add print_title helper in lxdialog Sam Ravnborg
2006-01-03 13:25 ` [PATCH 12/26] kbuild: document INSTALL_MOD_PATH in 'make help' Sam Ravnborg
2006-01-03 13:25 ` [PATCH 15/26] kbuild: escape '#' in .target.cmd files Sam Ravnborg
2006-01-03 13:25 ` [PATCH 23/26] gitignore: x86_64 files Sam Ravnborg
2006-01-03 16:39   ` Andi Kleen
2006-01-03 17:15     ` Sam Ravnborg
2006-01-03 17:26       ` Andi Kleen
2006-01-03 17:42         ` Olaf Hering
2006-01-03 19:24         ` Sam Ravnborg
2006-01-03 19:14     ` Brian Gerst
2006-01-03 13:25 ` [PATCH 24/26] gitignore: misc files Sam Ravnborg
2006-01-03 13:25 ` [PATCH 25/26] kconfig: Remove support for lxdialog --checklist Sam Ravnborg
2006-01-03 13:25 ` [PATCH 19/26] kbuild: remove EXPERIMENTAL tag from Module versioning Sam Ravnborg
2006-01-03 13:25 ` [PATCH 21/26] kbuild: always run 'make silentoldconfig' when tree is cleaned Sam Ravnborg
2006-01-03 13:25 ` [PATCH 22/26] gitignore: asm-offsets.h Sam Ravnborg
2006-01-03 13:25 ` [PATCH 16/26] kbuild: set correct KBUILD_MODNAME when using well known kernel symbols as module names Sam Ravnborg
2006-01-03 13:25 ` [PATCH 20/26] kbuild: tags file generation fixup Sam Ravnborg
2006-01-03 13:25 ` [PATCH 26/26] gitignore: ignore more generated files Sam Ravnborg
2006-01-03 13:25 ` [PATCH 17/26] kbuild: Fix genksyms handling of DEFINE_PER_CPU(struct foo_s *, bar); Sam Ravnborg
2006-01-03 14:46   ` Jan Engelhardt
2006-01-03 14:49     ` Sam Ravnborg
2006-01-03 14:51       ` Jan Engelhardt
2006-01-04 19:01   ` Robin Holt
2006-01-04 19:19     ` Sam Ravnborg
2006-01-03 15:02 ` [PATCH] kbuild + kconfig updates for 2.6.16-rc Sam Ravnborg
2006-01-03 15:05   ` [PATCH 1/1] kbuild: tar-pkg with out-out-tree building Sam Ravnborg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=11362947252201@foobar.com \
    --to=sam@ravnborg.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox