NUMCollector.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 NUMCOLLECTOR_H_INCLUDED
11#define NUMCOLLECTOR_H_INCLUDED
12
13#include "IWORKCollector.h"
14
15namespace libetonyek
16{
17
18class IWORKDocumentInterface;
19
20class NUMCollector final : public IWORKCollector
21{
22public:
24
25 // collector functions
26
27 // helper functions
28 void startDocument();
29 void endDocument();
30
31 void startWorkSpace(boost::optional<std::string> const &name);
32 void endWorkSpace(IWORKTableNameMapPtr_t tableNameMap);
33 boost::optional<std::string> getWorkSpaceName() const final
34 {
35 return m_workSpaceName;
36 }
37
38 void collectStickyNote() final;
39private:
40 void drawTable() final;
41 void drawMedia(double x, double y, const librevenge::RVNGPropertyList &data) final;
42 void fillShapeProperties(librevenge::RVNGPropertyList &props) final;
43 bool createFrameStylesForTextBox() const final
44 {
45 return true;
46 }
47 void drawTextBox(const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox, const librevenge::RVNGPropertyList &style) final;
48
50 boost::optional<std::string> m_workSpaceName;
52 std::vector<IWORKOutputElements> m_tableElementLists;
53};
54
55} // namespace libetonyek
56
57#endif // NUMCOLLECTOR_H_INCLUDED
58
59/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Definition IWORKCollector.h:42
Definition IWORKDocumentInterface.h:19
Definition NUMCollector.h:21
void endDocument()
Definition NUMCollector.cpp:42
bool createFrameStylesForTextBox() const final
Definition NUMCollector.h:43
boost::optional< std::string > m_workSpaceName
Definition NUMCollector.h:50
void endWorkSpace(IWORKTableNameMapPtr_t tableNameMap)
Definition NUMCollector.cpp:66
void drawTable() final
Definition NUMCollector.cpp:132
boost::optional< std::string > getWorkSpaceName() const final
Definition NUMCollector.h:33
void collectStickyNote() final
Definition NUMCollector.cpp:177
std::vector< IWORKOutputElements > m_tableElementLists
Definition NUMCollector.h:52
void startWorkSpace(boost::optional< std::string > const &name)
Definition NUMCollector.cpp:52
void fillShapeProperties(librevenge::RVNGPropertyList &props) final
Definition NUMCollector.cpp:172
NUMCollector(IWORKDocumentInterface *document)
Definition NUMCollector.cpp:21
void startDocument()
Definition NUMCollector.cpp:30
bool m_workSpaceOpened
Definition NUMCollector.h:49
void drawMedia(double x, double y, const librevenge::RVNGPropertyList &data) final
Definition NUMCollector.cpp:147
void drawTextBox(const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox, const librevenge::RVNGPropertyList &style) final
Definition NUMCollector.cpp:192
bool m_workSpaceCreateGraphic
Definition NUMCollector.h:51
@ y
Definition IWORKToken.h:643
@ text
Definition IWORKToken.h:472
@ data
Definition IWORKToken.h:178
@ x
Definition IWORKToken.h:641
@ style
Definition IWORKToken.h:421
@ name
Definition IWORKToken.h:585
@ document
Definition NUM1Token.h:34
Definition IWORKBezierElement.cpp:21
std::shared_ptr< IWORKText > IWORKTextPtr_t
Definition IWORKText_fwd.h:22
std::shared_ptr< IWORKGeometry > IWORKGeometryPtr_t
Definition IWORKTypes_fwd.h:45
std::shared_ptr< IWORKTableNameMap_t > IWORKTableNameMapPtr_t
Definition IWORKTypes_fwd.h:36

Generated for libetonyek by doxygen 1.12.0