From aab09714f5780d2d7eeb7f1f94a624e0535bdb22 Mon Sep 17 00:00:00 2001 From: John Hodge Date: Mon, 22 Aug 2011 18:58:40 +0800 Subject: [PATCH 1/1] client - Fixed some bugs with long prices --- src/client/main.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/client/main.c b/src/client/main.c index bf22fab..204a61e 100644 --- a/src/client/main.c +++ b/src/client/main.c @@ -1034,7 +1034,6 @@ int ShowNCursesUI(void) */ int ShowItemAt(int Row, int Col, int Width, int Index, int bHilighted) { - int _x, _y, times; char *name = NULL; int price = 0; int status = -1; @@ -1112,6 +1111,13 @@ int ShowItemAt(int Row, int Col, int Width, int Index, int bHilighted) break; } + if( price > 100*100 ) { + nameWidth --; + } + if( price > 1000*100 ) { + nameWidth --; + } + printw("%-*.*s", nameWidth, nameWidth, name); // getyx(stdscr, _y, _x); @@ -1119,15 +1125,13 @@ int ShowItemAt(int Row, int Col, int Width, int Index, int bHilighted) // times = Width - 5 - (_x - Col); // TODO: Better handling for large prices // while(times--) addch(' '); + // 999.99 should be enough printw(" %4i", price); } else { - printw("-- %s", name); - getyx(stdscr, _y, _x); - times = Width - 4 - (_x - Col); - while(times--) addch(' '); - printw(" "); +// int _x, _y, times; + printw("-- %-*.*s ", Width-4, Width-4, name); } } -- 2.20.1