Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qtextengine.cpp File Reference

(30cc8a28de3ccc7d02c11c74144971ae289cf076)

#include <QtGui/private/qtguiglobal_p.h>
#include "qdebug.h"
#include "qtextformat.h"
#include "qtextformat_p.h"
#include "qtextengine_p.h"
#include "qabstracttextdocumentlayout.h"
#include "qabstracttextdocumentlayout_p.h"
#include "qtextlayout.h"
#include "qtextboundaryfinder.h"
#include <QtCore/private/qunicodetables_p.h>
#include "qvarlengtharray.h"
#include "qfont.h"
#include "qfont_p.h"
#include "qfontengine_p.h"
#include "qstring.h"
#include "qtextdocument_p.h"
#include "qrawfont.h"
#include "qrawfont_p.h"
#include <qguiapplication.h>
#include <qinputmethod.h>
#include <algorithm>
#include <stdlib.h>
+ Include dependency graph for qtextengine.cpp:

Go to the source code of this file.

Classes

struct  QJustificationPoint
 

Macros

#define BIDI_DEBUG   if (1) ; else qDebug
 

Enumerations

enum  JustificationClass {
  Justification_Prohibited = 0 , Justification_Arabic_Space = 1 , Justification_Character = 2 , Justification_Space = 4 ,
  Justification_Arabic_Normal = 7 , Justification_Arabic_Waw = 8 , Justification_Arabic_BaRa = 9 , Justification_Arabic_Alef = 10 ,
  Justification_Arabic_HahDal = 11 , Justification_Arabic_Seen = 12 , Justification_Arabic_Kashida = 13
}
 

Functions

static void applyVisibilityRules (ushort ucs, QGlyphLayout *glyphs, uint glyphPosition, QFontEngine *fontEngine)
 
static void releaseCachedFontEngine (QFontEngine *fontEngine)
 
 Q_DECLARE_TYPEINFO (QJustificationPoint, Q_PRIMITIVE_TYPE)
 
static void set (QJustificationPoint *point, int type, const QGlyphLayout &glyph, QFontEngine *fe)
 
static bool nextCharJoins (const QString &string, int pos)
 
static bool prevCharJoins (const QString &string, int pos)
 
static constexpr bool isRetainableControlCode (char16_t c) noexcept
 
static QString stringMidRetainingBidiCC (const QString &string, const QString &ellidePrefix, const QString &ellideSuffix, int subStringFrom, int subStringTo, int midStart, int midLength)
 
QTransform qt_true_matrix (qreal w, qreal h, const QTransform &x)
 

Variables

static QT_BEGIN_NAMESPACE const float smallCapsFraction = 0.7f
 

Macro Definition Documentation

◆ BIDI_DEBUG

#define BIDI_DEBUG   if (1) ; else qDebug

Definition at line 182 of file qtextengine.cpp.

Referenced by QTextEngine::bidiReorder().

Enumeration Type Documentation

◆ JustificationClass

Enumerator
Justification_Prohibited 
Justification_Arabic_Space 
Justification_Character 
Justification_Space 
Justification_Arabic_Normal 
Justification_Arabic_Waw 
Justification_Arabic_BaRa 
Justification_Arabic_Alef 
Justification_Arabic_HahDal 
Justification_Arabic_Seen 
Justification_Arabic_Kashida 

Definition at line 1190 of file qtextengine.cpp.

Function Documentation

◆ applyVisibilityRules()

static void applyVisibilityRules ( ushort ucs,
QGlyphLayout * glyphs,
uint glyphPosition,
QFontEngine * fontEngine )
static

Definition at line 1317 of file qtextengine.cpp.

References QGlyphLayout::attributes, QGlyphAttributes::dontPrint, QFontEngine::glyphIndex(), QGlyphLayout::glyphs, QGlyphLayout::mid(), Q_LIKELY, QFontEngine::recalcAdvances(), and QFontEngine::symbol.

+ Here is the call graph for this function:

◆ isRetainableControlCode()

static constexpr bool isRetainableControlCode ( char16_t c)
staticconstexprnoexcept

Definition at line 2971 of file qtextengine.cpp.

Referenced by stringMidRetainingBidiCC().

+ Here is the caller graph for this function:

◆ nextCharJoins()

static bool nextCharJoins ( const QString & string,
int pos )
inlinestatic

Definition at line 2951 of file qtextengine.cpp.

References at, category(), and pos.

Referenced by QTextEngine::elidedText().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ prevCharJoins()

static bool prevCharJoins ( const QString & string,
int pos )
inlinestatic

Definition at line 2961 of file qtextengine.cpp.

References at, category(), and pos.

Referenced by QTextEngine::elidedText().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Q_DECLARE_TYPEINFO()

Q_DECLARE_TYPEINFO ( QJustificationPoint ,
Q_PRIMITIVE_TYPE  )

◆ qt_true_matrix()

QTransform qt_true_matrix ( qreal w,
qreal h,
const QTransform & x )

Definition at line 3821 of file qtextengine.cpp.

References QTransform::fromTranslate(), and rect.

Referenced by glyph_metrics_t::transformed().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ releaseCachedFontEngine()

static void releaseCachedFontEngine ( QFontEngine * fontEngine)
inlinestatic

Definition at line 1874 of file qtextengine.cpp.

References QBasicAtomicInteger< T >::deref(), and QFontEngine::ref.

Referenced by QTextEngine::fontEngine(), and QTextEngine::resetFontEngineCache().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set()

◆ stringMidRetainingBidiCC()

static QString stringMidRetainingBidiCC ( const QString & string,
const QString & ellidePrefix,
const QString & ellideSuffix,
int subStringFrom,
int subStringTo,
int midStart,
int midLength )
static

Definition at line 2978 of file qtextengine.cpp.

References QString::at(), i, isRetainableControlCode(), and QStringView::mid().

Referenced by QTextEngine::elidedText().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ smallCapsFraction

QT_BEGIN_NAMESPACE const float smallCapsFraction = 0.7f
static

Definition at line 29 of file qtextengine.cpp.

Referenced by QTextEngine::fontEngine().