KEYTypes.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 KEYTYPES_H_INCLUDED
11 #define KEYTYPES_H_INCLUDED
12
13 #include "KEYTypes_fwd.h"
14
15 #include <deque>
16 #include <string>
17
18 #include <boost/optional.hpp>
19
20 #include "libetonyek_utils.h"
21 #include "IWORKOutputElements.h"
22 #include "IWORKPath_fwd.h"
23 #include "IWORKStyle_fwd.h"
24 #include "IWORKText_fwd.h"
25 #include "IWORKTypes.h"
26 #include "KEYEnum.h"
27
28 namespace libetonyek
29 {
30
31 struct KEYLayer
32 {
33 boost::optional<std::string> m_type;
34 boost::optional<IWORKOutputID_t> m_outputId;
35
36 KEYLayer();
37 };
38
39 struct KEYPlaceholder
40 {
41 boost::optional<bool> m_title;
42 boost::optional<bool> m_empty;
43 IWORKStylePtr_t m_style;
44 IWORKStylePtr_t m_paragraphStyle;
45 IWORKStylePtr_t m_spanStyle;
46 IWORKGeometryPtr_t m_geometry;
47 IWORKTextPtr_t m_text;
48 boost::optional<bool> m_visible;
49 std::deque<double> m_bulletIndentations;
50
51 KEYPlaceholder();
52 };
53
54 struct KEYSlide
55 {
56 boost::optional<std::string> m_name;
57 IWORKOutputElements m_content;
58 IWORKStylePtr_t m_style;
59 std::shared_ptr<KEYSlide> m_masterSlide;
60
61 KEYSlide();
62 };
63
64 struct KEYTransition
65 {
66 KEYTransition();
67
68 KEYTransitionStyleType m_type;
69 boost::optional<std::string> m_name;
70
71 boost::optional<bool> m_automatic;
72 boost::optional<double> m_delay;
73 boost::optional<int> m_direction;
74 boost::optional<double> m_duration;
75 };
76
77 }
78
79 #endif // KEYTYPES_H_INCLUDED
80
81 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
IWORKStyle_fwd.h
libetonyek::IWORKGeometryPtr_t
std::shared_ptr< IWORKGeometry > IWORKGeometryPtr_t
Definition: IWORKTypes_fwd.h:41
libetonyek
Definition: IWORKBezierElement.cpp:20
libetonyek::IWORKOutputElements
Definition: IWORKOutputElements.h:32
libetonyek::KEYTransition::m_delay
boost::optional< double > m_delay
Definition: KEYTypes.h:72
libetonyek::KEYSlide::m_style
IWORKStylePtr_t m_style
Definition: KEYTypes.h:58
KEYTypes_fwd.h
IWORKOutputElements.h
libetonyek::KEYPlaceholder::m_style
IWORKStylePtr_t m_style
Definition: KEYTypes.h:43
libetonyek::KEYLayer::m_outputId
boost::optional< IWORKOutputID_t > m_outputId
Definition: KEYTypes.h:34
KEYEnum.h
libetonyek::KEYTransition
Definition: KEYTypes.h:64
libetonyek::IWORKStylePtr_t
std::shared_ptr< IWORKStyle > IWORKStylePtr_t
Definition: IWORKStyle_fwd.h:21
libetonyek::KEYSlide
Definition: KEYTypes.h:54
libetonyek::KEYPlaceholder
Definition: KEYTypes.h:39
libetonyek::KEYPlaceholder::m_visible
boost::optional< bool > m_visible
Definition: KEYTypes.h:48
libetonyek::KEYTransition::m_automatic
boost::optional< bool > m_automatic
Definition: KEYTypes.h:71
libetonyek::KEYTransition::m_direction
boost::optional< int > m_direction
Definition: KEYTypes.h:73
libetonyek::KEYLayer::m_type
boost::optional< std::string > m_type
Definition: KEYTypes.h:33
libetonyek::KEYLayer
Definition: KEYTypes.h:31
libetonyek::KEYTransition::KEYTransition
KEYTransition()
Definition: KEYTypes.cpp:48
libetonyek::KEYSlide::m_masterSlide
std::shared_ptr< KEYSlide > m_masterSlide
Definition: KEYTypes.h:59
libetonyek::KEYPlaceholder::m_empty
boost::optional< bool > m_empty
Definition: KEYTypes.h:42
libetonyek::KEYPlaceholder::m_text
IWORKTextPtr_t m_text
Definition: KEYTypes.h:47
libetonyek::KEYPlaceholder::m_spanStyle
IWORKStylePtr_t m_spanStyle
Definition: KEYTypes.h:45
libetonyek::IWORKTextPtr_t
std::shared_ptr< IWORKText > IWORKTextPtr_t
Definition: IWORKText_fwd.h:18
libetonyek::KEYTransitionStyleType
KEYTransitionStyleType
Definition: KEYEnum.h:16
libetonyek::KEYLayer::KEYLayer
KEYLayer()
Definition: KEYTypes.cpp:21
IWORKPath_fwd.h
libetonyek::KEYTransition::m_type
KEYTransitionStyleType m_type
Definition: KEYTypes.h:68
libetonyek::KEYTransition::m_name
boost::optional< std::string > m_name
Definition: KEYTypes.h:69
libetonyek::KEYTransition::m_duration
boost::optional< double > m_duration
Definition: KEYTypes.h:74
IWORKTypes.h
libetonyek::KEYSlide::m_name
boost::optional< std::string > m_name
Definition: KEYTypes.h:56
libetonyek::KEYPlaceholder::m_title
boost::optional< bool > m_title
Definition: KEYTypes.h:41
libetonyek::KEYPlaceholder::m_geometry
IWORKGeometryPtr_t m_geometry
Definition: KEYTypes.h:46
libetonyek::KEYSlide::KEYSlide
KEYSlide()
Definition: KEYTypes.cpp:40
libetonyek_utils.h
IWORKText_fwd.h
libetonyek::KEYPlaceholder::KEYPlaceholder
KEYPlaceholder()
Definition: KEYTypes.cpp:27
libetonyek::KEYSlide::m_content
IWORKOutputElements m_content
Definition: KEYTypes.h:57
libetonyek::KEYPlaceholder::m_bulletIndentations
std::deque< double > m_bulletIndentations
Definition: KEYTypes.h:49
libetonyek::KEYPlaceholder::m_paragraphStyle
IWORKStylePtr_t m_paragraphStyle
Definition: KEYTypes.h:44