2 * Copyright (c) 2022 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali-toolkit/internal/text/spannable/spans/foreground-color-span-impl.h>
22 #include <dali-toolkit/internal/text/color-run.h>
23 #include <dali-toolkit/internal/text/markup-tags-and-attributes.h>
33 struct ForegroundColorSpan::Impl
35 Vector4 mForegroundColor; ///< The foreground-color of the characters.
36 bool mForegroundColorDefined : 1; ///< Whether the foreground-color is defined.
39 ForegroundColorSpan::ForegroundColorSpan()
42 mImpl = std::make_unique<Impl>();
45 ForegroundColorSpan ::~ForegroundColorSpan()
49 Dali::Toolkit::Text::ForegroundColorSpan ForegroundColorSpan::New(Vector4 color)
51 ForegroundColorSpanPtr object = new ForegroundColorSpan();
52 object->SetForegroundColor(color);
54 Dali::Toolkit::Text::ForegroundColorSpan handle = Dali::Toolkit::Text::ForegroundColorSpan(object.Get());
60 const Vector4 ForegroundColorSpan::GetForegroundColor() const
62 return mImpl->mForegroundColor;
65 bool ForegroundColorSpan::IsForegroundColorDefined() const
67 return mImpl->mForegroundColorDefined;
70 void ForegroundColorSpan::SetForegroundColor(Vector4 color)
72 mImpl->mForegroundColor = color;
73 mImpl->mForegroundColorDefined = true;
76 } // namespace Internal
80 } // namespace Toolkit