Add move semantics to common and base Toolkit classes
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / public-api / controls / buttons / radio-button.h
index 58b8604..b125ab3 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __DALI_TOOLKIT_RADIO_BUTTON_H__
-#define __DALI_TOOLKIT_RADIO_BUTTON_H__
+#ifndef DALI_TOOLKIT_RADIO_BUTTON_H
+#define DALI_TOOLKIT_RADIO_BUTTON_H
 
 /*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2029 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.
@@ -64,27 +64,27 @@ class RadioButton;
  *
  * // Create a group to bind two or more RadioButtons together
  * Actor radioGroup = Actor::New();
- * radioGroup.SetParentOrigin( ParentOrigin::CENTER );
+ * radioGroup.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
  * Stage::GetCurrent().Add( radioGroup );
  *
  * // Make the first RadioButton and add it to its parent
  * RadioButton button1 = RadioButton::New();
  * button1.SetProperty( Button::Property::LABEL, "button1" );
  * button1.SetBackgroundColor( Color::WHITE );
- * button1.SetPosition( 0, -40 );
+ * button1.SetProperty( Actor::Property::POSITION, Vector2( 0, -40 ) );
  * radioGroup.Add( button1 );
  *
  * // Make more RadioButtons and add them to their parent
  * RadioButton button2 = RadioButton::New();
  * button2.SetProperty( Toolkit::Button::Property::LABEL, "button2" );
  * button2.SetBackgroundColor( Color::WHITE );
- * button2.SetPosition( 0, 40 );
+ * button2.SetProperty( Actor::Property::POSITION, Vector2( 0, 40 ) );
  * radioGroup.Add( button2 );
  *
  * @endcode
  * @SINCE_1_0.0
  */
-class DALI_IMPORT_API RadioButton: public Button
+class DALI_TOOLKIT_API RadioButton: public Button
 {
  public:
   /**
@@ -103,6 +103,14 @@ class DALI_IMPORT_API RadioButton: public Button
   RadioButton( const RadioButton& radioButton );
 
   /**
+   * @brief Move constructor
+   * @SINCE_1_9.23
+   *
+   * @param[in] rhs A reference to the moved handle
+   */
+  RadioButton( RadioButton&& rhs );
+
+  /**
    * @brief Assignment operator.
    * @SINCE_1_0.0
    * @param[in] radioButton Handle to an object
@@ -111,6 +119,15 @@ class DALI_IMPORT_API RadioButton: public Button
   RadioButton& operator=( const RadioButton& radioButton );
 
   /**
+   * @brief Move assignment
+   * @SINCE_1_9.23
+   *
+   * @param[in] rhs A reference to the moved handle
+   * @return A reference to this
+   */
+  RadioButton& operator=( RadioButton&& rhs );
+
+  /**
    * @brief Destructor.
    *
    * This is non-virtual since derived Handle types must not contain data or virtual methods.
@@ -175,4 +192,4 @@ class DALI_IMPORT_API RadioButton: public Button
 
 } // namespace Dali
 
-#endif // __DALI_TOOLKIT_RADIO_BUTTON_H__
+#endif // DALI_TOOLKIT_RADIO_BUTTON_H