From ffac64fcea44e2840cef67ec2d5bdc6ef0b4b268 Mon Sep 17 00:00:00 2001 From: Chris Young Date: Sat, 8 Dec 2012 17:25:25 +0000 Subject: Move download overwrite warning requester to misc.c --- amiga/download.c | 21 +++------------------ amiga/misc.c | 21 +++++++++++++++++++++ amiga/misc.h | 1 + 3 files changed, 25 insertions(+), 18 deletions(-) (limited to 'amiga') diff --git a/amiga/download.c b/amiga/download.c index d5071d31f..434d12ee8 100644 --- a/amiga/download.c +++ b/amiga/download.c @@ -37,9 +37,10 @@ #include "desktop/options.h" #include "amiga/bitmap.h" #include "amiga/iff_dr2d.h" +#include "amiga/file.h" +#include "amiga/misc.h" #include "amiga/theme.h" #include "amiga/utf8.h" -#include "amiga/file.h" #include "desktop/download.h" #include "desktop/selection.h" @@ -415,24 +416,8 @@ BOOL ami_download_check_overwrite(const char *file, struct Window *win, ULONG si overwritetext = ASPrintf(messages_get("OverwriteFile")); } - char *utf8text = ami_utf8_easy(overwritetext); + res = ami_warn_user_multi(overwritetext, "DontReplace", "Replace", win); FreeVec(overwritetext); - - char *utf8gadget1 = ami_utf8_easy(messages_get("DontReplace")); - char *utf8gadget2 = ami_utf8_easy(messages_get("Replace")); - char *utf8gadgets = ASPrintf("%s|%s", utf8gadget1, utf8gadget2); - free(utf8gadget1); - free(utf8gadget2); - - res = TimedDosRequesterTags(TDR_ImageType, TDRIMAGE_WARNING, - TDR_TitleString, messages_get("NetSurf"), - TDR_FormatString, utf8text, - TDR_GadgetString, utf8gadgets, - TDR_Window, win, - TAG_DONE); - - if(utf8text) free(utf8text); - if(utf8gadgets) FreeVec(utf8gadgets); } else return TRUE; diff --git a/amiga/misc.c b/amiga/misc.c index 8e8fa76d0..b5da1787f 100755 --- a/amiga/misc.c +++ b/amiga/misc.c @@ -71,6 +71,27 @@ void warn_user(const char *warning, const char *detail) if(utf8warning) free(utf8warning); } +int ami_warn_user_multi(const char *body, const char *opt1, const char *opt2, struct Window *win) +{ + int res = 0; + char *utf8text = ami_utf8_easy(body); + char *utf8gadget1 = ami_utf8_easy(messages_get(opt1)); + char *utf8gadget2 = ami_utf8_easy(messages_get(opt2)); + char *utf8gadgets = ASPrintf("%s|%s", utf8gadget1, utf8gadget2); + free(utf8gadget1); + free(utf8gadget2); + + res = TimedDosRequesterTags(TDR_ImageType, TDRIMAGE_WARNING, + TDR_TitleString, messages_get("NetSurf"), + TDR_FormatString, utf8text, + TDR_GadgetString, utf8gadgets, + TDR_Window, win, + TAG_DONE); + + if(utf8text) free(utf8text); + if(utf8gadgets) FreeVec(utf8gadgets); +} + void die(const char *error) { TimedDosRequesterTags(TDR_ImageType,TDRIMAGE_ERROR, diff --git a/amiga/misc.h b/amiga/misc.h index c863c7966..e76d6a3b4 100644 --- a/amiga/misc.h +++ b/amiga/misc.h @@ -19,4 +19,5 @@ #ifndef AMIGA_MISC_H #define AMIGA_MISC_H char *translate_escape_chars(const char *s); +int ami_warn_user_multi(const char *body, const char *opt1, const char *opt2, struct Window *win); #endif -- cgit v1.2.3