2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
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
9 // http://www.apache.org/licenses/LICENSE-2.0/
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.
19 * @file FUiCtrl_MessageBox.h
20 * @brief This is the header file for the _MessageBox class.
22 * This header file contains the declarations of the %_MessageBox class.
25 #ifndef _FUI_CTRL_INTERNAL_MESSAGEBOX_H_
26 #define _FUI_CTRL_INTERNAL_MESSAGEBOX_H_
28 #include <FSysISettingEventListener.h>
29 #include <FUiCtrlMessageBox.h>
30 #include "FUiCtrl_Popup.h"
31 #include "FUi_IAccessibilityListener.h"
33 namespace Tizen { namespace Ui { namespace Controls
36 class _MessageBoxPresenter;
47 class _OSP_EXPORT_ _MessageBox
49 , virtual public Tizen::Base::Runtime::IEventListener
50 , virtual public _IUiEventListener
51 , virtual public _IUiEventPreviewer
52 , virtual public Tizen::System::ISettingEventListener
53 , public _IAccessibilityListener
57 virtual ~_MessageBox(void);
61 static _MessageBox* CreateMessageBoxN(void);
62 result Initialize(const Tizen::Base::String& title, const Tizen::Base::String& text, MessageBoxStyle style, unsigned long timeout);
64 virtual result ShowAndWait(int& modalResult);
66 float GetTotalHeight(void) const;
68 virtual void OnDraw(void);
70 virtual void OnFontChanged(Tizen::Graphics::Font* pFont);
71 virtual void OnFontInfoRequested(unsigned long& style, float& size);
73 virtual void OnActivated(void);
74 virtual void OnDeactivated(void);
76 virtual void OnChangeLayout(_ControlOrientation orientation);
78 virtual void OnBoundsChanged(void);
79 virtual void OnSettingChanged(Tizen::Base::String& key);
81 virtual bool OnAccessibilityFocusMovedNext(const _AccessibilityContainer& control, const _AccessibilityElement& element);
82 virtual bool OnAccessibilityFocusMovedPrevious(const _AccessibilityContainer& control, const _AccessibilityElement& element);
83 virtual bool OnAccessibilityReadingElement(const _AccessibilityContainer& control, const _AccessibilityElement& element);
84 virtual bool OnAccessibilityReadElement(const _AccessibilityContainer& control, const _AccessibilityElement& element);
85 virtual bool OnAccessibilityFocusIn(const _AccessibilityContainer& control, const _AccessibilityElement& element);
86 virtual bool OnAccessibilityFocusOut(const _AccessibilityContainer& control, const _AccessibilityElement& element);
87 virtual bool OnAccessibilityActionPerformed(const _AccessibilityContainer& control, const _AccessibilityElement& element);
88 virtual bool OnAccessibilityValueIncreased(const _AccessibilityContainer& control, const _AccessibilityElement& element);
89 virtual bool OnAccessibilityValueDecreased(const _AccessibilityContainer& control, const _AccessibilityElement& element);
91 bool OnKeyPressed(const _Control& source, const _KeyInfo& keyInfo){return false;}
92 bool OnKeyReleased(const _Control& source, const _KeyInfo& keyInfo);
94 Tizen::Graphics::Bitmap* GetButtonBackgroundBitmap(void);
95 Tizen::Graphics::Bitmap* GetButtonBackgroundEffectBitmap(void);
96 Tizen::Graphics::Bitmap* GetTitleBackgroundBitmap(void);
97 Tizen::Graphics::Bitmap* GetTitleBackgroundEffectBitmap(void);
100 MessageBoxStyle GetMsgBoxStyle(void) const;
102 unsigned long GetTimeout(void) const;
104 Tizen::Base::String GetText(void) const;
106 void SetTextColor(const Tizen::Graphics::Color& color);
107 Tizen::Graphics::Color GetTextColor(void) const;
110 result SetPresenter(const _MessageBoxPresenter& msgboxPresenter);
111 virtual _PopupPresenter* GetPresenter(void);
113 // Touch Event Listener
114 virtual bool OnTouchPressed(const _Control& source, const _TouchInfo& touchinfo);
115 virtual bool OnTouchReleased(const _Control& source, const _TouchInfo& touchinfo);
116 virtual bool OnTouchMoved(const _Control& source, const _TouchInfo& touchinfo);
117 virtual void InitializeAccessibilityElement(void);
122 _MessageBox(const _MessageBox& rhs);
123 _MessageBox& operator =(const _MessageBox& rhs);
127 _MessageBoxPresenter* __pMsgboxPresenter;
129 MessageBoxStyle __msgboxStyle;
131 Tizen::Graphics::Color __textColor;
134 Tizen::Graphics::Bitmap* __pButtonEffectBitmap;
135 Tizen::Graphics::Bitmap* __pTitleEffectBitmap;
136 Tizen::Graphics::Bitmap* __pComposedButtonBitmap;
137 Tizen::Graphics::Bitmap* __pComposedTitleBitmap;
138 Tizen::Base::String __text;
140 unsigned long __timeout;
145 }}} // Tizen::Ui::Controls
147 #endif // _FUI_CTRL_INTERNAL_MESSAGEBOX_H_