OSDN Git Service

* updated for freebsd
[modchxj/mod_chxj.git] / include / chxj_android.h
1 /*
2  * Copyright (C) 2005-2011 Atsushi Konno All rights reserved.
3  * Copyright (C) 2005 QSDN,Inc. All rights reserved.
4  *
5  * Licensed under the Apache License, Version 2.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://www.apache.org/licenses/LICENSE-2.0
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 #ifndef __CHXJ_ANDROID_H__
18 #define __CHXJ_ANDROID_H__
19
20 /* #define DUMP_ANDROID "" */
21
22 #include "mod_chxj.h"
23 #include "chxj_cookie.h"
24 #include "chxj_css.h"
25
26 /*----------------------------------------------------------------------------*/
27 /* Structure for J-PHONE HTML                                                 */
28 /*----------------------------------------------------------------------------*/
29 typedef struct android_t android_t;
30
31 struct android_t {
32   Doc                 *doc;
33   char                *out;
34   int                 out_len;
35   int                 pre_flag;
36   int                 textarea_flag;
37   int                 h1_align_flag;
38   int                 h2_align_flag;
39   int                 h3_align_flag;
40   int                 h4_align_flag;
41   int                 h5_align_flag;
42   int                 h6_align_flag;
43   int                 font_flag;
44   int                 font_size_flag;
45   int                 start_html_flag;
46   char                *prev_style_data;
47   char                *style_data;
48
49   device_table        *spec;
50   mod_chxj_config     *conf;
51   chxjconvrule_entry  *entryp;
52   cookie_t            *cookie;
53   css_stylesheet_t    *style;
54   css_prop_list_stack_t *css_prop_stack;
55
56   int head_tag_out; /* 1 if <head> out */
57   int charset_out; /* 1 if <meta charset> out */
58   int blink_keyframe_out; 
59
60   char                *pagetitle;
61 };
62
63 typedef struct _android_flags_t android_flags_t;
64 struct _android_flags_t {
65   int with_font_flag;
66   int with_blink_flag;
67   int font_color_flag;
68   int font_size_flag;
69   int with_div_flag;
70 };
71
72 /*----------------------------------------------------------------------------*/
73 /* Prototype                                                                  */
74 /*----------------------------------------------------------------------------*/
75 extern char *chxj_convert_android(
76   request_rec               *r,
77   device_table              *spec,
78   const char                *src,
79   apr_size_t                srclen,
80   apr_size_t                *dstlen,
81   chxjconvrule_entry        *entryp,
82   cookie_t                  *cookie);
83
84
85 extern char *chxj_android_emoji_only_converter(request_rec *r, device_table *spec, const char *src, apr_size_t len);
86
87 #endif