diff --git a/programs/cmm/browser/DrawBuf.h b/programs/cmm/browser/DrawBuf.h
index 172e4b749..9c8aaf08f 100644
--- a/programs/cmm/browser/DrawBuf.h
+++ b/programs/cmm/browser/DrawBuf.h
@@ -32,15 +32,47 @@ void DrawBufSkew(dword x, y, w, h)
}
}
+void DrawBufAlignRight(dword x,y,w,h)
+{
+ int i, j, l;
+ int content_width = stolbec * 6;
+ int content_left = w - content_width / 2;
+ for (j=0; j=j*w+content_left*4) && (l>=j*w*4); i-=4, l-=4)
+ {
+ ESDWORD[drawbuf+8+i] >< ESDWORD[drawbuf+8+l];
+ }
+ }
+}
+
+
+void DrawBufAlignCenter(dword x,y,w,h)
+{
+ int i, j, l;
+ int content_width = stolbec * 6;
+ int content_left = w - content_width / 2;
+ for (j=0; j=j*w+content_left*4) && (l>=j*w*4); i-=4, l-=4)
+ {
+ ESDWORD[drawbuf+8+i] >< ESDWORD[drawbuf+8+l];
+ }
+ }
+}
+
+
void TextGoDown(int left1, top1, width1)
{
if (!stroka) DrawBar(WB1.left, WB1.top, WB1.width, 5, bg_color); //çà êðà øèâà åì ôîà Ãà ä ïåðâîé ñòðîêîé
- stroka++;
- if (blq_text) stolbec = 8; else stolbec = 0;
- if (li_text) stolbec = li_tab * 5;
if (top1>=WB1.top) && ( top1 < WB1.height+WB1.top-10) && (!anchor)
{
+ if (text_align == ALIGN_CENTER) DrawBufAlignCenter(left1,top1,WB1.width,WB1.line_h);
+ if (text_align == ALIGN_RIGHT) DrawBufAlignRight(left1,top1,WB1.width,WB1.line_h);
PutPaletteImage(drawbuf+8, WB1.width, WB1.line_h, left1-5, top1, 32,0);
DrawBufFill();
}
+ stroka++;
+ if (blq_text) stolbec = 8; else stolbec = 0;
+ if (li_text) stolbec = li_tab * 5;
}
\ No newline at end of file
diff --git a/programs/cmm/browser/TWB.h b/programs/cmm/browser/TWB.h
index 24a118026..b697e2ac0 100644
--- a/programs/cmm/browser/TWB.h
+++ b/programs/cmm/browser/TWB.h
@@ -25,7 +25,9 @@ struct TWebBrowser {
TWebBrowser WB1;
byte rez, b_text, i_text, u_text, s_text, pre_text, blq_text, li_text,
- link, ignor_text, li_tab, cur_encoding;
+ link, ignor_text, li_tab, cur_encoding, text_align;
+
+enum { ALIGN_LEFT, ALIGN_CENTER, ALIGN_RIGHT};
dword text_colors[300],
text_color_index,
@@ -368,6 +370,7 @@ void TWebBrowser::ParseHTML(dword bword){
if (blink<400) blink=400; else for ( ; blink>400; blink--;) DeleteButton(blink);
b_text = i_text = u_text = s_text = blq_text =
li_text = link = ignor_text = text_color_index = text_colors[0] = li_tab = 0; //îáíóëÿåì òåãè
+ text_align = ALIGN_LEFT;
link_color = 0x0000FF;
bg_color = 0xFFFFFF;
DrawBufFill();
@@ -427,7 +430,6 @@ void TWebBrowser::ParseHTML(dword bword){
bukva = ESBYTE[bword];
chrcat(#tag, bukva);
}
-
bukva = GetUnicodeSymbol();
if (bukva) goto DEFAULT_MARK;
break;
@@ -565,7 +567,7 @@ void TWebBrowser::WhatTextStyle(int left1, top1, width1) {
- IF(!chTag("q")) strcat(#line, "\"");
+ IF(!chTag("q")) chrcat(#line, '\"');
if (anchor) && (!strcmp(#parametr, "id=")) //î÷åíü ïëîõî!!! ïîòîìó ÷òî åñëè íå ïîñëåäíèé òåã, ðàáîòàòü íå áóäåò
{
@@ -654,10 +656,30 @@ void TWebBrowser::WhatTextStyle(int left1, top1, width1) {
IF(rez) TextGoDown(left1, top1 + 10, width1);
return;
}
+ if (!chTag("center"))
+ {
+ if (rez) text_align = ALIGN_CENTER;
+ if (!rez) text_align = ALIGN_LEFT;
+ }
+ if (!chTag("right"))
+ {
+ if (rez) text_align = ALIGN_RIGHT;
+ if (!rez) text_align = ALIGN_LEFT;
+ }
if (!chTag("h1")) || (!chTag("h2")) || (!chTag("h3")) || (!chTag("h4")) {
+ if (rez)
+ {
+ if (!strcmp(#parametr, "align=")) && (!strcmp(#options,"center")) text_align = ALIGN_CENTER;
+ if (!strcmp(#parametr, "align=")) && (!strcmp(#options,"right")) text_align = ALIGN_RIGHT;
+ b_text = 1;
+ }
+ if (!rez)
+ {
+ text_align = ALIGN_LEFT;
+ b_text = 0;
+ }
TextGoDown(left1, top1, width1);
IF(rez) TextGoDown(left1, top1 + 10, width1);
- b_text = rez;
strcpy(#oldtag, #tag);
return;
}
diff --git a/programs/cmm/browser/include/acid_0.1.htm b/programs/cmm/browser/include/acid_0.1.htm
index 6b7473c18..53d30e850 100644
--- a/programs/cmm/browser/include/acid_0.1.htm
+++ b/programs/cmm/browser/include/acid_0.1.htm
@@ -1,18 +1,15 @@
-
- Òåñò Acid 0.1
+
+ Òåñò Acid 0.1
-
-
-
-
-Ýòî òåñòîâàÿ ñòðàíèöà äëÿ ïðîâåðêè HTML Viewer
+Ýòî òåñòîâàÿ ñòðàíèöà äëÿ ïðîâåðêè HTML Viewer
+
+Ýòà ïðîãðàììà ïîääåðæèâàåò âñå ïîïóëÿðíûå êîäèðîâêè:
+cp1251, koi-8, cp866, unicode.
-Ýòà ïðîãðàììà ïîääåðæèâàåò âñå ïîïóëÿðíûå êîäèðîâêè: cp1251, koi-8, cp866, Unicode.
-
C
r
@@ -30,7 +27,7 @@
c
y
-Æèòîìèð 2008-2012
+Æèòîìèð 2008-2013
Íåáîëüøîé ñïèñîê:
@@ -43,6 +40,7 @@
+
Àòü!
Äâà!
@@ -51,6 +49,7 @@
Àâòîð ñåãî òâîðåíèÿ íå èçâåñòåí.
+
@@ -59,6 +58,8 @@
+
+
./index.htm
@@ -74,62 +75,13 @@
1111111111111111111111111111111111111111111111111111111111111111
1111111111111111111111111111111111111111111111111111111111111111
1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111111111111111111111111111111111111
'>Î÷åíü äëèííûé àäðåñ ñòðîêè
-
-
 ýòîì òåêñòå åñòü ïåðåõîä íà ñëåäóþùóþ ñòðîêó, íî áðàóçåð
-åãî äîëæåí ïðîèãíîðèðîâàòü. Åùå ìíîãî ïðîáåëîâ. À òóò åñòü
- òàáû. Êîå-êàêèå ñèìâîëû: " & < > © ® „ “ ¯æà÷îê ³íøîãî áîêó ð. ªâôðàò ç'¿â ´ðóíò òà ºâðåéñüêèé ´åðáàëàéô.
+åãî äîëæåí ïðîèãíîðèðîâàòü. Åùå ìíîãî ïðîáåëîâ. À òóò åñòü
+ òàáû. Êîå-êàêèå ñèìâîëû: " & < >
+ © ® „ “ ¯æà÷îê ³íøîãî áîêó ð. ªâôðàò ç'¿â ´ðóíò òà ºâðåéñüêèé ´åðáàëàéô.