Tizen 2.1 base
[framework/osp/uifw.git] / inc / FUiCtrlSectionTableView.h
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 FUiCtrlSectionTableView.h
20  * @brief This is the header file for the %SectionTableView class.
21  *
22  * This header file contains the declarations of the %SectionTableView class and its helper classes.
23  */
24
25 #ifndef _FUI_CTRL_SECTION_TABLE_VIEW_H_
26 #define _FUI_CTRL_SECTION_TABLE_VIEW_H_
27
28 #include <FGrpRectangle.h>
29 #include <FGrpColor.h>
30 #include <FUiContainer.h>
31 #include <FUiCtrlTableViewTypes.h>
32
33 namespace Tizen { namespace Ui { namespace Controls
34 {
35 class ISectionTableViewItemProvider;
36 class ISectionTableViewItemEventListener;
37 class IFastScrollListener;
38 class IScrollEventListener;
39
40 /**
41  * @class SectionTableView
42  * @brief   This class defines common behavior for a %SectionTableView control.
43  *
44  * @since 2.0
45  *
46  * The %SectionTableView class defines common behavior for a %SectionTableView control.
47  * @code
48 //Sample code for SectionTableViewSample.h
49 #include <FUi.h>
50
51 class SectionTableViewSample
52         : public Tizen::Ui::Controls::Form
53         , public Tizen::Ui::Controls::ISectionTableViewItemProvider
54         , public Tizen::Ui::Controls::ISectionTableViewItemEventListener
55 {
56 public:
57         SectionTableViewSample(void)
58         : __pSectionTableView(null)
59         , __pContextItem(null){}
60
61         bool Initialize(void);
62         virtual result OnInitializing(void);
63         virtual result OnTerminating(void);
64
65         // ISectionTableViewItemEventListener
66         virtual void OnSectionTableViewItemStateChanged(Tizen::Ui::Controls::SectionTableView& tableView, int sectionIndex, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem, Tizen::Ui::Controls::TableViewItemStatus status);
67         virtual void OnSectionTableViewContextItemActivationStateChanged(Tizen::Ui::Controls::SectionTableView& tableView, int sectionIndex, int itemIndex, Tizen::Ui::Controls::TableViewContextItem* pContextItem, bool activated);
68
69         // ISectionTableViewItemProvider
70         virtual int GetSectionCount(void);
71         virtual int GetItemCount(int sectionIndex);
72         virtual bool HasSectionHeader(int sectionIndex);
73         virtual bool HasSectionFooter(int sectionIndex);
74         virtual Tizen::Base::String GetSectionHeader(int sectionIndex);
75         virtual Tizen::Base::String GetSectionFooter(int sectionIndex);
76         virtual int GetDefaultItemHeight(void);
77         virtual Tizen::Ui::Controls::TableViewItem* CreateItem(int sectionIndex, int itemIndex, int itemWidth);
78         virtual bool DeleteItem(int sectionIndex, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem);
79         virtual void UpdateItem(int sectionIndex, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem);
80
81 private:
82         Tizen::Ui::Controls::SectionTableView* __pSectionTableView;
83 };
84  *  @endcode
85  *
86  *  @code
87
88 //Sample code for SectionTableViewSample.cpp
89 #include <FApp.h>
90 #include <FGraphics.h>
91
92 #include "SectionTableViewSample.h"
93
94 using namespace Tizen::App;
95 using namespace Tizen::Base;
96 using namespace Tizen::Graphics;
97 using namespace Tizen::Media;
98 using namespace Tizen::Ui::Controls;
99
100 bool
101 SectionTableViewSample::Initialize(void)
102 {
103         Construct(FORM_STYLE_NORMAL);
104         return true;
105 }
106
107 result
108 SectionTableViewSample::OnInitializing(void)
109 {
110         result r = E_SUCCESS;
111
112         // Creates an instance of TableView
113         __pSectionTableView = new TableView();
114         __pSectionTableView->Construct(Rectangle(0, 0, GetClientAreaBounds().width, GetClientAreaBounds().height), true, TABLE_VIEW_SCROLL_BAR_STYLE_FADE_OUT);
115         __pSectionTableView->SetItemProvider(*this);
116         __pSectionTableView->AddTableViewItemEventListener(*this);
117
118         // Adds the TableView to the form
119         AddControl(*__pSectionTableView);
120         return r;
121 }
122
123 result
124 SectionTableViewSample::OnTerminating(void)
125 {
126         return E_SUCCESS;
127 }
128
129 // ISectionTableViewItemEventListener implementation
130 void
131 SectionTableViewSample::OnSectionTableViewItemStateChanged(SectionTableView& tableView, int sectionIndex, int itemIndex, TableViewItem* pItem, TableViewItemStatus status)
132 {
133         // ....
134 }
135
136 void
137 SectionTableViewSample::OnSectionTableViewContextItemActivationStateChanged(SectionTableView& tableView, int sectionIndex, int itemIndex, TableViewContextItem* pContextItem, bool activated)
138 {
139         // ....
140 }
141
142 // ISectionTableViewItemProvider implementation
143 int
144 SectionTableViewSample::GetSectionCount(void)
145 {
146         return 10;
147 }
148
149 int
150 SectionTableViewSample::GetItemCount(int sectionIndex)
151 {
152         return 5;
153 }
154
155 bool
156 SectionTableViewSample::HasSectionHeader(int sectionIndex)
157 {
158         true;
159 }
160
161 bool
162 SectionTableViewSample::HasSectionFooter(int sectionIndex)
163 {
164         true;
165 }
166
167 String
168 SectionTableViewSample::GetSectionHeader(int sectionIndex)
169 {
170         String text;
171         text.Format(30, L"Section header %d", sectionIndex);
172
173         return text;
174 }
175
176 String
177 SectionTableViewSample::GetSectionFooter(int sectionIndex)
178 {
179         String text;
180         text.Format(30, L"Section footer %d", sectionIndex);
181
182         return text;
183 }
184
185 int
186 SectionTableViewSample::GetDefaultItemHeight(void)
187 {
188         return 100;
189 }
190
191 TableViewItem*
192 SectionTableViewSample::CreateItem(int sectionIndex, int itemIndex, int itemWidth)
193 {
194         TableViewAnnexStyle style = TABLE_VIEW_ANNEX_STYLE_NORMAL;
195         TableViewItem* pItem = new TableViewItem();
196
197         switch (itemIndex % 5)
198         {
199         case 0:
200                 style = TABLE_VIEW_ANNEX_STYLE_NORMAL;
201                 break;
202         case 1:
203                 style = TABLE_VIEW_ANNEX_STYLE_MARK;
204                 break;
205         case 2:
206                 style = TABLE_VIEW_ANNEX_STYLE_ONOFF_SLIDING;
207                 break;
208         case 3:
209                 style = TABLE_VIEW_ANNEX_STYLE_DETAILED;
210                 break;
211         case 4:
212                 style = TABLE_VIEW_ANNEX_STYLE_RADIO;
213                 break;
214         default:
215                 break;
216         }
217
218         pItem->Construct(Dimension(itemWidth, GetDefaultItemHeight()), style);
219
220         String text;
221         text.Format(30, L"TableViewItem %d", itemIndex);
222
223         Label* pLabel = new Label();
224         pLabel->Construct(Rectangle(0, 0, itemWidth, GetDefaultItemHeight(), text);
225
226         pItem->AddControl(*pLabel);
227
228         return pItem;
229
230 }
231
232 bool
233 SectionTableViewSample::DeleteItem(int sectionIndex, int itemIndex, TableViewItem* pItem)
234 {
235         delete pItem;
236
237         return true;
238 }
239
240 void
241 SectionTableViewSample::UpdateItem(int sectionIndex, int itemIndex, TableViewItem* pItem)
242 {
243         // ....
244 }
245 * @endcode
246 *
247 */
248
249 class _OSP_EXPORT_ SectionTableView
250         : public Tizen::Ui::Container
251 {
252 public:
253         /**
254          * The object is not fully constructed after this constructor is called. Hence, the Construct() method must be called after calling this constructor.
255          *
256          * @since 2.0
257          */
258         SectionTableView(void);
259
260         /**
261          * This destructor overrides Tizen::Base::Object::~Object().
262          *
263          * @since 2.0
264          */
265         virtual ~SectionTableView(void);
266
267         /**
268          * Initializes this instance of %SectionTableView with the specified parameters.
269          *
270          * @since 2.0
271          *
272          * @return  An error code
273          * @param[in] rect    An instance of the Graphics::Rectangle class
274          *                              This instance represents the x and y coordinates of the left top corner of the created %SectionTableView along with the width and height.
275          * @param[in] itemDivider       Set to @c true to display an item divider, @n
276          *                              else @c false
277          * @param[in] scrollStyle       The style of %SectionTableView scroll bar style
278          * @exception E_SUCCESS         The method is successful.
279          * @exception E_INVALID_ARG     A specified input parameter is invalid, or either the rect.width or rect.height parameter has a negative value.
280          *
281          */
282         result Construct(const Tizen::Graphics::Rectangle& rect, bool itemDivider, TableViewScrollBarStyle scrollStyle);
283
284         /**
285          * Sets the item provider that creates and deletes items for the section style table view.
286          *
287          * @since 2.0
288          *
289          * @param[in] pProvider                                  The item provider to create and delete items
290          * @remarks If an item provider is not set for the table view, the table view does not work.
291          *          The specified provider should be allocated in heap memory.
292          */
293         void SetItemProvider(ISectionTableViewItemProvider* pProvider);
294
295         /**
296          * Sets the color of a section.
297          *
298          * @since 2.0
299          *
300          * @param[in] color    The section color
301          * @remarks This method works only when the style of the %SectionTableView control is TABLE_VIEW_STYLE_SECTION.
302          */
303         void SetSectionColor(const Tizen::Graphics::Color& color);
304
305         /**
306          * Gets the color of a section.
307          *
308          * @since 2.0
309          *
310          * @return The section color
311          */
312         Tizen::Graphics::Color GetSectionColor(void) const;
313
314         /**
315          * Sets the grouped look is enabled.
316          *
317          * @since 2.0
318          *
319          * @param[in] enable   The enabled/disabled status
320          */
321         void SetGroupedLookEnabled(bool enable);
322
323         /**
324          * Returns whether the grouped look is enabled or not.
325          *
326          * @since 2.0
327          *
328          * @return @c true if the grouped look is enabled, else @c false
329          */
330         bool IsGroupedLookEnabled(void) const;
331
332         /**
333          * Adds a listener instance that listens to state changes of table view items. @n
334          * The added listener can listen to events on the specified event dispatcher's context when they are fired.
335          *
336          * @since 2.0
337          *
338          * @return  An error code
339          * @param[in] listener      The event listener to add
340          * @exception E_SUCCESS                                           The method is successful.
341          * @exception E_OBJ_ALREADY_EXIST       The listener is already added.
342          * @remarks   The specified listener should be allocated in heap memory.
343          */
344         result AddSectionTableViewItemEventListener(ISectionTableViewItemEventListener& listener);
345
346         /**
347          * Removes a listener instance that listens to state changes of table view items. @n
348          * The removed listener cannot listen to events when they are fired.
349          *
350          * @since 2.0
351          *
352          * @return  An error code
353          * @param[in] listener   The event listener to remove
354          * @exception    E_SUCCESS                             The method is successful.
355          * @exception    E_OBJ_NOT_FOUND                  The listener is not found.
356          */
357         result RemoveSectionTableViewItemEventListener(ISectionTableViewItemEventListener& listener);
358
359         /**
360          * Adds a listener instance that listens to state changes of a fast scroll. @n
361          * The added listener can listen to events on the specified event dispatcher's context when they are fired.
362          *
363          * @since 2.0
364          *
365          * @return  An error code
366          * @param[in] listener   The event listener to add
367          * @exception    E_SUCCESS                             The method is successful.
368          * @exception    E_INVALID_OPERATION    The current state of the instance prohibits the execution of the specified operation.
369          * @exception    E_OBJ_ALREADY_EXIST     The listener is already added.
370          * @remarks   The specified listener should be allocated in heap memory.
371          */
372         result AddFastScrollListener(IFastScrollListener& listener);
373
374         /**
375          * Removes a listener instance that listens to state changes of a fast scroll. @n
376          * The removed listener cannot listen to events when they are fired.
377          *
378          * @since 2.0
379          *
380          * @return  An error code
381          * @param[in] listener   The event listener to remove
382          * @exception    E_SUCCESS                             The method is successful.
383          * @exception    E_INVALID_OPERATION    The current state of the instance prohibits the execution of the specified operation.
384          * @exception    E_OBJ_NOT_FOUND                  The listener is not found.
385          */
386         result RemoveFastScrollListener(IFastScrollListener& listener);
387
388         /**
389          * Adds a listener instance that listens to state changes of a scroll event. @n
390          * The added listener can listen to events on the specified event dispatcher's context when they are fired.
391          *
392          * @since 2.0
393          *
394          * @return  An error code
395          * @param[in] listener          The event listener to add
396          * @see     IScrollEventListener::OnScrollEndReached()
397          * @see     RemoveScrollEventListener()
398          * @exception    E_SUCCESS                             The method is successful.
399          * @exception    E_INVALID_OPERATION    The current state of the instance prohibits the execution of the specified operation.
400          * @exception    E_OBJ_ALREADY_EXIST     The listener is already added.
401          * @remarks   The specified listener should be allocated in heap memory.
402          */
403         result AddScrollEventListener(IScrollEventListener& listener);
404
405         /**
406          * Removes a listener instance that listens to state changes of a scroll event. @n
407          * The removed listener cannot listen to events when they are fired.
408          *
409          * @since 2.0
410          *
411          * @return  An error code
412          * @param[in] listener   The event listener to remove
413          * @see  IScrollEventListener::OnScrollEndReached()
414          * @see     AddScrollEventListener()
415          * @exception    E_SUCCESS                             The method is successful.
416          * @exception    E_INVALID_OPERATION    The current state of the instance prohibits the execution of the specified operation.
417          * @exception    E_OBJ_NOT_FOUND                  The listener is not found.
418          */
419         result RemoveScrollEventListener(IScrollEventListener& listener);
420
421         /**
422          * Sets the text index of the fast scroll.
423          *
424          * @since 2.0
425          *
426          * @return  An error code
427          * @param[in] text              The text of the index
428          * @param[in] useSearchIcon  Set to @c true to show the magnifying icon, @n
429          *                              else @c false
430          * @exception E_SUCCESS         The method is successful.
431          * @exception E_INVALID_ARG     A specified input parameter is invalid.
432          * @exception E_INVALID_OPERATION      The current state of the instance prohibits the execution of the specified operation.
433          */
434         result SetFastScrollIndex(const Tizen::Base::String& text, bool useSearchIcon);
435
436         /**
437          * Gets the section and item indexes of the top item.
438          *
439          * @since 2.0
440          *
441          * @return        An error code
442          * @param[out]  sectionIndex               The section index
443          * @param[out]  itemIndex                  The item index
444          * @exception   E_SUCCESS                  The method is successful.
445          * @exception   E_OBJ_NOT_FOUND            Top drawn item is not found.
446          */
447         result GetTopDrawnItemIndex(int& sectionIndex, int& itemIndex) const;
448
449         /**
450          * Gets the section and item indexes of the bottom item.
451          *
452          * @since 2.0
453          *
454          * @return        An error code
455          * @param[out]  sectionIndex               The section index
456          * @param[out]  itemIndex                  The item index
457          * @exception   E_SUCCESS                  The method is successful.
458          * @exception   E_OBJ_NOT_FOUND            Bottom drawn item is not found.
459          */
460         result GetBottomDrawnItemIndex(int& sectionIndex, int& itemIndex) const;
461
462         /**
463          * Scrolls to the item at the specified index.
464          * The specified item is drawn at the position specified by the item alignment.
465          *
466          * @since 2.0
467          *
468          * @return  An error code
469          * @param[in] sectionIndex                                      The section index
470          * @param[in] itemIndex                                         The item index
471          * @param[in] itemAlignment                                     The item alignment
472          * @exception E_SUCCESS                                         The method is successful.
473          * @exception E_OUT_OF_RANGE                                    A specified input parameter is invalid.
474          */
475         result ScrollToItem(int sectionIndex, int itemIndex, TableViewScrollItemAlignment itemAlignment = TABLE_VIEW_SCROLL_ITEM_ALIGNMENT_TOP);
476
477         /**
478          * Checks or unchecks the item at the specified index.
479          *
480          * @since 2.0
481          *
482          * @return  An error code
483          * @param[in] sectionIndex                                      The section index
484          * @param[in] itemIndex                                         The item index
485          * @param[in] check                                                     Set to @c true to select the item, @n
486          *                                                                                      else @c false
487          * @exception E_SUCCESS   The method is successful.
488          * @exception E_OUT_OF_RANGE            A specified input parameter is invalid.
489          * @exception E_INVALID_OPERATION      The item is disabled.
490          * @remarks This method works only when the annex style of the item allows selection.
491          */
492         result SetItemChecked(int sectionIndex, int itemIndex, bool check);
493
494         /**
495          * Returns whether the item at the specified index is selected or not.
496          *
497          * @since 2.0
498          *
499          * @return @c true if the item is selected, @n
500          *   else @c false
501          * @param[in] sectionIndex                                      The section index
502          * @param[in] itemIndex                                         The item index
503          * @exception E_SUCCESS The method is successful.
504          * @exception E_OUT_OF_RANGE A specified input parameter is invalid.
505          * @remarks This method returns @c false, if the annex style of the item does not allow selection.
506          */
507         bool IsItemChecked(int sectionIndex, int itemIndex) const;
508
509         /**
510          * Enables or disables the item at the specified index.
511          *
512          * @since 2.0
513          *
514          * @return An error code
515          * @param[in] sectionIndex                                      The section index
516          * @param[in] itemIndex                                         The item index
517          * @param[in] enable                                                    Set to @c true to enable the specified item, @n
518          *                                                                                      else @c false
519          * @exception E_SUCCESS   The method is successful.
520          * @exception E_OUT_OF_RANGE  A specified input parameter is invalid.
521          */
522         result SetItemEnabled(int sectionIndex, int itemIndex, bool enable);
523
524         /**
525          * Returns whether the item at the specified index is enabled or disabled.
526          *
527          * @since 2.0
528          *
529          * @return @c true if the item is enabled, @n
530          *   else @c false
531          * @param[in] sectionIndex                                      The section index
532          * @param[in] itemIndex                                         The item index
533          * @exception E_SUCCESS The method is successful.
534          * @exception E_OUT_OF_RANGE A specified input parameter is invalid.
535          */
536         bool IsItemEnabled(int sectionIndex, int itemIndex) const;
537
538         /**
539          * Counts the total number of sections.
540          *
541          * @since 2.0
542          *
543          * @return The total number of sections
544          */
545         int GetSectionCount(void) const;
546
547         /**
548          * Counts all the items of the specified section.
549          *
550          * @since 2.0
551          *
552          * @return The total number of items in the specified section
553          * @param[in] sectionIndex                                      The section index
554          * @exception E_SUCCESS The method is successful.
555          * @exception E_OUT_OF_RANGE A specified input parameter is invalid.
556          */
557         int GetItemCountAt(int sectionIndex) const;
558
559         /**
560          * Updates the specified item. @n
561          * For instance, TABLE_VIEW_REFRESH_TYPE_ITEM_ADD is used when a new item needs to be added and TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE is used when an item is deleted from the
562          * table view. Moreover, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY is used when the content of an existing item has changed and it needs to be updated.
563          * Note that calling this method with TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY invokes item provider's UpdateItem() for the given index in sequence.
564          *
565          * @since 2.0
566          *
567          * @return An error code
568          * @param[in] sectionIndex         The section index
569          * @param[in] itemIndex            The item index
570          * @param[in] type                 The item to be added, removed, or modified
571          * @exception E_SUCCESS   The method is successful.
572          * @exception E_OUT_OF_RANGE  A specified input parameter is invalid.
573          * @remarks If the specified item. itemIndex is -1, then the method is applied to the section item with the given index.
574          *   Note that if TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE option is used to a section item, all the items in the section (including the section item itself) are
575          *   removed from the table view.
576          */
577         result RefreshItem(int sectionIndex, int itemIndex, TableViewRefreshType type);
578
579         /**
580          * Updates all the items of a table view.
581          *
582          * @since 2.0
583          *
584          * @return An error code
585          * @remarks This method clears all the items in the table view and invokes the methods of the item provider again to update the table view.
586          */
587         void UpdateTableView(void);
588
589         /**
590          * Gets the index of the item at the specified position.
591          *
592          * @since 2.0
593          *
594          * @param[in] position   The position of the item
595          * @param[out] sectionIndex The section index of the item on specified position
596          * @param[out] itemIndex  The item index of the item on specified position
597          * @remarks This method sets both of sectionIndex and itemIndex to -1 if no item is found at the given position.
598          */
599         result GetItemIndexFromPosition(const Tizen::Graphics::Point& position, int& sectionIndex, int& itemIndex) const;
600
601         /**
602          * Sets the color of a division line between items.
603          *
604          * @since 2.0
605          *
606          * @return An error code
607          * @param[in] color    The division line color
608          */
609         void SetItemDividerColor(const Tizen::Graphics::Color& color);
610
611         /**
612          * Gets the color of a division line between items.
613          *
614          * @since 2.0
615          *
616          * @return  The color of a division line
617          */
618         Tizen::Graphics::Color GetItemDividerColor(void) const;
619
620         /**
621          * Sets the background color of this control.
622          *
623          * @since 2.0
624          *
625          * @param[in] color       The background color
626          * @remarks The background bitmap has priority over the background color. When both the background bitmap and the background color are specified,
627          *   only the bitmap image is displayed.
628          */
629         void SetBackgroundColor(const Tizen::Graphics::Color& color);
630
631         /**
632          * Gets the background color of this control.
633          *
634          * @since 2.0
635          *
636          * @return The background color
637          */
638         Tizen::Graphics::Color GetBackgroundColor(void) const;
639
640         /**
641          * Sets the scroll input handling mode.
642          *
643          * @since 2.0
644          *
645          * @param[in] mode  The scroll input handling mode
646          * @see         GetScrollInputMode()
647          */
648         void SetScrollInputMode(ScrollInputMode mode);
649
650         /**
651          * Gets the scroll input handling mode.
652          *
653          * @since 2.0
654          *
655          * @return     The scroll input handling mode
656          * @see         SetScrollInputMode()
657          */
658         ScrollInputMode GetScrollInputMode(void) const;
659
660         /*
661          * Scrolls the list contents with the amount of pixels.
662          *
663          * @since 2.0
664          *
665          * @return  An error code
666          * @param[in]   pixel                                    The amount of pixels to scroll
667          * @exception   E_SUCCESS                        The method is successful.
668          * @exception   E_OUT_OF_RANGE   The specified @c pixel is out of range.
669          * @remarks If you call ScrollByPixel() with negative @c pixel when position of scroll is already top of contents then it will return E_OUT_OF_RANGE.
670          *                         Likewise, in case of positive @c pixel on the bottom position of scroll it will also return E_OUT_OF_RANGE.
671          */
672         result ScrollByPixel(int pixel);
673
674         /*
675          * Gets the current scroll position
676          *
677          * @since 2.0
678          */
679         int GetCurrentScrollPosition(void) const;
680
681         /*
682          * Enables or disables the scroll of SectionTableView items.
683          *
684          * @since 2.0
685          */
686         void SetScrollEnabled(bool enable);
687
688         /*
689          * Checks whether the scroll is enabled or disabled.
690          *
691          * @since 2.0
692          */
693         bool IsScrollEnabled(void) const;
694
695 private:
696         friend class _TableViewImpl;
697
698         // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
699         SectionTableView(const SectionTableView& rhs);
700
701         // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
702         SectionTableView& operator =(const SectionTableView& rhs);
703 }; // SectionTableView
704
705 }}} // Tizen::Ui::Controls
706
707 #endif  // _FUI_CTRL_SECTION_TABLE_VIEW_H_