Support paragraph tag <p> in markup 84/270384/16
authorssabah <s.sabah@samsung.com>
Wed, 26 Jan 2022 16:00:03 +0000 (18:00 +0200)
committerssabah <s.sabah@samsung.com>
Tue, 22 Feb 2022 13:31:04 +0000 (15:31 +0200)
commit29bbe2381a1cfdd96757dfd441e7f9747560b2c8
tree7a92051eade3eaa9272a18346d069655058d9d25
parenta3c24db302ffb83a32a0b5d8fba0b2c9de2b6634
Support paragraph tag <p> in markup

Paragraph tag is used as block of text start & end with new-line (implicitly).

The paragraph tag is nedded to support styles on paragraph level in markup. They are attributes for paragraph tag like: Align, Direction (LTR, RTL), Wrap, etc.

Example:
Text:
"Before paragraph <p>first paragraph</p><p>second paragraph</p><p>new line \n third paragraph</p>After paragraph"

Output:
============================
| Before paragraph         |
| first paragraph          |
| second paragraph         |
| new line                 |
| third paragraph          |
| After paragraph          |
============================

How to apply it in TextEditor:
 textEditor.SetProperty(TextEditor::Property::ENABLE_MARKUP, true);
 textEditor.SetProperty(TextEditor::Property::TEXT, "text one <p>Paragraph two</p> text three <p>Paragraph four</p> text five");

How to apply it in TextLabel:
 textLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
 textLabel.SetProperty(TextLabel::Property::ENABLE_MARKUP, true);
 textLabel.SetProperty(TextLabel::Property::TEXT, "text one <p>Paragraph two</p> text three <p>Paragraph four</p> text five");

Change-Id: Icee044db488d82646758ccc59a23ce896a3e28c7
28 files changed:
automated-tests/src/dali-toolkit-internal/CMakeLists.txt
automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/toolkit-text-utils.cpp
automated-tests/src/dali-toolkit-internal/utc-Dali-BoundedParagraph-Functions.cpp [new file with mode: 0644]
automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Markup.cpp
automated-tests/src/dali-toolkit-internal/utc-Dali-TextEditor-internal.cpp
automated-tests/src/dali-toolkit-internal/utc-Dali-TextLabel-internal.cpp
automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp
automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp
automated-tests/src/dali-toolkit/utc-Dali-TextLabel.cpp
dali-toolkit/devel-api/text/text-utils-devel.cpp
dali-toolkit/internal/file.list
dali-toolkit/internal/text/bounded-paragraph-helper-functions.cpp [new file with mode: 0644]
dali-toolkit/internal/text/bounded-paragraph-helper-functions.h [new file with mode: 0644]
dali-toolkit/internal/text/bounded-paragraph-run.h [new file with mode: 0644]
dali-toolkit/internal/text/character-run.h
dali-toolkit/internal/text/logical-model-impl.cpp
dali-toolkit/internal/text/logical-model-impl.h
dali-toolkit/internal/text/markup-processor.cpp
dali-toolkit/internal/text/markup-processor.h
dali-toolkit/internal/text/rendering/view-model.cpp
dali-toolkit/internal/text/rendering/view-model.h
dali-toolkit/internal/text/text-controller-text-updater.cpp
dali-toolkit/internal/text/text-model-interface.h
dali-toolkit/internal/text/text-model.cpp
dali-toolkit/internal/text/text-model.h
dali-toolkit/internal/text/text-view-interface.h
dali-toolkit/internal/text/text-view.cpp
dali-toolkit/internal/text/text-view.h