Subversion Repositories Kolibri OS

Rev

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

Rev Author Line No. Line
1971 lev 1
//кнопки
2
#define BACK		300
2085 leency 3
#define FORWARD		301
4
#define REFRESH		302
1971 lev 5
#define HOME		303
2085 leency 6
#define NEWTAB		304
7
#define GOTOURL		305
1971 lev 8
#define SEARCHWEB	306
9
#define ID1		178
10
#define ID2		177
11
 
12
#define WINDOWS	0
13
#define DOS		1
14
#define KOI		2
15
#define UTF		3
16
 
17
 
18
dword get_URL_part(byte len) {
19
	char temp1[1000];
20
	copystr(#URL, #temp1);
21
	temp1[len] = 0x00;
22
	return #temp1;
23
}
24
 
2085 leency 25
inline fastcall CopyScreen(dword EBX, ECX, EDX)
26
{
27
  EAX = 36;
28
  $int  0x40;
29
}
1971 lev 30
 
31
inline byte chTag(dword text) {return strcmp(#tag,text);}
32
 
33
//У нас нет наклонных шрифтов, поэтому делаем костыль из
34
//палочек для мороженого и жевательной резинки:
35
//Снимаем область экрана и выводим её обратно полосками со смещением,
36
//что даёт перекос картинки
37
//При наличии фона и т.п. проявится вся костыльность решения :)
38
 
39
//часть данных уже получена в TBW - skin_width, Form.top, подключение memory
40
inline void Skew(dword x,y,w,h)
41
{
42
dword italic_buf;
43
int tile_height=2,//будем выводить двухпиксельными полосками
44
i, skin_width,
45
shift=-2;
46
 
2153 leency 47
  italic_buf = mem_Alloc(w*h*3);
48
 
1971 lev 49
  skin_width = GetSkinWidth();
50
 
2085 leency 51
  CopyScreen(italic_buf, w * 65536 + h, x + Form.left + 2 * 65536 + y + Form.top + skin_width);
52
 
53
 
1971 lev 54
  FOR (i=0;i*tile_height
2085 leency 55
    PutImage(w*3*tile_height*i+italic_buf,w,tile_height,x+shift-i+1,i*tile_height+y);
1971 lev 56
  }
2153 leency 57
  mem_Free(italic_buf);
1971 lev 58
}