diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2014-11-10 21:59:51 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2014-11-10 21:59:51 +0000 |
commit | e9696b2fa92971616ab6922e79fe3e7e2a9ff66d (patch) | |
tree | 9a9ca0483bc1dff4c8973168962ac87da8cb77bc /amiga/misc.c | |
parent | 33eb1f413a03042b330796780cb29ae74894c9fd (diff) | |
download | netsurf-e9696b2fa92971616ab6922e79fe3e7e2a9ff66d.tar.gz netsurf-e9696b2fa92971616ab6922e79fe3e7e2a9ff66d.tar.bz2 |
New function for an error requester with the correct imagery which doesn't attempt to do Messages lookup.
Diffstat (limited to 'amiga/misc.c')
-rwxr-xr-x | amiga/misc.c | 32 |
1 files changed, 22 insertions, 10 deletions
diff --git a/amiga/misc.c b/amiga/misc.c index 2864a4525..530110f49 100755 --- a/amiga/misc.c +++ b/amiga/misc.c @@ -47,33 +47,45 @@ #include "amiga/misc.h" #include "amiga/utf8.h" -void warn_user(const char *warning, const char *detail) +static LONG ami_misc_req(const char *message, int type) { Object *req = NULL; - char *utf8warning = ami_utf8_easy(messages_get(warning)); - STRPTR bodytext = NULL; + LONG ret = 0; - LOG(("%s %s", warning, detail)); - - bodytext = ASPrintf("\33b%s\33n\n%s", - utf8warning != NULL ? utf8warning : warning, detail); + LOG(("%s", message)); req = NewObject(REQUESTER_GetClass(), NULL, REQ_Type, REQTYPE_INFO, REQ_TitleText, messages_get("NetSurf"), - REQ_BodyText, bodytext, + REQ_BodyText, message, REQ_GadgetText, messages_get("OK"), #ifdef __amigaos4__ - REQ_Image, (struct Image *)REQIMAGE_WARNING, + REQ_Image, (struct Image *)type, /* REQ_CharSet, 106, */ #endif TAG_DONE); if (req) { - IDoMethod(req, RM_OPENREQ, NULL, NULL, scrn); + ret = IDoMethod(req, RM_OPENREQ, NULL, NULL, scrn); DisposeObject(req); } + return ret; +} + +void ami_misc_fatal_error(const char *message) +{ + ami_misc_req(message, REQIMAGE_ERROR); +} + +void warn_user(const char *warning, const char *detail) +{ + char *utf8warning = ami_utf8_easy(messages_get(warning)); + STRPTR bodytext = ASPrintf("\33b%s\33n\n%s", + utf8warning != NULL ? utf8warning : warning, detail); + + ami_misc_req(bodytext, REQIMAGE_WARNING); + if(bodytext) FreeVec(bodytext); if(utf8warning) free(utf8warning); } |