diff options
author | jkh <jkh@FreeBSD.org> | 1995-05-04 03:51:22 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1995-05-04 03:51:22 +0000 |
commit | d07e8dc78c2936d50c5e04702d9da353755417d7 (patch) | |
tree | 2839676961bb8accde9a8383e3b009d73528e91f /usr.sbin/sysinstall/msg.c | |
parent | 1e14740969b9cf0f109839c13be09afa0b42b96d (diff) | |
download | FreeBSD-src-d07e8dc78c2936d50c5e04702d9da353755417d7.zip FreeBSD-src-d07e8dc78c2936d50c5e04702d9da353755417d7.tar.gz |
My latest round of changes - make the "slices" editor work.
Diffstat (limited to 'usr.sbin/sysinstall/msg.c')
-rw-r--r-- | usr.sbin/sysinstall/msg.c | 87 |
1 files changed, 72 insertions, 15 deletions
diff --git a/usr.sbin/sysinstall/msg.c b/usr.sbin/sysinstall/msg.c index bbb918b..a7bc625 100644 --- a/usr.sbin/sysinstall/msg.c +++ b/usr.sbin/sysinstall/msg.c @@ -4,7 +4,7 @@ * This is probably the last program in the `sysinstall' line - the next * generation being essentially a complete rewrite. * - * $Id: msg.c,v 1.1.1.1 1995/04/27 12:50:34 jkh Exp $ + * $Id: msg.c,v 1.2 1995/05/01 21:56:29 jkh Exp $ * * Copyright (c) 1995 * Jordan Hubbard. All rights reserved. @@ -44,20 +44,45 @@ #include "sysinstall.h" #include <stdarg.h> +/* Whack up an informational message on the status line, in stand-out */ +void +msgYap(char *fmt, ...) +{ + va_list args; + char *errstr; + int attrs; + + errstr = (char *)malloc(FILENAME_MAX); + errstr[0] = '\0'; + va_start(args, fmt); + vsnprintf((char *)(errstr + strlen(errstr)), FILENAME_MAX, fmt, args); + va_end(args); + attrs = getattrs(stdscr); + attrset(A_BOLD); + mvaddstr(23, 0, errstr); + attrset(attrs); + refresh(); + free(errstr); +} + /* Whack up an informational message on the status line */ void msgInfo(char *fmt, ...) { va_list args; char *errstr; + int attrs; errstr = (char *)malloc(FILENAME_MAX); errstr[0] = '\0'; va_start(args, fmt); vsnprintf((char *)(errstr + strlen(errstr)), FILENAME_MAX, fmt, args); va_end(args); - move(25, 0); - addstr(errstr); + attrs = getattrs(stdscr); + attrset(A_NORMAL); + mvaddstr(23, 0, errstr); + attrset(attrs); + refresh(); free(errstr); } @@ -67,17 +92,19 @@ msgWarn(char *fmt, ...) { va_list args; char *errstr; + int attrs; errstr = (char *)malloc(FILENAME_MAX); strcpy(errstr, "Warning: "); va_start(args, fmt); vsnprintf((char *)(errstr + strlen(errstr)), FILENAME_MAX, fmt, args); va_end(args); - move(25, 0); + attrs = getattrs(stdscr); beep(); - standout(); - addstr(errstr); - standend(); + attrset(A_BOLD); + mvaddstr(23, 0, errstr); + attrset(attrs); + refresh(); free(errstr); } @@ -87,17 +114,19 @@ msgError(char *fmt, ...) { va_list args; char *errstr; + int attrs; errstr = (char *)malloc(FILENAME_MAX); strcpy(errstr, "Error: "); va_start(args, fmt); vsnprintf((char *)(errstr + strlen(errstr)), FILENAME_MAX, fmt, args); va_end(args); - move(25, 0); beep(); - standout(); - addstr(errstr); - standend(); + attrs = getattrs(stdscr); + attrset(A_BOLD); + mvaddstr(23, 0, errstr); + attrset(attrs); + refresh(); free(errstr); } @@ -107,23 +136,25 @@ msgFatal(char *fmt, ...) { va_list args; char *errstr; + int attrs; errstr = (char *)malloc(FILENAME_MAX); strcpy(errstr, "Fatal Error: "); va_start(args, fmt); vsnprintf((char *)(errstr + strlen(errstr)), FILENAME_MAX, fmt, args); va_end(args); - move(25, 0); beep(); - standout(); - addstr(errstr); + attrs = getattrs(stdscr); + attrset(A_BOLD); + mvaddstr(23, 0, errstr); addstr(" - "); addstr("PRESS ANY KEY TO "); if (getpid() == 1) addstr("REBOOT"); else addstr("QUIT"); - standend(); + attrset(attrs); + refresh(); free(errstr); getch(); systemShutdown(); @@ -164,3 +195,29 @@ msgYesNo(char *fmt, ...) free(errstr); return ret; } + +/* Put up a message in an input box and return the value */ +char * +msgGetInput(char *buf, char *fmt, ...) +{ + va_list args; + char *errstr; + char *ret; + static input_buffer[256]; + int rval; + + errstr = (char *)malloc(FILENAME_MAX); + va_start(args, fmt); + vsnprintf(errstr, FILENAME_MAX, fmt, args); + va_end(args); + use_helpline(NULL); + use_helpfile(NULL); + strcpy(input_buffer, buf); + rval = dialog_inputbox("Value Required", errstr, -1, -1, input_buffer); + free(errstr); + if (!rval) + return input_buffer; + else + return NULL; +} + |