4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
6 * Contact: MyoungJune Park <mj2004.park@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
21 #ifndef __SETTING_DISPLAY_H__
22 #define __SETTING_DISPLAY_H__
27 #include <Elementary.h>
30 #include <glib-object.h>
32 #include <setting-common-draw-widget.h>
33 #include <setting-common-view.h>
36 #include <dd-display.h>
37 #include <dd-deviced.h>
38 #include <dbus/dbus.h>
39 /*#include <devman.h> */
41 #define Keystr_Dynamic "IDS_ST_BODY_DYNAMIC_T_DISPLAY_EFFECT"
42 #define Keystr_Standard "IDS_ST_BODY_STANDARD_T_DISPLAY_EFFECT"
43 #define Keystr_Natural "IDS_ST_BODY_NATURAL_T_DISPLAY_EFFECT"
44 #define Keystr_Movie "IDS_ST_BODY_MOVIE_T_DISPLAY_EFFECT"
46 #define LAUNCH_EFFECT_STR "IDS_ST_BODY_APP_OPENING_EFFECT"
47 #define LAUNCH_IMAGE_STR "IDS_ST_BODY_APP_OPENING_IMAGE"
49 #define KeyStr_AdjustScreenTone_Dsc "IDS_ST_BODY_SAVE_POWER_BY_ADJUSTING_SCREEN_TONE_ACCORDING_TO_ANALYSIS_OF_IMAGES"
50 #define KeyStr_HighTouchSensitivity_Dsc "IDS_ST_SBODY_INCREASE_THE_SENSITIVITY_OF_THE_TOUCH_SCREEN_SBODY_MSG"
52 #define LAUNCH_BATTERY_DESC "IDS_ST_BODY_SHOWS_BATTERY_PERCENTAGE_ON_INDICATOR" /*"Increase the screen's sensitivity so you can touch it while wearing gloves" */
54 #define SETTING_DISPLAY_TIME_15_SEC_STR "IDS_ST_BODY_15SEC"
55 #define SETTING_DISPLAY_TIME_30_SEC_STR "IDS_ST_BODY_30SEC"
56 #define SETTING_DISPLAY_TIME_1_MIN_STR "IDS_ST_BODY_1_MINUTE"
58 #define SETTING_DISPLAY_TIME_2_MIN_STR "IDS_ST_BODY_2_MINUTES"
59 #define SETTING_DISPLAY_TIME_5_MIN_STR "IDS_ST_BODY_5_MINUTES"
60 #define SETTING_DISPLAY_TIME_10_MIN_STR "IDS_ST_BODY_10_MINUTES"
61 #define SMART_SCREEN_TRY_IT_IMAGE_L SETTING_ICON_PATH_CFG"air_jump_try_full_h.png"
62 #define SMART_SCREEN_TRY_IT_IMAGE_P SETTING_ICON_PATH_CFG"air_jump_try_full.png"
64 #define KeyStr_ScreenCapture "IDS_MF_BODY_SCREEN_CAPTURE_M_NOUN"
65 #define KeyStr_ScreenCapture_Destination "IDS_LBS_BODY_DESTINATION"
66 #define KeyStr_ScreenCapture_Ask "IDS_SKM_BODY_ASK_M_IDEA_SKETCH"
67 #define KeyStr_ScreenCapture_Gallery "IDS_ST_BODY_GALLERY"
68 #define KeyStr_ScreenCapture_KeepIt "IDS_KEEPIT_HEADER_KEEPIT_M_APPLICATION_NAME"
69 #define KeyStr_ScreenCapture_Help "IDS_ST_MBODY_SELECT_WHERE_CAPTURED_IMAGES_WILL_BE_SAVED"
70 #define KeyStr_ScreenCapture_Edit "IDS_ST_MBODY_EDIT_AFTER_SCREEN_CAPTURE"
71 #define KeyStr_Dynamic_Status_Bar "IDS_ST_BODY_DYNAMIC_STATUS_BAR"
72 #define KeyStr_Dynamic_Status_Bar_Help "IDS_ST_BODY_KEEPS_THE_STATUS_BAR_TIDY_TAP_THE_REPRESENTATIVE_ICON_TO_SHOW_ALL_THE_ICONS"
75 #define URI_SMART_STAY "tizen-help://org.tizen.setting/smartstay"
76 #define URI_SMART_ROTATION "tizen-help://org.tizen.setting/smartrotation"
78 #define SETTING_DISPLAY_SMART_SCREEN_TURN_ON_SMART_ROATION_POPUP "IDS_ST_POP_ENABLE_SMART_ROTATION_TO_TRY_IT_T_HELP"
79 #define SETTING_DISPLAY_SMART_SCREEN_TURN_ON_SMART_STAY_POPUP "IDS_ST_POP_ENABLE_SMART_STAY_TO_TRY_IT_T_HELP"
80 #define POPUP_TURN_ON_STR "IDS_ST_BUTTON_ENABLE"
82 #define SAMRT_SCREEN_TRY_IT_IAMGE_PORTRAIT_H 2636
83 #define SAMRT_SCREEN_TRY_IT_IAMGE_PORTRAIT_W 720
84 #define SAMRT_SCREEN_TRY_IT_IAMGE_LANDSCAPE_H 2055
85 #define SAMRT_SCREEN_TRY_IT_IAMGE_LANDSCAPE_W 1280
86 #define SETTING_DISPLAY_ICON_PATH 12
89 SCREENMODE_DYNAMIC = 0,
97 DISPLAY_EXPAND_NONE = 0,
98 DISPLAY_EXPAND_BACKLIGHT,
99 DISPLAY_EXPAND_TOUCH_KEY_LIGHT_DURATION
100 } ApplicationsExpandState;
103 typedef struct _Ctxpopup_Data {
109 SETTING_DISPLAY_VIEWTYPE_MAIN,
110 SETTING_DISPLAY_VIEWTYPE_BRIGHTNESS,
111 SETTING_DISPLAY_VIEWTYPE_BACKLIGHT,
112 SETTING_DISPLAY_VIEWTYPE_SMARTSCREEN,
113 SETTING_DISPLAY_VIEWTYPE_MAX,
114 } applications_viewtype;
116 typedef struct _SettingApplicationsUG SettingApplicationsUG;
118 #define BRIGHTNESS_DISPLAY 0
121 * Setting Applications UG context
122 * all UG function has void* as an agument. this is casted back to SettingApplicationsUG
123 * and the functions access app context.
125 struct _SettingApplicationsUG {
128 /* add more variables here (move your appdata to here) */
130 Evas_Object *win_main_layout;
131 Evas_Object *win_get;
133 ui_gadget_h ug_loading;
134 ui_gadget_h ug_appmgr;
135 ui_gadget_h ug_homescreen;
136 ui_gadget_h ug_passwd;
137 ui_gadget_h ug_ledindicator;
139 Evas_Object *ly_main;
141 Evas_Object *navi_bar; /* for navigation effect */
142 Elm_Object_Item *nf_it;
143 Ecore_Timer *event_freeze_timer;
146 Setting_GenGroupItem_Data *data_home;
147 Setting_GenGroupItem_Data *data_message;
149 Setting_GenGroupItem_Data *data_screen_mode;
150 Setting_GenGroupItem_Data *data_br;
151 Setting_GenGroupItem_Data *data_back;
152 Setting_GenGroupItem_Data *data_touchkey_light_duration;
153 Setting_GenGroupItem_Data *data_br_auto;
154 Setting_GenGroupItem_Data *data_br_sli;
155 Setting_GenGroupItem_Data *data_adjust;
156 Setting_GenGroupItem_Data *data_overheating;
158 Setting_GenGroupItem_Data *data_br_adjustment;
160 Setting_GenGroupItem_Data *data_battery;
161 Setting_GenGroupItem_Data *data_auto_rotate;
162 Setting_GenGroupItem_Data *data_tts;
165 Setting_GenGroupItem_Data *data_smart_stay;
166 Setting_GenGroupItem_Data *data_smart_rotation;
167 Setting_GenGroupItem_Data *data_auto_adjust_scrn_tone;
168 Setting_GenGroupItem_Data *data_high_touch_sensitivity;
169 Setting_GenGroupItem_Data *data_dynamic;
172 Evas_Object *more_popup;
173 Ctxpopup_Data ctx_data;
175 Setting_GenGroupItem_Data *tilting_head;
176 Setting_GenGroupItem_Data *tilting_device;
177 Setting_GenGroupItem_Data *smart_scroll_speed;
178 Setting_GenGroupItem_Data *visual_feedback_display;
179 Setting_GenGroupItem_Data *scroll_speed_slider;
180 Setting_GenGroupItem_Data *smart_screen_help;
181 Setting_GenGroupItem_Data *try_tilting_head;
182 Setting_GenGroupItem_Data *try_tilting_device;
183 Setting_GenGroupItem_Data *data_smart_screen_image;
184 Setting_GenGroupItem_Data *data_smart_screen_rotation_image;
186 /*int bright_value; */
189 setting_view *view_to_load;
191 Evas_Object *popup_chk;
194 Elm_Genlist_Item_Class itc_2text_2;
195 Elm_Genlist_Item_Class itc_1text_1icon;
196 Elm_Genlist_Item_Class itc_1icon_1text_sub;
197 Elm_Genlist_Item_Class itc_1text;
198 Elm_Genlist_Item_Class itc_screen_mode;
199 Elm_Genlist_Item_Class itc_2text_3;
200 Elm_Genlist_Item_Class itc_1text_1icon_divider;
201 Elm_Genlist_Item_Class itc_1icon;
202 Elm_Genlist_Item_Class itc_variable_height;
203 Elm_Genlist_Item_Class itc_2text_3_parent_backlight;
204 Elm_Genlist_Item_Class itc_2text_3_parent_touch_duration;
205 Elm_Genlist_Item_Class itc_1icon_1text_sub_back;
206 Elm_Genlist_Item_Class itc_1icon_1text_sub_touch;
207 Elm_Genlist_Item_Class itc_multiline_text;
208 Elm_Genlist_Item_Class itc_multiline_text_help;
209 Elm_Genlist_Item_Class itc_multiline_overheating;
212 ui_gadget_h ug_gallery;
213 ui_gadget_h ug_imageviewer;
215 Setting_GenGroupItem_Data *data_backlight_always_on;
216 Setting_GenGroupItem_Data *data_backlight_15sec;
217 Setting_GenGroupItem_Data *data_backlight_30sec;
218 Setting_GenGroupItem_Data *data_backlight_1min;
219 Setting_GenGroupItem_Data *data_backlight_2min;
220 Setting_GenGroupItem_Data *data_backlight_5min;
221 Setting_GenGroupItem_Data *data_backlight_10min;
222 /*Improve response speed */
223 Ecore_Idler *set_idler;
224 Ecore_Timer *set_timer;
227 Evas_Object *genlist;
230 Ecore_Event_Handler *help_event_handler;
231 Evas_Object *help_popup;
235 Eina_Bool is_event_registered;
236 int last_requested_level;
237 applications_viewtype applications_viewtype;
239 /*for smart screen try it*/
240 Evas_Object *smart_stay_image;
241 Evas_Object *smart_rotation_image;
242 Evas_Object *smart_stay_sublayout;
243 Evas_Object *smart_rotation_sublayout;
244 Ecore_Timer *timer_show_guide;
246 ApplicationsExpandState applications_expand_state;
250 extern setting_view setting_view_applications_main;
251 extern setting_view setting_view_applications_defaultapp;
254 void setting_applications_layout_ug_cb(ui_gadget_h ug, enum ug_mode mode, void *priv);
256 extern int setting_applications_set_auto_adjust_tone(int value);
257 Eina_Bool __show_smartstay_guide_popup(void *data);
258 Eina_Bool __show_smartrotation_guide_popup(void *data);
260 extern void destruct_brightness(void *data);
261 extern void construct_brightness(void *data, Evas_Object *genlist);
264 #endif /* __SETTING_DISPLAY_H__ */