FB2ContentCollector.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 FB2CONTENTCOLLECTOR_H_INCLUDED
18 #define FB2CONTENTCOLLECTOR_H_INCLUDED
19 
20 #include "FB2Collector.h"
21 
22 class WPXDocumentInterface;
23 class WPXPropertyList;
24 
25 namespace libebook
26 {
27 
28 class FB2ContentMap;
29 
31 {
32  // no copying
35 
36 public:
37  FB2ContentCollector(WPXDocumentInterface *m_document, const WPXPropertyList &metadata, const FB2ContentMap &notes, const FB2ContentMap &bitmaps);
38 
39 private:
40  virtual void defineMetadataEntry(const char *name, const char *value);
41  virtual void openMetadataEntry(const char *name);
42  virtual void closeMetadataEntry();
43 
44  virtual void defineID(const char *id);
45 
46  virtual void openPageSpan();
47  virtual void closePageSpan();
48 
49  virtual void openBlock();
50  virtual void closeBlock();
51 
52  virtual void openParagraph(const FB2BlockFormat &format);
53  virtual void closeParagraph();
54 
55  virtual void openSpan(const FB2Style &style);
56  virtual void closeSpan();
57 
58  virtual void insertText(const char *text);
59 
60  virtual void openTable(const FB2BlockFormat &format);
61  virtual void closeTable();
62 
63  virtual void openTableRow(const FB2BlockFormat &format);
64  virtual void closeTableRow();
65 
66  virtual void openTableCell(int rowspan, int colspan);
67  virtual void closeTableCell();
68  virtual void insertCoveredTableCell();
69 
70  virtual void insertFootnote(const char *id);
71 
72  virtual void insertBitmap(const char *id);
73  virtual void insertBitmapData(const char *contentType, const char *base64Data);
74 
75 private:
76  WPXDocumentInterface *m_document;
77  const WPXPropertyList &m_metadata;
81 };
82 
83 }
84 
85 #endif // FB2CONTENTCOLLECTOR_H_INCLUDED
86 
87 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
virtual void openParagraph(const FB2BlockFormat &format)
Definition: FB2ContentCollector.cpp:85
virtual void openBlock()
Definition: FB2ContentCollector.cpp:77
optional< Style > style
Definition: TDParser.cpp:114
virtual void openSpan(const FB2Style &style)
Definition: FB2ContentCollector.cpp:95
virtual void closePageSpan()
Definition: FB2ContentCollector.cpp:72
const WPXPropertyList & m_metadata
Definition: FB2ContentCollector.h:77
virtual void openTableRow(const FB2BlockFormat &format)
Definition: FB2ContentCollector.cpp:120
Definition: FB2ContentCollector.h:30
const FB2ContentMap & m_notes
Definition: FB2ContentCollector.h:78
Definition: FB2Collector.h:26
virtual void insertBitmapData(const char *contentType, const char *base64Data)
Definition: FB2ContentCollector.cpp:181
int m_currentFootnote
Definition: FB2ContentCollector.h:80
Definition: FB2Style.h:58
virtual void closeSpan()
Definition: FB2ContentCollector.cpp:100
Definition: FB2ContentMap.h:28
virtual void defineMetadataEntry(const char *name, const char *value)
Definition: FB2ContentCollector.cpp:51
Definition: FB2Token.h:125
virtual void closeTableCell()
Definition: FB2ContentCollector.cpp:145
virtual void closeTableRow()
Definition: FB2ContentCollector.cpp:129
virtual void closeTable()
Definition: FB2ContentCollector.cpp:115
Definition: FB2Token.h:110
virtual void closeBlock()
Definition: FB2ContentCollector.cpp:81
Definition: FB2Token.h:123
virtual void openTableCell(int rowspan, int colspan)
Definition: FB2ContentCollector.cpp:134
virtual void defineID(const char *id)
Definition: FB2ContentCollector.cpp:63
virtual void closeParagraph()
Definition: FB2ContentCollector.cpp:90
virtual void insertCoveredTableCell()
Definition: FB2ContentCollector.cpp:150
WPXDocumentInterface * m_document
Definition: FB2ContentCollector.h:76
FB2ContentCollector(const FB2ContentCollector &other)
FB2ContentCollector & operator=(const FB2ContentCollector &other)
virtual void closeMetadataEntry()
Definition: FB2ContentCollector.cpp:59
virtual void openMetadataEntry(const char *name)
Definition: FB2ContentCollector.cpp:55
Definition: FB2Style.h:40
virtual void openPageSpan()
Definition: FB2ContentCollector.cpp:67
const FB2ContentMap & m_bitmaps
Definition: FB2ContentCollector.h:79
virtual void insertText(const char *text)
Definition: FB2ContentCollector.cpp:105
const char * name
Definition: FB2Token.cpp:26
virtual void insertFootnote(const char *id)
Definition: FB2ContentCollector.cpp:155
virtual void insertBitmap(const char *id)
Definition: FB2ContentCollector.cpp:174
virtual void openTable(const FB2BlockFormat &format)
Definition: FB2ContentCollector.cpp:110

Generated for libe-book by doxygen 1.8.5