summaryrefslogtreecommitdiff
path: root/amiga
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2012-12-08 17:25:25 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2012-12-08 17:25:25 +0000
commitffac64fcea44e2840cef67ec2d5bdc6ef0b4b268 (patch)
tree1af382b6753273c9c014f41c8c909212994ffd39 /amiga
parent69647cc6a4f230fc0c1ce5481a30ac21c93db8d2 (diff)
downloadnetsurf-ffac64fcea44e2840cef67ec2d5bdc6ef0b4b268.tar.gz
netsurf-ffac64fcea44e2840cef67ec2d5bdc6ef0b4b268.tar.bz2
Move download overwrite warning requester to misc.c
Diffstat (limited to 'amiga')
-rw-r--r--amiga/download.c21
-rwxr-xr-xamiga/misc.c21
-rw-r--r--amiga/misc.h1
3 files changed, 25 insertions, 18 deletions
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