X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fvisual-factory-impl.cpp;h=57290a10848fc80a4bdf667e4116b39d56cceb57;hp=ce19a6b26a4a7eb149ce7c8be13102241cbcee47;hb=c93f6281a8bafc5b7ba5f0dcdad0eb675b8e3436;hpb=e1f62b191823249c41ecbdf79ac33b082e5b8dc9 diff --git a/dali-toolkit/internal/visuals/visual-factory-impl.cpp b/dali-toolkit/internal/visuals/visual-factory-impl.cpp index ce19a6b..57290a1 100644 --- a/dali-toolkit/internal/visuals/visual-factory-impl.cpp +++ b/dali-toolkit/internal/visuals/visual-factory-impl.cpp @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include @@ -77,6 +78,7 @@ const char* const BROKEN_IMAGE_FILE_NAME = "broken.png"; ///< The file name of t VisualFactory::VisualFactory(bool debugEnabled) : mFactoryCache(), mImageVisualShaderFactory(), + mTextVisualShaderFactory(), mSlotDelegate(this), mDebugEnabled(debugEnabled), mPreMultiplyOnLoad(true) @@ -207,7 +209,7 @@ Toolkit::Visual::Base VisualFactory::CreateVisual(const Property::Map& propertyM case Toolkit::Visual::TEXT: { - visualPtr = TextVisual::New(GetFactoryCache(), propertyMap); + visualPtr = TextVisual::New(GetFactoryCache(), GetTextVisualShaderFactory(), propertyMap); break; } @@ -388,9 +390,13 @@ void VisualFactory::SetBrokenImageUrl(Toolkit::StyleManager& styleManager) if(styleManager) { - customBrokenImageUrlList = Toolkit::DevelStyleManager::GetBrokenImageUrlList(styleManager); - Property::Map config = Toolkit::DevelStyleManager::GetConfigurations(styleManager); - config["brokenImageUrl"].Get(brokenImageUrl); + customBrokenImageUrlList = Toolkit::DevelStyleManager::GetBrokenImageUrlList(styleManager); + const Property::Map& config = Toolkit::DevelStyleManager::GetConfigurations(styleManager); + const auto brokenImageUrlValue = config.Find("brokenImageUrl", Property::Type::STRING); + if(brokenImageUrlValue) + { + brokenImageUrlValue->Get(brokenImageUrl); + } } // Add default image @@ -422,6 +428,15 @@ ImageVisualShaderFactory& VisualFactory::GetImageVisualShaderFactory() return *mImageVisualShaderFactory; } +TextVisualShaderFactory& VisualFactory::GetTextVisualShaderFactory() +{ + if(!mTextVisualShaderFactory) + { + mTextVisualShaderFactory = std::unique_ptr(new TextVisualShaderFactory()); + } + return *mTextVisualShaderFactory; +} + } // namespace Internal } // namespace Toolkit