FB2BlockContext.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* libe-book
3  * Version: MPL 2.0 / LGPLv2.1+
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * Alternatively, the contents of this file may be used under the terms
10  * of the GNU Lesser General Public License Version 2.1 or later
11  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
12  * applicable instead of those above.
13  *
14  * For further information visit http://libebook.sourceforge.net
15  */
16 
17 #ifndef FB2BLOCKCONTEXT_H_INCLUDED
18 #define FB2BLOCKCONTEXT_H_INCLUDED
19 
20 #include <string>
21 
22 #include "FB2ParserContext.h"
23 
24 namespace libebook
25 {
26 
28 {
29 public:
30  FB2BodyContext(FB2ParserContext *parentContext, FB2Collector *collector);
31 
32 private:
33  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
34  virtual void startOfElement();
35  virtual void endOfElement();
36  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
37 };
38 
40 {
41 public:
42  FB2CiteContext(FB2ParserContext *parentContext, const FB2BlockFormat &format);
43 
44 private:
45  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
46  virtual void endOfElement();
47  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
48 };
49 
51 {
52 public:
53  explicit FB2EmptyLineContext(FB2ParserContext *parentContext);
54 
55 private:
56  virtual void endOfElement();
57  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
58 };
59 
61 {
62 public:
63  FB2EpigraphContext(FB2ParserContext *parentContext, const FB2BlockFormat &format);
64 
65 private:
66  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
67  virtual void endOfElement();
68  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
69 };
70 
72 {
73 public:
74  FB2ImageContext(FB2ParserContext *parentContext);
75 
76 private:
77  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
78  virtual void endOfElement();
79  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
80 
81 private:
82  std::string m_href;
83  std::string m_altText;
84  bool m_valid;
85 };
86 
88 {
89 public:
90  FB2PoemContext(FB2ParserContext *parentContext, const FB2BlockFormat &format);
91 
92 private:
93  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
94  virtual void startOfElement();
95  virtual void endOfElement();
96  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
97 };
98 
100 {
101 public:
102  FB2SectionContext(FB2ParserContext *parentContext);
103 
104 private:
105  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
106  virtual void endOfElement();
107  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
108 };
109 
111 {
112 public:
113  FB2StanzaContext(FB2ParserContext *parentContext, const FB2BlockFormat &format);
114 
115 private:
116  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
117  virtual void endOfElement();
118  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
119 };
120 
122 {
123 public:
124  FB2TitleContext(FB2ParserContext *const parentContext, const FB2BlockFormat &format);
125 
126 private:
127  virtual FB2XMLParserContext *element(const EBOOKToken &name, const EBOOKToken &ns);
128  virtual void endOfElement();
129  virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value);
130 };
131 
132 }
133 
134 #endif // FB2BLOCKCONTEXT_H_INCLUDED
135 
136 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
std::string m_altText
Definition: FB2BlockContext.h:83
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:300
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:108
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:360
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:402
Base class for non-leaf element contexts.
Definition: FB2ParserContext.h:68
FB2PoemContext(FB2ParserContext *parentContext, const FB2BlockFormat &format)
Definition: FB2BlockContext.cpp:264
Base class for leaf data element contexts.
Definition: FB2ParserContext.h:88
virtual void startOfElement()
Signalize the start of an element.
Definition: FB2BlockContext.cpp:54
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:64
Definition: FB2Collector.h:26
Definition: FB2XMLParserContext.h:25
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:304
FB2TitleContext(FB2ParserContext *const parentContext, const FB2BlockFormat &format)
Definition: FB2BlockContext.cpp:410
FB2EpigraphContext(FB2ParserContext *parentContext, const FB2BlockFormat &format)
Definition: FB2BlockContext.cpp:137
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:84
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:184
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:59
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:32
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:319
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:439
virtual void startOfElement()
Signalize the start of an element.
Definition: FB2BlockContext.cpp:294
Definition: FB2Token.h:125
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:416
Definition: FB2BlockContext.h:121
FB2EmptyLineContext(FB2ParserContext *parentContext)
Definition: FB2BlockContext.cpp:122
FB2BodyContext(FB2ParserContext *parentContext, FB2Collector *collector)
Definition: FB2BlockContext.cpp:27
Definition: EBOOKToken.h:23
Definition: FB2BlockContext.h:71
FB2SectionContext(FB2ParserContext *parentContext)
Definition: FB2BlockContext.cpp:314
std::string m_href
Definition: FB2BlockContext.h:82
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:170
Definition: FB2ParserContext.h:159
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:166
bool m_valid
Definition: FB2BlockContext.h:84
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:127
FB2ImageContext(FB2ParserContext *parentContext)
Definition: FB2BlockContext.cpp:176
Definition: FB2BlockContext.h:110
Definition: FB2BlockContext.h:99
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:396
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:199
FB2CiteContext(FB2ParserContext *parentContext, const FB2BlockFormat &format)
Definition: FB2BlockContext.cpp:79
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:229
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:355
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:376
Definition: FB2BlockContext.h:60
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:133
Definition: FB2BlockContext.h:50
Definition: FB2Style.h:40
FB2StanzaContext(FB2ParserContext *parentContext, const FB2BlockFormat &format)
Definition: FB2BlockContext.cpp:370
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:269
virtual void attribute(const EBOOKToken &name, const EBOOKToken *ns, const char *value)
Process an attribute.
Definition: FB2BlockContext.cpp:112
Base class for all contexts.
Definition: FB2ParserContext.h:30
const char * name
Definition: FB2Token.cpp:26
Definition: FB2BlockContext.h:27
virtual FB2XMLParserContext * element(const EBOOKToken &name, const EBOOKToken &ns)
Create a context for parsing a child element.
Definition: FB2BlockContext.cpp:142
Definition: FB2BlockContext.h:87
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2BlockContext.cpp:434
Definition: FB2BlockContext.h:39

Generated for libe-book by doxygen 1.8.5