{
if( impl.mTextScroller )
{
- impl.mTextScroller->SetLoopCount( 0 ); // Causes the current animation to finish playing (0)
+ impl.mTextScroller->StopScrolling();
}
}
// If request is enable (true) then start autoscroll as not already running
float TextLabel::GetHeightForWidth( float width )
{
- return mController->GetHeightForWidth( width );
+ Padding padding;
+ Self().GetPadding( padding );
+ return mController->GetHeightForWidth( width ) + padding.top + padding.bottom;
}
void TextLabel::OnRelayout( const Vector2& size, RelayoutContainer& container )
{
DALI_LOG_INFO( gLogFilter, Debug::General, "TextLabel::OnRelayout\n" );
- const Text::Controller::UpdateTextType updateTextType = mController->Relayout( size );
+ Padding padding;
+ Self().GetPadding( padding );
+ Vector2 contentSize( size.x - ( padding.left + padding.right ), size.y - ( padding.top + padding.bottom ) );
+
+
+ const Text::Controller::UpdateTextType updateTextType = mController->Relayout( contentSize );
if( ( Text::Controller::NONE_UPDATED != ( Text::Controller::MODEL_UPDATED & updateTextType ) ) ||
!mRenderer )
if( renderableActor )
{
const Vector2& scrollOffset = mController->GetTextModel()->GetScrollPosition();
- renderableActor.SetPosition( scrollOffset.x + alignmentOffset, scrollOffset.y );
+ Padding padding;
+ self.GetPadding( padding );
+ renderableActor.SetPosition( scrollOffset.x + alignmentOffset + padding.left, scrollOffset.y + padding.top );
self.Add( renderableActor );
}
// If speed, loopCount or gap not set via property system then will need to create a TextScroller with defaults
mTextScroller = Text::TextScroller::New( *this );
}
- mTextScroller->SetParameters( mRenderableActor, controlSize, offScreenSize, direction, alignmentOffset );
+ mTextScroller->SetParameters( mRenderableActor, controlSize, offScreenSize, direction, alignmentOffset, mController->GetHorizontalAlignment() );
Actor self = Self();
self.Add( mTextScroller->GetScrollingText() );