1/*----------------------------------------------------------------------------
2|   Copyright (c) 1999 Jochen Loewer (loewerj@hotmail.com)
3+-----------------------------------------------------------------------------
4|
5|   $Id: tcldom.h,v 1.9 2005/01/07 15:10:33 rolf Exp $
6|
7|
8|   A DOM implementation for Tcl using James Clark's expat XML parser
9|
10|
11|   The contents of this file are subject to the Mozilla Public License
12|   Version 1.1 (the "License"); you may not use this file except in
13|   compliance with the License. You may obtain a copy of the License at
14|   http://www.mozilla.org/MPL/
15|
16|   Software distributed under the License is distributed on an "AS IS"
17|   basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
18|   License for the specific language governing rights and limitations
19|   under the License.
20|
21|   The Original Code is tDOM.
22|
23|   The Initial Developer of the Original Code is Jochen Loewer
24|   Portions created by Jochen Loewer are Copyright (C) 1998, 1999
25|   Jochen Loewer. All Rights Reserved.
26|
27|   Contributor(s):
28|
29|
30|   written by Jochen Loewer
31|   April, 1999
32|
33\---------------------------------------------------------------------------*/
34
35
36#ifndef __TCLDOM_H_INCLUDE__
37#define __TCLDOM_H_INCLUDE__
38
39#include <tcl.h>
40
41
42/* The following procs are defined in tcldom.c - since they are used
43 * in nodecmd.c these need a prototype somewhere. The prototypes can
44 * live here for now. */
45int  tcldom_textCheck(Tcl_Interp *interp, char *text, char *errText);
46int  tcldom_commentCheck(Tcl_Interp *interp, char *text);
47int  tcldom_CDATACheck(Tcl_Interp *interp, char *text);
48int  tcldom_PIValueCheck(Tcl_Interp *interp, char *text);
49int  tcldom_PINameCheck(Tcl_Interp *interp, char *name);
50int  tcldom_nameCheck(Tcl_Interp *interp, char *name, char *nameType,
51                      int isFQName);
52void tcldom_createNodeObj(Tcl_Interp * interp, domNode *node,
53                          char *objCmdName);
54
55
56void tcldom_initialize(void);
57
58Tcl_ObjCmdProc tcldom_DomObjCmd;
59Tcl_ObjCmdProc tcldom_DocObjCmd;
60Tcl_ObjCmdProc tcldom_NodeObjCmd;
61Tcl_ObjCmdProc TclExpatObjCmd;
62Tcl_ObjCmdProc tcldom_unknownCmd;
63Tcl_ObjCmdProc TclTdomObjCmd;
64
65#if defined(_MSC_VER)
66#  undef TCL_STORAGE_CLASS
67#  define TCL_STORAGE_CLASS DLLEXPORT
68#endif
69
70#define STR_TDOM_VERSION(v) (VERSION)
71
72EXTERN int Tdom_Init     _ANSI_ARGS_((Tcl_Interp *interp));
73EXTERN int Tdom_SafeInit _ANSI_ARGS_((Tcl_Interp *interp));
74
75#endif
76
77
78