2016-01-07 19:00:59 +03:00
|
|
|
void DrawToolbarButton(char image_id, int x)
|
|
|
|
{
|
|
|
|
DefineButton(x+1, 7, TOOLBAR_ICON_WIDTH-2, TOOLBAR_ICON_HEIGHT-2, 10+image_id + BT_HIDE, 0);
|
|
|
|
img_draw stdcall(skin.image, x, 6, TOOLBAR_ICON_WIDTH, TOOLBAR_ICON_HEIGHT, 0, image_id*TOOLBAR_ICON_HEIGHT);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void DrawScroller()
|
|
|
|
{
|
|
|
|
scroll.max_area = list.count;
|
|
|
|
scroll.cur_area = list.visible;
|
|
|
|
scroll.position = list.first;
|
|
|
|
scroll.all_redraw = 0;
|
|
|
|
scroll.start_x = list.x + list.w;
|
|
|
|
scroll.start_y = list.y;
|
|
|
|
scroll.size_y = list.h;
|
|
|
|
scroll.start_x = list.x + list.w;
|
|
|
|
scrollbar_v_draw(#scroll);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
dword MakePageWithHistory()
|
|
|
|
{
|
|
|
|
int i;
|
|
|
|
static dword history_page;
|
|
|
|
|
|
|
|
if (history_page) free(history_page);
|
|
|
|
history_page = malloc(history.items.data_size+256);
|
|
|
|
strcat(history_page, "<html><head><title>History</title></head><body>\n<h1>History</h1>\n");
|
|
|
|
strcat(history_page, "<h2>Visited pages</h2><br>\n");
|
|
|
|
for (i=0; i<history.items.count; i++)
|
|
|
|
{
|
|
|
|
strcat(history_page, "<a href='");
|
|
|
|
strcat(history_page, history.items.get(i));
|
|
|
|
strcat(history_page, "'>");
|
|
|
|
strcat(history_page, history.items.get(i));
|
|
|
|
strcat(history_page, "</a><br>\n");
|
|
|
|
}
|
|
|
|
return history_page;
|
|
|
|
}
|
|
|
|
|
2018-05-21 19:29:58 +03:00
|
|
|
char char_width[255];
|
|
|
|
|
|
|
|
void get_label_symbols_size()
|
|
|
|
{
|
|
|
|
int i;
|
|
|
|
kfont.changeSIZE();
|
|
|
|
for (i=0; i<256; i++) char_width[i] = kfont.symbol_size(i);
|
|
|
|
}
|
|
|
|
|
|
|
|
int get_label_len(dword _text)
|
|
|
|
{
|
|
|
|
int len=0;
|
|
|
|
byte ch;
|
|
|
|
loop () {
|
|
|
|
ch = ESBYTE[_text];
|
|
|
|
if (!ch) return len;
|
|
|
|
len += char_width[ch];
|
|
|
|
_text++;
|
|
|
|
}
|
|
|
|
}
|
2016-01-07 19:00:59 +03:00
|
|
|
|
|
|
|
enum {
|
|
|
|
STEP_1_DOWNLOAD_PAGE = 0,
|
2016-01-11 01:33:10 +03:00
|
|
|
STEP_2_COUNT_PAGE_HEIGHT = 35,
|
2016-01-07 19:00:59 +03:00
|
|
|
STEP_3_DRAW_PAGE_INTO_BUFFER = 60,
|
2016-01-11 01:33:10 +03:00
|
|
|
STEP_4_SMOOTH_FONT = 88,
|
2016-01-07 19:00:59 +03:00
|
|
|
STEP_5_STOP = 100,
|
|
|
|
};
|
|
|
|
|
|
|
|
void DrawProgress(int percent)
|
|
|
|
{
|
|
|
|
int progress_width;
|
|
|
|
if (percent<100) {
|
|
|
|
progress_width = address_box.width+5*percent/100;
|
|
|
|
DrawBar(address_box.left-3, address_box.top+16, progress_width, 2, 0x72B7EA);
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
progress_width = address_box.width+5;
|
|
|
|
DrawBar(address_box.left-3, address_box.top+16, progress_width, 2, 0xFFFfff);
|
|
|
|
}
|
|
|
|
}
|