/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 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.
}
void VisualModel::CreateCharacterToGlyphTable( CharacterIndex startIndex,
+ GlyphIndex startGlyphIndex,
Length numberOfCharacters )
{
if( 0u == numberOfCharacters )
// 2) Traverse the glyphs and set the glyph indices per character.
// Index to the glyph.
- const GlyphIndex startGlyphIndex = updateCurrentBuffer ? *( mCharactersToGlyph.Begin() + startIndex ) : 0u;
GlyphIndex glyphIndex = startGlyphIndex;
CharacterIndex characterIndex = startIndex;
const CharacterIndex lastCharacterIndexPlusOne = startIndex + numberOfCharacters;
}
void VisualModel::CreateGlyphsPerCharacterTable( CharacterIndex startIndex,
+ GlyphIndex startGlyphIndex,
Length numberOfCharacters )
{
if( 0u == numberOfCharacters )
// 2) Traverse the glyphs and set the number of glyphs per character.
- // The glyph index.
- const GlyphIndex glyphIndex = updateCurrentBuffer ? *( mCharactersToGlyph.Begin() + startIndex ) : 0u;
Length traversedCharacters = 0;
// The number of 'characters per glyph' equal to zero.
Length zeroCharactersPerGlyph = 0u;
- for( Vector<Length>::ConstIterator it = mCharactersPerGlyph.Begin() + glyphIndex,
+ for( Vector<Length>::ConstIterator it = mCharactersPerGlyph.Begin() + startGlyphIndex,
endIt = mCharactersPerGlyph.End();
( it != endIt ) && ( traversedCharacters < numberOfCharacters );
++it )
mShadowColor = shadowColor;
}
+void VisualModel::SetShadowBlurRadius( const float& shadowBlurRadius )
+{
+ mShadowBlurRadius = shadowBlurRadius;
+}
+
void VisualModel::SetUnderlineColor( const Vector4& color )
{
mUnderlineColor = color;
mUnderlineColorSet = true;
}
+void VisualModel::SetOutlineColor( const Vector4& color )
+{
+ mOutlineColor = color;
+}
+
void VisualModel::SetUnderlineEnabled( bool enabled )
{
mUnderlineEnabled = enabled;
mUnderlineHeight = height;
}
+void VisualModel::SetOutlineWidth( float width )
+{
+ mOutlineWidth = width;
+}
+
const Vector4& VisualModel::GetTextColor() const
{
return mTextColor;
return mShadowColor;
}
+const float& VisualModel::GetShadowBlurRadius() const
+{
+ return mShadowBlurRadius;
+}
+
const Vector4& VisualModel::GetUnderlineColor() const
{
return mUnderlineColor;
}
+const Vector4& VisualModel::GetOutlineColor() const
+{
+ return mOutlineColor;
+}
+
bool VisualModel::IsUnderlineEnabled() const
{
return mUnderlineEnabled;
return mUnderlineHeight;
}
+float VisualModel::GetOutlineWidth() const
+{
+ return mOutlineWidth;
+}
+
+Length VisualModel::GetNumberOfUnderlineRuns() const
+{
+ return mUnderlineRuns.Count();
+}
+
void VisualModel::ClearCaches()
{
mCachedLineIndex = 0u;
mTextColor( Color::BLACK ),
mShadowColor( Color::BLACK ),
mUnderlineColor( Color::BLACK ),
- mShadowOffset( Vector2::ZERO ),
+ mOutlineColor( Color::WHITE ),
+ mControlSize(),
+ mShadowOffset(),
mUnderlineHeight( 0.0f ),
+ mOutlineWidth( 0.0f ),
+ mShadowBlurRadius( 0.0f ),
mNaturalSize(),
mLayoutSize(),
mCachedLineIndex( 0u ),