Tizen 2.1 base
[framework/osp/uifw.git] / src / ui / controls / FUiCtrlIconListView.cpp
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://floralicense.org/license/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 /**
19  * @file        FUiCtrlIconListView.cpp
20  * @brief       This is the implementation file for the IconListView class.
21  */
22
23 //Includes
24 #include <FBaseSysLog.h>
25 #include <FUiCtrlIconListView.h>
26 #include <FUiCtrlIconListViewItem.h>
27
28 #include "FUiCtrl_IconListViewImpl.h"
29
30 using namespace Tizen::Base;
31 using namespace Tizen::Graphics;
32
33 namespace Tizen { namespace Ui { namespace Controls
34 {
35
36 /**
37  * @class       IconListView
38  * @brief This class defines common behavior for a %IconListView control.
39  * @since               2.0
40  *
41  * Details....
42  *
43  * Example:
44  *
45  * @image html GUI_IconListView.png
46  *
47  * This is the simple UI application which uses a IconListView control.
48  *
49  * @code
50
51  * @endcode
52  *
53  */
54
55 IconListView::IconListView(void)
56 {
57         // Do nothing
58 }
59
60 IconListView::~IconListView(void)
61 {
62         // Do nothing
63 }
64
65 result
66 IconListView::Construct(const Rectangle& rect, const Dimension& itemBitmapSize, IconListViewStyle style,
67                 IconListViewScrollDirection scrollDirection, IconListViewScrollStyle scrollStyle)
68 {
69         // Check whether _pControlImpl has been set, that is, "already constructed" condition.
70         SysAssertf(_pControlImpl == null,
71                         "Already constructed. Calling Construct() twice or more on a same instance is not allowed for this class.");
72
73         // Create _IconListViewImpl
74         _IconListViewImpl* pImpl = _IconListViewImpl::CreateIconListViewImplN(this);
75         SysTryReturn(NID_UI_CTRL, (pImpl != null), GetLastResult(), GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
76
77         // Set _IconListViewImpl
78         _pControlImpl = pImpl;
79
80         // Set Bounds
81         result r = Control::SetBounds(rect.x, rect.y, rect.width, rect.height);
82         if (r != E_SUCCESS)
83         {
84                 Dispose();
85                 Control::Dispose();
86                 return r;
87         }
88
89         // Set Initial Parameters
90         r = pImpl->Initialize(this, itemBitmapSize, style, scrollDirection, scrollStyle);
91         if (r != E_SUCCESS)
92         {
93                 Dispose();
94                 Control::Dispose();
95         }
96
97         return r;
98 }
99
100 result
101 IconListView::SetItemProvider(IIconListViewItemProvider& provider)
102 {
103         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
104         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
105
106         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
107         return pImpl->SetItemProvider(provider);
108 }
109
110 void
111 IconListView::AddIconListViewItemEventListener(IIconListViewItemEventListener& listener)
112 {
113         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
114         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
115
116         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
117         pImpl->AddIconListViewItemEventListener(listener);
118 }
119
120 void
121 IconListView::RemoveIconListViewItemEventListener(IIconListViewItemEventListener& listener)
122 {
123         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
124         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
125
126         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
127         pImpl->RemoveIconListViewItemEventListener(listener);
128 }
129
130 void
131 IconListView::AddScrollEventListener(IScrollEventListener& listener)
132 {
133         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
134         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
135
136         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
137         pImpl->AddScrollEventListener(listener);
138 }
139
140 void
141 IconListView::RemoveScrollEventListener(IScrollEventListener& listener)
142 {
143         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
144         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
145
146         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
147         pImpl->RemoveScrollEventListener(listener);
148 }
149
150 result
151 IconListView::SetBackgroundBitmap(const Bitmap* pBitmap)
152 {
153         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
154         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
155
156         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
157         return pImpl->SetBackgroundBitmap(pBitmap);
158 }
159
160 result
161 IconListView::SetBackgroundColor(const Color& color)
162 {
163         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
164         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
165
166         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
167         pImpl->SetBackgroundColor(color);
168
169         result r = GetLastResult();
170         if (r != E_SUCCESS)
171         {
172                 SysLogException(NID_UI_CTRL, r, "[%s] Propagating.", GetErrorMessage(r));
173         }
174
175         return r;
176 }
177
178 Color
179 IconListView::GetBackgroundColor(void) const
180 {
181         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
182         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
183
184         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
185         return pImpl->GetBackgroundColor();
186 }
187
188 result
189 IconListView::SetMargin(MarginType type, int value)
190 {
191         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
192         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
193
194         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
195         return pImpl->SetMargin(type, value);
196 }
197
198 int
199 IconListView::GetMargin(MarginType type) const
200 {
201         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
202         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
203
204         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
205         return pImpl->GetMargin(type);
206 }
207
208 result
209 IconListView::SetItemSpacing(int horizontalSpacing, int verticalSpacing)
210 {
211         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
212         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
213
214         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
215         return pImpl->SetItemSpacing(horizontalSpacing, verticalSpacing);
216 }
217
218 int
219 IconListView::GetItemHorizontalSpacing(void) const
220 {
221         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
222         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
223
224         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
225         return pImpl->GetItemHorizontalSpacing();
226 }
227
228 int
229 IconListView::GetItemVerticalSpacing(void) const
230 {
231         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
232         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
233
234         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
235         return pImpl->GetItemVerticalSpacing();
236 }
237
238 result
239 IconListView::SetItemChecked(int index, bool check)
240 {
241         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
242         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
243
244         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
245         return pImpl->SetItemChecked(index, check);
246 }
247
248 bool
249 IconListView::IsItemChecked(int index) const
250 {
251         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
252         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
253
254         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
255         return pImpl->IsItemChecked(index);
256 }
257
258 int
259 IconListView::GetItemIndexFromPosition(int x, int y) const
260 {
261         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
262         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
263
264         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
265         return pImpl->GetItemIndexFromPosition(x, y);
266 }
267
268 int
269 IconListView::GetItemIndexFromPosition(const Point& position) const
270 {
271         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
272         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
273
274         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
275         return pImpl->GetItemIndexFromPosition(position);
276 }
277
278 result
279 IconListView::SetTextHorizontalAlignment(HorizontalAlignment alignment)
280 {
281         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
282         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
283
284         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
285         return pImpl->SetTextHorizontalAlignment(alignment);
286 }
287
288 result
289 IconListView::SetTextVerticalAlignment(IconListViewItemTextVerticalAlignment alignment)
290 {
291         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
292         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
293
294         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
295         return pImpl->SetTextVerticalAlignment(alignment);
296 }
297
298 HorizontalAlignment
299 IconListView::GetTextHorizontalAlignment(void) const
300 {
301         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
302         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
303
304         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
305         return pImpl->GetTextHorizontalAlignment();
306 }
307
308 IconListViewItemTextVerticalAlignment
309 IconListView::GetTextVerticalAlignment(void) const
310 {
311         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
312         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
313
314         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
315         return pImpl->GetTextVerticalAlignment();
316 }
317
318 result
319 IconListView::SetTextOfEmptyList(const String& text)
320 {
321         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
322         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
323
324         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
325         return pImpl->SetTextOfEmptyList(text);
326 }
327
328 String
329 IconListView::GetTextOfEmptyList(void) const
330 {
331         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
332         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
333
334         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
335         return pImpl->GetTextOfEmptyList();
336 }
337
338 result
339 IconListView::SetTextColorOfEmptyList(const Color& color)
340 {
341         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
342         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
343
344         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
345         return pImpl->SetTextColorOfEmptyList(color);
346 }
347
348 Color
349 IconListView::GetTextColorOfEmptyList(void) const
350 {
351         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
352         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
353
354         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
355         return pImpl->GetTextColorOfEmptyList();
356 }
357
358 result
359 IconListView::SetItemTextColor(IconListViewItemDrawingStatus status, const Color& color)
360 {
361         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
362         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
363
364         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
365         return pImpl->SetItemTextColor(status, color);
366 }
367
368 Color
369 IconListView::GetItemTextColor(IconListViewItemDrawingStatus status) const
370 {
371         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
372         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
373
374         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
375         return pImpl->GetItemTextColor(status);
376 }
377
378 result
379 IconListView::SetItemTextSize(int size)
380 {
381         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
382         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
383
384         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
385         return pImpl->SetItemTextSize(size);
386 }
387
388 int
389 IconListView::GetItemTextSize(void) const
390 {
391         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
392         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
393
394         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
395         return pImpl->GetItemTextSize();
396 }
397
398 result
399 IconListView::SetCheckBoxPosition(IconListViewCheckBoxPosition position)
400 {
401         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
402         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
403
404         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
405         return pImpl->SetCheckBoxPosition(position);
406 }
407
408 IconListViewCheckBoxPosition
409 IconListView::GetCheckBoxPosition(void) const
410 {
411         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
412         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
413
414         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
415         return pImpl->GetCheckBoxPosition();
416 }
417
418 result
419 IconListView::SetTouchAnimationEnabled(bool enable)
420 {
421         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
422         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
423
424         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
425         return pImpl->SetTouchAnimationEnabled(enable);
426 }
427
428 bool
429 IconListView::IsTouchAnimationEnabled(void) const
430 {
431         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
432         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
433
434         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
435         return pImpl->IsTouchAnimationEnabled();
436 }
437
438 result
439 IconListView::ScrollToItem(int index)
440 {
441         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
442         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
443
444         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
445         return pImpl->ScrollToItem(index);
446 }
447
448 result
449 IconListView::RefreshList(int index, ListRefreshType type)
450 {
451         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
452         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
453
454         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
455         return pImpl->RefreshList(index, type);
456 }
457
458 result
459 IconListView::UpdateList(void)
460 {
461         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
462         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
463
464         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
465         return pImpl->UpdateList();
466 }
467
468 result
469 IconListView::GetItemBitmapSize(int& width, int& height) const
470 {
471         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
472         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
473
474         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
475         return pImpl->GetItemBitmapSize(width, height);
476 }
477
478 Dimension
479 IconListView::GetItemBitmapSize(void) const
480 {
481         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
482         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
483
484         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
485         return pImpl->GetItemBitmapSize();
486 }
487
488 result
489 IconListView::GetItemSize(int& width, int& height) const
490 {
491         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
492         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
493
494         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
495         return pImpl->GetItemSize(width, height);
496 }
497
498 Dimension
499 IconListView::GetItemSize(void) const
500 {
501         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
502         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
503
504         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
505         return pImpl->GetItemSize();
506 }
507
508 result
509 IconListView::SetMagneticScrollSize(int scrollSize)
510 {
511         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
512         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
513
514         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
515         return pImpl->SetMagneticScrollSize(scrollSize);
516 }
517
518 int
519 IconListView::GetMagneticScrollSize(void) const
520 {
521         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
522         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
523
524         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
525         return pImpl->GetMagneticScrollSize();
526 }
527
528 int
529 IconListView::GetItemCountPerAxis(void) const
530 {
531         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
532         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
533
534         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
535         return pImpl->GetItemCountPerAxis();
536 }
537
538 result
539 IconListView::SetItemLayoutHorizontalAlignment(HorizontalAlignment alignment)
540 {
541         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
542         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
543
544         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
545         return pImpl->SetItemLayoutHorizontalAlignment(alignment);
546 }
547
548 result
549 IconListView::SetItemLayoutVerticalAlignment(VerticalAlignment alignment)
550 {
551         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
552         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
553
554         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
555         return pImpl->SetItemLayoutVerticalAlignment(alignment);
556 }
557
558 HorizontalAlignment
559 IconListView::GetItemLayoutHorizontalAlignment(void) const
560 {
561         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
562         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
563
564         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
565         return pImpl->GetItemLayoutHorizontalAlignment();
566 }
567
568 VerticalAlignment
569 IconListView::GetItemLayoutVerticalAlignment(void) const
570 {
571         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
572         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
573
574         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
575         return pImpl->GetItemLayoutVerticalAlignment();
576 }
577
578 result
579 IconListView::SetItemBorderStyle(IconListViewItemBorderStyle borderStyle)
580 {
581         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
582         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
583
584         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
585         return pImpl->SetItemBorderStyle(borderStyle);
586 }
587
588 IconListViewItemBorderStyle
589 IconListView::GetItemBorderStyle(void) const
590 {
591         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
592         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
593
594         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
595         return pImpl->GetItemBorderStyle();
596 }
597
598 result
599 IconListView::SetBitmapOfEmptyList(const Bitmap* pBitmap)
600 {
601         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
602         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
603
604         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
605         return pImpl->SetBitmapOfEmptyList(pBitmap);
606 }
607
608 result
609 IconListView::BeginReorderingMode(void)
610 {
611         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
612         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
613
614         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
615         return pImpl->BeginReorderingMode();
616 }
617
618 result
619 IconListView::EndReorderingMode(void)
620 {
621         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
622         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
623
624         _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
625         return pImpl->EndReorderingMode();
626 }
627
628 bool
629 IconListView::IsInReorderingMode(void) const
630 {
631         // Check whether _pControlImpl has not been set as a precondition of this method, that is, "not-yet constructed" condition.
632         SysAssertf(_pControlImpl != null, "Not yet constructed. Construct() should be called before use.");
633
634         const _IconListViewImpl* pImpl = _IconListViewImpl::GetInstance(*this);
635         return pImpl->IsInReorderingMode();
636 }
637
638 }}} //Tizen::Ui::Controls