From: Paul Wisbey Date: Wed, 4 Mar 2015 10:34:40 +0000 (-0800) Subject: Merge "Text segmentation interface" into new_text X-Git-Tag: new_text_0.1~24 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=6516c90c9e264cf0a682aff36cb9bc5f1964b3e2;hp=9b60907d658c71077d733f6431ac45ed3b4ffbae Merge "Text segmentation interface" into new_text --- diff --git a/dali-toolkit/public-api/text/segmentation.cpp b/dali-toolkit/public-api/text/segmentation.cpp index db4e7ae..91a2e5d 100644 --- a/dali-toolkit/public-api/text/segmentation.cpp +++ b/dali-toolkit/public-api/text/segmentation.cpp @@ -48,6 +48,13 @@ void SetLineBreakInfo( const Vector& text, lineBreakInfo.Begin() ); } +void ReplaceLineBreakInfo( LogicalModel& model, + CharacterIndex characterIndex, + Length numberOfCharactersToRemove, + Length numberOfCharactersToInsert ) +{ +} + void SetWordBreakInfo( const Vector& text, Vector& wordBreakInfo ) { @@ -66,6 +73,13 @@ void SetWordBreakInfo( const Vector& text, wordBreakInfo.Begin() ); } +void ReplaceWordBreakInfo( LogicalModel& model, + CharacterIndex characterIndex, + Length numberOfCharactersToRemove, + Length numberOfCharactersToInsert ) +{ +} + } // namespace Text } // namespace Toolkit diff --git a/dali-toolkit/public-api/text/segmentation.h b/dali-toolkit/public-api/text/segmentation.h index fa95ff9..1c0c489 100644 --- a/dali-toolkit/public-api/text/segmentation.h +++ b/dali-toolkit/public-api/text/segmentation.h @@ -31,6 +31,8 @@ namespace Toolkit namespace Text { +class LogicalModel; + /** * Sets line break info. * @@ -47,6 +49,24 @@ void SetLineBreakInfo( const Vector& text, Vector& lineBreakInfo ); /** + * Replaces line break info. + * + * @pre The @p model needs to have a text 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 ReplaceLineBreakInfo( LogicalModel& model, + CharacterIndex characterIndex, + Length numberOfCharactersToRemove, + Length numberOfCharactersToInsert ); + +/** * Sets word break info. * * - 0 is a WORD_BREAK. Text can be broken into a new word. @@ -58,6 +78,24 @@ void SetLineBreakInfo( const Vector& text, void SetWordBreakInfo( const Vector& text, Vector& wordBreakInfo ); +/** + * Replaces word break info. + * + * @pre The @p model needs to have a text 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 ReplaceWordBreakInfo( LogicalModel& model, + CharacterIndex characterIndex, + Length numberOfCharactersToRemove, + Length numberOfCharactersToInsert ); + } // namespace Text } // namespace Toolkit