Exemplo n.º 1
0
/* <numarray|numstring> rectstroke - */
static int
zrectstroke(i_ctx_t *i_ctx_p)
{
    os_ptr op = osp;
    gs_matrix mat;
    local_rects_t lr;
    int npop, code;

    if (read_matrix(imemory, op, &mat) >= 0) {
	/* Concatenate the matrix to the CTM just before stroking the path. */
	npop = rect_get(&lr, op - 1, imemory);
	if (npop < 0)
	    return npop;
	code = gs_rectstroke(igs, lr.pr, lr.count, &mat);
	npop++;
    } else {
	/* No matrix. */
	npop = rect_get(&lr, op, imemory);
	if (npop < 0)
	    return npop;
	code = gs_rectstroke(igs, lr.pr, lr.count, (gs_matrix *) 0);
    }
    rect_release(&lr, imemory);
    if (code < 0)
	return code;
    pop(npop);
    return 0;
}
Exemplo n.º 2
0
/*
 * initializes a new slider at point (x,y) with label lbl
 *
 * returns initialized slider
 */
slider slider_get(uint16_t x, uint16_t y, char *str, uint8_t *initLevel, uint8_t levelID)
{
	slider sldr;
	sldr.level=initLevel;
	sldr.levelID=levelID;
	sldr.bgnd=rect_get(x,y,100,228,GREEN_16BIT);
	sldr.label=text_get(x,y-15,str,sldr.bgnd.width,14,WHITE_16BIT,WHITE_16BIT,g_backgroundColor,0,0);
	sldr.track=rect_get(sldr.bgnd.x+45,sldr.bgnd.y+15,10,200, RED_16BIT);
	sldr.slide=rect_get(sldr.bgnd.x+10,0,80,30,BLACK_16BIT);
	sldr.bottomEdge=rect_get(x,y+sldr.bgnd.height,sldr.bgnd.width,12,g_backgroundColor);
	slider_updateSlidePos(&sldr);
	return sldr;
}
Exemplo n.º 3
0
/*
 * given x,y,x label, and y label will return new xyGrid
 */
xyGrid xyGrid_get(uint16_t x, uint16_t y, char* xStr, uint8_t* xinitLevel, uint8_t xlevelID,
				char* yStr, uint8_t* yinitLevel, uint8_t ylevelID)
{
	xyGrid grid;
	grid.xlevel=xinitLevel;
	grid.ylevel=yinitLevel;
	grid.xlevelID=xlevelID;
	grid.ylevelID=ylevelID;
	grid.bgnd=rect_get(x,y,230,228,BLACK_16BIT);
	grid.leftEdge=rect_get(x-9,y,8,237,g_backgroundColor);
	grid.rightEdge=rect_get(x+grid.bgnd.width+1,y,9,237,g_backgroundColor);
	grid.bottomEdge=rect_get(x,y+grid.bgnd.height+1,grid.bgnd.width,12,g_backgroundColor);
	grid.dot=circle_get(x,y+grid.bgnd.height,5,WHITE_16BIT);
	grid.xlabel=text_get(x, y-16, xStr, grid.bgnd.width/2,
			15, WHITE_16BIT,WHITE_16BIT, g_backgroundColor,0,0);
	grid.ylabel=text_get(x+grid.bgnd.width/2, y-16, yStr, grid.bgnd.width/2,
			15, WHITE_16BIT,WHITE_16BIT, g_backgroundColor,0,0);

	xyGrid_updateDotPos(&grid);
	return grid;
}
Exemplo n.º 4
0
/* <numarray|numstring> rectfill - */
static int
zrectfill(i_ctx_t *i_ctx_p)
{
    os_ptr op = osp;
    local_rects_t lr;
    int npop = rect_get(&lr, op, imemory);
    int code;

    if (npop < 0)
	return npop;
    code = gs_rectfill(igs, lr.pr, lr.count);
    rect_release(&lr, imemory);
    if (code < 0)
	return code;
    pop(npop);
    return 0;
}