blob: ce9f7efcd20227463ab0c8fd80b81f0927e41004 [file] [log] [blame]
adamdunkelsca9ddcb2003-03-19 14:13:31 +00001/*
2 * Copyright (c) 2002, Adam Dunkels.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above
11 * copyright notice, this list of conditions and the following
12 * disclaimer in the documentation and/or other materials provided
13 * with the distribution.
adamdunkels06f897e2004-06-06 05:59:20 +000014 * 3. The name of the author may not be used to endorse or promote
adamdunkelsca9ddcb2003-03-19 14:13:31 +000015 * products derived from this software without specific prior
16 * written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
19 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
24 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
27 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 *
30 * This file is part of the Contiki desktop environment
31 *
oliverschmidt35514d52005-06-12 23:44:29 +000032 * $Id: htmlparser.h,v 1.4 2005/06/12 23:44:30 oliverschmidt Exp $
adamdunkelsca9ddcb2003-03-19 14:13:31 +000033 *
34 */
35#ifndef __HTMLPARSER_H__
36#define __HTMLPARSER_H__
37
38#include "uip.h"
39
40/* Callbacks. */
adamdunkels269d7be2004-09-03 09:55:22 +000041void htmlparser_link(char *text, unsigned char textlen, char *url);
adamdunkelsca9ddcb2003-03-19 14:13:31 +000042void htmlparser_submitbutton(char *value,
43 char *name,
44 char *formname,
45 char *formaction);
oliverschmidt35514d52005-06-12 23:44:29 +000046void htmlparser_inputfield(unsigned char size,
47 char *value,
adamdunkelsca9ddcb2003-03-19 14:13:31 +000048 char *name,
49 char *formname,
50 char *formaction);
adamdunkels269d7be2004-09-03 09:55:22 +000051void htmlparser_newline(void);
52void htmlparser_word(char *word, unsigned char wordlen);
adamdunkelsca9ddcb2003-03-19 14:13:31 +000053
54void htmlparser_renderstate(unsigned char state);
55#define HTMLPARSER_RENDERSTATE_STATUSMASK 0x80
56#define HTMLPARSER_RENDERSTATE_BEGIN 0x00
57#define HTMLPARSER_RENDERSTATE_END 0x80
58
59#define HTMLPARSER_RENDERSTATE_NONE 0x00
60#define HTMLPARSER_RENDERSTATE_CENTER 0x01
61#define HTMLPARSER_RENDERSTATE_TABLE 0x02
62#define HTMLPARSER_RENDERSTATE_TR 0x04
63#define HTMLPARSER_RENDERSTATE_TD 0x08
64
65
66#define HTMLPARSER_INPUTTYPE_NONE 0
67#define HTMLPARSER_INPUTTYPE_TEXT 1
68#define HTMLPARSER_INPUTTYPE_PASSWORD 2
69#define HTMLPARSER_INPUTTYPE_SUBMIT 3
70#define HTMLPARSER_INPUTTYPE_IMAGE 4
71#define HTMLPARSER_INPUTTYPE_OTHER 5
72
73
74/* Functions. */
75void htmlparser_init(void);
76void htmlparser_parse(char *data, u16_t len);
77
78
79#endif /* __HTMLPARSER_H__ */