KEY2Parser.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 libetonyek 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 KEY2PARSER_H_INCLUDED
11 #define KEY2PARSER_H_INCLUDED
12 
13 #include "KEY2ParserUtils.h"
14 #include "KEYParser.h"
15 #include "KEYTypes.h"
16 
17 namespace libetonyek
18 {
19 
20 class KEYStyle;
21 
22 class KEY2Parser : public KEYParser, private KEY2ParserUtils
23 {
24 public:
25  KEY2Parser(const WPXInputStreamPtr_t &input, const WPXInputStreamPtr_t &package, KEYCollector *collector, const KEYDefaults &defaults);
26  virtual ~KEY2Parser();
27 
28  // NOTE: KEY2TableParser uses these to avoid code duplication
29  void parseGeometry(const KEYXMLReader &reader);
30  void parseTextBody(const KEYXMLReader &reader);
31 
32 private:
33  virtual void processXmlNode(const KEYXMLReader &reader);
35 
36  void parseDrawables(const KEYXMLReader &reader);
37  void parseLayer(const KEYXMLReader &reader);
38  void parseLayers(const KEYXMLReader &reader);
39  void parseMasterSlide(const KEYXMLReader &reader);
40  void parseMasterSlides(const KEYXMLReader &reader);
41  void parseMetadata(const KEYXMLReader &reader);
42  void parseNotes(const KEYXMLReader &reader);
43  void parsePage(const KEYXMLReader &reader);
44  void parseProxyMasterLayer(const KEYXMLReader &reader);
45  void parseSlide(const KEYXMLReader &reader);
46  void parseSlideList(const KEYXMLReader &reader);
47  void parseStickyNotes(const KEYXMLReader &reader);
48  void parseStyles(const KEYXMLReader &reader, bool anonymous);
49  void parseStylesheet(const KEYXMLReader &reader);
50  void parseTheme(const KEYXMLReader &reader);
51  void parseThemeList(const KEYXMLReader &reader);
52 
53  void parseBezier(const KEYXMLReader &reader);
54  void parseConnectionLine(const KEYXMLReader &reader);
55  void parseGroup(const KEYXMLReader &reader);
56  void parseImage(const KEYXMLReader &reader);
57  void parseLine(const KEYXMLReader &reader);
58  void parseMedia(const KEYXMLReader &reader);
59  void parsePath(const KEYXMLReader &reader);
60  void parseShape(const KEYXMLReader &reader);
61  void parseStickyNote(const KEYXMLReader &reader);
62  void parsePlaceholder(const KEYXMLReader &reader, bool title = false);
63 
64  void parseBezierPath(const KEYXMLReader &reader);
65  void parseCallout2Path(const KEYXMLReader &reader);
66  void parseConnectionPath(const KEYXMLReader &reader);
67  void parsePointPath(const KEYXMLReader &reader);
68  void parseScalarPath(const KEYXMLReader &reader);
69 
70  void parseContent(const KEYXMLReader &reader);
71  void parseData(const KEYXMLReader &reader);
72  void parseFiltered(const KEYXMLReader &reader);
73  void parseFilteredImage(const KEYXMLReader &reader);
74  void parseImageMedia(const KEYXMLReader &reader);
75  void parseLeveled(const KEYXMLReader &reader);
76  void parseUnfiltered(const KEYXMLReader &reader);
77  void parseMovieMedia(const KEYXMLReader &reader);
78  void parseSelfContainedMovie(const KEYXMLReader &reader);
79  void parseOtherDatas(const KEYXMLReader &reader);
80 
81  void parseBr(const KEYXMLReader &reader);
82  void parseLayout(const KEYXMLReader &reader);
83  void parseLink(const KEYXMLReader &reader);
84  void parseP(const KEYXMLReader &reader);
85  void parseSpan(const KEYXMLReader &reader);
86  void parseTab(const KEYXMLReader &reader);
87  void parseText(const KEYXMLReader &reader);
88  void parseTextStorage(const KEYXMLReader &reader);
89 
90  void emitLayoutStyle(const ID_t &id);
91 
92 private:
94  unsigned m_version;
95 };
96 
97 }
98 
99 #endif // KEY2PARSER_H_INCLUDED
100 
101 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */

Generated for libetonyek by doxygen 1.8.3.1