Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
KEYThemeCollector.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 KEYTHEMECOLLECTOR_H_INCLUDED
11
#define KEYTHEMECOLLECTOR_H_INCLUDED
12
13
#include "
KEYCollectorBase.h
"
14
15
namespace
libetonyek
16
{
17
18
struct
KEYDictionary;
19
20
class
KEYThemeCollector
:
public
KEYCollectorBase
21
{
22
public
:
23
KEYThemeCollector
(
KEYDictionary
&
dict
,
KEYLayerMap_t
&masterPages,
KEYSize
&
size
,
const
KEYDefaults
&defaults);
24
virtual
~KEYThemeCollector
();
25
26
// collector functions
27
28
virtual
void
collectPresentation
(
const
boost::optional<KEYSize> &size);
29
30
virtual
void
collectLayer
(
const
boost::optional<ID_t> &
id
,
bool
ref);
31
virtual
void
collectPage
(
const
boost::optional<ID_t> &
id
);
32
33
virtual
void
startSlides
();
34
virtual
void
endSlides
();
35
virtual
void
startThemes
();
36
virtual
void
endThemes
();
37
38
virtual
void
startPage
();
39
virtual
void
endPage
();
40
virtual
void
startLayer
();
41
virtual
void
endLayer
();
42
43
private
:
44
KEYLayerMap_t
&
m_masterPages
;
45
KEYSize
&
m_size
;
46
};
47
48
}
// namespace libetonyek
49
50
#endif // KEYTHEMECOLLECTOR_H_INCLUDED
51
52
/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Generated for libetonyek by
doxygen
1.8.3.1