Changeset 373 for trunk/src/gui/text/qfontdatabase_pm.cpp
- Timestamp:
- Dec 2, 2009, 5:16:18 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/gui/text/qfontdatabase_pm.cpp
r371 r373 752 752 } 753 753 754 static QString getAssociateFont() 755 { 756 static char szFontName[FACESIZE + 1] = {0,}; 757 758 // already queried ? 759 if (szFontName[0] == '\0') { 760 // query the associated font 761 if (PrfQueryProfileString(HINI_USERPROFILE, 762 "PM_SystemFonts", "PM_AssociateFont", 0, 763 szFontName, sizeof(szFontName))) { 764 szFontName[FACESIZE] = '\0'; 765 766 // the format of the associated font is face_name;point_size 767 // so remove ';' and later 768 for (PSZ pch = szFontName; *pch; pch++) 769 if (*pch == ';') { 770 *pch = '\0'; 771 break; 772 } 773 } 774 775 if (szFontName[0] == '\0') 776 szFontName[0] = ';'; 777 } 778 779 if (szFontName[0] != ';') 780 return QString::fromLocal8Bit(szFontName); 781 782 return QString::null; 783 } 784 754 785 static QFontEngine *loadPM(const QFontPrivate *d, int script, const QFontDef &req) 755 786 { … … 763 794 // add the default family 764 795 QString defaultFamily = QApplication::font().family(); 765 if (! 796 if (!families.contains(defaultFamily)) 766 797 families << defaultFamily; 767 798 … … 769 800 // previous versions 770 801 families << QApplication::font().defaultFamily(); 802 803 // add PM_AssociateFont to the list (used on DBCS systems to take the 804 // missing glyphs from) 805 QString associateFont = getAssociateFont(); 806 if (!associateFont.isEmpty() && !families.contains(associateFont)) 807 families << associateFont; 771 808 772 809 // null family means find the first font matching the specified script
Note:
See TracChangeset
for help on using the changeset viewer.