X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Ftext-controller.cpp;h=f5d1bb7bba284dc50adf21b5a6c8d31777411cb8;hb=29a52105283ce8ced672ed92545daeacf882316a;hp=5ebd05a59c215ed2d1ab8ab8685a57eaa2834955;hpb=fb87251cfeff34418a36798700b81786e522018a;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/text-controller.cpp b/dali-toolkit/internal/text/text-controller.cpp index 5ebd05a..f5d1bb7 100644 --- a/dali-toolkit/internal/text/text-controller.cpp +++ b/dali-toolkit/internal/text/text-controller.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -667,6 +667,9 @@ void Controller::SetFontSizeScale(float scale) { mImpl->mFontSizeScale = scale; + // No relayout is required + if(!mImpl->mFontSizeScaleEnabled) return; + // Update the cursor position if it's in editing mode UpdateCursorPosition(mImpl->mEventData); @@ -681,6 +684,24 @@ float Controller::GetFontSizeScale() const return mImpl->mFontDefaults ? mImpl->mFontSizeScale : 1.0f; } +void Controller::SetFontSizeScaleEnabled(bool enabled) +{ + mImpl->mFontSizeScaleEnabled = enabled; + + // Update the cursor position if it's in editing mode + UpdateCursorPosition(mImpl->mEventData); + + // Clear the font-specific data + mImpl->ClearFontData(); + + mImpl->RequestRelayout(); +} + +bool Controller::IsFontSizeScaleEnabled() const +{ + return mImpl->mFontSizeScaleEnabled; +} + void Controller::SetDefaultFontSize(float fontSize, FontSizeType type) { EnsureCreated(mImpl->mFontDefaults); @@ -805,6 +826,42 @@ float Controller::GetUnderlineHeight() const return mImpl->mModel->mVisualModel->GetUnderlineHeight(); } +void Controller::SetUnderlineType(Text::Underline::Type type) +{ + mImpl->mModel->mVisualModel->SetUnderlineType(type); + + mImpl->RequestRelayout(); +} + +Text::Underline::Type Controller::GetUnderlineType() const +{ + return mImpl->mModel->mVisualModel->GetUnderlineType(); +} + +void Controller::SetDashedUnderlineWidth(float width) +{ + mImpl->mModel->mVisualModel->SetDashedUnderlineWidth(width); + + mImpl->RequestRelayout(); +} + +float Controller::GetDashedUnderlineWidth() const +{ + return mImpl->mModel->mVisualModel->GetDashedUnderlineWidth(); +} + +void Controller::SetDashedUnderlineGap(float gap) +{ + mImpl->mModel->mVisualModel->SetDashedUnderlineGap(gap); + + mImpl->RequestRelayout(); +} + +float Controller::GetDashedUnderlineGap() const +{ + return mImpl->mModel->mVisualModel->GetDashedUnderlineGap(); +} + void Controller::SetOutlineColor(const Vector4& color) { mImpl->mModel->mVisualModel->SetOutlineColor(color);