Subversion Repositories Kolibri OS

Rev

Rev 4486 | Rev 5519 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4486 leency 1
 
4475 leency 2
3
 
4
	int bufx, bufy, bufw, bufh;
4666 leency 5
4475 leency 6
 
7
	void Show();
4666 leency 8
	void Fill();
4475 leency 9
	void Skew();
10
	void DrawBar();
11
	void PutPixel();
4666 leency 12
	void AlignCenter();
4475 leency 13
	void AlignRight();
14
};
15
16
 
4666 leency 17
{
4475 leency 18
	bufx = i_bufx;
19
	bufy = i_bufy;
20
	bufw = i_bufw;
21
	bufh = i_bufh;
22
	free(buf_data);
23
	buf_data = malloc(bufw * bufh * 4 + 8); //+1 for good luck
4666 leency 24
	ESDWORD[buf_data] = bufw;
4475 leency 25
	ESDWORD[buf_data+4] = bufh;
4666 leency 26
}
4475 leency 27
28
 
4666 leency 29
{
30
	PutPaletteImage(buf_data+8, bufw, bufh, bufx, bufy, 32,0);
31
}
32
33
 
4475 leency 34
{
35
	int i;
36
	int max_i = bufw * bufh * 4 + buf_data + 8;
4666 leency 37
	for (i=buf_data+8; i
4486 leency 38
}
4475 leency 39
40
 
41
{
42
	int i, j;
43
	for (j=0; j
44
	{
45
		for (i = y+j*bufw+x*4+8+buf_data; i
4486 leency 46
	}
4475 leency 47
}
48
49
 
4666 leency 50
{
51
	int pos = y*bufw+x*4+8+buf_data;
52
	ESDWORD[pos] = color;
53
}
54
55
 
4475 leency 56
void DrawBufer::Skew(dword x, y, w, h)
57
{
58
	int i, j;
59
	for (j=0; j<=3; j++)
60
	{
61
		for (i = y+j*bufw+x+w+h*4; i>y+j*bufw+x+h-12*4 ; i-=4)
62
								ESDWORD[buf_data+i+8] = ESDWORD[-shift[j]+buf_data+i+8];
63
	}
64
}
65
66
 
67
{
68
	int i, j, l;
69
	int content_left = w - content_width / 2;
70
	for (j=0; j
71
	{
72
		for (i=j*w+w-x*4, l=j*w+content_width+x*4; (i>=j*w+content_left*4) && (l>=j*w*4); i-=4, l-=4)
73
		{
74
			ESDWORD[buf_data+8+i] >< ESDWORD[buf_data+8+l];
75
		}
76
	}
77
}
78
79
 
80
{
81
	int i, j, l;
82
	int content_left = w - content_width / 2;
83
	for (j=0; j
84
	{
85
		for (i=j*w+content_width+content_left*4, l=j*w+content_width+x*4; (i>=j*w+content_left*4) && (l>=j*w*4); i-=4, l-=4)
86
		{
87
			ESDWORD[buf_data+8+i] >< ESDWORD[buf_data+8+l];
88
		}
89
	}
90
}
91