Commit c034e9f65dff83e38861979d442eb2c46b4f9cb2

Authored by Victor Cebollada
2 parents 73164442 f6f1baca

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

Change-Id: I63cedb954638d4acb4e00a58da7f6b56d230b4b6
examples/animated-vector-images/animated-vector-images-example.cpp
@@ -21,6 +21,8 @@ @@ -21,6 +21,8 @@
21 #include <dali-toolkit/dali-toolkit.h> 21 #include <dali-toolkit/dali-toolkit.h>
22 #include <dali-toolkit/devel-api/controls/control-devel.h> 22 #include <dali-toolkit/devel-api/controls/control-devel.h>
23 #include <dali-toolkit/devel-api/visuals/animated-vector-image-visual-actions-devel.h> 23 #include <dali-toolkit/devel-api/visuals/animated-vector-image-visual-actions-devel.h>
  24 +#include <dali-toolkit/devel-api/visuals/animated-vector-image-visual-signals-devel.h>
  25 +#include <dali-toolkit/devel-api/visuals/image-visual-properties-devel.h>
24 26
25 using namespace Dali; 27 using namespace Dali;
26 using namespace Dali::Toolkit; 28 using namespace Dali::Toolkit;
@@ -48,14 +50,14 @@ enum CellPlacement @@ -48,14 +50,14 @@ enum CellPlacement
48 NUMBER_OF_ROWS 50 NUMBER_OF_ROWS
49 }; 51 };
50 52
51 -unsigned int GetButtonIndex( Button button ) 53 +unsigned int GetControlIndex( Control control )
52 { 54 {
53 - std::string buttonName = button.GetName(); 55 + std::string controlName = control.GetName();
54 unsigned int index = 0; 56 unsigned int index = 0;
55 57
56 - if ( buttonName != "") 58 + if ( controlName != "")
57 { 59 {
58 - index = std::stoul( buttonName ); 60 + index = std::stoul( controlName );
59 } 61 }
60 62
61 return index; 63 return index;
@@ -114,31 +116,31 @@ class AnimatedVectorImageViewController: public ConnectionTracker @@ -114,31 +116,31 @@ class AnimatedVectorImageViewController: public ConnectionTracker
114 mPlayButtons[x].SetName( s ); 116 mPlayButtons[x].SetName( s );
115 mTable.AddChild( mPlayButtons[x], TableView::CellPosition( CellPlacement::TOP_BUTTON, x ) ); 117 mTable.AddChild( mPlayButtons[x], TableView::CellPosition( CellPlacement::TOP_BUTTON, x ) );
116 118
117 - mPauseButtons[x] = PushButton::New();  
118 - mPauseButtons[x].SetProperty( Button::Property::LABEL, "Pause" );  
119 - mPauseButtons[x].SetParentOrigin( ParentOrigin::BOTTOM_CENTER );  
120 - mPauseButtons[x].SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );  
121 - mPauseButtons[x].ClickedSignal().Connect( this, &AnimatedVectorImageViewController::OnPauseButtonClicked );  
122 - mPauseButtons[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );  
123 - mPauseButtons[x].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );  
124 - mPauseButtons[x].SetName( s );  
125 - mTable.AddChild( mPauseButtons[x], TableView::CellPosition( CellPlacement::LOWER_BUTTON, x ) ); 119 + mStopButtons[x] = PushButton::New();
  120 + mStopButtons[x].SetProperty( Button::Property::LABEL, "Stop" );
  121 + mStopButtons[x].SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
  122 + mStopButtons[x].SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
  123 + mStopButtons[x].ClickedSignal().Connect( this, &AnimatedVectorImageViewController::OnStopButtonClicked );
  124 + mStopButtons[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
  125 + mStopButtons[x].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
  126 + mStopButtons[x].SetName( s );
  127 + mTable.AddChild( mStopButtons[x], TableView::CellPosition( CellPlacement::LOWER_BUTTON, x ) );
126 128
127 mImageViews[x] = ImageView::New( ); 129 mImageViews[x] = ImageView::New( );
128 Property::Map imagePropertyMap; 130 Property::Map imagePropertyMap;
129 - imagePropertyMap.Insert( Visual::Property::TYPE, Visual::IMAGE );  
130 - imagePropertyMap.Insert( ImageVisual::Property::URL, IMAGE_PATH[ x ] );  
131 - mImageViews[x].SetProperty( ImageView::Property::IMAGE , imagePropertyMap ); 131 + imagePropertyMap.Insert( Visual::Property::TYPE, Visual::IMAGE );
  132 + imagePropertyMap.Insert( ImageVisual::Property::URL, IMAGE_PATH[ x ] );
  133 + imagePropertyMap.Insert( DevelImageVisual::Property::LOOP_COUNT, 3 );
  134 + mImageViews[x].SetProperty( ImageView::Property::IMAGE, imagePropertyMap );
132 135
133 mImageViews[x].SetParentOrigin( ParentOrigin::CENTER ); 136 mImageViews[x].SetParentOrigin( ParentOrigin::CENTER );
134 mImageViews[x].SetAnchorPoint( AnchorPoint::CENTER ); 137 mImageViews[x].SetAnchorPoint( AnchorPoint::CENTER );
135 mImageViews[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS ); 138 mImageViews[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
  139 + mImageViews[x].SetName( s );
136 140
137 - mTable.AddChild( mImageViews[x], TableView::CellPosition( CellPlacement::IMAGE, x ) ); 141 + DevelControl::VisualEventSignal( mImageViews[x] ).Connect( this, &AnimatedVectorImageViewController::OnVisualEvent );
138 142
139 - // Set changeable counter and toggle for each ImageView  
140 - mImageViewPlayStatus[x] = false;  
141 - mImageViewPauseStatus[x] = false; 143 + mTable.AddChild( mImageViews[x], TableView::CellPosition( CellPlacement::IMAGE, x ) );
142 } 144 }
143 145
144 Stage::GetCurrent().KeyEventSignal().Connect(this, &AnimatedVectorImageViewController::OnKeyEvent); 146 Stage::GetCurrent().KeyEventSignal().Connect(this, &AnimatedVectorImageViewController::OnKeyEvent);
@@ -148,48 +150,46 @@ private: @@ -148,48 +150,46 @@ private:
148 150
149 bool OnPlayButtonClicked( Button button ) 151 bool OnPlayButtonClicked( Button button )
150 { 152 {
151 - unsigned int buttonIndex = GetButtonIndex( button ); 153 + unsigned int controlIndex = GetControlIndex( button );
  154 +
  155 + ImageView imageView = mImageViews[controlIndex];
152 156
153 - ImageView imageView = mImageViews[buttonIndex];  
154 - if( !mImageViewPlayStatus[buttonIndex] ) 157 + Property::Map map = imageView.GetProperty< Property::Map >( ImageView::Property::IMAGE );
  158 + Property::Value* value = map.Find( DevelImageVisual::Property::PLAY_STATE );
  159 +
  160 + if( value->Get< int >() != static_cast< int >( DevelImageVisual::PlayState::PLAYING ) )
155 { 161 {
156 - mPlayButtons[buttonIndex].SetProperty( Button::Property::LABEL, "Stop" ); 162 + mPlayButtons[controlIndex].SetProperty( Button::Property::LABEL, "Pause" );
157 163
158 DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::PLAY, Property::Value() ); 164 DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::PLAY, Property::Value() );
159 } 165 }
160 else 166 else
161 { 167 {
162 - mPlayButtons[buttonIndex].SetProperty( Button::Property::LABEL, "Play" ); 168 + mPlayButtons[controlIndex].SetProperty( Button::Property::LABEL, "Play" );
163 169
164 - DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::STOP, Property::Value() ); 170 + DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::PAUSE, Property::Value() );
165 } 171 }
166 172
167 - mImageViewPlayStatus[buttonIndex] = !mImageViewPlayStatus[buttonIndex];  
168 -  
169 return true; 173 return true;
170 } 174 }
171 175
172 - bool OnPauseButtonClicked( Button button ) 176 + bool OnStopButtonClicked( Button button )
173 { 177 {
174 - unsigned int buttonIndex = GetButtonIndex( button ); 178 + unsigned int controlIndex = GetControlIndex( button );
  179 + ImageView imageView = mImageViews[controlIndex];
  180 + DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::STOP, Property::Value() );
175 181
176 - ImageView imageView = mImageViews[buttonIndex];  
177 - if( !mImageViewPauseStatus[buttonIndex] )  
178 - {  
179 - mPauseButtons[buttonIndex].SetProperty( Button::Property::LABEL, "Resume" ); 182 + return true;
  183 + }
180 184
181 - DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::PAUSE, Property::Value() );  
182 - }  
183 - else  
184 - {  
185 - mPauseButtons[buttonIndex].SetProperty( Button::Property::LABEL, "Pause" ); 185 + void OnVisualEvent( Control control, Dali::Property::Index visualIndex, Dali::Property::Index signalId )
  186 + {
  187 + unsigned int controlIndex = GetControlIndex( control );
186 188
187 - DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::RESUME, Property::Value() ); 189 + if( visualIndex == ImageView::Property::IMAGE && signalId == DevelAnimatedVectorImageVisual::Signal::ANIMATION_FINISHED )
  190 + {
  191 + mPlayButtons[controlIndex].SetProperty( Button::Property::LABEL, "Play" );
188 } 192 }
189 -  
190 - mImageViewPauseStatus[buttonIndex] = !mImageViewPauseStatus[buttonIndex];  
191 -  
192 - return true;  
193 } 193 }
194 194
195 /** 195 /**
@@ -215,9 +215,7 @@ private: @@ -215,9 +215,7 @@ private:
215 TableView mTable; 215 TableView mTable;
216 ImageView mImageViews[ NUMBER_OF_IMAGES ]; 216 ImageView mImageViews[ NUMBER_OF_IMAGES ];
217 PushButton mPlayButtons[ NUMBER_OF_IMAGES ]; 217 PushButton mPlayButtons[ NUMBER_OF_IMAGES ];
218 - PushButton mPauseButtons[ NUMBER_OF_IMAGES ];  
219 - bool mImageViewPlayStatus[ NUMBER_OF_IMAGES ];  
220 - bool mImageViewPauseStatus[ NUMBER_OF_IMAGES ]; 218 + PushButton mStopButtons[ NUMBER_OF_IMAGES ];
221 219
222 }; 220 };
223 221
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.4.2 5 +Version: 1.4.3
6 Release: 1 6 Release: 1
7 Group: System/Libraries 7 Group: System/Libraries
8 License: Apache-2.0 8 License: Apache-2.0