KEYContentCollector.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 KEYCONTENTCOLLECTOR_H_INCLUDED
11#define KEYCONTENTCOLLECTOR_H_INCLUDED
12
13#include "KEYCollectorBase.h"
14#include "KEYTypes.h"
15
16namespace libetonyek
17{
18
19struct KEYDictionary;
20
22{
23 // disable copying
26
27public:
28 KEYContentCollector(librevenge::RVNGPresentationInterface *painter, KEYDictionary &dict, const KEYLayerMap_t &masterPages, const KEYSize &size, const KEYDefaults &defaults);
29 virtual ~KEYContentCollector();
30
31 // collector functions
32
33 virtual void collectPresentation(const boost::optional<KEYSize> &size);
34
35 virtual void collectLayer(const boost::optional<ID_t> &id, bool ref);
36 virtual void collectPage(const boost::optional<ID_t> &id);
37
38 virtual void startSlides();
39 virtual void endSlides();
40 virtual void startThemes();
41 virtual void endThemes();
42
43 virtual void startPage();
44 virtual void endPage();
45 virtual void startLayer();
46 virtual void endLayer();
47
48private:
49 // helper functions
50
52
53 void drawLayer(const KEYLayerPtr_t &layer);
54 void drawNotes(const KEYObjectList_t &notes);
55 void drawStickyNotes(const KEYStickyNotes_t &stickyNotes);
56
57private:
58 librevenge::RVNGPresentationInterface *m_painter;
59
62
65
67};
68
69} // namespace libetonyek
70
71#endif // KEYCONTENTCOLLECTOR_H_INCLUDED
72
73/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Implementation of common parts of styles and content collector.
Definition: KEYCollectorBase.h:33
Definition: KEYContentCollector.h:22
virtual void endThemes()
Definition: KEYContentCollector.cpp:98
const KEYSize m_size
Definition: KEYContentCollector.h:61
void drawStickyNotes(const KEYStickyNotes_t &stickyNotes)
Definition: KEYContentCollector.cpp:201
librevenge::RVNGPresentationInterface * m_painter
Definition: KEYContentCollector.h:58
virtual void collectPage(const boost::optional< ID_t > &id)
Definition: KEYContentCollector.cpp:73
bool m_layerOpened
Definition: KEYContentCollector.h:64
virtual void endLayer()
Definition: KEYContentCollector.cpp:158
const KEYLayerMap_t & m_masterPages
Definition: KEYContentCollector.h:60
KEYContentCollector(const KEYContentCollector &other)
virtual void startLayer()
Definition: KEYContentCollector.cpp:139
virtual void collectLayer(const boost::optional< ID_t > &id, bool ref)
Definition: KEYContentCollector.cpp:50
virtual void endSlides()
Definition: KEYContentCollector.cpp:89
virtual void startSlides()
Definition: KEYContentCollector.cpp:84
void drawLayer(const KEYLayerPtr_t &layer)
Definition: KEYContentCollector.cpp:172
KEYContentCollector & operator=(const KEYContentCollector &other)
void resolveStyle(KEYStyle &style)
Definition: KEYContentCollector.cpp:102
virtual void startThemes()
Definition: KEYContentCollector.cpp:94
virtual ~KEYContentCollector()
Definition: KEYContentCollector.cpp:38
void drawNotes(const KEYObjectList_t &notes)
Definition: KEYContentCollector.cpp:187
bool m_pageOpened
Definition: KEYContentCollector.h:63
virtual void startPage()
Definition: KEYContentCollector.cpp:108
virtual void collectPresentation(const boost::optional< KEYSize > &size)
Definition: KEYContentCollector.cpp:46
virtual void endPage()
Definition: KEYContentCollector.cpp:126
int m_layerCount
Definition: KEYContentCollector.h:66
A representation of default values for various parts of the format.
Definition: KEYDefaults.h:31
Represents a hierarchical style.
Definition: KEYStyle.h:27
@ dict
Definition: KEY1Token.h:42
@ size
Definition: KEY1Token.h:72
@ layer
Definition: KEY2Token.h:270
@ style
Definition: KEY2Token.h:796
@ notes
Definition: KEY2Token.h:326
Definition: EtonyekDocument.cpp:41
boost::unordered_map< ID_t, KEYLayerPtr_t > KEYLayerMap_t
Definition: KEYTypes_fwd.h:63
std::deque< KEYObjectPtr_t > KEYObjectList_t
A list of presentation objects.
Definition: KEYObject.h:48
boost::shared_ptr< KEYLayer > KEYLayerPtr_t
Definition: KEYTypes_fwd.h:60
std::deque< KEYStickyNote > KEYStickyNotes_t
Definition: KEYTypes.h:184
A dictionary of all referenceable entities in the presentation.
Definition: KEYDictionary.h:36
Definition: KEYTypes.h:28

Generated for libetonyek by doxygen 1.9.3