Tizen 2.1 base
[framework/osp/uifw.git] / inc / FUiUiConfiguration.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        FUiUiConfiguration.h
20  * @brief       This is the header file for the %UiConfiguration class.
21  *
22  * This header file contains the declarations of the %UiConfiguration class.
23  */
24
25 #ifndef _FUI_UI_CONFIGURATION_H_
26 #define _FUI_UI_CONFIGURATION_H_
27
28 namespace Tizen { namespace Base {
29 class String;
30 }} // Tizen::Base
31
32 namespace Tizen { namespace Ui {
33
34 class _OSP_EXPORT_ UiConfiguration
35 {
36 public:
37         /**
38          * Sets the default font to all the Controls.
39          *
40          * @since 2.0
41          *
42          * @return      An error code
43          * @param[in]   fontName        The app font name or system font name @n
44          *                                                      The app font name is retrieved using Tizen::Graphics::GetFaceName(Tizen::Base::String& filepath).
45          *                                                      The system font name is retrieved using Tizen::Graphics::Font::GetSystemFontListN().
46          *                                                      Sets an empty string if you want to reset
47          * @exception   E_SUCCESS       The method is successful.
48          * @exception   E_FILE_NOT_FOUND        The specified font cannot be found or accessed.
49          * @remarks             At First, the value of fontName is considered app font name if it matches one of the face names of the font files which is located in '/res/font'.
50          *                              If not, the value of fontName is considered system font name if it matches one of the retrieved values using GetSystemFontListN().
51          * @remarks             The control first attempt to find the control font. If it fails, then it searches for the application default font and the system font, in sequence.
52          * @see                 GetDefaultFont()
53          */
54         static result SetDefaultFont(const Tizen::Base::String& fontName);
55
56         /**
57          * Gets the default font for all the Controls.
58          *
59          * @since 2.0
60          *
61          * @return                   The app font name or system font name @n
62          *                                         else an empty string if the default font is not set
63          * @see         SetDefaultFont()
64          */
65         static Tizen::Base::String GetDefaultFont(void);
66
67
68 private:
69         //
70         // This default constructor is intentionally declared as private because this class cannot be constructed.
71         //
72         UiConfiguration(void);
73
74         //
75         // This destructor is intentionally declared as private because this class cannot be constructed.
76         //
77          ~UiConfiguration(void);
78
79         //
80         // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
81         //
82         UiConfiguration(const UiConfiguration& rhs);
83
84         //
85         // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
86         //
87         UiConfiguration& operator =(const UiConfiguration& rhs);
88
89 }; // UiConfiguration
90
91 }} // Tizen::Ui
92
93 #endif // _FUI_UI_CONFIGURATION_H_