tresize window to fit image (Erik Quanstrom) - plan9port - [fork] Plan 9 from u… | |
git clone git://src.adamsgaard.dk/plan9port | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 846ec3d21def4cea144e9fbb1e523a5ff31fa2a6 | |
parent dfbfbecfc6343360494b6d515ea8763f85c18f25 | |
Author: rsc <devnull@localhost> | |
Date: Wed, 15 Feb 2006 12:11:03 +0000 | |
resize window to fit image (Erik Quanstrom) | |
Diffstat: | |
M src/cmd/jpg/bmp.c | 8 +++----- | |
M src/cmd/jpg/gif.c | 8 ++++---- | |
M src/cmd/jpg/jpg.c | 7 +++---- | |
M src/cmd/jpg/png.c | 7 +++---- | |
4 files changed, 13 insertions(+), 17 deletions(-) | |
--- | |
diff --git a/src/cmd/jpg/bmp.c b/src/cmd/jpg/bmp.c | |
t@@ -35,11 +35,9 @@ eresized(int new) | |
} | |
if(image == nil) | |
return; | |
- r = insetrect(screen->clipr, Edge+Border); | |
- r.max.x = r.min.x+Dx(image->r); | |
- r.max.y = r.min.y+Dy(image->r); | |
- border(screen, r, -Border, nil, ZP); | |
- draw(screen, r, image, nil, image->r.min); | |
+ r = rectaddpt(image->r, subpt(screen->r.min, image->r.min)); | |
+ if(!new) | |
+ drawresizewindow(r); | |
flushimage(display, 1); | |
} | |
diff --git a/src/cmd/jpg/gif.c b/src/cmd/jpg/gif.c | |
t@@ -48,10 +48,10 @@ eresized(int new) | |
} | |
if(allims==nil || allims[which]==nil) | |
return; | |
- r = imager(); | |
- border(screen, r, -Border, nil, ZP); | |
- r.min.x += allims[which]->r.min.x - allims[0]->r.min.x; | |
- r.min.y += allims[which]->r.min.y - allims[0]->r.min.y; | |
+ r = rectaddpt(allims[0]->r, subpt(screen->r.min, allims[0]->r.min)); | |
+ if(!new) | |
+ drawresizewindow(r); | |
+ r = rectaddpt(r, subpt(allims[which]->r.min, allims[0]->r.min)); | |
drawop(screen, r, allims[which], allmasks[which], allims[which]->r.min… | |
flushimage(display, 1); | |
} | |
diff --git a/src/cmd/jpg/jpg.c b/src/cmd/jpg/jpg.c | |
t@@ -37,10 +37,9 @@ eresized(int new) | |
} | |
if(image == nil) | |
return; | |
- r = insetrect(screen->clipr, Edge+Border); | |
- r.max.x = r.min.x+Dx(image->r); | |
- r.max.y = r.min.y+Dy(image->r); | |
- border(screen, r, -Border, nil, ZP); | |
+ r = rectaddpt(image->clipr, subpt(screen->r.min, image->clipr.min)); | |
+ if(!new) | |
+ drawresizewindow(r); | |
draw(screen, r, image, nil, image->r.min); | |
flushimage(display, 1); | |
} | |
diff --git a/src/cmd/jpg/png.c b/src/cmd/jpg/png.c | |
t@@ -35,10 +35,9 @@ eresized(int new) | |
} | |
if(image == nil) | |
return; | |
- r = insetrect(screen->clipr, Edge+Border); | |
- r.max.x = r.min.x+Dx(image->r); | |
- r.max.y = r.min.y+Dy(image->r); | |
- border(screen, r, -Border, nil, ZP); | |
+ r = rectaddpt(image->r, subpt(screen->r.min, image->r.min)); | |
+ if(!new) | |
+ drawresizewindow(r); | |
draw(screen, r, image, nil, image->r.min); | |
flushimage(display, 1); | |
} |