summaryrefslogtreecommitdiff
path: root/composer/include/email-composer-util.h
blob: 5f3661a35b0c5fc99269fbe0b03b3c583a1459b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/*
 * Copyright 2012  Samsung Electronics Co., Ltd
 *
 * Licensed under the Flora License, Version 1.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.tizenopensource.org/license
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef __DEF_email_composer_util_H_
#define __DEF_email_composer_util_H_

#define GET_VALUE_WITH_RATE(total, rate) ((int)((float)(total) * rate / 100))

Eina_Bool email_composer_change_image_paths_to_relative(char *src_html_content, char **dest_buffer);
Eina_List *email_composer_change_str_to_EinaList(EmailComposerUGD *ugd, const char *str, char *token);
Eina_List *email_composer_change_GList_to_EinaList(GList * l);

void RgbIntToString(char *pszBuffer, int r, int g, int b);

void _composer_convert_ps_to_br(char *input);
void _composer_popup_add(EmailComposerUGD *ugd, int type, char *text);
void _composer_popup_end(EmailComposerUGD *ugd, int close_sg);
void _composer_set_mail_info(EmailComposerUGD *ugd);

int _composer_add_mailbox_folder(EmailComposerUGD *ugd, email_mailbox_type_e mailbox_type);
int _composer_move_mailbox_folder(EmailComposerUGD *ugd, email_mailbox_type_e mailbox_type);
int _composer_make_mail(EmailComposerUGD *ugd);
int _composer_send_mail(EmailComposerUGD *ugd);
int _composer_make_recipient_char_to_list(EmailComposerUGD *ugd, Evas_Object *obj, char **dest);

Eina_Bool _composer_popup_end_cb(void *data);
Eina_Bool _composer_show_fail_to_save(void *data);
Eina_Bool _composer_show_success_to_save(void *data);

EmailRecpInfo *_composer_separate_save_recipient_char(EmailComposerUGD *ugd, char *recipient);
email_attachment_data_t *_composer_attach_mail_body(EmailComposerUGD *ugd);

void _composer_make_default_thumbnail(Evas_Object *eo, char *pszImgPath, int nItemType);
Evas_Object *_composer_load_edj(Evas_Object *parent, const char *file, const char *group);
Evas_Object *_composer_create_navigation_layout(Evas_Object *parent);
Evas_Object *_composer_create_composer_layout(Evas_Object *parent);
Evas_Object *_composer_create_outer_layout(Evas_Object *parent);
Evas_Object *_composer_create_main_scroller(Evas_Object *parent);
Evas_Object *_composer_create_box(Evas_Object *parent);

const char *_composer_get_sent_time(EmailComposerMail *mail_info);
char *_composer_get_wday(int tm_wday);
char *_composer_get_month(int tm_mon);
bool _composer_is_valid_email(const char *addr);
void _composer_show_notify(EmailComposerUGD *ugd, const char *str);
void _composer_show_cancel_popup(EmailComposerUGD *ugd, const char *str);
Eina_Bool _composer_idler_destroy(void *data);
Eina_Bool _composer_idler_return(void *data);
bool _composer_check_recipient_is_duplicated(EmailComposerUGD *ugd, Evas_Object *obj, EmailRecpInfo * ri);

void _composer_entry_filter_remove_markup(void *data, Evas_Object *entry, char **text);
void _composer_add_to_address(EmailComposerUGD *ugd);
void _composer_add_cc_address(EmailComposerUGD *ugd);
void _composer_add_bcc_address(EmailComposerUGD *ugd);
void _composer_add_from_address(EmailComposerUGD *ugd);
void _composer_add_subject(EmailComposerUGD *ugd);
void _composer_add_body(EmailComposerUGD *ugd);
void _composer_add_origin_msg(EmailComposerUGD *ugd);
void _composer_make_body_text(EmailComposerUGD *ugd);
void _composer_add_attachment(EmailComposerUGD *ugd);
void _composer_add_softlink_to_inline_images(EmailComposerUGD *ugd);
Evas_Object *_composer_popup_create(Evas_Object *parent, EmailComposerUGD *ugd);
void _composer_popup_delete(Evas_Object *popup);
Evas_Object *_composer_create_sub_window(Evas_Object *parent);
bool _composer_check_recipients_modified(Evas_Object *mbe, Eina_List **initial_recipients_list);
bool _composer_check_mail_is_modified(void *data);
bool _composer_check_recipient_is_empty(void *data);
void _composer_unfocus_and_save(void *data);
void _composer_change_text_to_textblock(char *input, char **output, char *matched_word, char *prefix, char *postfix);
int _composer_get_account_list(EmailComposerUGD *ugd);
char *_composer_get_email_addr_from_account_id(EmailComposerUGD *ugd, int account_id);

void _composer_show_download_attachment_popup(EmailComposerUGD *ugd);
Eina_Bool _composer_show_progress_popup(void *data);
void _composer_download_attachment(EmailComposerUGD *ugd);
void _composer_update_attachment_info(EmailComposerUGD *ugd, int index);
void _composer_attachment_cancel_download(EmailComposerUGD *ugd);
void _composer_cancel_download_attachment(EmailComposerUGD *ugd);

Evas_Object *_composer_create_noti(EmailComposerUGD *ugd, bool use_win, char *title, char *content,
										int btn_num, char *btn1_lb,
										char *btn2_lb,
										double timeout, void (*response_cb)(void *data, Evas_Object *obj, void *event_info));
void _composer_noti_response_cb(void *data, Evas_Object *obj, void *event_info);
Evas_Object *_composer_create_popup(EmailComposerUGD *ugd, bool use_win, char *title, char *content,
											int btn_num, char *btn1_lb, char *btn2_lb, char *btn3_lb,
											double timeout, void (*response_cb) (void *data, Evas_Object *obj, void *event_info));
void _composer_save_popup_response_cb(void *data, Evas_Object *obj, void *event_info);
void _composer_popup_response_cb(void *data, Evas_Object *obj, void *event_info);
char *_composer_get_service_fail_type(int type);
Eina_Bool _composer_mbe_set_focus(void *data);
Eina_Bool _composer_check_popup_exist(EmailComposerUGD *ugd);

void _composer_resize_body_webview(EmailComposerUGD *ugd, int resize_height);

void _composer_input_panel_state_changed_cb(void *data, Ecore_IMF_Context *ctx, int value);
void _composer_display_position(void *data);

void _composer_print_hit_test_result(Ewk_Hit_Test *hit_test);
void _composer_coords_ewk_to_evas(Evas_Object *view, int ewkX, int ewkY, int *evasX, int *evasY);
void _composer_coords_evas_to_ewk(Evas_Object *view, int evasX, int evasY, int *ewkX, int *ewkY);

#endif				/* __DEF_email_composer_util_H__ */