Text shaper interface 27/33927/7
authorVictor Cebollada <v.cebollada@samsung.com>
Fri, 16 Jan 2015 14:27:34 +0000 (14:27 +0000)
committerPaul Wisbey <p.wisbey@samsung.com>
Tue, 3 Mar 2015 18:12:19 +0000 (10:12 -0800)
Change-Id: I9568493e820501b4e215424b6fcfb906ec8680a5
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
dali-toolkit/public-api/text/shaper.cpp
dali-toolkit/public-api/text/shaper.h

index 6a68310..376a1b7 100644 (file)
@@ -193,6 +193,14 @@ void ShapeText( const Vector<Character>& text,
   charactersPerGlyph.Resize( totalNumberOfGlyphs );
 }
 
   charactersPerGlyph.Resize( totalNumberOfGlyphs );
 }
 
+void ShapeText( const LogicalModel& logicalModel,
+                VisualModel& visualModel,
+                CharacterIndex characterIndex,
+                Length numberOfCharactersToRemove,
+                Length numberOfCharactersToInsert )
+{
+}
+
 } // namespace Text
 
 } // namespace Toolkit
 } // namespace Text
 
 } // namespace Toolkit
index 3381610..e18fd76 100644 (file)
@@ -32,6 +32,9 @@ namespace Toolkit
 namespace Text
 {
 
 namespace Text
 {
 
+class LogicalModel;
+class VisualModel;
+
 /**
  * Shapes the whole text.
  *
 /**
  * Shapes the whole text.
  *
@@ -51,6 +54,29 @@ void ShapeText( const Vector<Character>& text,
                 Vector<CharacterIndex>& characterIndices,
                 Vector<Length>& charactersPerGlyph );
 
                 Vector<CharacterIndex>& characterIndices,
                 Vector<Length>& charactersPerGlyph );
 
+/**
+ * Replaces the shape info of the given range of characters.
+ *
+ * @pre The @p model needs to have a text set.
+ * @pre The @p model needs to have the scripts set.
+ * @pre The @p model needs to have the fonts set.
+ * @pre The @p model needs to have the bidirectional 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] logicalModel The text's logical model.
+ * @param[in,out] visualModel 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 ShapeText( const LogicalModel& logicalModel,
+                VisualModel& visualModel,
+                CharacterIndex characterIndex,
+                Length numberOfCharactersToRemove,
+                Length numberOfCharactersToInsert );
+
 } // namespace Text
 
 } // namespace Toolkit
 } // namespace Text
 
 } // namespace Toolkit