X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f1ad10f37305b1e0191827e1f23d6fca944e288c..1be06faf7318abf88a35b299b90ceb2a49c0353b:/src/html/m_fonts.cpp diff --git a/src/html/m_fonts.cpp b/src/html/m_fonts.cpp index 51168e0026..4f7471622e 100644 --- a/src/html/m_fonts.cpp +++ b/src/html/m_fonts.cpp @@ -14,7 +14,7 @@ #include "wx/wxprec.h" #include "wx/defs.h" -#if wxUSE_HTML +#if wxUSE_HTML && wxUSE_STREAMS #ifdef __BORDLANDC__ #pragma hdrstop @@ -44,25 +44,25 @@ TAG_HANDLER_BEGIN(FONT, "FONT") wxString oldface = m_WParser -> GetFontFace(); if (tag.HasParam(wxT("COLOR"))) { - unsigned long tmp = 0; + unsigned long tmp = 0; wxColour clr; if (tag.ScanParam(wxT("COLOR"), wxT("#%lX"), &tmp) == 1) { clr = wxColour((tmp & 0xFF0000) >> 16 , (tmp & 0x00FF00) >> 8, (tmp & 0x0000FF)); m_WParser -> SetActualColor(clr); m_WParser -> GetContainer() -> InsertCell(new wxHtmlColourCell(clr)); - } + } } if (tag.HasParam(wxT("SIZE"))) { - long tmp = 0; - wxChar c = tag.GetParam(wxT("SIZE"))[0]; + long tmp = 0; + wxChar c = tag.GetParam(wxT("SIZE"))[(unsigned int) 0]; if (tag.ScanParam(wxT("SIZE"), wxT("%li"), &tmp) == 1) { if (c == '+' || c == '-') m_WParser -> SetFontSize(oldsize+tmp); else m_WParser -> SetFontSize(tmp); m_WParser -> GetContainer() -> InsertCell(new wxHtmlFontCell(m_WParser -> CreateCurrentFont())); - } + } } if (tag.HasParam(wxT("FACE"))) { @@ -102,7 +102,7 @@ TAG_HANDLER_BEGIN(FONT, "FONT") TAG_HANDLER_END(FONT) -TAG_HANDLER_BEGIN(FACES_U, "U") +TAG_HANDLER_BEGIN(FACES_U, "U,STRIKE") TAG_HANDLER_PROC(tag) { @@ -144,7 +144,7 @@ TAG_HANDLER_END(FACES_B) -TAG_HANDLER_BEGIN(FACES_I, "I,EM,CITE") +TAG_HANDLER_BEGIN(FACES_I, "I,EM,CITE,ADDRESS") TAG_HANDLER_PROC(tag) { @@ -165,7 +165,7 @@ TAG_HANDLER_END(FACES_I) -TAG_HANDLER_BEGIN(FACES_TT, "TT") +TAG_HANDLER_BEGIN(FACES_TT, "TT,CODE,KBD,SAMP") TAG_HANDLER_PROC(tag) { @@ -206,20 +206,20 @@ TAG_HANDLER_BEGIN(Hx, "H1,H2,H3,H4,H5,H6") m_WParser -> SetFontUnderlined(FALSE); m_WParser -> SetFontFixed(FALSE); - if (tag.GetName() == "H1") + if (tag.GetName() == wxT("H1")) m_WParser -> SetFontSize(7); - else if (tag.GetName() == "H2") + else if (tag.GetName() == wxT("H2")) m_WParser -> SetFontSize(6); - else if (tag.GetName() == "H3") + else if (tag.GetName() == wxT("H3")) m_WParser -> SetFontSize(5); - else if (tag.GetName() == "H4") { + else if (tag.GetName() == wxT("H4")) { m_WParser -> SetFontSize(5); m_WParser -> SetFontItalic(TRUE); m_WParser -> SetFontBold(FALSE); } - else if (tag.GetName() == "H5") + else if (tag.GetName() == wxT("H5")) m_WParser -> SetFontSize(4); - else if (tag.GetName() == "H6") { + else if (tag.GetName() == wxT("H6")) { m_WParser -> SetFontSize(4); m_WParser -> SetFontItalic(TRUE); m_WParser -> SetFontBold(FALSE); @@ -259,6 +259,26 @@ TAG_HANDLER_BEGIN(Hx, "H1,H2,H3,H4,H5,H6") TAG_HANDLER_END(Hx) +TAG_HANDLER_BEGIN(BIGSMALL, "BIG,SMALL") + + TAG_HANDLER_PROC(tag) + { + int oldsize = m_WParser -> GetFontSize(); + int sz = (tag.GetName() == wxT("BIG")) ? +1 : -1; + + m_WParser -> SetFontSize(sz); + m_WParser -> GetContainer() -> InsertCell(new wxHtmlFontCell(m_WParser -> CreateCurrentFont())); + + ParseInner(tag); + + m_WParser -> SetFontSize(oldsize); + m_WParser -> GetContainer() -> InsertCell(new wxHtmlFontCell(m_WParser -> CreateCurrentFont())); + return TRUE; + } + +TAG_HANDLER_END(BIGSMALL) + + TAGS_MODULE_BEGIN(Fonts) @@ -269,6 +289,7 @@ TAGS_MODULE_BEGIN(Fonts) TAGS_MODULE_ADD(FACES_B) TAGS_MODULE_ADD(FACES_TT) TAGS_MODULE_ADD(Hx) + TAGS_MODULE_ADD(BIGSMALL) TAGS_MODULE_END(Fonts)