From b640fe2c00e591888ecc1ca594e5e51336c3bf44 Mon Sep 17 00:00:00 2001 From: ptt Date: Fri, 23 Apr 2004 15:03:54 +0000 Subject: remove useless functions integrate similiar functions git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1827 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 71 ++++++++++++++++++++++++++++------------------------------- 1 file changed, 34 insertions(+), 37 deletions(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index e088b116..ba29c84e 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -401,47 +401,19 @@ capture_screen() } } -void -pressanykey() -{ - int ch; - - outmsg("\033[37;45;1m " - "● 請按 \033[33m(Space/Return)\033[37m 繼續 ●" - " \033[33m(^T)\033[37m 存暫存檔 \033[m"); - do { - ch = igetkey(); - - if (ch == Ctrl('T')) { - capture_screen(); - break; - } - } while ((ch != ' ') && (ch != KEY_LEFT) && (ch != '\r') && (ch != '\n')); - move(b_lines, 0); - clrtoeol(); - refresh(); -} - int -vmsg(const char *fmt,...) +vmsg_lines(const int lines, const char msg[]) { - va_list ap; - char msg[80] = {0}; int ch; - va_start(ap, fmt); - vsnprintf(msg, sizeof(msg), fmt, ap); - va_end(ap); - - move(b_lines, 0); + move(lines, 0); clrtoeol(); - if (*msg) - prints("\033[1;36;44m ◆ %-55.54s \033[33;46m \033[200m\033[1431m\033[506m[請按任意鍵繼續]\033[201m \033[m", msg); + if (msg) + outs(msg); else - outs("\033[46;1m \033[37m" - "\033[200m\033[1431m\033[506m□ 請按 \033[33m(Space/Return)\033[37m 繼續 □\033[201m" - " \033[m"); + outs("\033[46;1m \033[37m" + "\033[200m\033[1431m\033[506m□ 請按 \033[33m(Space/Return)\033[37m 繼續 □\033[201m (^T) 收到暫存檔 \033[m"); do { ch = igetkey(); @@ -453,12 +425,37 @@ vmsg(const char *fmt,...) } while ((ch != ' ') && (ch != KEY_LEFT) && (ch != '\r') && (ch != '\n')); - move(b_lines, 0); + move(lines, 0); clrtoeol(); - refresh(); return ch; } +int +getans(const char *fmt,...) +{ + char msg[80] = {0}; + va_list ap; + va_start(ap, fmt); + vsnprintf(msg, sizeof(msg), fmt, ap); + va_end(ap); + return vmsg_lines(b_lines, msg); +} + +int +vmsg(const char *fmt,...) +{ + char msg[80] = "\033[1;36;44m ◆ ", i; + va_list ap; + va_start(ap, fmt); + vsnprintf(msg+14, 55, fmt, ap); + va_end(ap); + for(i=69; i>0 && *(msg+i); i--) + *(msg+i) = ' '; + strcat(msg+69,"\033[33;46m \033[200m\033[1431m\033[506m[請按任意鍵繼續]\033[201m \033[m"); + return vmsg_lines(b_lines, msg); +} + + void bell() { @@ -548,7 +545,7 @@ cursor_key(int row, int column) int ch; cursor_show(row, column); - ch = egetch(); + ch = igetch(); move(row, column); outs(STR_UNCUR); return ch; -- cgit v1.2.3 From 91f6682a7690a4dd6ae160804b2009a0a98f8122 Mon Sep 17 00:00:00 2001 From: ptt Date: Fri, 23 Apr 2004 16:26:20 +0000 Subject: integrate igetkey igetch egetch git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1828 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index ba29c84e..605e8cd3 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -415,15 +415,10 @@ vmsg_lines(const int lines, const char msg[]) outs("\033[46;1m \033[37m" "\033[200m\033[1431m\033[506m□ 請按 \033[33m(Space/Return)\033[37m 繼續 □\033[201m (^T) 收到暫存檔 \033[m"); - do { - ch = igetkey(); - - if (ch == Ctrl('T')) { + ch = igetch(); + if (ch == Ctrl('T')) { capture_screen(); - break; } - } while ((ch != ' ') && (ch != KEY_LEFT) && (ch != '\r') && (ch != '\n')); - move(lines, 0); clrtoeol(); @@ -449,7 +444,7 @@ vmsg(const char *fmt,...) va_start(ap, fmt); vsnprintf(msg+14, 55, fmt, ap); va_end(ap); - for(i=69; i>0 && *(msg+i); i--) + for(i=69; i>0 && *(msg+i+1); i--) *(msg+i) = ' '; strcat(msg+69,"\033[33;46m \033[200m\033[1431m\033[506m[請按任意鍵繼續]\033[201m \033[m"); return vmsg_lines(b_lines, msg); -- cgit v1.2.3 From 77977eec595648e9143769c7993c65490b753b99 Mon Sep 17 00:00:00 2001 From: ptt Date: Fri, 23 Apr 2004 20:49:16 +0000 Subject: modify a little for vmsg git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1837 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index 605e8cd3..fc2ce69d 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -439,14 +439,15 @@ getans(const char *fmt,...) int vmsg(const char *fmt,...) { - char msg[80] = "\033[1;36;44m ◆ ", i; + char msg[128] = "\033[1;36;44m ◆ ", i; va_list ap; va_start(ap, fmt); - vsnprintf(msg+14, 55, fmt, ap); + i = vsnprintf(msg+14, 100, fmt, ap); va_end(ap); - for(i=69; i>0 && *(msg+i+1); i--) + for(; i<69; i++) *(msg+i) = ' '; - strcat(msg+69,"\033[33;46m \033[200m\033[1431m\033[506m[請按任意鍵繼續]\033[201m \033[m"); + strcat(msg+69, + "\033[33;46m \033[200m\033[1431m\033[506m[請按任意鍵繼續]\033[201m \033[m"); return vmsg_lines(b_lines, msg); } -- cgit v1.2.3 From d5f6cda0c60bbb2dbe4b57eca207b83696178dca Mon Sep 17 00:00:00 2001 From: ptt Date: Sat, 24 Apr 2004 12:08:57 +0000 Subject: 2 bugs fixed 1. vmsg 2. read git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1846 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index fc2ce69d..cde95cb0 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -444,7 +444,7 @@ vmsg(const char *fmt,...) va_start(ap, fmt); i = vsnprintf(msg+14, 100, fmt, ap); va_end(ap); - for(; i<69; i++) + for(i=i+14; i<69; i++) *(msg+i) = ' '; strcat(msg+69, "\033[33;46m \033[200m\033[1431m\033[506m[請按任意鍵繼續]\033[201m \033[m"); -- cgit v1.2.3 From 8cb2775bb364a740a107fe74cc39d723fd63babc Mon Sep 17 00:00:00 2001 From: in2 Date: Sun, 25 Apr 2004 09:58:02 +0000 Subject: warning free git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1850 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index cde95cb0..4e5fa46c 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -410,7 +410,7 @@ vmsg_lines(const int lines, const char msg[]) clrtoeol(); if (msg) - outs(msg); + outs((char *)msg); else outs("\033[46;1m \033[37m" "\033[200m\033[1431m\033[506m□ 請按 \033[33m(Space/Return)\033[37m 繼續 □\033[201m (^T) 收到暫存檔 \033[m"); -- cgit v1.2.3 From c8b988071cbd66574a6efbaa0cd7af3dbec5a3db Mon Sep 17 00:00:00 2001 From: in2 Date: Sun, 25 Apr 2004 10:20:17 +0000 Subject: r1850 igetch() in vmsg_lines() doesn't work :( dirty hack here git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1851 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index 4e5fa46c..ab542695 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -412,13 +412,13 @@ vmsg_lines(const int lines, const char msg[]) if (msg) outs((char *)msg); else - outs("\033[46;1m \033[37m" + outs("\033[45;1m \033[37m" "\033[200m\033[1431m\033[506m□ 請按 \033[33m(Space/Return)\033[37m 繼續 □\033[201m (^T) 收到暫存檔 \033[m"); - ch = igetch(); - if (ch == Ctrl('T')) { + do { + if( (ch = igetch()) == Ctrl('T') ) capture_screen(); - } + } while( (ch != ' ') && (ch != KEY_LEFT) && (ch != '\r') && (ch != '\n') ); move(lines, 0); clrtoeol(); -- cgit v1.2.3 From 9597ae1b4e39c723c06bab688474a28d59ac08ef Mon Sep 17 00:00:00 2001 From: in2 Date: Sun, 25 Apr 2004 11:37:47 +0000 Subject: r1851 dirty fixed vmsg_lines(), but broke getans() this patch dirty fixes getans() and sould be discarded after fix dogetch(). git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1854 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index ab542695..1bf292ea 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -428,12 +428,13 @@ vmsg_lines(const int lines, const char msg[]) int getans(const char *fmt,...) { - char msg[80] = {0}; + char msg[80] = {0}, ans[2] = {0}; va_list ap; va_start(ap, fmt); vsnprintf(msg, sizeof(msg), fmt, ap); va_end(ap); - return vmsg_lines(b_lines, msg); + getdata(b_lines - 1, 0, msg, ans, sizeof(ans), LCECHO); + return ans[0]; } int -- cgit v1.2.3 From 1ebeeb92186b0631fe1f04ffed1e6a150b2a40e6 Mon Sep 17 00:00:00 2001 From: in2 Date: Sun, 25 Apr 2004 12:00:45 +0000 Subject: discard r1854, dirty hack to ignore "\0" in vmsg_lines() (but igetch() should NOT return "\0") git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1855 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index 1bf292ea..3141cc26 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -418,7 +418,7 @@ vmsg_lines(const int lines, const char msg[]) do { if( (ch = igetch()) == Ctrl('T') ) capture_screen(); - } while( (ch != ' ') && (ch != KEY_LEFT) && (ch != '\r') && (ch != '\n') ); + } while( ch == 0 ); move(lines, 0); clrtoeol(); @@ -428,13 +428,12 @@ vmsg_lines(const int lines, const char msg[]) int getans(const char *fmt,...) { - char msg[80] = {0}, ans[2] = {0}; + char msg[80] = {0}; va_list ap; va_start(ap, fmt); vsnprintf(msg, sizeof(msg), fmt, ap); va_end(ap); - getdata(b_lines - 1, 0, msg, ans, sizeof(ans), LCECHO); - return ans[0]; + return vmsg_lines(b_lines, msg); } int -- cgit v1.2.3 From a08baf738de7959e912f5b12314da85eaea5a3c9 Mon Sep 17 00:00:00 2001 From: ptt Date: Sun, 25 Apr 2004 14:20:36 +0000 Subject: enlarge getans git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@1856 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/stuff.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mbbsd/stuff.c') diff --git a/mbbsd/stuff.c b/mbbsd/stuff.c index 3141cc26..7f5e495a 100644 --- a/mbbsd/stuff.c +++ b/mbbsd/stuff.c @@ -428,7 +428,7 @@ vmsg_lines(const int lines, const char msg[]) int getans(const char *fmt,...) { - char msg[80] = {0}; + char msg[128] = {0}; va_list ap; va_start(ap, fmt); vsnprintf(msg, sizeof(msg), fmt, ap); -- cgit v1.2.3