1 #ifndef __PHOBEDOM_H__
2 #define __PHOBEDOM_H__
3 /**
4 * Phoebe DOM Implementation.
5 *
6 * This is a C++ approximation of the W3C DOM model, which follows
7 * fairly closely the specifications in the various .idl files, copies of
8 * which are provided for reference. Most important is this one:
9 *
10 * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/idl-definitions.html
11 *
12 * Authors:
13 * Bob Jamison
14 *
15 * Copyright (C) 2005 Bob Jamison
16 *
17 * This library is free software; you can redistribute it and/or
18 * modify it under the terms of the GNU Lesser General Public
19 * License as published by the Free Software Foundation; either
20 * version 2.1 of the License, or (at your option) any later version.
21 *
22 * This library is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
25 * Lesser General Public License for more details.
26 *
27 * You should have received a copy of the GNU Lesser General Public
28 * License along with this library; if not, write to the Free Software
29 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
30 */
33 #include "domimpl.h"
34 #include "lsimpl.h"
35 #include "svglsimpl.h"
37 namespace phoebe
38 {
40 class PhoebeDOMImplementation : public org::w3c::dom::ls::DOMImplementationLSImpl
41 {
43 public:
45 /**
46 *
47 */
48 PhoebeDOMImplementation()
49 {}
51 org::w3c::dom::ls::LSParser createLSParser(unsigned short mode,
52 const org::w3c::dom::DOMString &schemaType)
53 throw (org::w3c::dom::DOMException)
54 {
55 if (schemaType == "svg" || schemaType == "SVG")
56 {
57 org::w3c::dom::ls::SVGLSParserImpl parser;
58 return parser;
59 }
60 else
61 {
62 org::w3c::dom::ls::LSParser parser;
63 return parser;
64 }
65 }
68 /**
69 *
70 */
71 virtual ~PhoebeDOMImplementation()
72 {}
74 private:
78 };
82 } // namespace phoebe
85 #endif /* __PHOBEDOM_H__ */