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 
15 namespace libetonyek
16 {
17 
18 class IWORKDocumentInterface;
19 
21 {
22 public:
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 
34  void collectStickyNote() override;
35 private:
36  void drawTable() override;
37  void drawMedia(double x, double y, const librevenge::RVNGPropertyList &data) override;
38  void fillShapeProperties(librevenge::RVNGPropertyList &props) override;
39  bool createFrameStylesForTextBox() const override
40  {
41  return true;
42  }
43  void drawTextBox(const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox, const librevenge::RVNGPropertyList &style) override;
44 
46  boost::optional<std::string> m_workSpaceName;
48  std::vector<IWORKOutputElements> m_tableElementLists;
49 };
50 
51 } // namespace libetonyek
52 
53 #endif // NUMCOLLECTOR_H_INCLUDED
54 
55 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libetonyek::IWORKCollector::endDocument
void endDocument()
Definition: IWORKCollector.cpp:527
libetonyek::IWORKCollector::getOutputManager
IWORKOutputManager & getOutputManager()
Definition: IWORKCollector.cpp:1016
libetonyek::NUMCollector::endDocument
void endDocument()
Definition: NUMCollector.cpp:42
libetonyek::IWORKDocumentInterface
Definition: IWORKDocumentInterface.h:19
libetonyek::IWORKOutputManager::pop
void pop()
Pop a output element from the stack.
Definition: IWORKOutputManager.cpp:33
libetonyek
Definition: IWORKBezierElement.cpp:21
libetonyek::IWORKToken::none
@ none
Definition: IWORKToken.h:674
libetonyek::KEY1Token::table
@ table
Definition: KEY1Token.h:198
libetonyek::IWORKLanguageManager
Definition: IWORKLanguageManager.h:24
libetonyek::IWORKCollector::startLevel
void startLevel()
Definition: IWORKCollector.cpp:598
libetonyek::IWORKTableNameMapPtr_t
std::shared_ptr< IWORKTableNameMap_t > IWORKTableNameMapPtr_t
Definition: IWORKTypes_fwd.h:34
libetonyek::IWORKOutputManager::getCurrent
IWORKOutputElements & getCurrent()
Get the current output element.
Definition: IWORKOutputManager.cpp:57
IWORKProperties.h
libetonyek::NUMCollector::fillShapeProperties
void fillShapeProperties(librevenge::RVNGPropertyList &props) override
Definition: NUMCollector.cpp:171
libetonyek::IWORKCollector::m_outputManager
IWORKOutputManager m_outputManager
Definition: IWORKCollector.h:172
libetonyek::NUMCollector::startDocument
void startDocument()
Definition: NUMCollector.cpp:30
libetonyek::IWORKOutputElements::addShapesInSpreadsheet
void addShapesInSpreadsheet(const IWORKOutputElements &elements)
add shapes data in spreadsheet. Assume that the current elements are OpenSheet(......
Definition: IWORKOutputElements.cpp:893
ETONYEK_DEBUG_MSG
#define ETONYEK_DEBUG_MSG(M)
Definition: libetonyek_utils.h:54
libetonyek::IWORKTextPtr_t
std::shared_ptr< IWORKText > IWORKTextPtr_t
Definition: IWORKText_fwd.h:20
IWORKTable.h
libetonyek::NUMCollector::drawTable
void drawTable() override
Definition: NUMCollector.cpp:131
IWORKLanguageManager.h
libetonyek::IWORKCollector::endLevel
void endLevel()
Definition: IWORKCollector.cpp:619
libetonyek::NUMCollector::m_workSpaceName
boost::optional< std::string > m_workSpaceName
Definition: NUMCollector.h:46
libetonyek::IWORKCollector::startDocument
void startDocument(const librevenge::RVNGPropertyList &props)
Definition: IWORKCollector.cpp:522
libetonyek::IWORKCollector::fillMetadata
void fillMetadata(librevenge::RVNGPropertyList &props)
Definition: IWORKCollector.cpp:732
libetonyek::IWORKDocumentInterface::setDocumentMetaData
virtual void setDocumentMetaData(const librevenge::RVNGPropertyList &propList)=0
libetonyek::IWORKToken::h
@ h
Definition: IWORKToken.h:557
libetonyek::IWORKOutputElements::addCloseFrame
void addCloseFrame()
Definition: IWORKOutputElements.cpp:941
libetonyek::pt2in
double pt2in(const double d)
Convert a length from points to inches.
Definition: libetonyek_utils.cpp:225
libetonyek::NUMCollector::drawTextBox
void drawTextBox(const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox, const librevenge::RVNGPropertyList &style) override
Definition: NUMCollector.cpp:191
libetonyek::IWORKCollector::m_currentTable
std::shared_ptr< IWORKTable > m_currentTable
Definition: IWORKCollector.h:176
libetonyek::IWORKOutputManager::push
void push()
Push a new output element onto the stack.
Definition: IWORKOutputManager.cpp:28
libetonyek::NUMCollector::NUMCollector
NUMCollector(IWORKDocumentInterface *document)
Definition: NUMCollector.cpp:21
libetonyek::IWORKOutputElements::write
void write(IWORKDocumentInterface *iface) const
Definition: IWORKOutputElements.cpp:904
libetonyek::IWORKToken::id
@ id
Definition: IWORKToken.h:263
libetonyek::NUMCollector::drawMedia
void drawMedia(double x, double y, const librevenge::RVNGPropertyList &data) override
Definition: NUMCollector.cpp:146
libetonyek::IWORKOutputElements::addInsertBinaryObject
void addInsertBinaryObject(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1041
NUMCollector.h
libetonyek::NUMCollector::m_workSpaceOpened
bool m_workSpaceOpened
Definition: NUMCollector.h:45
libetonyek::NUMCollector
Definition: NUMCollector.h:21
libetonyek::NUMCollector::startWorkSpace
void startWorkSpace(boost::optional< std::string > const &name)
Definition: NUMCollector.cpp:52
libetonyek::IWORKPropertyMap::put
void put(const typename IWORKPropertyInfo< Property >::ValueType &value)
Insert a new value for key key.
Definition: IWORKPropertyMap.h:134
libetonyek::IWORKToken::metadata
@ metadata
Definition: IWORKToken.h:328
libetonyek::IWORKOutputElements::addStartTextObject
void addStartTextObject(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1181
IWORKDocumentInterface.h
libetonyek::NUM1Token::document
@ document
Definition: NUM1Token.h:34
IWORKText.h
libetonyek::IWORKToken::w
@ w
Definition: IWORKToken.h:638
libetonyek::IWORKTable
Definition: IWORKTable.h:32
libetonyek::IWORKToken::style
@ style
Definition: IWORKToken.h:421
y
double y
Definition: IWORKShape.cpp:47
libetonyek::IWORKCollector
Definition: IWORKCollector.h:42
libetonyek::IWORKOutputElements::append
void append(const IWORKOutputElements &elements)
Definition: IWORKOutputElements.cpp:888
IWORKCollector.h
x
double x
Definition: IWORKShape.cpp:46
libetonyek::NUMCollector::collectStickyNote
void collectStickyNote() override
Definition: NUMCollector.cpp:176
libetonyek::NUMCollector::createFrameStylesForTextBox
bool createFrameStylesForTextBox() const override
Definition: NUMCollector.h:39
libetonyek::NUMCollector::m_workSpaceCreateGraphic
bool m_workSpaceCreateGraphic
Definition: NUMCollector.h:47
libetonyek::IWORKPropertyMap
Represents a (hierarchical) property map.
Definition: IWORKPropertyMap.h:25
libetonyek::IWORKGeometryPtr_t
std::shared_ptr< IWORKGeometry > IWORKGeometryPtr_t
Definition: IWORKTypes_fwd.h:41
libetonyek::IWORKToken::s
@ s
Definition: IWORKToken.h:394
libetonyek::IWORKOutputElements::addOpenFrame
void addOpenFrame(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1101
libetonyek::IWORKCollector::collectShape
void collectShape(const boost::optional< int > &order=boost::none, const boost::optional< unsigned > &resizeFlags=boost::none, bool locked=false)
Definition: IWORKCollector.cpp:337
libetonyek::IWORKColor
Definition: IWORKTypes.h:79
libetonyek::NUMCollector::endWorkSpace
void endWorkSpace(IWORKTableNameMapPtr_t tableNameMap)
Definition: NUMCollector.cpp:66
libetonyek::IWORKCollector::m_levelStack
std::stack< Level > m_levelStack
Definition: IWORKCollector.h:169
libetonyek::IWORKToken::name
@ name
Definition: IWORKToken.h:585
libetonyek::IWORKToken::data
@ data
Definition: IWORKToken.h:178
libetonyek::IWORKOutputElements::addEndTextObject
void addEndTextObject()
Definition: IWORKOutputElements.cpp:1036
libetonyek::NUMCollector::m_tableElementLists
std::vector< IWORKOutputElements > m_tableElementLists
Definition: NUMCollector.h:48
libetonyek::IWORKCollector::m_document
IWORKDocumentInterface * m_document
Definition: IWORKCollector.h:166
libetonyek::IWORKOutputElements
Definition: IWORKOutputElements.h:33
libetonyek::IWORKToken::text
@ text
Definition: IWORKToken.h:472

Generated for libetonyek by doxygen 1.8.20