/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 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.
// EXTERNAL INCLUDES
#include <cfloat>
-#include <dali/public-api/images/buffer-image.h>
#include <dali/public-api/math/vector2.h>
#include <dali/public-api/math/vector4.h>
#include <dali/public-api/object/property-map.h>
if( mScrollBar )
{
float barWidth = std::min( mTableOfButtons.GetNaturalSize().width, size.width ) - 2.f * mScrollBarPadding.x;
- mScrollBar.SetSize( Vector2( 0.0f, barWidth ) );
+ mScrollBar.SetProperty( Actor::Property::SIZE, Vector2( 0.0f, barWidth ) );
}
}
mMaxSize = maxSize;
if (mScrollView && mToolbarLayer )
{
- mScrollView.SetMaximumSize( mMaxSize );
- mToolbarLayer.SetMaximumSize( mMaxSize );
+ mScrollView.SetProperty( Actor::Property::MAXIMUM_SIZE, mMaxSize );
+ mToolbarLayer.SetProperty( Actor::Property::MAXIMUM_SIZE, mMaxSize );
}
}
void TextSelectionToolbar::SetUpScrollView()
{
- mScrollView.SetName("TextSelectionScrollView");
+ mScrollView.SetProperty( Dali::Actor::Property::NAME,"TextSelectionScrollView");
mScrollView.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::ALL_DIMENSIONS );
- mScrollView.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- mScrollView.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
+ mScrollView.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER_LEFT );
+ mScrollView.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER_LEFT );
mScrollView.SetScrollingDirection( PanGestureDetector::DIRECTION_HORIZONTAL, Degree( 40.0f ) );
mScrollView.SetAxisAutoLock( true );
mScrollView.ScrollStartedSignal().Connect( this, &TextSelectionToolbar::OnScrollStarted );
mScrollView.ScrollCompletedSignal().Connect( this, &TextSelectionToolbar::OnScrollCompleted );
+ mScrollView.SetProperty( Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_TO_BOUNDING_BOX ); // In a new layer, so clip to scroll-view's bounding box
mRulerX = new DefaultRuler(); // IntrusivePtr which is unreferenced when ScrollView is destroyed.
// Create Layer to house the toolbar.
mToolbarLayer = Layer::New();
mToolbarLayer.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::ALL_DIMENSIONS );
- mToolbarLayer.SetAnchorPoint( AnchorPoint::CENTER );
- mToolbarLayer.SetParentOrigin( ParentOrigin::CENTER );
+ mToolbarLayer.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER );
+ mToolbarLayer.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
if( !mScrollView )
{
// Toolbar must start with at least one option, adding further options with increase it's size
mTableOfButtons = Dali::Toolkit::TableView::New( 1, 1 );
mTableOfButtons.SetFitHeight( 0 );
- mTableOfButtons.SetParentOrigin( ParentOrigin::CENTER_LEFT );
- mTableOfButtons.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
+ mTableOfButtons.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER_LEFT );
+ mTableOfButtons.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER_LEFT );
mScrollView.Add( mTableOfButtons );
mToolbarLayer.Add( mScrollView );
if( ! mScrollBar )
{
Toolkit::ImageView indicator = Toolkit::ImageView::New();
- indicator.SetParentOrigin( ParentOrigin::TOP_LEFT );
- indicator.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+ indicator.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT );
+ indicator.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT );
indicator.SetStyleName( "TextSelectionScrollIndicator" );
mScrollBar = Toolkit::ScrollBar::New( Toolkit::ScrollBar::Horizontal );
- mScrollBar.SetName( "Text popup scroll bar" );
+ mScrollBar.SetProperty( Dali::Actor::Property::NAME, "Text popup scroll bar" );
mScrollBar.SetStyleName( "TextSelectionScrollBar" );
- mScrollBar.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
- mScrollBar.SetAnchorPoint( AnchorPoint::TOP_LEFT );
- mScrollBar.SetPosition( mScrollBarPadding.x, -mScrollBarPadding.y );
+ mScrollBar.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::BOTTOM_LEFT );
+ mScrollBar.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT );
+ mScrollBar.SetProperty( Actor::Property::POSITION, Vector2( mScrollBarPadding.x, -mScrollBarPadding.y ));
mScrollBar.SetResizePolicy( Dali::ResizePolicy::FIT_TO_CHILDREN, Dali::Dimension::WIDTH );
- mScrollBar.SetOrientation( Quaternion( Radian( 1.5f * Math::PI ), Vector3::ZAXIS ) );
+ mScrollBar.SetProperty( Actor::Property::ORIENTATION, Quaternion( Quaternion( Radian( 1.5f * Math::PI ), Vector3::ZAXIS ) ) );
mScrollBar.SetScrollIndicator( indicator );
mScrollBar.GetPanGestureDetector().DetachAll();
mScrollView.Add( mScrollBar );
{
mScrollView.SetOvershootEnabled( true );
}
- mTableOfButtons.SetSensitive( false );
+ mTableOfButtons.SetProperty( Actor::Property::SENSITIVE, false );
}
void TextSelectionToolbar::OnScrollCompleted( const Vector2& position )
{
mFirstScrollEnd = true;
- mTableOfButtons.SetSensitive( true );
+ mTableOfButtons.SetProperty( Actor::Property::SENSITIVE, true );
}
void TextSelectionToolbar::AddOption( Actor& option )
for( unsigned int i = 0; i < mDividerIndexes.Count(); ++i )
{
Actor divider = mTableOfButtons.GetChildAt( Toolkit::TableView::CellPosition( 0, mDividerIndexes[ i ] ) );
- divider.SetSize( size );
+ divider.SetProperty( Actor::Property::SIZE, size );
}
RelayoutRequest();
}
mScrollBarPadding = padding;
if( mScrollBar )
{
- mScrollBar.SetPosition( mScrollBarPadding.x, -mScrollBarPadding.y );
+ mScrollBar.SetProperty( Actor::Property::POSITION, Vector2( mScrollBarPadding.x, -mScrollBarPadding.y ));
}
RelayoutRequest();