show OverlayRegion when FormActivated
[platform/framework/native/uifw.git] / inc / FUiCtrlSimpleItem.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.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://www.apache.org/licenses/LICENSE-2.0/
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        FUiCtrlSimpleItem.h
20  * @brief       This is the header file for the %SimpleItem class.
21  *
22  * This header file contains the declarations of the %SimpleItem class and its helper classes.
23  */
24
25 #ifndef _FUI_CTRL_SIMPLE_ITEM_H_
26 #define _FUI_CTRL_SIMPLE_ITEM_H_
27
28 #include <FBaseObject.h>
29 #include <FBaseTypes.h>
30 #include <FGrpBitmap.h>
31 #include <FGrpFloatRectangle.h>
32 #include <FGrpRectangle.h>
33 #include <FUiCtrlListItemBase.h>
34
35 namespace Tizen { namespace Ui { namespace Controls
36 {
37
38 class _SimpleItemImpl;
39
40 /**
41  * @class       SimpleItem
42  * @brief    This class defines the common behavior of a %SimpleItem.
43  *
44  * @since       2.0
45  *
46  * The %SimpleItem class displays a list item, which is the unit of handling a ListView or GroupedListView. It provides the default
47  * formatting of the list items.
48  *
49  * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/ui/implementing_listviews.htm">ListViews</a>.
50  *
51  */
52
53 class _OSP_EXPORT_ SimpleItem
54         : public ListItemBase
55 {
56 public:
57         /**
58          * The object is not fully constructed after this constructor is
59          * called. @n For full construction, the %Construct() method must be
60          * called right after calling this constructor.
61          *
62          * @since       2.0
63          */
64         SimpleItem(void);
65
66         /**
67          * This destructor overrides Tizen::Base::Object::~Object().
68          *
69          * @since       2.0
70          */
71         virtual ~SimpleItem(void);
72
73         /**
74          * Initializes this instance of %SimpleItem with the specified parameters.
75          *
76          * @since       2.0
77          *
78          * @return    An error code
79          * @param[in] itemSize          The size of the item
80          * @param[in] style             The style of Annex
81          * @exception E_SUCCESS         The method is successful.
82          * @exception E_SYSTEM          A system error has occurred.
83          */
84         result Construct(const Tizen::Graphics::Dimension& itemSize, ListAnnexStyle style);
85
86         /**
87          * Initializes this instance of %SimpleItem with the specified parameters.
88          *
89          * @since       2.1
90          *
91          * @return    An error code
92          * @param[in] itemSize          The size of the item
93          * @param[in] style             The style of Annex
94          * @exception E_SUCCESS         The method is successful.
95          * @exception E_SYSTEM          A system error has occurred.
96          */
97         result Construct(const Tizen::Graphics::FloatDimension& itemSize, ListAnnexStyle style);
98
99         /**
100          * Sets the text string and bitmap image for %SimpleItem.
101          *
102          * @since       2.0
103          *
104          * @return  An error code
105          * @param[in] text              The text string to add
106          * @param[in] pBitmap           The bitmap image to display
107          * @exception E_SUCCESS         The method is successful.
108          * @exception E_SYSTEM          A system error has occurred.
109          */
110         result SetElement(const Tizen::Base::String& text, const Tizen::Graphics::Bitmap* pBitmap = null);
111
112 private:
113         //
114         // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
115         //
116         SimpleItem(const SimpleItem& rhs);
117
118         //
119         // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
120         //
121         SimpleItem& operator =(const SimpleItem& rhs);
122 }; // SimpleItem
123
124 }}} // Tizen::Ui::Controls
125
126 #endif  // _FUI_CTRL_SIMPLE_ITEM_H_