]> git.saurik.com Git - wxWidgets.git/blobdiff - src/html/m_fonts.cpp
fixed (rare but fatal) bug in wxWindowDisabler
[wxWidgets.git] / src / html / m_fonts.cpp
index 51168e0026fe5158fad7f2318ada243c346bf881..161cbd450c051b1f15b98f741738bbef855a827a 100644 (file)
@@ -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)