/*
- * Copyright (c) 2014 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.
gObjectCreatedCallBackCalled = true;
}
+static std::string GetButtonText( Button button )
+{
+ Property::Value value = button.GetProperty( Toolkit::Button::Property::LABEL );
+
+ Property::Map *labelProperty = value.GetMap();
+
+ std::string textLabel;
+
+ if ( labelProperty )
+ {
+ Property::Value* value = labelProperty->Find( Toolkit::TextVisual::Property::TEXT );
+ value->Get( textLabel );
+ }
+
+ return textLabel;
+}
+
+}
+
+int UtcDaliRadioButtonConstructorP(void)
+{
+ ToolkitTestApplication application;
+
+ RadioButton button;
+
+ DALI_TEST_CHECK( !button );
+ END_TEST;
+}
+
+int UtcDaliRadioButtonCopyConstructorP(void)
+{
+ ToolkitTestApplication application;
+
+ // Initialize an object, ref count == 1
+ RadioButton button = RadioButton::New();
+
+ RadioButton copy( button );
+ DALI_TEST_CHECK( copy );
+ END_TEST;
+}
+
+int UtcDaliRadioButtonMoveConstructor(void)
+{
+ ToolkitTestApplication application;
+
+ RadioButton button = RadioButton::New();
+ DALI_TEST_EQUALS( 1, button.GetBaseObject().ReferenceCount(), TEST_LOCATION );
+ DALI_TEST_EQUALS( button.GetProperty<bool>( Button::Property::TOGGLABLE ), true , TEST_LOCATION );
+ button.SetProperty( Button::Property::TOGGLABLE, false );
+ DALI_TEST_EQUALS( button.GetProperty<bool>( Button::Property::TOGGLABLE ), false , TEST_LOCATION );
+
+ RadioButton moved = std::move( button );
+ DALI_TEST_CHECK( moved );
+ DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION );
+ DALI_TEST_EQUALS( moved.GetProperty<bool>( Button::Property::TOGGLABLE ), false , TEST_LOCATION );
+ DALI_TEST_CHECK( !button );
+
+ END_TEST;
}
-int UtcDaliRadioButtonNew(void)
+int UtcDaliRadioButtonAssignmentOperatorP(void)
{
ToolkitTestApplication application;
- tet_infoline(" UtcDaliRadioButtonNew");
+
+ RadioButton button = RadioButton::New();
+
+ RadioButton copy( button );
+ DALI_TEST_CHECK( copy );
+
+ DALI_TEST_CHECK( button == copy );
+ END_TEST;
+}
+
+int UtcDaliRadioButtonMoveAssignment(void)
+{
+ ToolkitTestApplication application;
+
+ RadioButton button = RadioButton::New();
+ DALI_TEST_EQUALS( 1, button.GetBaseObject().ReferenceCount(), TEST_LOCATION );
+ DALI_TEST_EQUALS( button.GetProperty<bool>( Button::Property::TOGGLABLE ), true , TEST_LOCATION );
+ button.SetProperty( Button::Property::TOGGLABLE, false );
+ DALI_TEST_EQUALS( button.GetProperty<bool>( Button::Property::TOGGLABLE ), false , TEST_LOCATION );
+
+ RadioButton moved;
+ moved = std::move( button );
+ DALI_TEST_CHECK( moved );
+ DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION );
+ DALI_TEST_EQUALS( moved.GetProperty<bool>( Button::Property::TOGGLABLE ), false , TEST_LOCATION );
+ DALI_TEST_CHECK( !button );
+
+ END_TEST;
+}
+
+int UtcDaliRadioButtonNewP(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliRadioButtonNewP");
// Create the Slider actor
RadioButton radioButton;
DALI_TEST_CHECK( radioButton2 == radioButton );
//Additional check to ensure object is created by checking if it's registered
- ObjectRegistry registry = Stage::GetCurrent().GetObjectRegistry();
+ ObjectRegistry registry = application.GetCore().GetObjectRegistry();
DALI_TEST_CHECK( registry );
gObjectCreatedCallBackCalled = false;
END_TEST;
}
-int UtcDaliRadioButtonDestructor(void)
+int UtcDaliRadioButtonDestructorP(void)
{
ToolkitTestApplication application;
END_TEST;
}
-int UtcDaliRadioButtonLabelActor(void)
+int UtcDaliRadioButtonLabelProperty(void)
{
ToolkitTestApplication application;
- TextLabel actor1 = TextLabel::New( "test actor 1" );
-
- RadioButton radioButton = RadioButton::New( actor1 );
- DALI_TEST_CHECK( actor1 == radioButton.GetLabel() );
-
- TextLabel actor2 = TextLabel::New( "test actor 2" );
- radioButton.SetLabel( actor2 );
- DALI_TEST_CHECK( actor2 == radioButton.GetLabel() );
-
- END_TEST;
-}
-
-int UtcDaliRadioButtonSelected(void)
-{
- ToolkitTestApplication application;
+ const std::string labelText = "test actor 1";
RadioButton radioButton = RadioButton::New();
- // Default selected
- DALI_TEST_CHECK( radioButton.IsSelected() == false );
+ radioButton.SetProperty( Toolkit::Button::Property::LABEL,
+ Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT )
+ .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f )
+ );
- // False
- radioButton.SetSelected( false );
- DALI_TEST_CHECK( radioButton.IsSelected() == false );
+ radioButton.SetProperty( Toolkit::Button::Property::LABEL, labelText );
+ DALI_TEST_EQUALS( GetButtonText( radioButton ), labelText, TEST_LOCATION );
- // True
- radioButton.SetSelected( true );
- DALI_TEST_CHECK( radioButton.IsSelected() == true );
- // False
- radioButton.SetSelected( false );
- DALI_TEST_CHECK( radioButton.IsSelected() == false );
+ std::string labelText2 = "test actor 2";
+ radioButton.SetProperty( Toolkit::Button::Property::LABEL, labelText2 );
+
+ DALI_TEST_EQUALS( GetButtonText( radioButton ), labelText2, TEST_LOCATION );
END_TEST;
}
// Create the RadioButton actor
RadioButton radioButton = RadioButton::New();
- Stage::GetCurrent().Add( radioButton );
- radioButton.SetParentOrigin(ParentOrigin::TOP_LEFT);
- radioButton.SetAnchorPoint(ParentOrigin::TOP_LEFT);
- radioButton.SetPosition( 0.0f, 0.0f );
+ application.GetScene().Add( radioButton );
+ radioButton.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
+ radioButton.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
+ radioButton.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
// Default selected
DALI_TEST_CHECK( radioButton.GetProperty<bool>( Button::Property::SELECTED ) == false );
// Test selecting radio buttons
RadioButton radioButton2 = RadioButton::New( "label" );
- radioButton2.SetParentOrigin(ParentOrigin::TOP_LEFT);
- radioButton2.SetAnchorPoint(ParentOrigin::TOP_LEFT);
- radioButton2.SetPosition( 0.0f, 0.0f );
+ radioButton2.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
+ radioButton2.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
+ radioButton2.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
RadioButton radioButton3 = RadioButton::New( "label" );
- radioButton3.SetParentOrigin(ParentOrigin::TOP_LEFT);
- radioButton3.SetAnchorPoint(ParentOrigin::TOP_LEFT);
- radioButton3.SetPosition( 0.0f, 40.0f );
+ radioButton3.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
+ radioButton3.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
+ radioButton3.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 40.0f ));
Actor radioGroup = Actor::New();
- Stage::GetCurrent().Add( radioGroup );
- radioGroup.SetParentOrigin(ParentOrigin::TOP_LEFT);
- radioGroup.SetAnchorPoint(ParentOrigin::TOP_LEFT);
- radioGroup.SetPosition( 0.0f, 0.0f );
- radioGroup.SetSize( 400.0f, 400.0 );
+ application.GetScene().Add( radioGroup );
+ radioGroup.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
+ radioGroup.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
+ radioGroup.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
+ radioGroup.SetProperty( Actor::Property::SIZE, Vector2( 400.0f, 400.0 ) );
radioGroup.Add( radioButton2 );
radioGroup.Add( radioButton3 );
Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
- const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 10.0f );
- const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 10.0f );
+ Dali::Integration::Point pointDown;
+ pointDown.SetState( PointState::DOWN );
+ pointDown.SetScreenPosition( Vector2( 1.0f, 1.0f ) );
+
+ Dali::Integration::Point pointUp( pointDown );
+ pointUp.SetState( PointState::UP );
event1.AddPoint( pointDown );
application.ProcessEvent( event1 );
Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
- const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 10.0f );
- const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 10.0f );
+ Dali::Integration::Point pointDown;
+ pointDown.SetState( PointState::DOWN );
+ pointDown.SetScreenPosition( Vector2( 1.0f, 1.0f ) );
+
+ Dali::Integration::Point pointUp( pointDown );
+ pointUp.SetState( PointState::UP );
event1.AddPoint( pointDown );
application.ProcessEvent( event1 );
Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
- const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 50.0f );
- const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 50.0f );
+ Dali::Integration::Point pointDown;
+ pointDown.SetState( PointState::DOWN );
+ pointDown.SetScreenPosition( Vector2( 1.0f, 41.0f ) );
+
+ Dali::Integration::Point pointUp( pointDown );
+ pointUp.SetState( PointState::UP );
event1.AddPoint( pointDown );
application.ProcessEvent( event1 );
Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
- const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 500.0f );
- const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 500.0f );
+ Dali::Integration::Point pointDown;
+ pointDown.SetState( PointState::DOWN );
+ pointDown.SetScreenPosition( Vector2( 1.0f, 500.0f ) );
+
+ Dali::Integration::Point pointUp( pointDown );
+ pointUp.SetState( PointState::UP );
event1.AddPoint( pointDown );
application.ProcessEvent( event1 );