/* Displaying messages and getting input for WWW Library * ===================================================== * * May 92 Created By C.T. Barker * Feb 93 Portablized etc TBL */ #ifndef HTALERT_H #define HTALERT_H 1 #include #ifdef __cplusplus extern "C" { #endif #define ALERT_PREFIX_LEN 5 /* Display a message and get the input * * On entry, * Msg is the message. * * On exit, * Return value is malloc'd string which must be freed. */ extern char *HTPrompt(const char *Msg, const char *deflt); /* Display a message, don't wait for input * * On entry, * The input is a list of parameters for printf. */ extern void HTAlert(const char *Msg); extern void HTAlwaysAlert(const char *extra_prefix, const char *Msg); extern void HTInfoMsg(const char *Msg); extern void HTInfoMsg2(const char *Msg, const char *Arg); extern void HTUserMsg(const char *Msg); extern void HTUserMsg2(const char *Msg, const char *Arg); /* Display a progress message for information (and diagnostics) only * * On entry, * The input is a list of parameters for printf. */ extern const char *HTProgressUnits(int kilobytes); extern void HTProgress(const char *Msg); extern void HTReadProgress(long bytes, long total); #define _HTProgress(msg) mustshow = TRUE, HTProgress(msg) /* * Indicates whether last HTConfirm was cancelled (^G or ^C) and * resets flag. (so only call once!) - kw */ extern BOOL HTLastConfirmCancelled(void); /* * Supports logic for forced yes/no prompt results. */ extern int HTForcedPrompt(int Opt, const char *Msg, int Dft); /* Display a message, then wait for 'yes' or 'no', allowing default * response if a return or left-arrow is used. * * On entry, * Takes a list of parameters for printf. * * On exit, * If the user enters 'YES', returns TRUE, returns FALSE * otherwise. */ extern int HTConfirmDefault(const char *Msg, int Dft); /* Display a message, then wait for 'yes' or 'no'. * * On entry, * Takes a list of parameters for printf. * * On exit, * If the user enters 'YES', returns TRUE, returns FALSE * otherwise. */ extern BOOL HTConfirm(const char *Msg); extern BOOL confirm_post_resub(const char *address, const char *title, int if_imgmap, int if_file); /* Prompt for password without echoing the reply */ extern char *HTPromptPassword(const char *Msg); /* Prompt both username and password HTPromptUsernameAndPassword() * --------------------------------- * On entry, * Msg is the prompting message. * *username and * *password are char pointers; they are changed * to point to result strings. * IsProxy should be TRUE if this is for * proxy authentication. * * If *username is not NULL, it is taken * to point to a default value. * Initial value of *password is * completely discarded. * * On exit, * *username and *password point to newly allocated * strings -- original strings pointed to by them * are NOT freed. * */ extern void HTPromptUsernameAndPassword(const char *Msg, char **username, char **password, BOOL IsProxy); /* Confirm a cookie operation. HTConfirmCookie() * --------------------------- * * On entry, * server is the server sending the Set-Cookie. * domain is the domain of the cookie. * path is the path of the cookie. * name is the name of the cookie. * value is the value of the cookie. * * On exit, * Returns FALSE on cancel, * TRUE if the cookie should be set. */ extern BOOL HTConfirmCookie(domain_entry * dp, const char *server, const char *name, const char *value); /* Confirm redirection of POST. HTConfirmPostRedirect() * ---------------------------- * On entry, * Redirecting_url is the Location. * server_status is the server status code. * * On exit, * Returns 0 on cancel, * 1 for redirect of POST with content, * 303 for redirect as GET without content */ extern int HTConfirmPostRedirect(const char *Redirecting_url, int server_status); extern void LYSleepAlert(void); extern void LYSleepDebug(void); extern void LYSleepInfo(void); extern void LYSleepMsg(void); extern void LYSleepReplay(void); #ifdef HAVE_STRERROR #define LYStrerror strerror #else extern char *LYStrerror(int code); #endif /* HAVE_STRERROR */ #ifdef __cplusplus } #endif #endif /* HTALERT_H */