diff options
author | Vincent Sanders <vince@kyllikki.org> | 2016-04-25 23:11:55 +0100 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2016-04-25 23:11:55 +0100 |
commit | bf3ee089cb57765c48065423027eb4fffbe297f1 (patch) | |
tree | 2432a7705866c0773bc70ea3287f45534ec085e1 /windows/main.c | |
parent | 638e07f026d85de0c01630217570d4148aaaced5 (diff) | |
download | netsurf-bf3ee089cb57765c48065423027eb4fffbe297f1.tar.gz netsurf-bf3ee089cb57765c48065423027eb4fffbe297f1.tar.bz2 |
use the miscellaneous table warning entry
change all the frontends to provide the warning callback in the
miscelaneous table instead of using the warn_user function.
Changing all the warn_user callsites still requires completion.
Diffstat (limited to 'windows/main.c')
-rw-r--r-- | windows/main.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/windows/main.c b/windows/main.c index d2d054414..869907d11 100644 --- a/windows/main.c +++ b/windows/main.c @@ -64,6 +64,26 @@ static void die(const char *error) exit(1); } + +/** + * Warn the user of an event. + * + * \param[in] message A warning looked up in the message translation table + * \param[in] detail Additional text to be displayed or NULL. + * \return NSERROR_OK on success or error code if there was a + * faliure displaying the message to the user. + */ +static nserror win32_warn_user(const char *warning, const char *detail) +{ + size_t len = 1 + ((warning != NULL) ? strlen(messages_get(warning)) : + 0) + ((detail != 0) ? strlen(detail) : 0); + char message[len]; + snprintf(message, len, messages_get(warning), detail); + MessageBox(NULL, message, "Warning", MB_ICONWARNING); + + return NSERROR_OK; +} + static nsurl *gui_get_resource_url(const char *path) { char buf[PATH_MAX]; @@ -135,6 +155,7 @@ static nserror set_defaults(struct nsoption_s *defaults) static struct gui_misc_table win32_misc_table = { .schedule = win32_schedule, + .warning = win32_warn_user, }; @@ -256,7 +277,7 @@ WinMain(HINSTANCE hInstance, HINSTANCE hLastInstance, LPSTR lpcli, int ncmd) } if (ret != NSERROR_OK) { - warn_user(messages_get_errorcode(ret), 0); + win32_warn_user(messages_get_errorcode(ret), 0); } else { win32_run(); } |