Commit 762c7ea311e8ca9584679bf61f4475f07d9166ac

Authored by David Steele
2 parents ad1e433e 8857b035

[dali_1.2.7] Merge branch 'devel/master'

Change-Id: I9efc857ec2d1602ab762a9951b0a2f3bb7154977
com.samsung.dali-demo.xml
@@ -64,7 +64,7 @@ @@ -64,7 +64,7 @@
64 <ui-application appid="scroll-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/scroll-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true"> 64 <ui-application appid="scroll-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/scroll-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
65 <label>Scroll View</label> 65 <label>Scroll View</label>
66 </ui-application> 66 </ui-application>
67 - <ui-application appid="shadow-bone-lighting.example" exec="/usr/apps/com.samsung.dali-demo/bin/shadow-bone-lighting.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true"> 67 + <ui-application appid="shadows-and-lights.example" exec="/usr/apps/com.samsung.dali-demo/bin/shadows-and-lights.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
68 <label>Shadows and Lights</label> 68 <label>Shadows and Lights</label>
69 </ui-application> 69 </ui-application>
70 <ui-application appid="dali-builder" exec="/usr/apps/com.samsung.dali-demo/bin/dali-builder" nodisplay="true" multiple="false" type="c++app" taskmanage="true"> 70 <ui-application appid="dali-builder" exec="/usr/apps/com.samsung.dali-demo/bin/dali-builder" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
demo/dali-demo.cpp
@@ -48,7 +48,7 @@ int DALI_EXPORT_API main(int argc, char **argv) @@ -48,7 +48,7 @@ int DALI_EXPORT_API main(int argc, char **argv)
48 demo.AddExample(Example("page-turn-view.example", DALI_DEMO_STR_TITLE_PAGE_TURN_VIEW)); 48 demo.AddExample(Example("page-turn-view.example", DALI_DEMO_STR_TITLE_PAGE_TURN_VIEW));
49 demo.AddExample(Example("refraction-effect.example", DALI_DEMO_STR_TITLE_REFRACTION)); 49 demo.AddExample(Example("refraction-effect.example", DALI_DEMO_STR_TITLE_REFRACTION));
50 demo.AddExample(Example("scroll-view.example", DALI_DEMO_STR_TITLE_SCROLL_VIEW)); 50 demo.AddExample(Example("scroll-view.example", DALI_DEMO_STR_TITLE_SCROLL_VIEW));
51 - demo.AddExample(Example("shadow-bone-lighting.example", DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS)); 51 + demo.AddExample(Example("shadows-and-lights.example", DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS));
52 demo.AddExample(Example("builder.example", DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI)); 52 demo.AddExample(Example("builder.example", DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI));
53 demo.AddExample(Example("image-scaling-and-filtering.example", DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING)); 53 demo.AddExample(Example("image-scaling-and-filtering.example", DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING));
54 demo.AddExample(Example("image-scaling-irregular-grid.example", DALI_DEMO_STR_TITLE_IMAGE_SCALING)); 54 demo.AddExample(Example("image-scaling-irregular-grid.example", DALI_DEMO_STR_TITLE_IMAGE_SCALING));
examples/page-turn-view/page-turn-view-example.cpp
1 /* 1 /*
2 - * Copyright (c) 2014 Samsung Electronics Co., Ltd. 2 + * Copyright (c) 2016 Samsung Electronics Co., Ltd.
3 * 3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License. 5 * you may not use this file except in compliance with the License.
@@ -18,6 +18,10 @@ @@ -18,6 +18,10 @@
18 #include <dali/dali.h> 18 #include <dali/dali.h>
19 #include <dali-toolkit/dali-toolkit.h> 19 #include <dali-toolkit/dali-toolkit.h>
20 #include <dali-toolkit/devel-api/image-atlas/image-atlas.h> 20 #include <dali-toolkit/devel-api/image-atlas/image-atlas.h>
  21 +#include <dali-toolkit/devel-api/controls/page-turn-view/page-factory.h>
  22 +#include <dali-toolkit/devel-api/controls/page-turn-view/page-turn-landscape-view.h>
  23 +#include <dali-toolkit/devel-api/controls/page-turn-view/page-turn-portrait-view.h>
  24 +#include <dali-toolkit/devel-api/controls/page-turn-view/page-turn-view.h>
21 #include <dali/devel-api/images/atlas.h> 25 #include <dali/devel-api/images/atlas.h>
22 26
23 #include <assert.h> 27 #include <assert.h>
examples/primitive-shapes/primitive-shapes-example.cpp
@@ -19,6 +19,9 @@ namespace @@ -19,6 +19,9 @@ namespace
19 DEMO_IMAGE_DIR "octahedron-button.png" 19 DEMO_IMAGE_DIR "octahedron-button.png"
20 }; 20 };
21 21
  22 + //Prefix of all shape titles.
  23 + const std::string SHAPE_TITLE_PREFIX = "Current Shape: ";
  24 +
22 //Shape property defaults 25 //Shape property defaults
23 const int DEFAULT_SLICES = 32; 26 const int DEFAULT_SLICES = 32;
24 const int DEFAULT_STACKS = 32; 27 const int DEFAULT_STACKS = 32;
@@ -94,9 +97,11 @@ public: @@ -94,9 +97,11 @@ public:
94 } 97 }
95 98
96 //Place buttons on the top of the screen, which allow for selection of the shape to be displayed. 99 //Place buttons on the top of the screen, which allow for selection of the shape to be displayed.
  100 + //A title above indicates the currently selected shape.
97 //The buttons are laid out like so: 101 //The buttons are laid out like so:
98 // 102 //
99 // ^ +--------------------------------+ 103 // ^ +--------------------------------+
  104 + // | | Current Shape: ~~~~~ |
100 // | | | 105 // | | |
101 // | | +----+ +----+ +----+ +----+ | 106 // | | +----+ +----+ +----+ +----+ |
102 // | | | | | | | | | | | 107 // | | | | | | | | | | |
@@ -123,26 +128,39 @@ public: @@ -123,26 +128,39 @@ public:
123 // | | 128 // | |
124 // | | 129 // | |
125 // | | 130 // | |
126 - // | |  
127 // +--------------------------------+ 131 // +--------------------------------+
128 // 132 //
129 void SetupButtons( Layer layer ) 133 void SetupButtons( Layer layer )
130 { 134 {
131 float containerPadding = 10.0f; 135 float containerPadding = 10.0f;
132 - float buttonPadding = 5.0f; 136 + float elementPadding = 5.0f;
  137 +
  138 + //Used to layout the title and the buttons below it.
  139 + Control topAlignment = Control::New();
  140 + topAlignment.SetParentOrigin( ParentOrigin::TOP_CENTER );
  141 + topAlignment.SetAnchorPoint( AnchorPoint::TOP_CENTER );
  142 + topAlignment.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
  143 + topAlignment.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
  144 + layer.Add( topAlignment );
  145 +
  146 + //Add a title to indicate the currently selected shape.
  147 + mShapeTitle = TextLabel::New( "DEFAULT" );
  148 + mShapeTitle.SetParentOrigin( ParentOrigin::CENTER );
  149 + mShapeTitle.SetAnchorPoint( AnchorPoint::CENTER );
  150 + mShapeTitle.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
  151 + mShapeTitle.SetPadding( Padding( elementPadding, elementPadding, elementPadding, elementPadding ) );
  152 + topAlignment.Add( mShapeTitle );
133 153
134 //Create a variable-length container that can wrap buttons around as more are added. 154 //Create a variable-length container that can wrap buttons around as more are added.
135 FlexContainer buttonContainer = FlexContainer::New(); 155 FlexContainer buttonContainer = FlexContainer::New();
136 - buttonContainer.SetParentOrigin( ParentOrigin::TOP_CENTER ); 156 + buttonContainer.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
137 buttonContainer.SetAnchorPoint( AnchorPoint::TOP_CENTER ); 157 buttonContainer.SetAnchorPoint( AnchorPoint::TOP_CENTER );
138 buttonContainer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH ); 158 buttonContainer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
139 - buttonContainer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::HEIGHT );  
140 - buttonContainer.SetSizeModeFactor( Vector3( 0.0, 0.3, 0.0 ) ); //30% of height. 159 + buttonContainer.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
141 buttonContainer.SetPadding( Padding( containerPadding, containerPadding, containerPadding, containerPadding ) ); 160 buttonContainer.SetPadding( Padding( containerPadding, containerPadding, containerPadding, containerPadding ) );
142 buttonContainer.SetProperty( FlexContainer::Property::FLEX_DIRECTION, FlexContainer::ROW ); 161 buttonContainer.SetProperty( FlexContainer::Property::FLEX_DIRECTION, FlexContainer::ROW );
143 buttonContainer.SetProperty( FlexContainer::Property::FLEX_WRAP, FlexContainer::WRAP ); 162 buttonContainer.SetProperty( FlexContainer::Property::FLEX_WRAP, FlexContainer::WRAP );
144 -  
145 - layer.Add( buttonContainer ); 163 + topAlignment.Add( buttonContainer );
146 164
147 //Create buttons and place them in the container. 165 //Create buttons and place them in the container.
148 for( int modelNumber = 0; modelNumber < NUM_MODELS; modelNumber++ ) 166 for( int modelNumber = 0; modelNumber < NUM_MODELS; modelNumber++ )
@@ -151,7 +169,7 @@ public: @@ -151,7 +169,7 @@ public:
151 button.SetParentOrigin( ParentOrigin::CENTER ); 169 button.SetParentOrigin( ParentOrigin::CENTER );
152 button.SetAnchorPoint( AnchorPoint::CENTER ); 170 button.SetAnchorPoint( AnchorPoint::CENTER );
153 button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS ); 171 button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
154 - button.SetPadding( Padding( buttonPadding, buttonPadding, buttonPadding, buttonPadding ) ); 172 + button.SetPadding( Padding( elementPadding, elementPadding, elementPadding, elementPadding ) );
155 button.SetProperty( Button::Property::UNSELECTED_STATE_IMAGE, Property::Value( BUTTON_IMAGE_URL[modelNumber] ) ); 173 button.SetProperty( Button::Property::UNSELECTED_STATE_IMAGE, Property::Value( BUTTON_IMAGE_URL[modelNumber] ) );
156 button.SetProperty( Button::Property::SELECTED_STATE_IMAGE, Property::Value( BUTTON_IMAGE_URL[modelNumber] ) ); 174 button.SetProperty( Button::Property::SELECTED_STATE_IMAGE, Property::Value( BUTTON_IMAGE_URL[modelNumber] ) );
157 button.RegisterProperty( "modelNumber", Property::Value( modelNumber ) ); 175 button.RegisterProperty( "modelNumber", Property::Value( modelNumber ) );
@@ -333,12 +351,18 @@ public: @@ -333,12 +351,18 @@ public:
333 351
334 //Set up sliders. 352 //Set up sliders.
335 SetupSlider( 0, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" ); 353 SetupSlider( 0, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" );
336 - SetupMarks( mSliders.at( 0 ), SLICES_LOWER_BOUND, SLICES_UPPER_BOUND ); 354 + SetupMarks( 0, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND );
  355 + mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
  356 +
337 SetupSlider( 1, STACKS_LOWER_BOUND, STACKS_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::STACKS, "stacks" ); 357 SetupSlider( 1, STACKS_LOWER_BOUND, STACKS_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::STACKS, "stacks" );
338 - SetupMarks( mSliders.at( 1 ), STACKS_LOWER_BOUND, STACKS_UPPER_BOUND ); 358 + SetupMarks( 1, STACKS_LOWER_BOUND, STACKS_UPPER_BOUND );
  359 + mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
339 360
340 //Set model in control. 361 //Set model in control.
341 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 362 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  363 +
  364 + //Update title.
  365 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Sphere" );
342 } 366 }
343 367
344 //Sets the 3D model to a cone and modifies the sliders appropriately. 368 //Sets the 3D model to a cone and modifies the sliders appropriately.
@@ -354,12 +378,20 @@ public: @@ -354,12 +378,20 @@ public:
354 378
355 //Set up sliders. 379 //Set up sliders.
356 SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" ); 380 SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" );
  381 + mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
  382 +
357 SetupSlider( 1, 1.0f, 32.0f, DEFAULT_SCALE_BOTTOM_RADIUS, PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS, "scaleBottomRadius" ); 383 SetupSlider( 1, 1.0f, 32.0f, DEFAULT_SCALE_BOTTOM_RADIUS, PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS, "scaleBottomRadius" );
  384 + mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
  385 +
358 SetupSlider( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" ); 386 SetupSlider( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" );
359 - SetupMarks( mSliders.at( 2 ), SLICES_LOWER_BOUND, SLICES_UPPER_BOUND ); 387 + SetupMarks( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND );
  388 + mSliders.at( 2 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
360 389
361 //Set model in control. 390 //Set model in control.
362 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 391 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  392 +
  393 + //Update title.
  394 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Cone" );
363 } 395 }
364 396
365 //Sets the 3D model to a conical frustrum and modifies the sliders appropriately. 397 //Sets the 3D model to a conical frustrum and modifies the sliders appropriately.
@@ -376,11 +408,19 @@ public: @@ -376,11 +408,19 @@ public:
376 408
377 //Set up used sliders. 409 //Set up used sliders.
378 SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" ); 410 SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" );
  411 + mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
  412 +
379 SetupSlider( 1, 0.0f, 32.0f, DEFAULT_SCALE_BOTTOM_RADIUS, PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS, "scaleBottomRadius" ); 413 SetupSlider( 1, 0.0f, 32.0f, DEFAULT_SCALE_BOTTOM_RADIUS, PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS, "scaleBottomRadius" );
  414 + mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
  415 +
380 SetupSlider( 2, 0.0f, 32.0f, DEFAULT_SCALE_TOP_RADIUS, PrimitiveVisual::Property::SCALE_TOP_RADIUS, "scaleTopRadius" ); 416 SetupSlider( 2, 0.0f, 32.0f, DEFAULT_SCALE_TOP_RADIUS, PrimitiveVisual::Property::SCALE_TOP_RADIUS, "scaleTopRadius" );
  417 + mSliders.at( 2 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
381 418
382 //Set model in control. 419 //Set model in control.
383 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 420 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  421 +
  422 + //Update title.
  423 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Conical Frustrum" );
384 } 424 }
385 425
386 //Sets the 3D model to a cylinder and modifies the sliders appropriately. 426 //Sets the 3D model to a cylinder and modifies the sliders appropriately.
@@ -396,12 +436,20 @@ public: @@ -396,12 +436,20 @@ public:
396 436
397 //Set up used sliders. 437 //Set up used sliders.
398 SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" ); 438 SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" );
  439 + mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
  440 +
399 SetupSlider( 1, 1.0f, 32.0f, DEFAULT_SCALE_RADIUS, PrimitiveVisual::Property::SCALE_RADIUS, "scaleRadius" ); 441 SetupSlider( 1, 1.0f, 32.0f, DEFAULT_SCALE_RADIUS, PrimitiveVisual::Property::SCALE_RADIUS, "scaleRadius" );
  442 + mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
  443 +
400 SetupSlider( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" ); 444 SetupSlider( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" );
401 - SetupMarks( mSliders.at( 2 ), SLICES_LOWER_BOUND, SLICES_UPPER_BOUND ); 445 + SetupMarks( 2 , SLICES_LOWER_BOUND, SLICES_UPPER_BOUND );
  446 + mSliders.at( 2 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
402 447
403 //Set model in control. 448 //Set model in control.
404 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 449 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  450 +
  451 + //Update title.
  452 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Cylinder" );
405 } 453 }
406 454
407 //Sets the 3D model to a cube and modifies the sliders appropriately. 455 //Sets the 3D model to a cube and modifies the sliders appropriately.
@@ -414,6 +462,9 @@ public: @@ -414,6 +462,9 @@ public:
414 462
415 //Set model in control. 463 //Set model in control.
416 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 464 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  465 +
  466 + //Update title.
  467 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Cube" );
417 } 468 }
418 469
419 //Sets the 3D model to a bevelled cube and modifies the sliders appropriately. 470 //Sets the 3D model to a bevelled cube and modifies the sliders appropriately.
@@ -428,10 +479,16 @@ public: @@ -428,10 +479,16 @@ public:
428 479
429 //Set up used sliders. 480 //Set up used sliders.
430 SetupSlider( 0, 0.0f, 1.0f, DEFAULT_BEVEL_PERCENTAGE, PrimitiveVisual::Property::BEVEL_PERCENTAGE, "bevelPercentage" ); 481 SetupSlider( 0, 0.0f, 1.0f, DEFAULT_BEVEL_PERCENTAGE, PrimitiveVisual::Property::BEVEL_PERCENTAGE, "bevelPercentage" );
  482 + mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 2 ) );
  483 +
431 SetupSlider( 1, 0.0f, 1.0f, DEFAULT_BEVEL_SMOOTHNESS, PrimitiveVisual::Property::BEVEL_SMOOTHNESS, "bevelSmoothness" ); 484 SetupSlider( 1, 0.0f, 1.0f, DEFAULT_BEVEL_SMOOTHNESS, PrimitiveVisual::Property::BEVEL_SMOOTHNESS, "bevelSmoothness" );
  485 + mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 2 ) );
432 486
433 //Set model in control. 487 //Set model in control.
434 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 488 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  489 +
  490 + //Update title.
  491 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Bevelled Cube" );
435 } 492 }
436 493
437 //Sets the 3D model to an octahedron and modifies the sliders appropriately. 494 //Sets the 3D model to an octahedron and modifies the sliders appropriately.
@@ -444,6 +501,9 @@ public: @@ -444,6 +501,9 @@ public:
444 501
445 //Set model in control. 502 //Set model in control.
446 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) ); 503 mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
  504 +
  505 + //Update title.
  506 + mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Octahedron" );
447 } 507 }
448 508
449 //Sets up the slider at the given index for the supplied property, and labels it appropriately. 509 //Sets up the slider at the given index for the supplied property, and labels it appropriately.
@@ -475,7 +535,7 @@ public: @@ -475,7 +535,7 @@ public:
475 } 535 }
476 536
477 //Setup snapping to integer values between the two given values. 537 //Setup snapping to integer values between the two given values.
478 - void SetupMarks( Slider& slider, int lower, int upper ) 538 + void SetupMarks( int sliderIndex, int lower, int upper )
479 { 539 {
480 Property::Array marks; 540 Property::Array marks;
481 541
@@ -484,8 +544,8 @@ public: @@ -484,8 +544,8 @@ public:
484 marks.PushBack( Property::Value( mark ) ); 544 marks.PushBack( Property::Value( mark ) );
485 } 545 }
486 546
487 - slider.SetProperty( Slider::Property::MARKS, Property::Value( marks ) );  
488 - slider.SetProperty( Slider::Property::SNAP_TO_MARKS, Property::Value( true ) ); 547 + mSliders.at( sliderIndex ).SetProperty( Slider::Property::MARKS, Property::Value( marks ) );
  548 + mSliders.at( sliderIndex ).SetProperty( Slider::Property::SNAP_TO_MARKS, Property::Value( true ) );
489 } 549 }
490 550
491 //When a shape button is tapped, switch to the corresponding shape. 551 //When a shape button is tapped, switch to the corresponding shape.
@@ -612,18 +672,19 @@ public: @@ -612,18 +672,19 @@ public:
612 private: 672 private:
613 Application& mApplication; 673 Application& mApplication;
614 674
615 - std::vector<Slider> mSliders; ///< Holds the sliders on screen that each shape accesses.  
616 - std::vector<TextLabel> mSliderLabels; ///< Holds the labels to each slider.  
617 - TableView mSliderTable; ///< A table to layout the sliders next to their labels. 675 + std::vector<Slider> mSliders; ///< Holds the sliders on screen that each shape accesses.
  676 + std::vector<TextLabel> mSliderLabels; ///< Holds the labels to each slider.
  677 + TableView mSliderTable; ///< A table to layout the sliders next to their labels.
618 678
619 - Property::Map mVisualMap; ///< Property map to create a primitive visual.  
620 - Control mModel; ///< Control to house the primitive visual. 679 + Property::Map mVisualMap; ///< Property map to create a primitive visual.
  680 + Control mModel; ///< Control to house the primitive visual.
  681 + TextLabel mShapeTitle; ///< Indicates what the currently selected shape is.
621 682
622 - PanGestureDetector mPanGestureDetector; ///< Detects pan gestures for rotation of the model.  
623 - Animation mRotationAnimation; ///< Automatically rotates the model, unless it is being panned. 683 + PanGestureDetector mPanGestureDetector; ///< Detects pan gestures for rotation of the model.
  684 + Animation mRotationAnimation; ///< Automatically rotates the model, unless it is being panned.
624 685
625 - Vector4 mColor; ///< Color to set all shapes.  
626 - Vector2 mRotation; ///< Keeps track of model rotation. 686 + Vector4 mColor; ///< Color to set all shapes.
  687 + Vector2 mRotation; ///< Keeps track of model rotation.
627 }; 688 };
628 689
629 void RunTest( Application& application ) 690 void RunTest( Application& application )
examples/shadow-bone-lighting/shadow-bone-lighting-example.cpp renamed to examples/shadows-and-lights/shadows-and-lights-example.cpp
@@ -35,7 +35,7 @@ const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR &quot;background-default.png&quot; ); @@ -35,7 +35,7 @@ const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR &quot;background-default.png&quot; );
35 const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" ); 35 const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
36 36
37 const char* APPLICATION_TITLE_PAN_LIGHT( "Lighting: Pan Light" ); 37 const char* APPLICATION_TITLE_PAN_LIGHT( "Lighting: Pan Light" );
38 -const char* APPLICATION_TITLE_PAN_OBJECT( "Lighting: Rotate Object" ); 38 +const char* APPLICATION_TITLE_ROTATE_OBJECT( "Lighting: Rotate Object" );
39 const char* APPLICATION_TITLE_PAN_SCENE( "Lighting: Pan Scene" ); 39 const char* APPLICATION_TITLE_PAN_SCENE( "Lighting: Pan Scene" );
40 const char* APPLICATION_TITLE_ROTATE_SCENE( "Lighting: Rotate Scene" ); 40 const char* APPLICATION_TITLE_ROTATE_SCENE( "Lighting: Rotate Scene" );
41 const char* CHANGE_EFFECT_IMAGE( DEMO_IMAGE_DIR "icon-change.png" ); 41 const char* CHANGE_EFFECT_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
@@ -60,8 +60,8 @@ const Vector2 DEFAULT_STAGE_SIZE( 480.0f, 800.0f ); @@ -60,8 +60,8 @@ const Vector2 DEFAULT_STAGE_SIZE( 480.0f, 800.0f );
60 60
61 const float X_ROTATION_DISPLACEMENT_FACTOR = 60.f; 61 const float X_ROTATION_DISPLACEMENT_FACTOR = 60.f;
62 const float Y_ROTATION_DISPLACEMENT_FACTOR = 60.f; 62 const float Y_ROTATION_DISPLACEMENT_FACTOR = 60.f;
63 -const float LIGHT_PAN_X_DISPLACEMENT_FACTOR = 180.f;  
64 -const float LIGHT_PAN_Y_DISPLACEMENT_FACTOR = 180.f; 63 +const float LIGHT_PAN_X_DISPLACEMENT_FACTOR = 1/360.f;
  64 +const float LIGHT_PAN_Y_DISPLACEMENT_FACTOR = 1/360.f;
65 65
66 } 66 }
67 67
@@ -81,16 +81,16 @@ public: @@ -81,16 +81,16 @@ public:
81 TestApp(Application &app) 81 TestApp(Application &app)
82 : mApp(app), 82 : mApp(app),
83 mPaused(false), 83 mPaused(false),
84 - mTranslation(Vector3::ZERO),  
85 - mSceneYRotation( Dali::ANGLE_30 * 0.5f ),  
86 - mSceneXRotation( Dali::ANGLE_30 ),  
87 - mLightYRotation(0.0f),  
88 - mLightXRotation(0.0f),  
89 - mObjectYRotation(0.0f), 84 + mTranslation(22.0f, -1.0f, 0.0f),
  85 + mSceneXRotation( Degree(-6.0f) ), // Initial values give a reasonable off-straight view.
  86 + mSceneYRotation( Degree(20.0f) ),
  87 + mLightXRotation( Degree(-1.5f) ),
  88 + mLightYRotation( Degree(-9.5f) ),
90 mObjectXRotation(0.0f), 89 mObjectXRotation(0.0f),
91 - mPinchScale(0.5f),  
92 - mScaleAtPinchStart(0.5f),  
93 - mPanState(PAN_SCENE) 90 + mObjectYRotation(0.0f),
  91 + mPinchScale(0.6f),
  92 + mScaleAtPinchStart(0.6f),
  93 + mPanState(PAN_LIGHT)
94 { 94 {
95 app.InitSignal().Connect(this, &TestApp::Create); 95 app.InitSignal().Connect(this, &TestApp::Create);
96 app.TerminateSignal().Connect(this, &TestApp::Terminate); 96 app.TerminateSignal().Connect(this, &TestApp::Terminate);
@@ -157,7 +157,7 @@ public: @@ -157,7 +157,7 @@ public:
157 toolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter ); 157 toolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter );
158 158
159 // Set Title text 159 // Set Title text
160 - mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_SCENE) ); 160 + mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_LIGHT) );
161 161
162 //Add a reset button 162 //Add a reset button
163 Toolkit::PushButton resetButton = Toolkit::PushButton::New(); 163 Toolkit::PushButton resetButton = Toolkit::PushButton::New();
@@ -167,7 +167,7 @@ public: @@ -167,7 +167,7 @@ public:
167 toolBar.AddControl( resetButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING ); 167 toolBar.AddControl( resetButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING );
168 168
169 // Setup 169 // Setup
170 - mView.SetPosition(Vector3(0.0f, 0.0f, -50)); 170 + mView.SetPosition(Vector3(0.0f, 0.0f, 0.0f));
171 171
172 mContents.SetBehavior(Layer::LAYER_3D); 172 mContents.SetBehavior(Layer::LAYER_3D);
173 mContents.SetPosition(mTranslation); 173 mContents.SetPosition(mTranslation);
@@ -324,9 +324,9 @@ public: @@ -324,9 +324,9 @@ public:
324 { 324 {
325 case PAN_LIGHT: 325 case PAN_LIGHT:
326 { 326 {
327 - mLightXRotation = mLightXRotation - gesture.displacement.y / LIGHT_PAN_X_DISPLACEMENT_FACTOR; // X displacement rotates around Y axis 327 + mLightXRotation = mLightXRotation - gesture.displacement.y * LIGHT_PAN_X_DISPLACEMENT_FACTOR; // X displacement rotates around Y axis
328 mLightXRotation = Clamp(mLightXRotation, -Dali::ANGLE_45, Dali::ANGLE_45 ); 328 mLightXRotation = Clamp(mLightXRotation, -Dali::ANGLE_45, Dali::ANGLE_45 );
329 - mLightYRotation = mLightYRotation + gesture.displacement.x / LIGHT_PAN_Y_DISPLACEMENT_FACTOR; // Y displacement rotates around X axis 329 + mLightYRotation = mLightYRotation + gesture.displacement.x * LIGHT_PAN_Y_DISPLACEMENT_FACTOR; // Y displacement rotates around X axis
330 mLightYRotation = Clamp(mLightYRotation, -Dali::ANGLE_45, Dali::ANGLE_45 ); 330 mLightYRotation = Clamp(mLightYRotation, -Dali::ANGLE_45, Dali::ANGLE_45 );
331 mLightAnchor.SetOrientation( CalculateWorldRotation( mLightXRotation, mLightYRotation ) ); 331 mLightAnchor.SetOrientation( CalculateWorldRotation( mLightXRotation, mLightYRotation ) );
332 break; 332 break;
@@ -407,22 +407,22 @@ public: @@ -407,22 +407,22 @@ public:
407 { 407 {
408 switch(mPanState) 408 switch(mPanState)
409 { 409 {
410 - case PAN_SCENE:  
411 - mPanState = ROTATE_SCENE;  
412 - mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_ROTATE_SCENE) );  
413 - break;  
414 - case ROTATE_SCENE:  
415 - mPanState = PAN_LIGHT;  
416 - mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_LIGHT) );  
417 - break;  
418 case PAN_LIGHT: 410 case PAN_LIGHT:
419 mPanState = ROTATE_OBJECT; 411 mPanState = ROTATE_OBJECT;
420 - mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_OBJECT) ); 412 + mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_ROTATE_OBJECT) );
421 break; 413 break;
422 case ROTATE_OBJECT: 414 case ROTATE_OBJECT:
  415 + mPanState = ROTATE_SCENE;
  416 + mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_ROTATE_SCENE) );
  417 + break;
  418 + case ROTATE_SCENE:
423 mPanState = PAN_SCENE; 419 mPanState = PAN_SCENE;
424 mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_SCENE) ); 420 mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_SCENE) );
425 break; 421 break;
  422 + case PAN_SCENE:
  423 + mPanState = PAN_LIGHT;
  424 + mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_LIGHT) );
  425 + break;
426 default: 426 default:
427 break; 427 break;
428 } 428 }
@@ -464,12 +464,12 @@ private: @@ -464,12 +464,12 @@ private:
464 PinchGestureDetector mPinchGestureDetector; 464 PinchGestureDetector mPinchGestureDetector;
465 TapGestureDetector mTapGestureDetector; 465 TapGestureDetector mTapGestureDetector;
466 Vector3 mTranslation; 466 Vector3 mTranslation;
467 - Radian mSceneYRotation;  
468 Radian mSceneXRotation; 467 Radian mSceneXRotation;
469 - Radian mLightYRotation; 468 + Radian mSceneYRotation;
470 Radian mLightXRotation; 469 Radian mLightXRotation;
471 - Radian mObjectYRotation; 470 + Radian mLightYRotation;
472 Radian mObjectXRotation; 471 Radian mObjectXRotation;
  472 + Radian mObjectYRotation;
473 float mPinchScale; 473 float mPinchScale;
474 float mScaleAtPinchStart; 474 float mScaleAtPinchStart;
475 475
examples/text-editor/text-editor-example.cpp
@@ -40,7 +40,7 @@ const float TOOLBAR_BUTTON_PERCENTAGE = 0.1f; ///&lt; The but @@ -40,7 +40,7 @@ const float TOOLBAR_BUTTON_PERCENTAGE = 0.1f; ///&lt; The but
40 const float TOOLBAR_TITLE_PERCENTAGE = 0.7f; ///< The title's width as a percentage of the toolbar's width. 40 const float TOOLBAR_TITLE_PERCENTAGE = 0.7f; ///< The title's width as a percentage of the toolbar's width.
41 const float TOOLBAR_HEIGHT_PERCENTAGE = 0.05f; ///< The toolbar's height as a percentage of the stage's height. 41 const float TOOLBAR_HEIGHT_PERCENTAGE = 0.05f; ///< The toolbar's height as a percentage of the stage's height.
42 const float TOOLBAR_PADDING = 4.f; ///< The padding in pixels. 42 const float TOOLBAR_PADDING = 4.f; ///< The padding in pixels.
43 -const Vector3 BUTTON_PERCENTAGE( 0.8f, 0.8f, 1.f ); ///< The button's width as a percentage of the space for the buttons in the toolbar. 43 +const float BUTTON_PERCENTAGE = 0.8f; ///< The button's height as a percentage of the space for the buttons in the toolbar.
44 const Vector3 TEXT_EDITOR_RELATIVE_SIZE( 1.f, 0.45f, 1.0f ); ///< The size of the text editor as a percentage of the stage's size. 44 const Vector3 TEXT_EDITOR_RELATIVE_SIZE( 1.f, 0.45f, 1.0f ); ///< The size of the text editor as a percentage of the stage's size.
45 const Vector4 TEXT_EDITOR_BACKGROUND_COLOR( 1.f, 1.f, 1.f, 0.15f ); ///< The background color of the text editor. 45 const Vector4 TEXT_EDITOR_BACKGROUND_COLOR( 1.f, 1.f, 1.f, 0.15f ); ///< The background color of the text editor.
46 46
@@ -108,17 +108,46 @@ public: @@ -108,17 +108,46 @@ public:
108 "", 108 "",
109 viewStyle ); 109 viewStyle );
110 110
  111 + // Create a label for the color selection button.
  112 + // The button will be a child of this, so as to be placed next to it.
  113 + TextLabel colorLabel = TextLabel::New( "Text Color: " );
  114 + colorLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::WIDTH );
  115 + colorLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
  116 + colorLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
  117 +
  118 + // Create a container for the color button, to layout the drop-down list below it.
  119 + mColorContainer = Control::New();
  120 + mColorContainer.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::WIDTH );
  121 + mColorContainer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::HEIGHT );
  122 + mColorContainer.SetSizeModeFactor( Vector3( 0.0f, BUTTON_PERCENTAGE, 0.0f ) );
  123 +
  124 + // Place to right of parent.
  125 + mColorContainer.SetParentOrigin( ParentOrigin::CENTER_RIGHT );
  126 + mColorContainer.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
  127 + colorLabel.Add( mColorContainer );
  128 +
  129 + // Add border to highlight harder-to-see colors.
  130 + // We use a color rather than border visual as the container will always be behind the button.
  131 + Property::Map colorMap;
  132 + colorMap.Insert( Visual::Property::TYPE, Visual::COLOR);
  133 + colorMap.Insert( ColorVisual::Property::MIX_COLOR, Color::BLACK );
  134 + mColorContainer.SetProperty( Control::Property::BACKGROUND, colorMap );
  135 +
111 // Create a 'select color' button. 136 // Create a 'select color' button.
112 mColorButtonOption = Toolkit::PushButton::New(); 137 mColorButtonOption = Toolkit::PushButton::New();
113 mColorButtonOption.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS ); 138 mColorButtonOption.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
114 - mColorButtonOption.SetSizeModeFactor( BUTTON_PERCENTAGE ); 139 + mColorButtonOption.SetSizeModeFactor( Vector3( 0.9f, 0.9f, 0.0f ) ); // Smaller than container to show border.
  140 + mColorButtonOption.SetParentOrigin( ParentOrigin::CENTER );
  141 + mColorButtonOption.SetAnchorPoint( AnchorPoint::CENTER );
115 142
116 mColorButtonOption.SetProperty( Button::Property::UNSELECTED_COLOR, Color::BLACK ); 143 mColorButtonOption.SetProperty( Button::Property::UNSELECTED_COLOR, Color::BLACK );
117 mColorButtonOption.SetProperty( Button::Property::SELECTED_COLOR, Color::BLACK ); 144 mColorButtonOption.SetProperty( Button::Property::SELECTED_COLOR, Color::BLACK );
118 145
119 mColorButtonOption.ClickedSignal().Connect( this, &TextEditorExample::OnChangeColorButtonClicked ); 146 mColorButtonOption.ClickedSignal().Connect( this, &TextEditorExample::OnChangeColorButtonClicked );
  147 + mColorContainer.Add( mColorButtonOption );
120 148
121 - mToolBar.AddControl( mColorButtonOption, viewStyle.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING ); 149 + //Add label to toolbar, which will also add the color button next to it.
  150 + mToolBar.AddControl( colorLabel, viewStyle.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
122 151
123 // Create the text editor. 152 // Create the text editor.
124 mEditor = TextEditor::New(); 153 mEditor = TextEditor::New();
@@ -159,21 +188,14 @@ public: @@ -159,21 +188,14 @@ public:
159 void CreateButtonContainer() 188 void CreateButtonContainer()
160 { 189 {
161 mButtonContainer = Toolkit::TableView::New( NUMBER_OF_COLORS, 1u ); 190 mButtonContainer = Toolkit::TableView::New( NUMBER_OF_COLORS, 1u );
162 - mButtonContainer.SetParentOrigin( ParentOrigin::TOP_LEFT );  
163 - mButtonContainer.SetAnchorPoint( AnchorPoint::TOP_LEFT );  
164 -  
165 - Stage stage = Stage::GetCurrent();  
166 - const Vector2 stageSize = stage.GetSize();  
167 - const float toolBarHeight = TOOLBAR_HEIGHT_PERCENTAGE * stageSize.height;  
168 - mButtonContainer.SetPosition( TOOLBAR_PADDING, 2.f * TOOLBAR_PADDING + toolBarHeight, 0.f );  
169 -  
170 mButtonContainer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS ); 191 mButtonContainer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
  192 + mButtonContainer.SetSizeModeFactor( Vector3( 1.0f, NUMBER_OF_COLORS, 1.0f ) );
171 193
172 - const Vector3 containerPercentage( 0.8f * TOOLBAR_BUTTON_PERCENTAGE, NUMBER_OF_COLORS, 1.f );  
173 - mButtonContainer.SetSizeModeFactor( containerPercentage );  
174 -  
175 - Layer toolbarLayer = mToolBar.GetLayer();  
176 - toolbarLayer.Add( mButtonContainer ); 194 + // Place below color selection button.
  195 + mButtonContainer.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
  196 + mButtonContainer.SetAnchorPoint( AnchorPoint::TOP_CENTER );
  197 + mButtonContainer.SetPosition( 0.0f, 2.f * TOOLBAR_PADDING, 0.f );
  198 + mColorContainer.Add( mButtonContainer );
177 199
178 const Vector3 buttonPercentage( 1.f, 0.8f / static_cast<float>( NUMBER_OF_COLORS ), 1.f ); 200 const Vector3 buttonPercentage( 1.f, 0.8f / static_cast<float>( NUMBER_OF_COLORS ), 1.f );
179 for( unsigned int index = 0u; index < NUMBER_OF_COLORS; ++index ) 201 for( unsigned int index = 0u; index < NUMBER_OF_COLORS; ++index )
@@ -260,6 +282,7 @@ private: @@ -260,6 +282,7 @@ private:
260 Toolkit::Control mView; 282 Toolkit::Control mView;
261 Toolkit::ToolBar mToolBar; 283 Toolkit::ToolBar mToolBar;
262 Toolkit::TextEditor mEditor; 284 Toolkit::TextEditor mEditor;
  285 + Toolkit::Control mColorContainer;
263 Toolkit::PushButton mColorButtonOption; 286 Toolkit::PushButton mColorButtonOption;
264 Toolkit::TableView mButtonContainer; 287 Toolkit::TableView mButtonContainer;
265 }; 288 };
packaging/com.samsung.dali-demo.spec
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
2 2
3 Name: com.samsung.dali-demo 3 Name: com.samsung.dali-demo
4 Summary: The OpenGLES Canvas Core Demo 4 Summary: The OpenGLES Canvas Core Demo
5 -Version: 1.2.6 5 +Version: 1.2.7
6 Release: 1 6 Release: 1
7 Group: System/Libraries 7 Group: System/Libraries
8 License: Apache-2.0 8 License: Apache-2.0
resources/images/bevelled-cube-button.png

3.98 KB | W: | H:

4.16 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
resources/images/cone-button.png

3.48 KB | W: | H:

3.53 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
resources/images/conical-frustrum-button.png

3.85 KB | W: | H:

3.81 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
resources/images/cube-button.png

2.63 KB | W: | H:

2.9 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
resources/images/cylinder-button.png

3.77 KB | W: | H:

3.66 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
resources/images/octahedron-button.png

3.24 KB | W: | H:

3.48 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
resources/images/sphere-button.png

5.14 KB | W: | H:

4.94 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin