diff options
| author | Fumitoshi UKAI <ukai@debian.or.jp> | 2003-07-13 16:19:09 +0000 | 
|---|---|---|
| committer | Fumitoshi UKAI <ukai@debian.or.jp> | 2003-07-13 16:19:09 +0000 | 
| commit | c5b12782d9cc7af07f9571be9a7f13d1014b5912 (patch) | |
| tree | 603b38e5bfa2c636e66337380049a402eb912648 | |
| parent | [w3m-dev 03937] <center> in <table> (diff) | |
| download | w3m-c5b12782d9cc7af07f9571be9a7f13d1014b5912.tar.gz w3m-c5b12782d9cc7af07f9571be9a7f13d1014b5912.zip | |
[w3m-dev 03938] clear region margin
* w3mimgdisplay.c (clearMargin): added
	(GetOption): add -margin
	(ClearImage): clear margin
* w3mi,g/w3mimg.h (w3mimg_op): clear_margin
* w3mimg/fb/fb.c (fb_clear): x,y must be >= 0
* w3mimg/x11/x11_w3mimg.c (x11_clear): x,y must be >= 0
From: Hiroyuki Ito <hito@crl.go.jp>
Diffstat (limited to '')
| -rw-r--r-- | ChangeLog | 12 | ||||
| -rw-r--r-- | w3mimg/fb/fb.c | 8 | ||||
| -rw-r--r-- | w3mimg/w3mimg.h | 3 | ||||
| -rw-r--r-- | w3mimg/x11/x11_w3mimg.c | 8 | ||||
| -rw-r--r-- | w3mimgdisplay.c | 19 | 
5 files changed, 43 insertions, 7 deletions
| @@ -1,3 +1,13 @@ +2003-07-14  Hiroyuki Ito <hito@crl.go.jp> + +	* [w3m-dev 03938] clear region margin +	* w3mimgdisplay.c (clearMargin): added +		(GetOption): add -margin +		(ClearImage): clear margin +	* w3mi,g/w3mimg.h (w3mimg_op): clear_margin +	* w3mimg/fb/fb.c (fb_clear): x,y must be >= 0 +	* w3mimg/x11/x11_w3mimg.c (x11_clear): x,y must be >= 0 +  2003-07-14  Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>  	* [w3m-dev 03937] <center> in <table> @@ -7923,4 +7933,4 @@ a	* [w3m-dev 03276] compile error on EWS4800  	* release-0-2-1  	* import w3m-0.2.1 -$Id: ChangeLog,v 1.851 2003/07/13 16:14:47 ukai Exp $ +$Id: ChangeLog,v 1.852 2003/07/13 16:19:09 ukai Exp $ diff --git a/w3mimg/fb/fb.c b/w3mimg/fb/fb.c index 77c2fba..cd11128 100644 --- a/w3mimg/fb/fb.c +++ b/w3mimg/fb/fb.c @@ -1,4 +1,4 @@ -/* $Id: fb.c,v 1.15 2003/07/09 15:07:11 ukai Exp $ */ +/* $Id: fb.c,v 1.16 2003/07/13 16:19:10 ukai Exp $ */  /**************************************************************************                  fb.c 0.3 Copyright (C) 2002, hito   **************************************************************************/ @@ -357,6 +357,12 @@ fb_clear(int x, int y, int w, int h, int r, int g, int b)      if (is_open != TRUE || x > fb_width() || y > fb_height())  	return 1; + +    if (x < 0) +	x = 0; +    if (y < 0) +	y = 0; +      if (x + w > fb_width())  	w = fb_width() - x;      if (y + h > fb_height()) diff --git a/w3mimg/w3mimg.h b/w3mimg/w3mimg.h index 03158db..3807ca5 100644 --- a/w3mimg/w3mimg.h +++ b/w3mimg/w3mimg.h @@ -1,4 +1,4 @@ -/* $Id: w3mimg.h,v 1.7 2003/07/07 15:48:17 ukai Exp $ */ +/* $Id: w3mimg.h,v 1.8 2003/07/13 16:19:10 ukai Exp $ */  #include "config.h"  #ifdef USE_W3MIMG_FB @@ -16,6 +16,7 @@ typedef struct _w3mimg_op {      void *priv;			/* driver specific data */      int width, height;		/* window width, height */      int offset_x, offset_y;	/* offset */ +    int clear_margin;      int max_anim;      int (*init) (struct _w3mimg_op * self); diff --git a/w3mimg/x11/x11_w3mimg.c b/w3mimg/x11/x11_w3mimg.c index ba88852..8c9cef2 100644 --- a/w3mimg/x11/x11_w3mimg.c +++ b/w3mimg/x11/x11_w3mimg.c @@ -1,4 +1,4 @@ -/* $Id: x11_w3mimg.c,v 1.24 2003/07/08 17:32:13 ukai Exp $ */ +/* $Id: x11_w3mimg.c,v 1.25 2003/07/13 16:19:10 ukai Exp $ */  #include <stdio.h>  #include <stdlib.h>  #include <ctype.h> @@ -131,6 +131,12 @@ x11_clear(w3mimg_op * self, int x, int y, int w, int h)      xi = (struct x11_info *)self->priv;      if (xi == NULL)  	return 0; + +    if (x < 0) +	x = 0; +    if (y < 0) +	y = 0; +      XClearArea(xi->display, xi->window, x, y, w, h, False);      return 1;  } diff --git a/w3mimgdisplay.c b/w3mimgdisplay.c index 8fb733d..6652337 100644 --- a/w3mimgdisplay.c +++ b/w3mimgdisplay.c @@ -1,4 +1,4 @@ -/* $Id: w3mimgdisplay.c,v 1.16 2003/07/08 17:29:56 ukai Exp $ */ +/* $Id: w3mimgdisplay.c,v 1.17 2003/07/13 16:19:10 ukai Exp $ */  #include <stdio.h>  #include <stdlib.h>  #include <ctype.h> @@ -17,7 +17,7 @@ static char *defined_size = NULL;  #define MAX_IMAGE 1000  static W3MImage *imageBuf = NULL; -static int maxImage = 0, maxAnim = 100; +static int maxImage = 0, maxAnim = 100, clearMargin = 0;  static void GetOption(int argc, char **argv);  static void DrawImage(char *buf, int redraw); @@ -58,7 +58,9 @@ main(int argc, char **argv)  	w_op->offset_x = offset_x;      if (defined_y)  	w_op->offset_y = offset_y; +      w_op->max_anim = maxAnim; +    w_op->clear_margin = clearMargin;      if (defined_test) {  	printf("%d %d\n", w_op->width - w_op->offset_x, @@ -192,6 +194,13 @@ GetOption(int argc, char **argv)  		exit(1);  	    maxAnim = atoi(argv[i]);  	} +	else if (!strcmp("-margin", argv[i])) { +	    if (++i >= argc) +		exit(1); +	    clearMargin = atoi(argv[i]); +	    if (clearMargin < 0) +		clearMargin = 0; +	}  	else if (!strcmp("-size", argv[i])) {  	    if (++i >= argc)  		exit(1); @@ -324,5 +333,9 @@ ClearImage(char *buf)      for (; isdigit(*p); p++)  	h = 10 * h + (*p - '0'); -    w_op->clear(w_op, x + offset_x, y + offset_y, w, h); +    w_op->clear(w_op, +		x + offset_x - w_op->clear_margin, +		y + offset_y - w_op->clear_margin, +		w + w_op->clear_margin * 2, +		h + w_op->clear_margin * 2);  } | 
