2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 // Licensed under the Flora License, Version 1.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://floralicense.org/license/
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an AS IS BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
18 * @file GlProgressAnimation.cpp
19 * @brief This is the implementation file for GlProgressAnimation class.
22 #include "GlProgressAnimation.h"
25 using namespace Tizen::App;
26 using namespace Tizen::Base;
27 using namespace Tizen::Base::Collection;
28 using namespace Tizen::Graphics;
29 using namespace Tizen::Media;
30 using namespace Tizen::Ui;
31 using namespace Tizen::Ui::Controls;
33 ProgressAnimation::ProgressAnimation(void)
35 , __pAnimationFrameList(null)
39 ProgressAnimation::~ProgressAnimation(void)
41 if (__pAnimationFrameList != null)
43 __pAnimationFrameList->RemoveAll(true);
44 delete __pAnimationFrameList;
45 __pAnimationFrameList = null;
50 ProgressAnimation::Construct(Tizen::Graphics::Rectangle rect)
53 Panel::Construct(rect);
56 AppResource *pAppResource = Application::GetInstance()->GetAppResource();
57 if (pAppResource != null)
59 Bitmap *pBitmap0 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS1);
60 Bitmap *pBitmap1 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS2);
61 Bitmap *pBitmap2 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS3);
62 Bitmap *pBitmap3 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS4);
63 Bitmap *pBitmap4 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS5);
64 Bitmap *pBitmap5 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS6);
65 Bitmap *pBitmap6 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS7);
66 Bitmap *pBitmap7 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS8);
67 Bitmap *pBitmap8 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS9);
68 Bitmap *pBitmap9 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS10);
69 Bitmap *pBitmap10 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS11);
70 Bitmap *pBitmap11 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS12);
71 Bitmap *pBitmap12 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS13);
72 Bitmap *pBitmap13 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS14);
73 Bitmap *pBitmap14 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS15);
74 Bitmap *pBitmap15 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS16);
75 Bitmap *pBitmap16 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS17);
76 Bitmap *pBitmap17 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS18);
77 Bitmap *pBitmap18 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS19);
78 Bitmap *pBitmap19 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS20);
79 Bitmap *pBitmap20 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS21);
80 Bitmap *pBitmap21 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS22);
81 Bitmap *pBitmap22 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS23);
82 Bitmap *pBitmap23 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS24);
83 Bitmap *pBitmap24 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS25);
84 Bitmap *pBitmap25 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS26);
85 Bitmap *pBitmap26 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS27);
86 Bitmap *pBitmap27 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS28);
87 Bitmap *pBitmap28 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS29);
88 Bitmap *pBitmap29 = pAppResource->GetBitmapN(IDB_ALBUM_RENAME_PROGRESS30);
90 // Create AnimationFrames
91 long duration = DURATION / PROGRESS_COUNT;
92 AnimationFrame *pAniFrame1 = new (std::nothrow) AnimationFrame(*pBitmap0, duration);
93 AnimationFrame *pAniFrame2 = new (std::nothrow) AnimationFrame(*pBitmap1, duration);
94 AnimationFrame *pAniFrame3 = new (std::nothrow) AnimationFrame(*pBitmap2, duration);
95 AnimationFrame *pAniFrame4 = new (std::nothrow) AnimationFrame(*pBitmap3, duration);
96 AnimationFrame *pAniFrame5 = new (std::nothrow) AnimationFrame(*pBitmap4, duration);
97 AnimationFrame *pAniFrame6 = new (std::nothrow) AnimationFrame(*pBitmap5, duration);
98 AnimationFrame *pAniFrame7 = new (std::nothrow) AnimationFrame(*pBitmap6, duration);
99 AnimationFrame *pAniFrame8 = new (std::nothrow) AnimationFrame(*pBitmap7, duration);
100 AnimationFrame *pAniFrame9 = new (std::nothrow) AnimationFrame(*pBitmap8, duration);
101 AnimationFrame *pAniFrame10 = new (std::nothrow) AnimationFrame(*pBitmap9, duration);
102 AnimationFrame *pAniFrame11 = new (std::nothrow) AnimationFrame(*pBitmap10, duration);
103 AnimationFrame *pAniFrame12 = new (std::nothrow) AnimationFrame(*pBitmap11, duration);
104 AnimationFrame *pAniFrame13 = new (std::nothrow) AnimationFrame(*pBitmap12, duration);
105 AnimationFrame *pAniFrame14 = new (std::nothrow) AnimationFrame(*pBitmap13, duration);
106 AnimationFrame *pAniFrame15 = new (std::nothrow) AnimationFrame(*pBitmap14, duration);
107 AnimationFrame *pAniFrame16 = new (std::nothrow) AnimationFrame(*pBitmap15, duration);
108 AnimationFrame *pAniFrame17 = new (std::nothrow) AnimationFrame(*pBitmap16, duration);
109 AnimationFrame *pAniFrame18 = new (std::nothrow) AnimationFrame(*pBitmap17, duration);
110 AnimationFrame *pAniFrame19 = new (std::nothrow) AnimationFrame(*pBitmap18, duration);
111 AnimationFrame *pAniFrame20 = new (std::nothrow) AnimationFrame(*pBitmap19, duration);
112 AnimationFrame *pAniFrame21 = new (std::nothrow) AnimationFrame(*pBitmap20, duration);
113 AnimationFrame *pAniFrame22 = new (std::nothrow) AnimationFrame(*pBitmap21, duration);
114 AnimationFrame *pAniFrame23 = new (std::nothrow) AnimationFrame(*pBitmap22, duration);
115 AnimationFrame *pAniFrame24 = new (std::nothrow) AnimationFrame(*pBitmap23, duration);
116 AnimationFrame *pAniFrame25 = new (std::nothrow) AnimationFrame(*pBitmap24, duration);
117 AnimationFrame *pAniFrame26 = new (std::nothrow) AnimationFrame(*pBitmap25, duration);
118 AnimationFrame *pAniFrame27 = new (std::nothrow) AnimationFrame(*pBitmap26, duration);
119 AnimationFrame *pAniFrame28 = new (std::nothrow) AnimationFrame(*pBitmap27, duration);
120 AnimationFrame *pAniFrame29 = new (std::nothrow) AnimationFrame(*pBitmap28, duration);
121 AnimationFrame *pAniFrame30 = new (std::nothrow) AnimationFrame(*pBitmap29, duration);
123 // Create AnimationList
124 __pAnimationFrameList = new (std::nothrow) ArrayList();
125 __pAnimationFrameList->Construct();
126 __pAnimationFrameList->Add(*pAniFrame1);
127 __pAnimationFrameList->Add(*pAniFrame2);
128 __pAnimationFrameList->Add(*pAniFrame3);
129 __pAnimationFrameList->Add(*pAniFrame4);
130 __pAnimationFrameList->Add(*pAniFrame5);
131 __pAnimationFrameList->Add(*pAniFrame6);
132 __pAnimationFrameList->Add(*pAniFrame7);
133 __pAnimationFrameList->Add(*pAniFrame8);
134 __pAnimationFrameList->Add(*pAniFrame9);
135 __pAnimationFrameList->Add(*pAniFrame10);
136 __pAnimationFrameList->Add(*pAniFrame11);
137 __pAnimationFrameList->Add(*pAniFrame12);
138 __pAnimationFrameList->Add(*pAniFrame13);
139 __pAnimationFrameList->Add(*pAniFrame14);
140 __pAnimationFrameList->Add(*pAniFrame15);
141 __pAnimationFrameList->Add(*pAniFrame16);
142 __pAnimationFrameList->Add(*pAniFrame17);
143 __pAnimationFrameList->Add(*pAniFrame18);
144 __pAnimationFrameList->Add(*pAniFrame19);
145 __pAnimationFrameList->Add(*pAniFrame20);
146 __pAnimationFrameList->Add(*pAniFrame21);
147 __pAnimationFrameList->Add(*pAniFrame22);
148 __pAnimationFrameList->Add(*pAniFrame23);
149 __pAnimationFrameList->Add(*pAniFrame24);
150 __pAnimationFrameList->Add(*pAniFrame25);
151 __pAnimationFrameList->Add(*pAniFrame26);
152 __pAnimationFrameList->Add(*pAniFrame27);
153 __pAnimationFrameList->Add(*pAniFrame28);
154 __pAnimationFrameList->Add(*pAniFrame29);
155 __pAnimationFrameList->Add(*pAniFrame30);
157 // Deallocate a Bitmap.
190 __pAnimation = new (std::nothrow) Animation();
191 __pAnimation->Construct(Rectangle((rect.width/2 - 60/2), (rect.height/2 - 60/2), 60, 60), *__pAnimationFrameList);
192 __pAnimation->SetRepeatCount(10000);
193 AddControl(*__pAnimation);
200 ProgressAnimation::AnimationStart(void)
202 __pAnimation->SetShowState(true);
203 __pAnimation->Play();
207 ProgressAnimation::AnimationStop(void)
209 __pAnimation->Stop();
210 __pAnimation->SetShowState(false);