1 9142d362 2008-06-30 rsc #include <u.h>
2 9142d362 2008-06-30 rsc #include <libc.h>
3 9142d362 2008-06-30 rsc #include <draw.h>
4 9142d362 2008-06-30 rsc #include <memdraw.h>
5 9142d362 2008-06-30 rsc #include "devdraw.h"
8 9142d362 2008-06-30 rsc parsewinsize(char *s, Rectangle *r, int *havemin)
11 9142d362 2008-06-30 rsc int i, j, k, l;
14 9142d362 2008-06-30 rsc *havemin = 0;
15 9142d362 2008-06-30 rsc *r = Rect(0,0,0,0);
16 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
18 9142d362 2008-06-30 rsc i = strtol(s, &s, 0);
19 9142d362 2008-06-30 rsc if(*s == 'x'){
21 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
23 9142d362 2008-06-30 rsc j = strtol(s, &s, 0);
24 9142d362 2008-06-30 rsc r->max.x = i;
25 9142d362 2008-06-30 rsc r->max.y = j;
28 9142d362 2008-06-30 rsc if(*s != '@')
32 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
34 9142d362 2008-06-30 rsc i = strtol(s, &s, 0);
35 9142d362 2008-06-30 rsc if(*s != ',' && *s != ' ')
38 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
40 9142d362 2008-06-30 rsc j = strtol(s, &s, 0);
43 9142d362 2008-06-30 rsc *r = rectaddpt(*r, Pt(i,j));
44 9142d362 2008-06-30 rsc *havemin = 1;
49 9142d362 2008-06-30 rsc if(c != ' ' && c != ',')
52 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
54 9142d362 2008-06-30 rsc j = strtol(s, &s, 0);
58 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
60 9142d362 2008-06-30 rsc k = strtol(s, &s, 0);
64 9142d362 2008-06-30 rsc if(!isdigit((uchar)*s))
66 9142d362 2008-06-30 rsc l = strtol(s, &s, 0);
69 9142d362 2008-06-30 rsc *r = Rect(i,j,k,l);
70 9142d362 2008-06-30 rsc *havemin = 1;
74 9142d362 2008-06-30 rsc werrstr("bad syntax in window size '%s'", os);