X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Ftext-model.cpp;h=6001a6e81af55bb4176eb27f1f9277b126e6738f;hp=26a9be8fc4350fd6bda4842d08a4d6432ae8f79b;hb=3a6adcbec75784b051cb9ebaf204d72b553ea355;hpb=1bf8666355ccc3b6ca6dde1cf4be9f0bc6e35875 diff --git a/dali-toolkit/internal/text/text-model.cpp b/dali-toolkit/internal/text/text-model.cpp index 26a9be8..6001a6e 100644 --- a/dali-toolkit/internal/text/text-model.cpp +++ b/dali-toolkit/internal/text/text-model.cpp @@ -18,12 +18,20 @@ // CLASS HEADER #include +// EXTERNAL INCLUDES +#include + namespace Dali { namespace Toolkit { namespace Text { +namespace +{ +const char* DALI_ENV_MATCH_SYSTEM_LANGUAGE_DIRECTION("DALI_MATCH_SYSTEM_LANGUAGE_DIRECTION"); +} + ModelPtr Model::New() { return ModelPtr(new Model()); @@ -59,6 +67,11 @@ DevelText::VerticalLineAlignment::Type Model::GetVerticalLineAlignment() const return mVerticalLineAlignment; } +DevelText::EllipsisPosition::Type Model::GetEllipsisPosition() const +{ + return mEllipsisPosition; +} + bool Model::IsTextElideEnabled() const { return mElideEnabled; @@ -89,6 +102,26 @@ Length Model::GetNumberOfGlyphs() const return mVisualModel->mGlyphs.Count(); } +GlyphIndex Model::GetStartIndexOfElidedGlyphs() const +{ + return mVisualModel->GetStartIndexOfElidedGlyphs(); +} + +GlyphIndex Model::GetEndIndexOfElidedGlyphs() const +{ + return mVisualModel->GetEndIndexOfElidedGlyphs(); +} + +GlyphIndex Model::GetFirstMiddleIndexOfElidedGlyphs() const +{ + return mVisualModel->GetFirstMiddleIndexOfElidedGlyphs(); +} + +GlyphIndex Model::GetSecondMiddleIndexOfElidedGlyphs() const +{ + return mVisualModel->GetSecondMiddleIndexOfElidedGlyphs(); +} + const GlyphInfo* const Model::GetGlyphs() const { return mVisualModel->mGlyphs.Begin(); @@ -121,7 +154,7 @@ const ColorIndex* const Model::GetBackgroundColorIndices() const bool const Model::IsMarkupBackgroundColorSet() const { - return (mVisualModel->mBackgroundColorIndices.Count() > 0); + return (mVisualModel->mBackgroundColors.Count() > 0); } const Vector4& Model::GetDefaultColor() const @@ -159,6 +192,21 @@ float Model::GetUnderlineHeight() const return mVisualModel->GetUnderlineHeight(); } +Text::Underline::Type Model::GetUnderlineType() const +{ + return mVisualModel->GetUnderlineType(); +} + +float Model::GetDashedUnderlineWidth() const +{ + return mVisualModel->GetDashedUnderlineWidth(); +} + +float Model::GetDashedUnderlineGap() const +{ + return mVisualModel->GetDashedUnderlineGap(); +} + Length Model::GetNumberOfUnderlineRuns() const { return mVisualModel->GetNumberOfUnderlineRuns(); @@ -208,6 +256,20 @@ Length Model::GetHyphensCount() const { return mVisualModel->mHyphen.glyph.Size(); } +const Vector4& Model::GetStrikethroughColor() const +{ + return mVisualModel->GetStrikethroughColor(); +} + +bool Model::IsStrikethroughEnabled() const +{ + return mVisualModel->IsStrikethroughEnabled(); +} + +float Model::GetStrikethroughHeight() const +{ + return mVisualModel->GetStrikethroughHeight(); +} Model::Model() : mLogicalModel(), @@ -221,10 +283,18 @@ Model::Model() mAlignmentOffset(0.0f), mElideEnabled(false), mIgnoreSpacesAfterText(true), - mMatchSystemLanguageDirection(false) + mMatchLayoutDirection(DevelText::MatchLayoutDirection::INHERIT), + mEllipsisPosition(DevelText::EllipsisPosition::END) { mLogicalModel = LogicalModel::New(); mVisualModel = VisualModel::New(); + + // Check environment variable for DALI_MATCH_SYSTEM_LANGUAGE_DIRECTION + auto match = Dali::EnvironmentVariable::GetEnvironmentVariable(DALI_ENV_MATCH_SYSTEM_LANGUAGE_DIRECTION); + if(match && (std::atoi(match) == 0)) + { + mMatchLayoutDirection = DevelText::MatchLayoutDirection::CONTENTS; + } } Model::~Model()