Evas object: Add paragraph_direciton APIs
authorYoungbok Shin <youngb.shin@samsung.com>
Thu, 19 Nov 2015 11:37:07 +0000 (11:37 +0000)
committerTom Hacohen <tom@stosb.com>
Thu, 19 Nov 2015 11:43:39 +0000 (11:43 +0000)
commita9b4be11e1e7525d98c08a5bb04b1f29ea8b0d4f
treec35b457299d4fc6d71a3144f957eae774fd656d8
parent618558f8ecba4d78f230245f2853523e95e12dfc
Evas object: Add paragraph_direciton APIs

Summary:
It adds evas_object_paragraph_direction_set, get APIs.
The APIs set or get paragraph direction to/from the given object.
It changes BiDi calculations and affect the direction and aligning of text.
It doesn't have any effect to text without Fribidi library.

The default paragraph direction is EVAS_BIDI_DIRECTION_INHERIT.
If dir is EVAS_BIDI_DIRECTION_INHERIT, paragraph direction is changed
according to smart parent object. If there is no smart parent object,
paragraph direction works as EVAS_BIDI_DIRECTION_NEUTRAL.

@feature

Test Plan:
Test cases included to the following files.
- evas_test_textblock.c
- evas_test_text.c
- evas_test_object_smart.c

Run "make check".

Reviewers: woohyun, raster, herdsman, tasn

Subscribers: c, raster, cedric

Differential Revision: https://phab.enlightenment.org/D1690
19 files changed:
src/Makefile_Evas.am
src/lib/edje/edje_object.eo
src/lib/edje/edje_smart.c
src/lib/evas/canvas/evas_object.eo
src/lib/evas/canvas/evas_object_main.c
src/lib/evas/canvas/evas_object_smart.c
src/lib/evas/canvas/evas_object_smart.eo
src/lib/evas/canvas/evas_object_text.c
src/lib/evas/canvas/evas_object_textblock.c
src/lib/evas/canvas/evas_text.eo
src/lib/evas/canvas/evas_textblock.eo
src/lib/evas/canvas/evas_types.eot
src/lib/evas/common/language/evas_bidi_utils.c
src/lib/evas/common/language/evas_bidi_utils.h
src/tests/evas/evas_suite.c
src/tests/evas/evas_suite.h
src/tests/evas/evas_test_object_smart.c [new file with mode: 0644]
src/tests/evas/evas_test_text.c
src/tests/evas/evas_test_textblock.c