X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Ftext%2Fbidirectional-support.h;h=e45fc067e821e45416f2c91da2aa12edcf7331a9;hp=178c319a4582d5a1ea06a01de9e434314d551581;hb=297b1b9a9b6ed72fe98d5afb018ff4d1c951ce7d;hpb=1db0a8becea3dbdebaa942d934d91824a92434e7 diff --git a/dali-toolkit/public-api/text/bidirectional-support.h b/dali-toolkit/public-api/text/bidirectional-support.h index 178c319..e45fc06 100644 --- a/dali-toolkit/public-api/text/bidirectional-support.h +++ b/dali-toolkit/public-api/text/bidirectional-support.h @@ -47,6 +47,25 @@ void SetBidirectionalInfo( const Vector& text, Vector& bidirectionalInfo ); /** + * Replaces the bidirectional info from the logical model. + * + * @pre The @p model needs to have a text set. + * @pre The @p model needs to have the line break info set. + * + * If the @p numberOfCharactersToRemove is zero, this operation is like an insert. + * If the @p numberOfCharactersToInsert is zero, this operation is like a remove. + * + * @param[in,out] model The text's logical model. + * @param[in] characterIndex Index to the first character. + * @param[in] numberOfCharactersToRemove The number of characters removed from the text. + * @param[in] numberOfCharactersToInsert The number of characters inserted in the text. + */ +void ReplaceBidirectionalInfo( LogicalModel& model, + CharacterIndex characterIndex, + Length numberOfCharactersToRemove, + Length numberOfCharactersToInsert ); + +/** * Sets the visual to logical and logical to visual map tables. * * Any map tables previously set are removed. @@ -63,6 +82,28 @@ void ReorderLines( const Vector& bidirectionalInf const Vector& lineRuns, Vector& lineInfoRuns ); +/** + * Replaces the visual to logical and logical to visual map tables. + * + * @pre The @p logicalModel needs to have a text set. + * @pre The @p logicalModel needs to have the line break info set. + * @pre The @p visualModel needs to have the laid-out lines info set. + * + * If the @p numberOfCharactersToRemove is zero, this operation is like an insert. + * If the @p numberOfCharactersToInsert is zero, this operation is like a remove. + * + * @param[in,out] logicalModel The text's logical model. + * @param[in] visualModel The text's visual model. + * @param[in] characterIndex Index to the first character. + * @param[in] numberOfCharactersToRemove The number of characters removed from the text. + * @param[in] numberOfCharactersToInsert The number of characters inserted in the text. + */ +void ReorderLines( LogicalModel& logicalModel, + const VisualModel& visualModel, + CharacterIndex characterIndex, + Length numberOfCharactersToRemove, + Length numberOfCharactersToInsert ); + } // namespace Text } // namespace Toolkit