mirror of
https://bitbucket.org/smil3y/katie.git
synced 2025-02-24 10:52:56 +00:00
use proper type for unicode script
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
This commit is contained in:
parent
856e7a6846
commit
79bb27fbc0
6 changed files with 23 additions and 21 deletions
|
@ -201,7 +201,7 @@ QFontPrivate::~QFontPrivate()
|
|||
|
||||
extern QMutex *qt_fontdatabase_mutex();
|
||||
|
||||
QFontEngine *QFontPrivate::engineForScript(int script) const
|
||||
QFontEngine *QFontPrivate::engineForScript(QUnicodeTables::Script script) const
|
||||
{
|
||||
QMutexLocker locker(qt_fontdatabase_mutex());
|
||||
if (script > QUnicodeTables::ScriptCount)
|
||||
|
|
|
@ -154,7 +154,7 @@ public:
|
|||
QFontPrivate(const QFontPrivate &other);
|
||||
~QFontPrivate();
|
||||
|
||||
QFontEngine *engineForScript(int script) const;
|
||||
QFontEngine *engineForScript(QUnicodeTables::Script script) const;
|
||||
void alterCharForCapitalization(QChar &c) const;
|
||||
|
||||
QAtomicInt ref;
|
||||
|
|
|
@ -1037,6 +1037,8 @@ static void FcFontSetRemove(FcFontSet *fs, int at)
|
|||
}
|
||||
|
||||
static QFontEngine *tryPatternLoad(FcPattern *match, int screen,
|
||||
const QFontDef &request,
|
||||
QUnicodeTables::Script script)
|
||||
{
|
||||
#ifdef FONT_MATCH_DEBUG
|
||||
FcChar8 *fam;
|
||||
|
@ -1117,7 +1119,7 @@ FcFontSet *qt_fontSetForPattern(FcPattern *pattern, const QFontDef &request)
|
|||
return fs;
|
||||
}
|
||||
|
||||
static QFontEngine *loadFc(const QFontPrivate *fp, int script, const QFontDef &request)
|
||||
static QFontEngine *loadFc(const QFontPrivate *fp, QUnicodeTables::Script script, const QFontDef &request)
|
||||
{
|
||||
FM_DEBUG("===================== loadFc: script=%d family='%s'\n", script, request.family.toLatin1().constData());
|
||||
FcPattern *pattern = getFcPattern(fp, script, request);
|
||||
|
@ -1236,7 +1238,7 @@ void QFontDatabase::load(const QFontPrivate *d, int script)
|
|||
#endif
|
||||
#ifndef QT_NO_FONTCONFIG
|
||||
if (qt_x11Data->has_fontconfig) {
|
||||
fe = loadFc(d, script, req);
|
||||
fe = loadFc(d, static_cast<QUnicodeTables::Script>(script), req);
|
||||
#endif
|
||||
}
|
||||
if (!fe) {
|
||||
|
|
|
@ -405,7 +405,7 @@ int QFontMetrics::averageCharWidth() const
|
|||
*/
|
||||
bool QFontMetrics::inFont(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine = d->engineForScript(script);
|
||||
Q_ASSERT(engine != 0);
|
||||
if (engine->type() == QFontEngine::Box)
|
||||
|
@ -422,7 +422,7 @@ bool QFontMetrics::inFont(QChar ch) const
|
|||
*/
|
||||
bool QFontMetrics::inFontUcs4(uint ucs4) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ucs4);
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ucs4);
|
||||
QFontEngine *engine = d->engineForScript(script);
|
||||
Q_ASSERT(engine != 0);
|
||||
if (engine->type() == QFontEngine::Box)
|
||||
|
@ -445,7 +445,7 @@ bool QFontMetrics::inFontUcs4(uint ucs4) const
|
|||
*/
|
||||
int QFontMetrics::leftBearing(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -480,7 +480,7 @@ int QFontMetrics::leftBearing(QChar ch) const
|
|||
*/
|
||||
int QFontMetrics::rightBearing(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -583,7 +583,7 @@ int QFontMetrics::width(QChar ch) const
|
|||
if (QChar::category(ch.unicode()) == QChar::Mark_NonSpacing)
|
||||
return 0;
|
||||
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -617,7 +617,7 @@ int QFontMetrics::charWidth(const QString &text, int pos) const
|
|||
return 0;
|
||||
|
||||
QChar ch = text.unicode()[pos];
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
int width;
|
||||
|
||||
if (script != QUnicodeTables::Common) {
|
||||
|
@ -700,7 +700,7 @@ QRect QFontMetrics::boundingRect(const QString &text) const
|
|||
*/
|
||||
QRect QFontMetrics::boundingRect(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -1272,7 +1272,7 @@ qreal QFontMetricsF::averageCharWidth() const
|
|||
*/
|
||||
bool QFontMetricsF::inFont(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine = d->engineForScript(script);
|
||||
Q_ASSERT(engine != 0);
|
||||
if (engine->type() == QFontEngine::Box)
|
||||
|
@ -1289,7 +1289,7 @@ bool QFontMetricsF::inFont(QChar ch) const
|
|||
*/
|
||||
bool QFontMetricsF::inFontUcs4(uint ucs4) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ucs4);
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ucs4);
|
||||
QFontEngine *engine = d->engineForScript(script);
|
||||
Q_ASSERT(engine != 0);
|
||||
if (engine->type() == QFontEngine::Box)
|
||||
|
@ -1312,7 +1312,7 @@ bool QFontMetricsF::inFontUcs4(uint ucs4) const
|
|||
*/
|
||||
qreal QFontMetricsF::leftBearing(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -1347,7 +1347,7 @@ qreal QFontMetricsF::leftBearing(QChar ch) const
|
|||
*/
|
||||
qreal QFontMetricsF::rightBearing(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -1419,7 +1419,7 @@ qreal QFontMetricsF::width(QChar ch) const
|
|||
if (QChar::category(ch.unicode()) == QChar::Mark_NonSpacing)
|
||||
return 0.;
|
||||
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
@ -1484,7 +1484,7 @@ QRectF QFontMetricsF::boundingRect(const QString &text) const
|
|||
*/
|
||||
QRectF QFontMetricsF::boundingRect(QChar ch) const
|
||||
{
|
||||
const int script = QUnicodeTables::script(ch.unicode());
|
||||
const QUnicodeTables::Script script = QUnicodeTables::script(ch.unicode());
|
||||
QFontEngine *engine;
|
||||
if (d->capital == QFont::SmallCaps && ch.isLower())
|
||||
engine = d->smallCapsFontPrivate()->engineForScript(script);
|
||||
|
|
|
@ -1308,7 +1308,7 @@ void QTextEngine::itemize() const
|
|||
|
||||
const ushort *uc = reinterpret_cast<const ushort *>(layoutData->string.unicode());
|
||||
const ushort *e = uc + length;
|
||||
int lastScript = QUnicodeTables::Common;
|
||||
QUnicodeTables::Script lastScript = QUnicodeTables::Common;
|
||||
while (uc < e) {
|
||||
switch (*uc) {
|
||||
case QChar::ObjectReplacementCharacter:
|
||||
|
@ -1338,7 +1338,7 @@ void QTextEngine::itemize() const
|
|||
}
|
||||
// fall through
|
||||
default:
|
||||
int script = QUnicodeTables::script(*uc);
|
||||
QUnicodeTables::Script script = QUnicodeTables::script(*uc);
|
||||
analysis->script = script == QUnicodeTables::Inherited ? lastScript : script;
|
||||
analysis->flags = QScriptAnalysis::None;
|
||||
break;
|
||||
|
@ -1646,7 +1646,7 @@ QFontEngine *QTextEngine::fontEngine(const QScriptItem &si, QFixed *ascent, QFix
|
|||
{
|
||||
QFontEngine *engine = 0;
|
||||
QFontEngine *scaledEngine = 0;
|
||||
int script = si.analysis.script;
|
||||
QUnicodeTables::Script script = si.analysis.script;
|
||||
|
||||
QFont font = fnt;
|
||||
if (hasFormats()) {
|
||||
|
|
|
@ -105,7 +105,7 @@ struct Q_AUTOTEST_EXPORT QScriptAnalysis
|
|||
TabOrObject = Tab,
|
||||
Object = 7
|
||||
};
|
||||
unsigned short script;
|
||||
QUnicodeTables::Script script;
|
||||
unsigned short bidiLevel; // Unicode Bidi algorithm embedding level (0-61)
|
||||
Flags flags;
|
||||
inline bool operator == (const QScriptAnalysis &other) const {
|
||||
|
|
Loading…
Add table
Reference in a new issue