DALI_TYPE_REGISTRATION_BEGIN( Toolkit::TextSelectionToolbar, Toolkit::Control, Create );
DALI_PROPERTY_REGISTRATION( Toolkit, TextSelectionToolbar, "max-size", VECTOR2, MAX_SIZE )
+DALI_PROPERTY_REGISTRATION( Toolkit, TextSelectionToolbar, "enable-overshoot", BOOLEAN, ENABLE_OVERSHOOT )
DALI_TYPE_REGISTRATION_END()
impl.SetPopupMaxSize( value.Get< Vector2 >() );
break;
}
-
+ case Toolkit::TextSelectionToolbar::Property::ENABLE_OVERSHOOT:
+ {
+ impl.mScrollView.SetOvershootEnabled( value.Get< bool >() );
+ break;
+ }
} // switch
} // TextSelectionToolbar
}
value = impl.GetPopupMaxSize();
break;
}
+ case Toolkit::TextSelectionToolbar::Property::ENABLE_OVERSHOOT:
+ {
+ value = impl.mScrollView.IsOvershootEnabled();
+ break;
+ }
} // switch
}
return value;
void TextSelectionToolbar::SetPopupMaxSize( const Size& maxSize )
{
mMaxSize = maxSize;
+ if (mScrollView && mStencilLayer )
+ {
+ mScrollView.SetMaximumSize( mMaxSize );
+ mStencilLayer.SetMaximumSize( mMaxSize );
+ }
}
const Dali::Vector2& TextSelectionToolbar::GetPopupMaxSize() const
scrollView.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::ALL_DIMENSIONS );
scrollView.SetParentOrigin( ParentOrigin::CENTER_LEFT );
scrollView.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
- scrollView.SetMaximumSize( mMaxSize );
scrollView.SetScrollingDirection( PanGestureDetector::DIRECTION_HORIZONTAL, Degree( 40.0f ) );
scrollView.SetAxisAutoLock( true );
mStencilLayer = Layer::New();
mStencilLayer.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::ALL_DIMENSIONS );
mStencilLayer.SetParentOrigin( ParentOrigin::CENTER );
- mStencilLayer.SetMaximumSize( mMaxSize );
ImageActor stencil = CreateSolidColorActor( Color::RED );
stencil.SetDrawMode( DrawMode::STENCIL );
}
TextSelectionToolbar::TextSelectionToolbar()
-: Control( ControlBehaviour( ControlBehaviour( ACTOR_BEHAVIOUR_NONE ) ) ),
- mMaxSize ( DEFAULT_MAX_SIZE ),
+: Control( ControlBehaviour( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ) ),
+ mMaxSize (),
mIndexInTable( 0 ),
mDividerIndexes()
{