- Size mSize; ///< Size of the line.
- float mAscender; ///< Max of all ascenders of all groups of words.
- float mLineHeightOffset; ///< Line height offset.
- WordGroupLayoutInfoContainer mWordGroupsLayoutInfo; ///< Layout info for all groups of words.
- std::size_t mNumberOfCharacters; ///< Stores the number of characters.
+ /**
+ * Deletes the bidirectional info for each line.
+ */
+ void ClearBidirectionalInfo();
+
+private:
+
+ /**
+ * Deletes all text styles.
+ */
+ void ClearStyles();
+
+public:
+ Size mSize; ///< Size of the paragraph.
+ float mAscender; ///< Max of all ascenders of all words.
+ float mLineHeightOffset; ///< Line height offset.
+ std::size_t mFirstCharacter; ///< Index to the first character of the paragraph.
+ std::size_t mNumberOfCharacters; ///< Stores the number of characters.
+ WordLayoutInfoContainer mWordsLayoutInfo; ///< Layout info for all words.
+ Text mText; ///< Stores the text.
+ Vector<TextStyle*> mTextStyles; ///< Stores the style per each character.
+ RightToLeftParagraphLayout* mRightToLeftLayout; ///< Stores the reordered layout for the paragraph.
+ TextProcessor::BidirectionalParagraphInfo* mBidirectionalParagraphInfo; ///< Contains bidirectional info for the whole paragraph. Set to NULL if the paragraph has left to right characters only.
+ Vector<TextProcessor::BidirectionalLineInfo*> mBidirectionalLinesInfo; ///< Contains bidirectional info for each laid-out line.