Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 2084 → Rev 2085

/programs/network/htmlv/browser/HTMLv.c--
16,7 → 16,7
#include "../lib/dll.h--"
 
//ïåðåìåííûå
byte URL[4096]="/sys/html/index.htm",
byte URL[4096]="/sys/index.htm",
editURL[4096],
page_links[12000],
header[512];
75,7 → 75,9
}
}
//IF (kolichestvo<max_kolvo_strok) break;
if (m.x>=WB1.width-14) && (m.x<=WB1.width+6) && (kolichestvo>max_kolvo_strok) while (m.lkm)
if (m.x>=WB1.width-14) && (m.x<=WB1.width+6)
&& (m.y>WB1.top+16) && (m.y<WB1.top+WB1.height-16)
&& (kolichestvo>max_kolvo_strok) while (m.lkm)
{
IF (razm_scrl/2+WB1.top>m.y) || (m.y<0) || (m.y>4000) m.y=razm_scrl/2+WB1.top; //åñëè êóðñîð íàä îêíîì
btn=za_kadrom; //ñîõðàíÿåì ñòàðîå êîëè÷åñòâî
/programs/network/htmlv/browser/History.txt
1,3 → 1,16
20.08.11 -- v0.67 -- 11.1 Êá
- áîëåå àäåêâàòíàÿ ïðîêðóòêà èçîáðàæåíèé;
- êîððåêòíàÿ îáðàáîòêà òàáîâ â òåêñòå è ñ òåãîì <pre> (ñïàñèáî Nazarus è Jaeger);
- óëó÷øåíà îòçûâ÷èâîñòü ïðîãðàììû ïðè ïðîêðóòêå áîëüøèõ ñòðàíèö (ôèêñ èçíà÷àëüíî
áûë íàïèñàí Gluk'îì äëÿ èãðû Êîñèëêà ïî ìîåé ïðîñüáà, ñþäà ïåðåíåñåí ìíîé);
- íåáîëüøèå èñïðàâëåíèÿ â ðåàêöèè ïîëçóíêà ïðîêðóòêè;
- èñïðàâëåíî çàëåçàíèå òåêñòà â íàêëîííîì øðèôòå íà ëåâûé îáîäîê îêíà;
- êíîïêà "Íîâàÿ âêëàäêà" è êîìáèíàöèè Ctrl+N, Ctrl+T áàíàëüíî ñîçäàþò íîâîå îêíî;
- ïðàâèëüíîå ðàñïîçíàíèå óêðàèíñêîé áóêâû ´;
- ïîääåðæêà êîäèðîâêè "UTF8" äëÿ óíèâåðñàëüíîñòè (èäåÿ ôè÷è Joaquin).
 
 
 
20.06.11 -- v0.63 -- 11.32 Êá
lev
- íàêëîííûé øðèôò
/programs/network/htmlv/browser/TWB.h--
1,14 → 1,12
//http://jsbeautifier.org/
//Web-component, Leency & Veliant 2007-2009
//lev
 
 
//èäåÿ - ëåâûå ôàéëû îòêðûâàòü ñîîòâåòñòâóþùèìè ïðîãàìè
 
// wintodos(buf); -> â ïàðñå õòìë êàê è âñå êîäèðîâêè
 
//ol - öèôåðêè
 
//óñêîðåíà çàãðóçêà ñòðàíèöû, ñîäåðæàùåé èçîáðàæåíèÿ
//óìåíüøåíî êîëè÷åñòâî ïåðåðèñîâîê çàãîëîâêà îêíà ïðè çàãðóçêå ñòðàíèöû
 
dword j,
buf,
19,11 → 17,11
char download_path[]="/rd/1/.download";
//char search_path[]="http://nova.rambler.ru/search?words=";
char search_path[]="http://nigma.ru/index.php?s=";
char version[]=" HTML Viewer v0.63";
char version[]=" Text-based Browser 23.67";
 
 
struct TWebBrowser {
dword left,
int left,
top,
width,
height;
64,9 → 62,9
case BACK:
BrowserHistory.GoBack();
return;
/*case FORWARD:
WriteDebug(#UrlHistory);
return;*/
case FORWARD:
//RunProgram("@notify", "Forward button is not realized yet");
return;
case 054: //F5
IF(edit1.flags == 66) break;
case REFRESH:
73,6 → 71,12
copystr(#URL, #editURL);
Draw_Window();
return;
case 014: //Ctrl+N íîâîå îêíî
case 020: //Ctrl+T íîâàÿ âêëàäêà
case NEWTAB:
MoveSize(190,80,OLD,OLD);
RunProgram(#program_path, #URL);
return;
case HOME:
copystr("/sys/index.htm", #editURL);
case GOTOURL:
235,7 → 239,8
text_color_index = 0,
link_color;
int stroka,
stolbec;
stolbec,
tab_len;
byte line[330],
tag[100],
tagparam[10000],
271,11 → 276,18
goto NEXT_MARK;
}
CASE '\9':
CASE 0x0d:
//IF(pre_text == 1) {copystr(" ", #line + strlen(#line)); break;} ELSE
if (pre_text == 1) //èíà÷å èä¸ì íà 0x0d
{
tab_len=strlen(#line)/8;
tab_len=tab_len*8;
tab_len=8+tab_len-strlen(#line);
for (i=0; i<tab_len; i++;) copystr(" ", #line + strlen(#line));
break;
}
case 0x0d:
bukva = ' ';
goto DEFAULT_MARK;
CASE '<':
case '<':
bword++; //ïðîìîòàåì ñèìâîë <
IF(ESBYTE[bword] == '!') //ôèëüòðàöèÿ âíóòðè <!-- -->, äåðçêî
{
325,37 → 337,6
bukva=Hex2Symb(#temp);
IF (bukva) goto DEFAULT_MARK;
break;
/*case '\\': //ïîääåðæêà RTF, http://dev.rembish.ru/rtf.phps
IF(strcmp(#URL + strlen(#URL) - 4, ".rtf")<>0) goto DEFAULT_MARK;
rtf_text='';
//
bword++;
j = 0;
 
IF (ESBYTE[bword]=='\'')
{
bword++;
bukva=ESBYTE[bword];
copystr(#bukva, #rtf_text);
bword++;
bukva=ESBYTE[bword];
copystr(#bukva, #rtf_text + strlen(#rtf_text));
 
bukva=Hex2Symb(#rtf_text);
IF (bukva) goto DEFAULT_MARK;
}
 
WHILE ((ESBYTE[bword] <>' ') && (j < 25) && (ESBYTE[bword] <>'\\') && (ESBYTE[bword] <>0x0d)) {
bukva = ESBYTE[bword];
copystr(#bukva, #rtf_text + strlen(#rtf_text));
bword++;
j++;
}
IF (strcmp(#rtf_text,"par")==0) goto NEXT_MARK;
break;*/
case '&':
IF(ignor_text) break;
bword++;
457,7 → 438,7
 
 
char oldtag[100];
void TWebBrowser::WhatTextStyle(word left1, top1, width1) {
void TWebBrowser::WhatTextStyle(int left1, top1, width1) {
dword hr_color;
 
dword image=0;
636,15 → 617,30
 
if (image)
{
IF (width1<w) w=width1;
IF (WB1.height<h) h=WB1.height;
IF (top1<WB1.top) {h=h-top1+WB1.top; top1=WB1.top;}
TextGoDown2(left1+w,top1,width1-w,h);
IF (stroka - 2 < max_kolvo_strok) img_draw stdcall (image,left1-5,top1+10,w,-stroka * 10 + WB1.height -15 + h,0,0);
stroka+=h/10;
if (top1+h<WB1.top) || (top1>WB1.top+WB1.height-10) //åñëè ÂѨ èçîáðàæåíèå óøëî ÂÅÐÕ èëè ÂÍÈÇ
return;
if (top1<WB1.top) //åñëè ÷àñòü èçîáðàæåíèÿ ñâåðõó
{
h=h-WB1.top+top1;
top1=WB1.top-5;
}
//else WriteDebug(#options);
if (top1>WB1.top+WB1.height-h-10) //åñëè ÷àñòü èçîáðàæåíèÿ ñíèçó IF (stroka - 2 < max_kolvo_strok)
{
//WriteDebug(IntToStr(top1));
//WriteDebug(IntToStr(WB1.top));
//WriteDebug(IntToStr(h));
h=WB1.top+WB1.height-top1-10;
}
 
img_draw stdcall (image,left1-5,top1+10,w, h,0,0);
DrawBar(left1+w - 5, top1 + 10, width1-w + 5, h, 0xFFFFFF);
}
}
 
if (!chTag("meta")) {
META:
if (!strcmp(#parametr, "charset=")) || (!strcmp(#parametr, "content="))
651,7 → 647,7
{
copystr(#options[find_symbol(#options, '=')],#options); //ïîèñê â content=
 
IF (!strcmp(#options,"utf-8"))
IF (!strcmp(#options,"utf-8")) || (!strcmp(#options,"utf8"))
{
ReadHtml(DONT_LOAD);
utf8rutodos(buf);
680,12 → 676,4
ELSE stolbec = 0;
IF(li_text == 1) stolbec = li_tab * 5;
IF(stroka >= 0) && (stroka - 2 < max_kolvo_strok) DrawBar(left1 - 5, top1 + 10, width1 + 5, 10, 0xFFFFFF);
}
 
void TextGoDown2(int left1,top1,width1,height1)//ASPER: Íàäî çàìåíèòü ýòó ôóíêöèþ áîëåå ïðàâèëüíîé.
{
stroka+=height1/10;
IF (blq_text==1) stolbec=8; ELSE stolbec=0;
IF (li_text==1) stolbec=5;
IF (stroka>=0) && (stroka-2<max_kolvo_strok) DrawBar(left1 - 5, top1 + 10, width1 + 5, height1, 0xFFFFFF);
}
/programs/network/htmlv/browser/include/some_code.h--
3,6 → 3,7
#define FORWARD 301
#define REFRESH 302
#define HOME 303
#define NEWTAB 304
#define GOTOURL 305
#define SEARCHWEB 306
#define ID1 178
26,6 → 27,11
return #temp1;
}
 
inline fastcall CopyScreen(dword EBX, ECX, EDX)
{
EAX = 36;
$int 0x40;
}
 
inline byte chTag(dword text) {return strcmp(#tag,text);}
 
43,20 → 49,14
i, skin_width,
shift=-2;
 
italic_buf = malloc(w*h*3);
skin_width = GetSkinWidth();
Form.GetInfo(SelfInfo);
italic_buf = malloc(w*h*3);
//ebx = 㪠§ â¥«ì ­  ¯à¥¤¢ à¨â¥«ì­® ¢ë¤¥«¥­­ãî ®¡« áâì ¯ ¬ïâ¨, ªã¤  ¡ã¤¥â ¯®¬¥é¥­® ¨§®¡à ¦¥­¨¥ ¢ ä®à¬ â¥ BBGGRRBBGGRR...
EBX = italic_buf;
//ecx = [à §¬¥à ¯® ®á¨ x]*65536 + [à §¬¥à ¯® ®á¨ y]
ECX = w * 65536 + h;
//edx = [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
EDX = x + Form.left * 65536 + y + Form.top + skin_width;
EAX = 36;
$int 0x40;
 
CopyScreen(italic_buf, w * 65536 + h, x + Form.left + 2 * 65536 + y + Form.top + skin_width);
 
FOR (i=0;i*tile_height<h;i++){
PutImage(w*3*tile_height*i+italic_buf,w,tile_height,x+shift-i,i*tile_height+y);
PutImage(w*3*tile_height*i+italic_buf,w,tile_height,x+shift-i+1,i*tile_height+y);
}
free(italic_buf);
}
/programs/network/htmlv/lib/kolibri.h--
10,8 → 10,9
dword alloc_mem = #0x00100000;
dword x86esp_reg = #0x00100000;
dword I_Param = #param;
dword I_Icon = 0x0;
char param[256]="";
dword I_Path = #program_path;
char param[4096]="";
char program_path[4096]="";
 
//Events
#define evMouse 6
121,9 → 122,21
$int 0x40
}
 
inline fastcall word GetKey(){
EAX = 2; // just read this key from buffer
 
inline fastcall word GetKey(){ //Gluk fix
$push edx
@getkey:
$mov eax,2
$int 0x40
$cmp eax,1
$jne getkeyi
$mov ah,dh
$jmp getkeyii //jz?
@getkeyi:
$mov dh,ah
$jmp getkey
@getkeyii:
$pop edx
EAX = EAX >> 8;
}
 
361,6 → 374,7
IF (BL==186) ESBYTE[ESI] = 243; //e
IF (BL==168) ESBYTE[ESI] = 240; //ð
IF (BL==184) ESBYTE[ESI] = 'e'; //e
IF (BL==180) ESBYTE[ESI] = 254; //ã
IF ((BL==147) || (BL==148) || (BL==171) || (BL==187)) ESBYTE[ESI] = 34;
IF ((BL==150) || (BL==151)) ESBYTE[ESI] = 45;
}