diff options
| author | rsc <devnull@localhost> | 2006-06-25 18:59:29 +0000 |
|---|---|---|
| committer | rsc <devnull@localhost> | 2006-06-25 18:59:29 +0000 |
| commit | 74dc60da74c62e07f0d63179da9724d705794a6d (patch) | |
| tree | bfb0bcf94115ebc5b142c3ad4d80157288ee8368 /src/libdraw/ml-unload.c | |
| parent | 324891a5579d6f504201a6107369c64dab245a98 (diff) | |
| download | plan9port-74dc60da74c62e07f0d63179da9724d705794a6d.tar.gz plan9port-74dc60da74c62e07f0d63179da9724d705794a6d.zip | |
bye
Diffstat (limited to 'src/libdraw/ml-unload.c')
| -rw-r--r-- | src/libdraw/ml-unload.c | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/libdraw/ml-unload.c b/src/libdraw/ml-unload.c deleted file mode 100644 index b9534117..00000000 --- a/src/libdraw/ml-unload.c +++ /dev/null @@ -1,52 +0,0 @@ -#include <u.h> -#include <libc.h> -#include <draw.h> -#include <memdraw.h> -#include <memlayer.h> - -int -memunload(Memimage *src, Rectangle r, uchar *data, int n) -{ - Memimage *tmp; - Memlayer *dl; - Rectangle lr; - int dx; - - Top: - dl = src->layer; - if(dl == nil) - return unloadmemimage(src, r, data, n); - - /* - * Convert to screen coordinates. - */ - lr = r; - r.min.x += dl->delta.x; - r.min.y += dl->delta.y; - r.max.x += dl->delta.x; - r.max.y += dl->delta.y; - dx = dl->delta.x&(7/src->depth); - if(dl->clear && dx==0){ - src = dl->screen->image; - goto Top; - } - - /* - * src is an obscured layer or data is unaligned - */ - if(dl->save && dx==0){ - if(dl->refreshfn != 0) - return -1; /* can't unload window if it's not Refbackup */ - if(n > 0) - memlhide(src, r); - n = unloadmemimage(dl->save, lr, data, n); - return n; - } - tmp = allocmemimage(lr, src->chan); - if(tmp == nil) - return -1; - memdraw(tmp, lr, src, lr.min, nil, lr.min, S); - n = unloadmemimage(tmp, lr, data, n); - freememimage(tmp); - return n; -} |
