4 * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
21 #ifndef __INDICATOR_H__
22 #define __INDICATOR_H__
24 #include <Elementary.h>
25 //#include <Ecore_X.h>
26 #include <Ecore_File.h>
30 #define VCONFKEY_APPTRAY_STATE "file/private/org.tizen.app-tray/is_top"
32 #define FIXED_COUNT 11
33 #define INDICATOR_HEIGHT 36
35 #define _INDICATOR_FEATURE_LITE
36 #define _INDICATOR_REMOVE_SEARCH
38 #define DATA_KEY_IMG_ICON "i_i"
39 #define DATA_KEY_BASE_RECT "dkbr"
40 #define DATA_KEY_TICKER_TEXT "dktt"
42 #define INDICATOR_MORE_NOTI "indicator_more_noti"
44 enum indicator_win_mode{
45 INDICATOR_WIN_PORT = 0,
50 /* Value is allocated from Left side in status bar */
51 INDICATOR_PRIORITY_FIXED_MIN = 0,
52 INDICATOR_PRIORITY_FIXED1 = INDICATOR_PRIORITY_FIXED_MIN,/* Always */
53 INDICATOR_PRIORITY_FIXED2, /* RSSI1 (elm.swallow.fixed1) */
54 INDICATOR_PRIORITY_FIXED3, /* RSSI2 (elm.swallow.fixed2) */
55 INDICATOR_PRIORITY_FIXED4, /* SimCard-Icon(DualSim) (elm.swallow.fixed3) */
56 INDICATOR_PRIORITY_FIXED5, /* Connection (elm.swallow.fixed4) */
57 INDICATOR_PRIORITY_FIXED6, /* Wifi (elm.swallow.fixed5) */
58 INDICATOR_PRIORITY_FIXED7, /* CONNECTION1 - BT (elm.swallow.fixed6) */
59 INDICATOR_PRIORITY_FIXED8, /* CONNECTION2 - WIFI DIRECT (elm.swallow.fixed7)*/
60 INDICATOR_PRIORITY_FIXED9, /* Battery (elm.swallow.fixed8)*/
61 INDICATOR_PRIORITY_FIXED10, /* Search*/
62 INDICATOR_PRIORITY_FIXED11, /* more */
63 INDICATOR_PRIORITY_FIXED_MAX = INDICATOR_PRIORITY_FIXED11,
66 INDICATOR_PRIORITY_SYSTEM_MIN,
67 INDICATOR_PRIORITY_SYSTEM_1 = INDICATOR_PRIORITY_SYSTEM_MIN, /* SYSTEM - Alarm */
68 INDICATOR_PRIORITY_SYSTEM_2, /* SYSTEM - Call divert */
69 INDICATOR_PRIORITY_SYSTEM_3, /* SYSTEM - MMC */
70 INDICATOR_PRIORITY_SYSTEM_4, /* SYSTEM - GPS */
71 INDICATOR_PRIORITY_SYSTEM_5, /* SYSTEM - Private mode */
72 INDICATOR_PRIORITY_SYSTEM_6, /* SYSTEM - Sound profile */
73 INDICATOR_PRIORITY_SYSTEM_MAX = INDICATOR_PRIORITY_SYSTEM_6,
75 INDICATOR_PRIORITY_MINICTRL_MIN,
76 INDICATOR_PRIORITY_MINICTRL1 = INDICATOR_PRIORITY_MINICTRL_MIN, /* MINICTRL - Voice recorder */
77 INDICATOR_PRIORITY_MINICTRL2, /* MINICTRL - Music/FM Radio */
78 INDICATOR_PRIORITY_MINICTRL3, /* MINICTRL - Call *//* MINICTRL - Voice recorder */
79 INDICATOR_PRIORITY_MINICTRL_MAX = INDICATOR_PRIORITY_MINICTRL3,
81 INDICATOR_PRIORITY_NOTI_MIN,
82 INDICATOR_PRIORITY_NOTI_1 = INDICATOR_PRIORITY_NOTI_MIN,
83 INDICATOR_PRIORITY_NOTI_2, /* Ongoing/Normal notification */
84 INDICATOR_PRIORITY_NOTI_MAX = INDICATOR_PRIORITY_NOTI_2
87 enum indicator_icon_type {
88 INDICATOR_IMG_ICON = 0,
90 INDICATOR_TXT_WITH_IMG_ICON,
94 enum indicator_icon_area_type {
95 INDICATOR_ICON_AREA_FIXED = 0,
96 INDICATOR_ICON_AREA_SYSTEM,
97 INDICATOR_ICON_AREA_MINICTRL,
98 INDICATOR_ICON_AREA_NOTI,
99 INDICATOR_ICON_AREA_ALARM
102 typedef enum indicator_icon_ani {
107 ICON_ANI_DOWNLOADING,
112 enum indicator_digit_area {
119 /* Upload/download animation states 0-6 */
120 enum ud_indicator_icon_ani_state
122 UD_ICON_ANI_STATE_0 = 0,
129 UD_ICON_ANI_STATE_MAX
134 TRANSFER_NONE = TRANSFER_MIN,
141 typedef struct _Text_Icon_Info {
147 typedef struct _Img_Icon_Info {
154 typedef struct _ind_win_info
164 Evas_Object *_fixed_box[FIXED_COUNT];
165 Evas_Object *_non_fixed_box;
166 Evas_Object *_minictrl_box;
167 Evas_Object *_noti_box;
168 Evas_Object *_dynamic_box;
169 Evas_Object *_dynamic_box_noti;
170 Evas_Object *_alarm_box;
171 Evas_Object *_digit_box;
181 typedef struct Indicator_Icon {
183 enum indicator_icon_type type;
184 enum indicator_icon_area_type area;
186 Eina_Bool always_top; /* Only for SOS messsage */
188 enum ud_indicator_icon_ani_state animation_state;
189 Eina_Bool animation_in_progress;
190 Ecore_Timer *p_animation_timer;
191 char signal_to_emit_prefix [32];
192 double last_animation_timestamp;
195 int (*init) (void *);
197 int (*lang_changed) (void *);
198 int (*region_changed) (void *);
199 int (*minictrl_control) (int, const char *, void *);
200 int (*wake_up) (void *);
202 /* do not modify this area */
206 Img_Icon_Info img_obj;
207 Eina_Bool wish_to_show;
208 Eina_Bool exist_in_view;
209 enum indicator_icon_ani ani;
211 #ifdef _SUPPORT_SCREEN_READER
212 int (*register_tts) (void*, int);
213 char *(*access_cb)(void *, Evas_Object *);
217 Eina_Bool initialized; /* TRUE is module was correctly intiialized */
220 //int rssi_get_sim_number(TapiHandle *handle_obj);
222 #endif /*__INDICATOR_H__*/