summaryrefslogtreecommitdiff
path: root/draw.c
blob: 9d0a0ef93227b31a881aeb53bc327991d807b16a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "xenon.h"
#include "draw.h"
#include "damage.h"

unsigned char* pixels;
xenon_rect screen_rect;

void draw_point(GC gc, int x, int y)
{
	pixelrgba(x, y) = 0xffffffff;
	xenon_rect r = { x, y, 1, 1 };
	damage_add(&r);
}

void draw_rectangle(GC gc, xenon_rect* r)
{
	for(int i = r->x ; i < r->x + r->w ; i++)
	{
		pixelrgba(i, r->y) = 0xffffffff;
		pixelrgba(i, r->y + r->h -1) = 0xffffffff;
	}
	for(int j = r->y ; j < r->y + r->h ; j++)
	{
		pixelrgba(r->x, j) = 0xffffffff;
		pixelrgba(r->x + r->w -1, j) = 0xffffffff;
	}
	damage_add(r);
}

void draw_image(GC gc, XImage* image, xenon_rect* area, int x, int y)
{
	//image->funcs.get_pixel(image,i,j);
	damage_add(area);
}