--- kdebase-3.1rc6/kcontrol/fonts/kxftconfig.cpp-- 2003-01-23 15:02:52.000000000 +0100 +++ kdebase-3.1rc6/kcontrol/fonts/kxftconfig.cpp 2003-01-23 15:14:03.000000000 +0100 @@ -129,7 +129,7 @@ KXftConfig::SubPixel::Type strToType(con { if(0==strcmp(str, "rgb")) return KXftConfig::SubPixel::Rgb; - else if(0==strcmp(str, "bgr")) + else if(0==strcmp(str, "bgr")) return KXftConfig::SubPixel::Bgr; else if(0==strcmp(str, "vrgb")) return KXftConfig::SubPixel::Vrgb; @@ -140,7 +140,7 @@ KXftConfig::SubPixel::Type strToType(con } #else static bool strToType(const char *str, KXftConfig::SubPixel::Type &type) -{ +{ if(0==memcmp(str, "rgb", 3)) type=KXftConfig::SubPixel::Rgb; else if(0==memcmp(str, "bgr", 3)) @@ -286,7 +286,7 @@ KXftConfig::KXftConfig(int required, boo m_data(NULL) #endif { - if(system) + if(system) { int f; @@ -646,7 +646,7 @@ const char * KXftConfig::toStr(SubPixel: } KXftConfig::ListItem * KXftConfig::findItem(QPtrList<ListItem> &list, const QString &i) -{ +{ ListItem *item; for(item=list.first(); item; item=list.next()) @@ -731,7 +731,7 @@ void KXftConfig::readContents() { QDomElement ene=e.firstChild().toElement(); - if(!ene.isNull() && "edit"==ene.tagName() && + if(!ene.isNull() && "edit"==ene.tagName() && QString::null!=(str=getEntry(ene, "const", 2, "name", "rgba", "mode", "assign"))) { m_subPixel.node=n; @@ -786,7 +786,7 @@ void KXftConfig::readContents() { if(QString::null!=(str=getEntry(ene, "double", 3, "qual", "any", "name", "size", "compare", "more"))) from=str.toDouble(); - else if(QString::null!=(str=getEntry(ene, "double", 3, "qual", "any", + else if(QString::null!=(str=getEntry(ene, "double", 3, "qual", "any", "name", "size", "compare", "less"))) to=str.toDouble(); } @@ -873,7 +873,7 @@ void KXftConfig::readContents() { ptr=eostr+1; - if(skipToken(&ptr, "edit") && skipToken(&ptr, "encoding") && skipToken(&ptr, "=") && + if(skipToken(&ptr, "edit") && skipToken(&ptr, "encoding") && skipToken(&ptr, "=") && skipToken(&ptr, constSymEnc) && skipToken(&ptr, ";")) { while(*ptr!='\n' && *ptr!='\0' && isWhiteSpace(*ptr)) @@ -885,7 +885,7 @@ void KXftConfig::readContents() } } } - else if(m_required&ExcludeRange && skipToken(&ptr, "size") && (skipToken(&ptr, ">")||skipToken(&ptr, "<")) && + else if(m_required&ExcludeRange && skipToken(&ptr, "size") && (skipToken(&ptr, ">")||skipToken(&ptr, "<")) && readNum(&ptr, &efrom) && skipToken(&ptr, "any") && skipToken(&ptr, "size") && (skipToken(&ptr, "<")||skipToken(&ptr, ">")) && readNum(&ptr, &eto) && skipToken(&ptr, "edit") && skipToken(&ptr, "antialias") && skipToken(&ptr, "=") && skipToken(&ptr, "false") && skipToken(&ptr, ";")) @@ -996,12 +996,28 @@ void KXftConfig::applySubPixelType() editNode = m_doc.createElement("edit"); QDomText typeText = m_doc.createTextNode(toStr(m_subPixel.type)); + QDomText typeText2 = m_doc.createTextNode(QString("full")); + + QDomElement editNodeHintstyle = m_doc.createElement("edit"); + QDomElement typeNodeHintstyle = m_doc.createElement("const"); + matchNode.setAttribute("target", "font"); editNode.setAttribute("mode", "assign"); editNode.setAttribute("name", "rgba"); + + editNodeHintstyle.setAttribute("mode","assign"); + editNodeHintstyle.setAttribute("name","hintstyle"); + + + editNode.appendChild(typeNode); typeNode.appendChild(typeText); matchNode.appendChild(editNode); + + editNodeHintstyle.appendChild(typeNodeHintstyle); + typeNodeHintstyle.appendChild(typeText2); + matchNode.appendChild(editNodeHintstyle); + if(m_subPixel.node.isNull()) m_doc.documentElement().appendChild(matchNode); else