void TextOverlapController::Create( Application& app )
{
- Stage stage = Stage::GetCurrent();
- stage.KeyEventSignal().Connect( this, &TextOverlapController::OnKeyEvent );
+ Window window = app.GetWindow();
+ window.KeyEventSignal().Connect( this, &TextOverlapController::OnKeyEvent );
- Vector2 stageSize = stage.GetSize();
+ Vector2 windowSize = window.GetSize();
mLabels[0] = TextLabel::New("Text Label 1");
mLabels[1] = TextLabel::New("Text Label 2");
- mLabels[0].SetName("Label1");
- mLabels[1].SetName("Label2");
+ mLabels[0].SetProperty( Dali::Actor::Property::NAME,"Label1");
+ mLabels[1].SetProperty( Dali::Actor::Property::NAME,"Label2");
- mLabels[0].SetProperty( DevelActor::Property::SIBLING_ORDER, 1 );
- mLabels[1].SetProperty( DevelActor::Property::SIBLING_ORDER, 2 );
+ mLabels[0].SetProperty( Dali::DevelActor::Property::SIBLING_ORDER, 1 );
+ mLabels[1].SetProperty( Dali::DevelActor::Property::SIBLING_ORDER, 2 );
mLabels[0].SetProperty( Control::Property::BACKGROUND, Color::RED );
mLabels[1].SetProperty( Control::Property::BACKGROUND, Color::YELLOW );
for(int i=0; i<NUMBER_OF_LABELS; ++i )
{
mLabels[i].SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
- mLabels[i].SetAnchorPoint( AnchorPoint::TOP_LEFT );
- mLabels[i].SetParentOrigin( ParentOrigin::TOP_LEFT );
- mLabels[i].SetPosition( 0, (i*2+1) * stageSize.height * 0.25f );
+ mLabels[i].SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT );
+ mLabels[i].SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT );
+ mLabels[i].SetProperty( Actor::Property::POSITION, Vector2( 0, (i*2+1) * windowSize.height * 0.25f ));
}
- stage.Add( mLabels[0] );
- stage.Add( mLabels[1] );
+ window.Add( mLabels[0] );
+ window.Add( mLabels[1] );
mSwapButton = PushButton::New();
mSwapButton.SetProperty( Button::Property::LABEL, "Swap depth order");
- mSwapButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
- mSwapButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+ mSwapButton.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::BOTTOM_CENTER );
+ mSwapButton.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::BOTTOM_CENTER );
mSwapButton.ClickedSignal().Connect( this, &TextOverlapController::OnClicked );
mSwapButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
mSwapButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
- stage.Add( mSwapButton );
+ window.Add( mSwapButton );
- Layer rootLayer = stage.GetRootLayer();
- rootLayer.SetName("RootLayer");
+ Layer rootLayer = window.GetRootLayer();
+ rootLayer.SetProperty( Dali::Actor::Property::NAME,"RootLayer");
mPanDetector = PanGestureDetector::New();
mPanDetector.Attach( rootLayer );
void TextOverlapController::OnPan( Actor actor, const PanGesture& gesture )
{
- if( ! mGrabbedActor || gesture.state == PanGesture::Started )
+ const Gesture::State state = gesture.GetState();
+ if( ! mGrabbedActor || state == PanGesture::Started )
{
+ const Vector2& gesturePosition = gesture.GetPosition();
for( int i=0; i<NUMBER_OF_LABELS; ++i )
{
- Vector3 position = mLabels[i].GetCurrentPosition();
- Vector3 size = mLabels[i].GetCurrentSize();
- if( gesture.position.y > position.y - size.y * 0.5f &&
- gesture.position.y <= position.y + size.y * 0.5f )
+ Vector3 position = mLabels[i].GetCurrentProperty< Vector3 >( Actor::Property::POSITION );
+ Vector3 size = mLabels[i].GetCurrentProperty< Vector3 >( Actor::Property::SIZE );
+ if( gesturePosition.y > position.y - size.y * 0.5f &&
+ gesturePosition.y <= position.y + size.y * 0.5f )
{
mGrabbedActor = mLabels[i];
break;
}
}
}
- else if( mGrabbedActor && gesture.state == PanGesture::Continuing )
+ else if( mGrabbedActor && state == PanGesture::Continuing )
{
- Vector2 stageSize = Stage::GetCurrent().GetSize();
- Vector3 size = mGrabbedActor.GetCurrentSize();
- float y = Clamp( gesture.position.y, size.y * 0.5f, stageSize.y - size.y*0.5f );
- mGrabbedActor.SetPosition( 0, y );
+ Vector2 windowSize = mApplication.GetWindow().GetSize();
+ Vector3 size = mGrabbedActor.GetCurrentProperty< Vector3 >( Actor::Property::SIZE );
+ const Vector2& gesturePosition = gesture.GetPosition();
+
+ float y = Clamp( gesturePosition.y, size.y * 0.5f, windowSize.y - size.y*0.5f );
+ mGrabbedActor.SetProperty( Actor::Property::POSITION, Vector2( 0, y ));
}
else
{
void TextOverlapController::OnKeyEvent( const KeyEvent& keyEvent )
{
- if( keyEvent.state == KeyEvent::Down &&
+ if( keyEvent.GetState() == KeyEvent::DOWN &&
( IsKey( keyEvent, DALI_KEY_BACK ) ||
IsKey( keyEvent, DALI_KEY_ESCAPE ) ) )
{
}
else
{
- Dali::Layer l = Dali::Stage::GetCurrent().GetRootLayer();
+ Dali::Layer l = mApplication.GetWindow().GetRootLayer();
int so = l.GetProperty<int>(Dali::DevelActor::Property::SIBLING_ORDER);
l.SetProperty(Dali::DevelActor::Property::SIBLING_ORDER, so+1);
}
} // namespace Demo
-
-int main( int argc, char** argv )
+int DALI_EXPORT_API main( int argc, char** argv )
{
{
Application app = Application::New( &argc, &argv );