OSDN Git Service

* version up
[modchxj/mod_chxj.git] / include / chxj_chtml30.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_CHTM30_H__
18 #define __CHXJ_CHTM30_H__
19
20 /* #define DUMP_CHTML30 "" */
21
22 #include "mod_chxj.h"
23 #include "chxj_cookie.h"
24 #include "chxj_css.h"
25
26 /*----------------------------------------------------------------------------*/
27 /* Structure for CHTML3.0                                                     */
28 /*----------------------------------------------------------------------------*/
29 typedef struct chtml30_t chtml30_t;
30
31 struct chtml30_t {
32   Doc                 *doc;
33   char                *out;
34   int                 out_len;
35   int                 pre_flag;
36   int                 textarea_flag;
37   int                 font_flag;
38
39   device_table        *spec;
40   mod_chxj_config     *conf;
41   chxjconvrule_entry  *entryp;
42   cookie_t            *cookie;
43   css_stylesheet_t    *style;
44   css_prop_list_stack_t *css_prop_stack;
45
46   char                *pagetitle;
47 };
48
49 typedef struct _chtml30_flags_t chtml30_flags_t;
50
51 struct _chtml30_flags_t {
52   int with_font_flag;
53   int with_blink_flag;
54   int with_div_flag;
55   int with_marquee_flag;
56 };
57
58 /*----------------------------------------------------------------------------*/
59 /* Prototype                                                                  */
60 /*----------------------------------------------------------------------------*/
61 extern char *chxj_convert_chtml30(
62   request_rec           *r,
63   device_table          *spec,
64   const char            *src,
65   apr_size_t            srclen,
66   apr_size_t            *dstlen,
67   chxjconvrule_entry    *entryp,
68   cookie_t              *cookie);
69
70
71 extern char *chxj_chtml30_emoji_only_converter(request_rec *r, device_table *spec, const char *src, apr_size_t len);
72
73 #endif