FB2TableContext.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3  * This file is part of the libe-book project.
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 
10 #ifndef FB2TABLECONTEXT_H_INCLUDED
11 #define FB2TABLECONTEXT_H_INCLUDED
12 
13 #include "FB2ParserContext.h"
14 
15 namespace libebook
16 {
17 
18 class FB2TableModel;
19 
21 {
22  // disable copying
23  FB2TableContext(const FB2TableContext &other);
25 
26 public:
27  FB2TableContext(FB2ParserContext *parentContext, const FB2BlockFormat &format);
28  virtual ~FB2TableContext();
29 
30 private:
31  virtual FB2XMLParserContext *element(const FB2TokenData &name, const FB2TokenData &ns);
32  virtual void startOfElement();
33  virtual void endOfElement();
34  virtual void attribute(const FB2TokenData &name, const FB2TokenData *ns, const char *value);
35 
36 private:
38 };
39 
41 {
42  // disable copying
43  FB2CellContext(const FB2CellContext &other);
45 
46 public:
47  FB2CellContext(FB2ParserContext *parentContext, FB2TableModel *model, const FB2BlockFormat &format, bool header);
48 
49 private:
50  virtual void startOfElement();
51  virtual void endOfElement();
52  virtual void attribute(const FB2TokenData &name, const FB2TokenData *ns, const char *value);
53  virtual void endOfAttributes();
54 
55  void openCell();
56 
57 private:
59  const bool m_header;
60  bool m_opened;
62  int m_rowSpan;
64 };
65 
67 {
68  // no copying
69  FB2TrContext(const FB2TrContext &);
71 
72 public:
73  FB2TrContext(FB2ParserContext *parentContext, FB2TableModel *model, const FB2BlockFormat &format);
74 
75 private:
76  virtual FB2XMLParserContext *element(const FB2TokenData &name, const FB2TokenData &ns);
77  virtual void endOfElement();
78  virtual void attribute(const FB2TokenData &name, const FB2TokenData *ns, const char *value);
79 
80  void openRow(bool header);
81 
82 private:
84  bool m_opened;
85 };
86 
87 }
88 
89 #endif // FB2TABLECONTEXT_H_INCLUDED
90 
91 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
bool m_opened
Definition: FB2TableContext.h:84
int m_rowSpan
Definition: FB2TableContext.h:62
Definition: EBOOKHTMLToken.h:263
virtual ~FB2TableContext()
Definition: FB2TableContext.cpp:132
virtual void attribute(const FB2TokenData &name, const FB2TokenData *ns, const char *value)
Process an attribute.
Definition: FB2TableContext.cpp:284
Definition: FB2XMLParserContext.h:18
Definition: FB2Token.h:135
FB2TableModel * m_model
Definition: FB2TableContext.h:37
Definition: FB2TableContext.h:66
Definition: FB2TableContext.cpp:21
bool m_opened
Definition: FB2TableContext.h:60
FB2CellContext(const FB2CellContext &other)
virtual FB2XMLParserContext * element(const FB2TokenData &name, const FB2TokenData &ns)
Create a context for parsing a child element.
Definition: FB2TableContext.cpp:137
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2TableContext.cpp:276
void openRow(bool header)
Definition: FB2TableContext.cpp:292
FB2TrContext(const FB2TrContext &)
virtual void startOfElement()
Signalize the start of an element.
Definition: FB2TableContext.cpp:153
size_t m_coveredColumns
Definition: FB2TableContext.h:63
FB2TableContext(const FB2TableContext &other)
virtual void attribute(const FB2TokenData &name, const FB2TokenData *ns, const char *value)
Process an attribute.
Definition: FB2TableContext.cpp:207
FB2TableContext & operator=(const FB2TableContext &other)
Definition: FB2ParserContext.h:151
Definition: FB2TableContext.h:40
Definition: EBOOKHTMLToken.h:84
FB2TableModel * m_model
Definition: FB2TableContext.h:83
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2TableContext.cpp:196
string name
Definition: CHMStream.cpp:80
virtual void attribute(const FB2TokenData &name, const FB2TokenData *ns, const char *value)
Process an attribute.
Definition: FB2TableContext.cpp:163
Definition: FB2TableContext.h:20
int m_columnSpan
Definition: FB2TableContext.h:61
void openCell()
Definition: FB2TableContext.cpp:239
Definition: EBOOKOPFToken.h:56
FB2TableModel *const m_model
Definition: FB2TableContext.h:58
virtual void endOfElement()
Signalize the end of an element.
Definition: FB2TableContext.cpp:158
Definition: CHMParser.cpp:20
Definition: FB2ParserContext.h:132
Definition: FB2Style.h:35
FB2TrContext & operator=(const FB2TrContext &)
virtual FB2XMLParserContext * element(const FB2TokenData &name, const FB2TokenData &ns)
Create a context for parsing a child element.
Definition: FB2TableContext.cpp:254
const bool m_header
Definition: FB2TableContext.h:59
virtual void startOfElement()
Signalize the start of an element.
Definition: FB2TableContext.cpp:192
Base class for all contexts.
Definition: FB2ParserContext.h:23
virtual void endOfAttributes()
Signalize the end of attributes.
Definition: FB2TableContext.cpp:234
FB2CellContext & operator=(const FB2CellContext &other)

Generated for libe-book by doxygen 1.8.8