X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Ftext%2Ftext-visual.cpp;h=889b57dcf2a0cfe4d050f222e462ed3f8a4abbea;hb=b0ceacb1c9c365046a3129eb1f1d8502b418e461;hp=55b1478dffdb4a23e646325eb149b04b8bed3b06;hpb=b29c756888c1cfbd6d5e6d576d6c7b9959c08871;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/text/text-visual.cpp b/dali-toolkit/internal/visuals/text/text-visual.cpp index 55b1478..889b57d 100644 --- a/dali-toolkit/internal/visuals/text/text-visual.cpp +++ b/dali-toolkit/internal/visuals/text/text-visual.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 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. @@ -74,7 +74,11 @@ std::string GetHorizontalAlignment( Toolkit::Text::Layout::HorizontalAlignment a HORIZONTAL_ALIGNMENT_STRING_TABLE, HORIZONTAL_ALIGNMENT_STRING_TABLE_COUNT ); - return std::string( name ); + if( name ) + { + return std::string( name ); + } + return std::string(); } std::string GetVerticalAlignment( Toolkit::Text::Layout::VerticalAlignment alignment ) @@ -83,7 +87,11 @@ std::string GetVerticalAlignment( Toolkit::Text::Layout::VerticalAlignment align VERTICAL_ALIGNMENT_STRING_TABLE, VERTICAL_ALIGNMENT_STRING_TABLE_COUNT ); - return std::string( name ); + if( name ) + { + return std::string( name ); + } + return std::string(); } const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( @@ -248,7 +256,7 @@ void TextVisual::DoCreatePropertyMap( Property::Map& map ) const GetFontStyleProperty( mController, value, Text::FontStyle::DEFAULT ); map.Insert( Toolkit::TextVisual::Property::FONT_STYLE, value ); - map.Insert( Toolkit::TextVisual::Property::POINT_SIZE, mController->GetDefaultPointSize() ); + map.Insert( Toolkit::TextVisual::Property::POINT_SIZE, mController->GetDefaultFontSize( Text::Controller::POINT_SIZE ) ); map.Insert( Toolkit::TextVisual::Property::MULTI_LINE, mController->IsMultiLineEnabled() ); @@ -261,6 +269,16 @@ void TextVisual::DoCreatePropertyMap( Property::Map& map ) const map.Insert( Toolkit::TextVisual::Property::ENABLE_MARKUP, mController->IsMarkupProcessorEnabled() ); } +void TextVisual::DoCreateInstancePropertyMap( Property::Map& map ) const +{ + map.Clear(); + map.Insert( Toolkit::DevelVisual::Property::TYPE, Toolkit::DevelVisual::TEXT ); + std::string text; + mController->GetText( text ); + map.Insert( Toolkit::TextVisual::Property::TEXT, text ); +} + + TextVisual::TextVisual( VisualFactoryCache& factoryCache ) : Visual::Base( factoryCache ), mController( Text::Controller::New() ), @@ -369,9 +387,9 @@ void TextVisual::DoSetProperty( Dali::Property::Index index, const Dali::Propert case Toolkit::TextVisual::Property::POINT_SIZE: { const float pointSize = propertyValue.Get(); - if( !Equals( mController->GetDefaultPointSize(), pointSize ) ) + if( !Equals( mController->GetDefaultFontSize( Text::Controller::POINT_SIZE ), pointSize ) ) { - mController->SetDefaultPointSize( pointSize ); + mController->SetDefaultFontSize( pointSize, Text::Controller::POINT_SIZE ); } break; } @@ -447,6 +465,7 @@ void TextVisual::UpdateRenderer( bool initializeRendererAndTexture ) } // Nothing else to do if the relayout size is zero. + ResourceReady(); return; } @@ -500,6 +519,9 @@ void TextVisual::UpdateRenderer( bool initializeRendererAndTexture ) mImpl->mRenderer.SetTextures( textureSet ); control.AddRenderer( mImpl->mRenderer ); + + // Text rendered and ready to display + ResourceReady(); } } }