diff options
-rw-r--r-- | include/visio.h | 1 | ||||
-rw-r--r-- | mbbsd/visio.c | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/include/visio.h b/include/visio.h index 626f12e5..42e32136 100644 --- a/include/visio.h +++ b/include/visio.h @@ -101,6 +101,7 @@ typedef struct { // curses flavor void prints(const char *fmt, ...) GCC_CHECK_FORMAT(1,2); +void mvprints(int y, int x, const char *fmt, ...) GCC_CHECK_FORMAT(3,4); void mvouts(int y, int x, const char *str); // input history diff --git a/mbbsd/visio.c b/mbbsd/visio.c index 20f711a6..bbc29ee8 100644 --- a/mbbsd/visio.c +++ b/mbbsd/visio.c @@ -159,6 +159,22 @@ prints(const char *fmt,...) } /** + * mvprints(int y, int x, fmt, ...): 使用 mvouts 輸出並格式化字串。 + */ +void +mvprints(int y, int x, const char *fmt, ...) +{ + va_list args; + char buff[VBUFLEN]; + + va_start(args, fmt); + vsnprintf(buff, sizeof(buff), fmt, args); + va_end(args); + + mvouts(x, y, buff); +} + +/** * mvouts(y, x, str): = mvaddstr */ void |