c569e12dc6bdf213c95fc0d15d1514632948fe6a
[platform/core/api/system-settings.git] / doc / system_settings_doc.h
1 /*
2  * Copyright (c) 2015-2019 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 /**
18 * @ingroup CAPI_SYSTEM_FRAMEWORK
19 * @defgroup CAPI_SYSTEM_SYSTEM_SETTINGS_MODULE System Settings
20 * @brief The @ref CAPI_SYSTEM_SYSTEM_SETTINGS_MODULE API provides APIs for sharing configuration over a system.
21 * #system_settings_key_e shows all of the supporting APIs in System-Settings.
22 *
23 * @section CAPI_SYSTEM_SYSTEM_SETTINGS_MODULE_REQUIRED_HEADER Required Header
24 *       \#include <system_settings.h>
25 *
26 * @section CAPI_SYSTEM_SYSTEM_SETTINGS_MODULE_OVERVIEW Overview
27 *
28 * System Settings API provides functions for getting the system configuration related to user preferences.
29 * The main features of the System Settings API include accessing system-wide configurations, such as ringtones, wallpapers, and etc.
30 *
31 * @section CAPI_SYSTEM_SYSTEM_SETTINGS_MODULE_FEATURE Related Features
32 *
33 * This API is related with the following features:
34 *  - %http://tizen.org/feature/systemsetting
35 *  - %http://tizen.org/feature/systemsetting.home_screen
36 *  - %http://tizen.org/feature/systemsetting.lock_screen
37 *  - %http://tizen.org/feature/systemsetting.incoming_call
38 *  - %http://tizen.org/feature/systemsetting.notification_email
39 *  - %http://tizen.org/feature/systemsetting.font
40 *  - %http://tizen.org/feature/network.wifi
41 *  - %http://tizen.org/feature/network.telephony
42 *  - %http://tizen.org/feature/accessibility.grayscale
43 *  - %http://tizen.org/feature/accessibility.negative
44 *
45 * It is recommended to design feature related codes in your application for reliability.
46 *
47 * You can check if a device supports the related features for this API by using @ref CAPI_SYSTEM_SYSTEM_INFO_MODULE,thereby controlling the procedure of your application.
48 *
49 * To ensure your application is only running on the device with specific features, please define the features in your manifest file using the manifest editor in the SDK.
50 *
51 * More details on featuring your application can be found from <a href="https://docs.tizen.org/application/tizen-studio/native-tools/manifest-text-editor#feature-element"><b>Feature Element</b>.</a>
52
53 * The table below shows additional related features on which System Settings keys depend.
54 * <table>
55 * <tr> <th> Additional Related Feature </th> <th> System-Settings Keys </th> </tr>
56 * <tr> <td> %http://tizen.org/feature/systemsetting.home_screen </td> <td> #SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN </td> </tr>
57 * <tr> <td rowspan=2> %http://tizen.org/feature/systemsetting.lock_screen </td> <td>   #SYSTEM_SETTINGS_KEY_WALLPAPER_LOCK_SCREEN </td> </tr>
58 * <tr> <td>   #SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP </td>  </tr>
59 * <tr> <td rowspan=2> %http://tizen.org/feature/systemsetting.incoming_call </td> <td>   #SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE </td></tr>
60 * <tr> <td>   #SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION </td> </tr>
61 * <tr> <td> %http://tizen.org/feature/systemsetting.notification_email </td> <td>   #SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE </td> </tr>
62 * <tr> <td rowspan=3> %http://tizen.org/feature/systemsetting.font</td> <td>   #SYSTEM_SETTINGS_KEY_DEFAULT_FONT_TYPE </td> </tr>
63 * <tr> <td>   #SYSTEM_SETTINGS_KEY_FONT_TYPE </td>  </tr>
64 * <tr> <td>   #SYSTEM_SETTINGS_KEY_FONT_SIZE </td>  </tr>
65 * <tr> <td> %http://tizen.org/feature/network.wifi </td> <td>   #SYSTEM_SETTINGS_KEY_NETWORK_WIFI_NOTIFICATION </td> </tr>
66 * <tr> <td rowspan=3> %http://tizen.org/feature/network.telephony </td> <td>   #SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE </td> </tr>
67 * <tr> <td>   #SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE_PKG_LIST </td>  </tr>
68 * <tr> <td>   #SYSTEM_SETTINGS_KEY_AUTOMATIC_TIME_UPDATE </td>  </tr>
69 * <tr> <td> %http://tizen.org/feature/accessibility.grayscale </td> <td> #SYSTEM_SETTINGS_KEY_ACCESSIBILITY_GRAYSCALE </td> </tr>
70 * <tr> <td> %http://tizen.org/feature/accessibility.negative </td> <td> #SYSTEM_SETTINGS_KEY_ACCESSIBILITY_NEGATIVE_COLOR </td> </tr>
71 * <tr> <td> %http://tizen.org/feature/input.rotating_bezel </td> <td rowspan=2> #SYSTEM_SETTINGS_KEY_ROTARY_EVENT_ENABLED </td> </tr>
72 * <tr> <td> %http://tizen.org/feature/profile == "wearable" </td> </tr>
73 * </table>
74 */