summaryrefslogtreecommitdiff
path: root/amiga/menu.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2009-05-19 07:23:56 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2009-05-19 07:23:56 +0000
commit6f120338edb03bbdf7224f1b4d5560caf61bb002 (patch)
tree90161e3be8f111dc224a0c1b0c98e61098abeee1 /amiga/menu.c
parentefe2151c9a1d811b7b28d2f8c169688e7615ea11 (diff)
downloadnetsurf-6f120338edb03bbdf7224f1b4d5560caf61bb002.tar.gz
netsurf-6f120338edb03bbdf7224f1b4d5560caf61bb002.tar.bz2
Add ability to copy SVGs to the clipboard and save in IFF DR2D format.
svn path=/trunk/netsurf/; revision=7523
Diffstat (limited to 'amiga/menu.c')
-rwxr-xr-xamiga/menu.c22
1 files changed, 19 insertions, 3 deletions
diff --git a/amiga/menu.c b/amiga/menu.c
index b25c861ea..b96321372 100755
--- a/amiga/menu.c
+++ b/amiga/menu.c
@@ -43,6 +43,7 @@
#include "amiga/search.h"
#include "amiga/history_local.h"
#include "amiga/bitmap.h"
+#include "amiga/iff_dr2d.h"
#include "amiga/clipboard.h"
#include "content/fetch.h"
@@ -526,9 +527,18 @@ void ami_menupick(ULONG code,struct gui_window_2 *gwin,struct MenuItem *item)
strlcpy(&fname,savereq->fr_Drawer,1024);
AddPart(fname,savereq->fr_File,1024);
ami_update_pointer(gwin->win,GUI_POINTER_WAIT);
- gwin->bw->current_content->bitmap->url = gwin->bw->current_content->url;
- gwin->bw->current_content->bitmap->title = gwin->bw->current_content->title;
- bitmap_save(gwin->bw->current_content->bitmap,fname,0);
+ if(gwin->bw->current_content->bitmap)
+ {
+ gwin->bw->current_content->bitmap->url = gwin->bw->current_content->url;
+ gwin->bw->current_content->bitmap->title = gwin->bw->current_content->title;
+ bitmap_save(gwin->bw->current_content->bitmap,fname,0);
+ }
+#ifdef WITH_NS_SVG
+ else if(gwin->bw->current_content->type == CONTENT_SVG)
+ {
+ ami_save_svg(gwin->bw->current_content,fname);
+ }
+#endif
SetComment(fname,gwin->bw->current_content->url);
ami_update_pointer(gwin->win,GUI_POINTER_DEFAULT);
}
@@ -587,6 +597,12 @@ void ami_menupick(ULONG code,struct gui_window_2 *gwin,struct MenuItem *item)
gwin->bw->current_content->bitmap->title = gwin->bw->current_content->title;
ami_easy_clipboard_bitmap(gwin->bw->current_content->bitmap);
}
+#ifdef WITH_NS_SVG
+ else if(gwin->bw->current_content->type == CONTENT_SVG)
+ {
+ ami_easy_clipboard_svg(gwin->bw->current_content);
+ }
+#endif
break;
case 1: // paste