X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Ftext-controls%2Ftext-label-impl.cpp;h=bf8c866903fdc7d224dcf12adc08edab5612bef1;hb=02318dd256a2edbef78a37cd40e153279385cc94;hp=2e3278bc6680da9ac0d0e50f095e1ff908cd7ba6;hpb=39fc99671f79f683a834406e24edf485752c600d;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp index 2e3278b..bf8c866 100644 --- a/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2016 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. @@ -680,13 +680,7 @@ void TextLabel::OnStyleChange( Toolkit::StyleManager styleManager, StyleChange:: case StyleChange::DEFAULT_FONT_SIZE_CHANGE: { - DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::OnStyleChange StyleChange::DEFAULT_FONT_SIZE_CHANGE (%f)\n", mController->GetDefaultPointSize() ); - - if ( (mController->GetDefaultPointSize() <= 0.0f) ) // If DefaultPointSize not set by Property system it will be 0.0f - { - // Property system did not set the PointSize so should update it. - // todo instruct text-controller to update model - } + GetImpl( styleManager ).ApplyThemeStyle( Toolkit::Control( GetOwner() ) ); break; } case StyleChange::THEME_CHANGE: @@ -711,7 +705,9 @@ void TextLabel::OnRelayout( const Vector2& size, RelayoutContainer& container ) { DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::OnRelayout\n" ); - if( mController->Relayout( size ) || + const Text::Controller::UpdateTextType updateTextType = mController->Relayout( size ); + + if( ( Text::Controller::NONE_UPDATED != ( Text::Controller::MODEL_UPDATED & updateTextType ) ) || !mRenderer ) { if( !mRenderer ) @@ -745,9 +741,8 @@ void TextLabel::RenderText() if( renderableActor ) { - // TODO: Scroll and alignment needs to be refactored. - const Vector2& alignmentOffset = mController->GetAlignmentOffset(); - renderableActor.SetPosition( 0.f, alignmentOffset.y ); + const Vector2& scrollOffset = mController->GetScrollPosition(); + renderableActor.SetPosition( scrollOffset.x, scrollOffset.y ); self.Add( renderableActor ); } @@ -764,15 +759,15 @@ void TextLabel::SetUpAutoScrolling() { const Size& controlSize = mController->GetView().GetControlSize(); const Size offScreenSize = GetNaturalSize().GetVectorXY(); // As relayout of text may not be done at this point natural size is used to get size. Single line scrolling only. - const Vector2& alignmentOffset = mController->GetAlignmentOffset(); + const float alignmentOffset = mController->GetAutoScrollLineAlignment(); const Text::CharacterDirection direction = mController->GetAutoScrollDirection(); - DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::SetUpAutoScrolling alignmentOffset[%f,%f] offScreenSize[%f,%f] controlSize[%f,%f]\n", - alignmentOffset.x, alignmentOffset.y, offScreenSize.x,offScreenSize.y , controlSize.x,controlSize.y); + DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::SetUpAutoScrolling alignmentOffset[%f] offScreenSize[%f,%f] controlSize[%f,%f]\n", + alignmentOffset, offScreenSize.x,offScreenSize.y , controlSize.x,controlSize.y ); if ( !mTextScroller ) { - DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::SetUpAutoScrolling Creating default TextScoller\n"); + DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::SetUpAutoScrolling Creating default TextScoller\n" ); // If speed, loopCount or gap not set via property system then will need to create a TextScroller with defaults mTextScroller = Text::TextScroller::New( *this ); @@ -811,7 +806,7 @@ void TextLabel::OnStageConnection( int depth ) void TextLabel::TextChanged() { - // TextLabel does not provide a signal for this + // TextLabel does not provide a signal for this. } void TextLabel::MaxLengthReached() @@ -819,6 +814,11 @@ void TextLabel::MaxLengthReached() // Pure Virtual from TextController Interface, only needed when inputting text } +void TextLabel::InputStyleChanged( Text::InputStyle::Mask inputStyleMask ) +{ + // TextLabel does not provide a signal for this. +} + void TextLabel::ScrollingFinished() { // Pure Virtual from TextScroller Interface @@ -829,7 +829,7 @@ void TextLabel::ScrollingFinished() } TextLabel::TextLabel() -: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ), +: Control( ControlBehaviour( CONTROL_BEHAVIOUR_DEFAULT ) ), mRenderingBackend( DEFAULT_RENDERING_BACKEND ), mHasBeenStaged( false ) {