summaryrefslogtreecommitdiff
path: root/amiga/bitmap.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2011-07-02 19:38:54 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2011-07-02 19:38:54 +0000
commit910c6d314fc356a8b8628b3ff7b26c3ff289a4dd (patch)
treef3280e20d434ffb2e4fdae9c3aa8c637f13f7185 /amiga/bitmap.c
parentb415e6dabc4fb4d2699a28112a09828dfbf0528d (diff)
downloadnetsurf-910c6d314fc356a8b8628b3ff7b26c3ff289a4dd.tar.gz
netsurf-910c6d314fc356a8b8628b3ff7b26c3ff289a4dd.tar.bz2
Put a search icon where the old search favicon was
svn path=/trunk/netsurf/; revision=12558
Diffstat (limited to 'amiga/bitmap.c')
-rw-r--r--amiga/bitmap.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/amiga/bitmap.c b/amiga/bitmap.c
index 8807f7a23..d6895d2b3 100644
--- a/amiga/bitmap.c
+++ b/amiga/bitmap.c
@@ -306,6 +306,36 @@ Object *ami_datatype_object_from_bitmap(struct bitmap *bitmap)
return dto;
}
+/* Quick way to get an object on disk into a struct bitmap */
+struct bitmap *ami_bitmap_from_datatype(char *filename)
+{
+ Object *dto;
+ struct bitmap *bm;
+
+ if(dto = NewDTObject(filename,
+ DTA_GroupID, GID_PICTURE,
+ PDTA_DestMode, PMODE_V43,
+ TAG_DONE))
+ {
+ struct BitMapHeader *bmh;
+ struct RastPort rp;
+
+ if(GetDTAttrs(dto, PDTA_BitMapHeader, &bmh, TAG_DONE))
+ {
+ bm = bitmap_create(bmh->bmh_Width, bmh->bmh_Height, 0);
+
+ IDoMethod(dto, PDTM_READPIXELARRAY, bitmap_get_buffer(bm),
+ PBPAFMT_RGBA, bitmap_get_rowstride(bm), 0, 0,
+ bmh->bmh_Width, bmh->bmh_Height);
+ }
+ DisposeDTObject(dto);
+ }
+
+ return bm;
+}
+
+
+
struct BitMap *ami_getcachenativebm(struct bitmap *bitmap,int width,int height,struct BitMap *friendbm)
{
struct RenderInfo ri;