diff options
author | Konstantin Ritt <ritt.ks@gmail.com> | 2012-05-29 05:15:53 +0300 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-05-30 01:54:45 +0200 |
commit | 32c39330ef3b7a7adc00ab955549ab3a4742352c (patch) | |
tree | 6361b872d9c4f8dfa5eef9f4484374c7734392c6 /src/corelib/tools/qtextboundaryfinder.cpp | |
parent | c16455dbcf7aae140524b391c99b97a7b10b41dc (diff) |
Introduce QUnicodeTools
Add QUnicodeTools namespace and rename qGetCharAttributes to initCharAttributes;
Make it possible to disable tailoring globally by overriding
qt_initcharattributes_default_algorithm_only value
(useful for i.e. running the specification conformance tests);
This is mostly a preparation step for the upcoming patches.
Change-Id: I783879fd17b63b52d7983e25dad5b820f0515e7f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Diffstat (limited to 'src/corelib/tools/qtextboundaryfinder.cpp')
-rw-r--r-- | src/corelib/tools/qtextboundaryfinder.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/corelib/tools/qtextboundaryfinder.cpp b/src/corelib/tools/qtextboundaryfinder.cpp index c6c88ea8aa..b3b3d83a83 100644 --- a/src/corelib/tools/qtextboundaryfinder.cpp +++ b/src/corelib/tools/qtextboundaryfinder.cpp @@ -93,12 +93,15 @@ static void init(QTextBoundaryFinder::BoundaryType type, const QChar *chars, int scriptItems.append(item); } - QCharAttributeOptions options = 0; - if (type == QTextBoundaryFinder::Word) - options |= GetWordBreaks; - else if (type == QTextBoundaryFinder::Sentence) - options |= GetSentenceBreaks; - qGetCharAttributes(string, length, scriptItems.data(), scriptItems.count(), attributes, options); + QUnicodeTools::CharAttributeOptions options = QUnicodeTools::WhiteSpaces; + switch (type) { + case QTextBoundaryFinder::Grapheme: options |= QUnicodeTools::GraphemeBreaks; break; + case QTextBoundaryFinder::Word: options |= QUnicodeTools::WordBreaks; break; + case QTextBoundaryFinder::Sentence: options |= QUnicodeTools::SentenceBreaks; break; + case QTextBoundaryFinder::Line: options |= QUnicodeTools::LineBreaks; break; + default: break; + } + QUnicodeTools::initCharAttributes(string, length, scriptItems.data(), scriptItems.count(), attributes, options); } /*! |