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