Update for ecore and elementary animation ui practices
authorViacheslav Tomylko <v.tomylko@samsung.com>
Thu, 10 Sep 2015 13:22:34 +0000 (16:22 +0300)
committerViacheslav Tomylko <v.tomylko@samsung.com>
Tue, 15 Sep 2015 13:14:23 +0000 (22:14 +0900)
Change-Id: Ica9bb4b1e204fd73ef76fb0bae1d7b30a156d42c
Signed-off-by: Viacheslav Tomylko <v.tomylko@samsung.com>
15 files changed:
org.tizen.ui.practices/html/images/ecore_animation_3d.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/ecore_animation_rotation.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/ecore_animation_tutorial.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/ecore_animation_zoom.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_blend.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_fade.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_flip.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_flip2.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_resize.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_rotate.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_tutorial.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_wipe.png [new file with mode: 0644]
org.tizen.ui.practices/html/images/elementary_animation_zoom.png [new file with mode: 0644]
org.tizen.ui.practices/html/native/efl/ecore_animation_tutorial_n.htm
org.tizen.ui.practices/html/native/efl/elementary_animation_tutorial_n.htm

diff --git a/org.tizen.ui.practices/html/images/ecore_animation_3d.png b/org.tizen.ui.practices/html/images/ecore_animation_3d.png
new file mode 100644 (file)
index 0000000..c4bae78
Binary files /dev/null and b/org.tizen.ui.practices/html/images/ecore_animation_3d.png differ
diff --git a/org.tizen.ui.practices/html/images/ecore_animation_rotation.png b/org.tizen.ui.practices/html/images/ecore_animation_rotation.png
new file mode 100644 (file)
index 0000000..367ca94
Binary files /dev/null and b/org.tizen.ui.practices/html/images/ecore_animation_rotation.png differ
diff --git a/org.tizen.ui.practices/html/images/ecore_animation_tutorial.png b/org.tizen.ui.practices/html/images/ecore_animation_tutorial.png
new file mode 100644 (file)
index 0000000..1e0068b
Binary files /dev/null and b/org.tizen.ui.practices/html/images/ecore_animation_tutorial.png differ
diff --git a/org.tizen.ui.practices/html/images/ecore_animation_zoom.png b/org.tizen.ui.practices/html/images/ecore_animation_zoom.png
new file mode 100644 (file)
index 0000000..ced860a
Binary files /dev/null and b/org.tizen.ui.practices/html/images/ecore_animation_zoom.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_blend.png b/org.tizen.ui.practices/html/images/elementary_animation_blend.png
new file mode 100644 (file)
index 0000000..86cf995
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_blend.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_fade.png b/org.tizen.ui.practices/html/images/elementary_animation_fade.png
new file mode 100644 (file)
index 0000000..0b2c7ac
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_fade.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_flip.png b/org.tizen.ui.practices/html/images/elementary_animation_flip.png
new file mode 100644 (file)
index 0000000..0ce73d8
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_flip.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_flip2.png b/org.tizen.ui.practices/html/images/elementary_animation_flip2.png
new file mode 100644 (file)
index 0000000..df687ad
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_flip2.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_resize.png b/org.tizen.ui.practices/html/images/elementary_animation_resize.png
new file mode 100644 (file)
index 0000000..423d95b
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_resize.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_rotate.png b/org.tizen.ui.practices/html/images/elementary_animation_rotate.png
new file mode 100644 (file)
index 0000000..b242cdd
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_rotate.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_tutorial.png b/org.tizen.ui.practices/html/images/elementary_animation_tutorial.png
new file mode 100644 (file)
index 0000000..0ebebf2
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_tutorial.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_wipe.png b/org.tizen.ui.practices/html/images/elementary_animation_wipe.png
new file mode 100644 (file)
index 0000000..ab583c3
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_wipe.png differ
diff --git a/org.tizen.ui.practices/html/images/elementary_animation_zoom.png b/org.tizen.ui.practices/html/images/elementary_animation_zoom.png
new file mode 100644 (file)
index 0000000..a574a04
Binary files /dev/null and b/org.tizen.ui.practices/html/images/elementary_animation_zoom.png differ
index 115874a..1df23be 100644 (file)
@@ -133,6 +133,12 @@ evas_object_resize(ad-&gt;target, 200, 100);
 // Show the image
 evas_object_show(ad-&gt;target);
 </pre>
+
+<p> The following figure illustrates the basic ui elements of this animation tutorial. </p>
+
+<p class="figure">Figure: Ecore Animation Tutorial screen</p>
+<p align="center"><img alt="Rotation Effect screen" src="../../images/ecore_animation_tutorial.png" /></p>
+
 </li></ol>
 </li>
 </ol>
@@ -173,6 +179,11 @@ _btn_rotate_cb(void *data, Evas_Object *btn, void *ev)
 
 <p>To create the rotation animation, use an Evas map. The map handles the necessary map points and allows you to manipulate the target Evas object on the X, Y, and Z axes.</p>
 
+<p> The following figure illustrates the Rotation Effect. </p>
+
+<p class="figure">Figure: Rotation Effect screen</p>
+<p align="center"><img alt="Rotation Effect screen" src="../../images/ecore_animation_rotation.png" /></p>
+
 <p>In the animation callback function, first declare the Evas map. To implement the rotation, you must set an X and Y center, and because of this, 4 integer variables are created to store the size and position of the target. This information is provided by the <span style="font-family: Courier New,Courier,monospace">evas_object_geometry_get()</span> function, which returns the X and Y coordinates and the width and height of the target Evas object.</p>
 <pre class="prettyprint">static Eina_Bool
 _do_rotate(void *data, double pos)
@@ -288,6 +299,11 @@ _do_zoom(void *data, double pos)
 </pre>
 
 <p>The <span style="font-family: Courier New,Courier,monospace">_do_zoom()</span> callback function is called at several points along the animation timeline, which is why the horizontal and vertical zoom factor values are multiplied by the timeline position. Each call zooms more than the previous one, thereby creating the animation effect.</p>
+
+<p>The following figure illustrates the Zoom Effect.</p>
+
+<p class="figure">Figure: Zoom Effect screen</p>
+<p align="center"><img alt="Zoom Effect screen" src="../../images/ecore_animation_zoom.png" /></p>
 </li>
 </ol>
 
@@ -344,6 +360,12 @@ _do_3d(void *data, double pos)
 </pre>
 
 <p>As with the rotation and zoom animations, multiply the angles by the timeline position to gently rotate the target on each call to the <span style="font-family: Courier New,Courier,monospace">_do_3d()</span> callback function along the timeline.</p>
+
+<p>The following figure illustrates the 3D Rotation Effect.</p>
+
+<p class="figure">Figure: 3D Rotation Effect screen</p>
+<p align="center"><img alt="3D Rotation Effect screen" src="../../images/ecore_animation_3d.png" /></p> 
+
 </li>
 </ol>
  <h2 id="drop_bounce" name="drop_bounce">Creating Drop and Bounce Effects</h2>
index cf6e719..1a44876 100644 (file)
 
 <p>Create the structure of the application, represented by the <span style="font-family: Courier New,Courier,monospace">appdata</span> struct, that holds the main UI components of the application:</p>
 
+
 <pre class="prettyprint">
+// Defines to be used for positioning buttons, their sizes, padding values, etc.
+#define BUTTON_BOX_X_POSITION    20
+#define BUTTON_BOX_Y_POSITION    500
+#define TARGET_BUTTON_X_POSITION 260
+#define TARGET_BUTTON_Y_POSITION 100
+#define DEFAULT_BUTTON_SIZE      200, 100
+#define SCREEN_WIDTH             720
+#define SCREEN_HEIGHT            1280
+#define BUTTON_PADDING_VALUE     20
+
 typedef struct 
 appdata 
 {
-&nbsp;&nbsp;&nbsp;Evas_Object *win; // Main window
-&nbsp;&nbsp;&nbsp;Evas_Object *label; // Title label
-&nbsp;&nbsp;&nbsp;Evas_Object *button; // Button object, the target of the animations
-&nbsp;&nbsp;&nbsp;Evas_Object *buttonbck; // Button representing the back of the target button
-&nbsp;&nbsp;&nbsp;Evas_Object *hbox; // Horizontal box to store the vertical boxes
-&nbsp;&nbsp;&nbsp;Evas_Object *left_vbox; // Vertical box for the first button column
-&nbsp;&nbsp;&nbsp;Evas_Object *center_vbox; // // Vertical box for the second button column
-&nbsp;&nbsp;&nbsp;Evas_Object *right_vbox; // // Vertical box for the last button column
+&nbsp;&nbsp;&nbsp;Evas_Object *win;           // Main window
+&nbsp;&nbsp;&nbsp;Evas_Object *label;         // Title label
+&nbsp;&nbsp;&nbsp;Evas_Object *button;        // Button object, the target of the animations
+&nbsp;&nbsp;&nbsp;Evas_Object *buttonbck;     // Button representing the back of the target button
+&nbsp;&nbsp;&nbsp;Evas_Object *hbox;          // Horizontal box to store the vertical boxes
+&nbsp;&nbsp;&nbsp;Evas_Object *left_vbox;     // Vertical box for the first button column
+&nbsp;&nbsp;&nbsp;Evas_Object *center_vbox;   // Vertical box for the second button column
+&nbsp;&nbsp;&nbsp;Evas_Object *right_vbox;    // Vertical box for the last button column
 &nbsp;&nbsp;&nbsp;float rt_angle, zto, zfrom; // Variables used to store values for animations
 } appdata_s;
 </pre>
@@ -110,7 +121,7 @@ create_base_gui(appdata_s *ad)
 
 &nbsp;&nbsp;&nbsp;// Label
 &nbsp;&nbsp;&nbsp;ad-&gt;label = elm_label_add(ad-&gt;win);
-&nbsp;&nbsp;&nbsp;elm_object_text_set(ad-&gt;label, &quot;Effects Tutorial&quot;);
+&nbsp;&nbsp;&nbsp;elm_object_text_set(ad-&gt;label, &quot;Elementary Animation Tutorial&quot;);
 &nbsp;&nbsp;&nbsp;evas_object_size_hint_weight_set(ad-&gt;label, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 &nbsp;&nbsp;&nbsp;elm_win_resize_object_add(ad-&gt;win, ad-&gt;label);
 &nbsp;&nbsp;&nbsp;evas_object_show(ad-&gt;label);
@@ -118,7 +129,6 @@ create_base_gui(appdata_s *ad)
 &nbsp;&nbsp;&nbsp;// Show the window after the base GUI is set up
 &nbsp;&nbsp;&nbsp;evas_object_show(ad-&gt;win);
 
-&nbsp;&nbsp;&nbsp;ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, keydown_cb, ad);
 </pre>
 </li>
 <li>
@@ -127,11 +137,14 @@ create_base_gui(appdata_s *ad)
 &nbsp;&nbsp;&nbsp;// Create a button in the app window
 &nbsp;&nbsp;&nbsp;ad-&gt;button = elm_button_add(ad-&gt;win);
 
-&nbsp;&nbsp;&nbsp;// Move the button to x = 50 y = 100
-&nbsp;&nbsp;&nbsp;evas_object_move(ad-&gt;button, 50, 100);
+&nbsp;&nbsp;&nbsp;// Move the button to x = 260 y = 100
+&nbsp;&nbsp;&nbsp;evas_object_move(ad->button, TARGET_BUTTON_X_POSITION, TARGET_BUTTON_Y_POSITION);
+
+&nbsp;&nbsp;&nbsp;// Set text for target button
+&nbsp;&nbsp;&nbsp;elm_object_text_set(ad-&gt;button, &quot;Target&quot;);
 
-&nbsp;&nbsp;&nbsp;// Resize the button 100 x 50
-&nbsp;&nbsp;&nbsp;evas_object_resize(ad-&gt;button, 200, 50);
+&nbsp;&nbsp;&nbsp;// Resize the button 200 x 100
+&nbsp;&nbsp;&nbsp;evas_object_resize(ad-&gt;button, DEFAULT_BUTTON_SIZE);
 
 &nbsp;&nbsp;&nbsp;// Show the button
 &nbsp;&nbsp;&nbsp;evas_object_show(ad-&gt;button);
@@ -139,11 +152,10 @@ create_base_gui(appdata_s *ad)
 &nbsp;&nbsp;&nbsp;// Create a back button in the app window
 &nbsp;&nbsp;&nbsp;ad-&gt;buttonbck = elm_button_add(ad-&gt;win);
 &nbsp;&nbsp;&nbsp;elm_object_text_set(ad-&gt;buttonbck, &quot;Button back&quot;);
-&nbsp;&nbsp;&nbsp;evas_object_move(ad-&gt;buttonbck, 50, 100);
-&nbsp;&nbsp;&nbsp;evas_object_resize(ad-&gt;buttonbck, 200, 50);
+&nbsp;&nbsp;&nbsp;evas_object_move(ad-&gt;buttonbck, TARGET_BUTTON_X_POSITION, TARGET_BUTTON_Y_POSITION);
+&nbsp;&nbsp;&nbsp;evas_object_resize(ad-&gt;buttonbck, DEFAULT_BUTTON_SIZE);
 
 &nbsp;&nbsp;&nbsp;_create_btn_box(ad);
-
 } // End of create_base_gui
 </pre>
 </li></ol></li>
@@ -153,14 +165,21 @@ create_base_gui(appdata_s *ad)
 // Create the main container box
 ad-&gt;hbox = elm_box_add(ad-&gt;win);
 elm_box_horizontal_set(ad-&gt;hbox, EINA_TRUE);
-elm_box_homogeneous_set(ad-&gt;hbox, EINA_TRUE);
-evas_object_move(ad-&gt;hbox, 10, 500);
+elm_box_homogeneous_set(ad-&gt;hbox, EINA_FALSE);
+elm_box_padding_set(ad-&gt;hbox, BUTTON_PADDING_VALUE, 0);
+evas_object_move(ad-&gt;hbox, BUTTON_BOX_X_POSITION, BUTTON_BOX_Y_POSITION);
+evas_object_resize(ad-&gt;hbox, SCREEN_WIDTH - 2 * BUTTON_PADDING_VALUE, SCREEN_HEIGHT);
 evas_object_show(ad-&gt;hbox);
 
 // Create the first column
 ad-&gt;left_vbox = elm_box_add(ad-&gt;hbox);
 elm_box_horizontal_set(ad-&gt;left_vbox, EINA_FALSE);
 elm_box_homogeneous_set(ad-&gt;left_vbox, EINA_TRUE);
+
+elm_box_padding_set(ad-&gt;left_vbox, 0, BUTTON_PADDING_VALUE);
+evas_object_size_hint_weight_set(ad-&gt;left_vbox, EVAS_HINT_EXPAND, 0.0);
+evas_object_size_hint_align_set(ad-&gt;left_vbox, EVAS_HINT_FILL, 0.0);
+
 evas_object_show(ad-&gt;left_vbox);
 elm_box_pack_start(ad-&gt;hbox, ad-&gt;left_vbox);
 
@@ -168,6 +187,11 @@ elm_box_pack_start(ad-&gt;hbox, ad-&gt;left_vbox);
 ad-&gt;center_vbox = elm_box_add(ad-&gt;hbox);
 elm_box_horizontal_set(ad-&gt;center_vbox, EINA_FALSE);
 elm_box_homogeneous_set(ad-&gt;center_vbox, EINA_TRUE);
+
+elm_box_padding_set(ad-&gt;center_vbox, 0, BUTTON_PADDING_VALUE);
+evas_object_size_hint_weight_set(ad-&gt;center_vbox, EVAS_HINT_EXPAND, 0.0);
+evas_object_size_hint_align_set(ad-&gt;center_vbox, EVAS_HINT_FILL, 0.0);
+
 evas_object_show(ad-&gt;center_vbox);
 elm_box_pack_end(ad-&gt;hbox, ad-&gt;center_vbox);
 
@@ -175,24 +199,41 @@ elm_box_pack_end(ad-&gt;hbox, ad-&gt;center_vbox);
 ad-&gt;right_vbox = elm_box_add(ad-&gt;hbox);
 elm_box_horizontal_set(ad-&gt;right_vbox, EINA_FALSE);
 elm_box_homogeneous_set(ad-&gt;right_vbox, EINA_TRUE);
+
+elm_box_padding_set(ad-&gt;right_vbox, 0, BUTTON_PADDING_VALUE);
+evas_object_size_hint_weight_set(ad-&gt;right_vbox, EVAS_HINT_EXPAND, 0.0);
+evas_object_size_hint_align_set(ad-&gt;right_vbox, EVAS_HINT_FILL, 0.0);
+
 evas_object_show(ad-&gt;right_vbox);
 elm_box_pack_end(ad-&gt;hbox, ad-&gt;right_vbox);
 </pre>
+
+<p>The following figure illustrates the UI components of the application.</p>
+
+<p class="figure">Figure: UI components of the application</p>
+<p align="center"><img alt="Elementary Animation Tutorial screen" src="../../images/elementary_animation_tutorial.png" /></p>
+
 </li>
 <li>
 <p>Create the first action button for the resize effect.</p>
 <p>The <span style="font-family: Courier New,Courier,monospace">evas_object_smart_callback_add()</span> function defines the callback function that is to be called when the button is clicked. In this example, set a <span style="font-family: Courier New,Courier,monospace">_btn_resize_cb()</span> function and pass the application data <span style="font-family: Courier New,Courier,monospace">ad</span> to this callback function.</p>
 <pre class="prettyprint">
 // Create the button
-btn_resize = elm_button_add(ad-&gt;win);
+Evas_Object *btn_resize = elm_button_add(ad-&gt;win);
+
 // Set the button text
 elm_object_text_set(btn_resize, &quot;Resize&quot;);
-// Set the hint weight policy
-evas_object_size_hint_weight_set(btn_resize, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+// Set the hint weight and align policy
+evas_object_size_hint_weight_set(btn_resize, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_resize, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
 // Show the button
 evas_object_show(btn_resize);
+
 // Set the &quot;clicked&quot; callback
 evas_object_smart_callback_add(btn_resize, &quot;clicked&quot;, _btn_resize_cb, ad);
+
 // Add the button to the first column
 elm_box_pack_end(ad-&gt;left_vbox, btn_resize);
 </pre>
@@ -258,12 +299,17 @@ _resize_effect(Evas_Object *obj)
 </pre>
 <p>When the resize button is clicked, the animation target button grows.</p>
 
-<p>All the action buttons are created exactly the same way as the resize button, with a callback and an animation function.</p>
+<p>The following figure illustrates the Resize Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Resize Effect screen: the object grows from 100×50 to 300×150</p>
+<p align="center"><img alt="Resize Effect screen" src="../../images/elementary_animation_resize.png" /></p>
 </li>
 </ol>
 </li>
 </ol>
 
+<p>All the action buttons are created exactly the same way as the resize button, with a callback and an animation function.</p>
+
  <h2 id="rotate" name="rotate">Creating a Rotation Effect</h2>
 
 <p>The rotation effect rotates the animation target button with an angle of 360&deg;. This angle is stored in the application data as <span style="font-family: Courier New,Courier,monospace">ad-&gt;rt_angle</span>.</p>
@@ -273,9 +319,10 @@ _resize_effect(Evas_Object *obj)
 <p>Create the button and add it to the center column in the <span style="font-family: Courier New,Courier,monospace">_create_btn_box()</span> function:</p>
 <pre class="prettyprint">
 // Rotation button
-btn_rotate = elm_button_add(ad-&gt;win);
+Evas_Object *btn_rotate = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_rotate, &quot;Rotate&quot;);
-evas_object_size_hint_weight_set(btn_rotate, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_rotate, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_rotate, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_rotate);
 evas_object_smart_callback_add(btn_rotate, &quot;clicked&quot;, _btn_rotate_cb, ad);
 elm_box_pack_end(ad-&gt;center_vbox, btn_rotate);
@@ -318,6 +365,11 @@ _rotation_effect(Evas_Object *obj, float angle)
 &nbsp;&nbsp;&nbsp;elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Rotate Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Rotate Effect screen</p>
+<p align="center"><img alt="Rotate Effect screen" src="../../images/elementary_animation_rotate.png" /></p>
 </li>
 </ol>
 
@@ -332,9 +384,10 @@ _rotation_effect(Evas_Object *obj, float angle)
 
 <pre class="prettyprint">
 // Zoom button
-btn_zoom = elm_button_add(ad-&gt;win);
+Evas_Object *btn_zoom = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_zoom, &quot;Zoom&quot;);
-evas_object_size_hint_weight_set(btn_zoom, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_zoom, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_zoom, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_zoom);
 evas_object_smart_callback_add(btn_zoom, &quot;clicked&quot;, _btn_zoom_cb, ad);
 elm_box_pack_end(ad-&gt;right_vbox, btn_zoom);
@@ -371,6 +424,12 @@ _zoom_effect(Evas_Object *obj, float from, float to)
 &nbsp;&nbsp;&nbsp;elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Zoom Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Zoom Effect screen</p>
+<p align="center"><img alt="Zoom Effect screen" src="../../images/elementary_animation_zoom.png" /></p>
+
 </li>
 </ol>
 
@@ -384,9 +443,10 @@ _zoom_effect(Evas_Object *obj, float from, float to)
 
 <pre class="prettyprint">
 // Flip button
-btn_flip = elm_button_add(ad-&gt;win);
+Evas_Object *btn_flip = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_flip, &quot;Flip x&quot;);
-evas_object_size_hint_weight_set(btn_flip, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_flip, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_flip, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_flip);
 evas_object_smart_callback_add(btn_flip, &quot;clicked&quot;, _btn_flip_cb, ad);
 elm_box_pack_end(ad-&gt;left_vbox, btn_flip);
@@ -425,6 +485,12 @@ _flip_effect(Evas_Object *obj, Evas_Object *obj2)
 &nbsp;&nbsp;&nbsp;elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Flip Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Flip Effect screen : flip on X axis</p>
+<p align="center"><img alt="Flip Effect screen" src="../../images/elementary_animation_flip.png" /></p>
+
 </li>
 </ol>
 
@@ -438,9 +504,10 @@ _flip_effect(Evas_Object *obj, Evas_Object *obj2)
 <p>Create the blend effect button:</p>
 <pre class="prettyprint">
 // Blend button
-btn_blend = elm_button_add(ad-&gt;win);
+Evas_Object *btn_blend = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_blend, &quot;Blend&quot;);
-evas_object_size_hint_weight_set(btn_blend, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_blend, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_blend, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_blend);
 evas_object_smart_callback_add(btn_blend, &quot;clicked&quot;, _btn_blend_cb, ad);
 elm_box_pack_end(ad-&gt;center_vbox, btn_blend);
@@ -478,6 +545,12 @@ _blend_effect(Evas_Object *obj, Evas_Object *obj2)
 &nbsp;&nbsp;&nbsp;elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Blend Transition Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Blend Transition Effect screen</p>
+<p align="center"><img alt="Blend Transition Effect screen" src="../../images/elementary_animation_blend.png" /></p>
+
 </li>
 </ol>
 
@@ -492,9 +565,10 @@ _blend_effect(Evas_Object *obj, Evas_Object *obj2)
 <p>Create the fade button:</p>
 <pre class="prettyprint">
 // Fade button
-btn_fade = elm_button_add(ad-&gt;win);
+Evas_Object *btn_fade = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_fade, &quot;Fade&quot;);
-evas_object_size_hint_weight_set(btn_fade, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_fade, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_fade, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_fade);
 evas_object_smart_callback_add(btn_fade, &quot;clicked&quot;, _btn_fade_cb, ad);
 elm_box_pack_end(ad-&gt;right_vbox, btn_fade);
@@ -531,6 +605,12 @@ _fade_effect(Evas_Object *obj, Evas_Object *obj2)
 &nbsp;&nbsp;&nbsp;elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Fade Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Fade Transition Effect screen</p>
+<p align="center"><img alt="Fade Effect screen" src="../../images/elementary_animation_fade.png" /></p>
+
 </li>
 </ol>
 
@@ -542,9 +622,10 @@ _fade_effect(Evas_Object *obj, Evas_Object *obj2)
 <li>
 <p>Create the flip y button:</p>
 <pre class="prettyprint">// Flip y button
-btn_flip_y = elm_button_add(ad-&gt;win);
+Evas_Object *btn_flip_y = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_flip_y, &quot;Flip y&quot;);
-evas_object_size_hint_weight_set(btn_flip_y, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_flip_y, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_flip_y, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_flip_y);
 evas_object_smart_callback_add(btn_flip_y, &quot;clicked&quot;, _btn_flip_y_cb, ad);
 elm_box_pack_end(ad-&gt;left_vbox, btn_flip_y);
@@ -580,6 +661,12 @@ _flip_y_effect(Evas_Object *obj, Evas_Object *obj2)
 &nbsp;&nbsp;&nbsp;elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Flip on y Axis Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Flip on y Axis Effect screen: flip on Y axis</p>
+<p align="center"><img alt="Flip on y Axis Effect screen" src="../../images/elementary_animation_flip2.png" /></p>
+
 </li>
 </ol>
 
@@ -593,9 +680,10 @@ _flip_y_effect(Evas_Object *obj, Evas_Object *obj2)
 
 <pre class="prettyprint">
 // Wipe button
-btn_wipe = elm_button_add(ad-&gt;win);
+Evas_Object *btn_wipe = elm_button_add(ad-&gt;win);
 elm_object_text_set(btn_wipe, &quot;Wipe&quot;);
-evas_object_size_hint_weight_set(btn_wipe, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_size_hint_weight_set(btn_wipe, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_align_set(btn_wipe, EVAS_HINT_FILL, EVAS_HINT_FILL);
 evas_object_show(btn_wipe);
 evas_object_smart_callback_add(btn_wipe, &quot;clicked&quot;, _btn_wipe_cb, ad);
 elm_box_pack_end(ad-&gt;right_vbox, btn_wipe);
@@ -633,6 +721,12 @@ _wipe_effect(Evas_Object *obj)
 &nbsp;&nbsp;&nbsp; elm_transit_go(trans);
 }
 </pre>
+
+<p>The following figure illustrates the Wipe Effect screen.</p>
+
+<p class="figure">Figure: Elementary Animation Wipe Effect screen</p>
+<p align="center"><img alt="Wipe Effect screen" src="../../images/elementary_animation_wipe.png" /></p>
+
 </li>
 </ol>