diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2011-07-02 19:38:54 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2011-07-02 19:38:54 +0000 |
commit | 910c6d314fc356a8b8628b3ff7b26c3ff289a4dd (patch) | |
tree | f3280e20d434ffb2e4fdae9c3aa8c637f13f7185 /amiga/bitmap.c | |
parent | b415e6dabc4fb4d2699a28112a09828dfbf0528d (diff) | |
download | netsurf-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.c | 30 |
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; |