2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
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
9 // http://floralicense.org/license/
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.
18 * @file FUiCtrl_TabImpl.h
19 * @brief This is the header file for the _TabImpl class.
21 * This header file contains the declarations of the %_TabImpl class.
24 #ifndef _FUICTRL_TAB_IMPL_H_
25 #define _FUICTRL_TAB_IMPL_H_
27 #include <FUiCtrlTab.h>
28 #include <FUiIActionEventListener.h>
29 #include "FUi_ControlImpl.h"
30 #include "FUiCtrl_Tab.h"
31 #include "FUiCtrl_IActionEventListener.h"
32 #include "FUiCtrl_PublicActionEvent.h"
34 namespace Tizen { namespace Ui { namespace Controls {
36 class _PublicActionEvent;
49 , public _IActionEventListener
50 , virtual public Tizen::Base::Runtime::IEventListener
53 static _TabImpl* CreateTabImplN(Tab* pPublic);
54 virtual ~_TabImpl(void);
56 virtual const char* GetPublicClassName(void) const;
60 virtual Tab& GetPublic(void);
61 virtual const Tab& GetPublic(void) const;
63 virtual const _Tab& GetCore(void) const;
64 virtual _Tab& GetCore(void);
67 _TabImpl(Tab* pPublic, _Tab* pCore);
69 _TabImpl(const _TabImpl& value);
70 _TabImpl& operator =(const _TabImpl& value);
73 static _TabImpl* GetInstance(Tab& pControl);
74 static const _TabImpl* GetInstance(const Tab& pControl);
76 static Tab* CreateTabN(void);
77 static void DeleteTab(Tab* pTab);
79 virtual bool IsMovable(void) const;
80 virtual bool IsResizable(void) const;
83 result AddItem(const Tizen::Graphics::Bitmap& icon, const Tizen::Base::String& text, int actionId);
84 result AddItem(const Tizen::Graphics::Bitmap& icon, int actionId);
85 result AddItem(const Tizen::Base::String& text, int actionId);
87 result InsertItemAt(int index, const Tizen::Graphics::Bitmap& icon, const Tizen::Base::String& text, int actionId);
88 result InsertItemAt(int index, const Tizen::Graphics::Bitmap& icon, int actionId);
89 result InsertItemAt(int index, const Tizen::Base::String& text, int actionId);
91 result SetItemAt(int index, const Tizen::Graphics::Bitmap& icon, const Tizen::Base::String& text, int actionId);
92 result SetItemAt(int index, const Tizen::Graphics::Bitmap& icon, int actionId);
93 result SetItemAt(int index, const Tizen::Base::String& text, int actionId);
95 result RemoveItemAt(int index);
96 result RemoveAllItems(void);
98 result SetBadgeIcon(int actionId, const Tizen::Graphics::Bitmap* pBadgeIcon);
100 int GetItemCount(void) const;
102 int GetItemIndexFromActionId(int actionId) const;
103 int GetItemActionIdAt(int index) const;
105 void SetSelectedItem(int index);
106 int GetSelectedItemIndex(void) const;
108 void SetEditModeEnabled(bool enable);
109 bool IsEditModeEnabled(void) const;
111 result SetBackgroundBitmap(const Tizen::Graphics::Bitmap& bitmap);
112 result SetFocusedItemBackgroundBitmap (const Tizen::Graphics::Bitmap& bitmap);
114 void SetTextColor(const Tizen::Graphics::Color& textColor);
115 Tizen::Graphics::Color GetTextColor(void) const;
117 void SetSelectedTextColor(const Tizen::Graphics::Color& textColor);
118 Tizen::Graphics::Color GetSelectedTextColor(void) const;
120 result SetHighlightedItemBackgroundBitmap (const Tizen::Graphics::Bitmap& bitmap);
122 void SetHighlightedTextColor(const Tizen::Graphics::Color& color);
123 Tizen::Graphics::Color GetHighlightedTextColor(void) const;
125 void AddActionEventListener(Tizen::Ui::IActionEventListener& listener);
126 void RemoveActionEventListener(Tizen::Ui::IActionEventListener& listener);
128 virtual void OnActionPerformed(const Tizen::Ui::_Control& source, int actionId);
131 _PublicActionEvent* __pActionEvent;
135 }}} // Tizen::Ui::Controls
137 #endif //_FUICTRL_TAB_IMPL_H_