40 #ifndef STOFF_SPREADSHEET_LISTENER_H 41 #define STOFF_SPREADSHEET_LISTENER_H 45 #include <librevenge/librevenge.h> 79 void setDocumentLanguage(std::string locale)
final;
81 void setDocumentMetaData(
const librevenge::RVNGPropertyList &list)
final;
84 void startDocument()
final;
86 void endDocument(
bool sendDelayedSubDoc=
true)
final;
88 bool isDocumentStarted()
const final;
97 void closeFrame()
final;
101 void closeGroup()
final;
104 bool canWriteText()
const final;
108 bool isPageSpanOpened()
const final;
116 bool openHeader(librevenge::RVNGPropertyList
const &extras)
final;
118 bool openFooter(librevenge::RVNGPropertyList
const &extras)
final;
120 bool closeHeader()
final;
122 bool closeFooter()
final;
124 bool insertHeaderRegion(
STOFFSubDocumentPtr subDocument, librevenge::RVNGString
const &which)
final;
126 bool insertFooterRegion(
STOFFSubDocumentPtr subDocument, librevenge::RVNGString
const &which)
final;
128 bool isHeaderFooterOpened()
const final;
132 void openSheet(std::vector<float>
const &colWidth, librevenge::RVNGUnit unit,
133 std::vector<int>
const &repeatColWidthNumber=std::vector<int>(), librevenge::RVNGString
const &name=
"");
137 void openSheetRow(
float h, librevenge::RVNGUnit unit,
int numRepeated=1);
139 void closeSheetRow();
143 void closeSheetCell();
152 void insertChar(uint8_t character)
final;
155 void insertUnicode(uint32_t character)
final;
157 void insertUnicodeString(librevenge::RVNGString
const &str)
final;
160 void insertTab()
final;
162 void insertEOL(
bool softBreak=
false)
final;
166 void setFont(
STOFFFont const &font)
final;
172 bool isParagraphOpened()
const final;
180 void defineStyle(
STOFFFont const &style)
final;
182 bool isFontStyleDefined(librevenge::RVNGString
const &name)
const final;
186 bool isGraphicStyleDefined(librevenge::RVNGString
const &name)
const final;
190 bool isParagraphStyleDefined(librevenge::RVNGString
const &name)
const final;
194 void insertField(
STOFFField const &field)
final;
198 void openLink(
STOFFLink const &link)
final;
200 void closeLink()
final;
206 void insertComment(
STOFFSubDocumentPtr &subDocument, librevenge::RVNGString
const &creator=
"", librevenge::RVNGString
const &date=
"")
final;
218 void openTable(
STOFFTable const &table)
final;
220 void closeTable()
final;
222 void openTableRow(
float h, librevenge::RVNGUnit unit,
bool headerRow=
false)
final;
224 void closeTableRow()
final;
226 void openTableCell(
STOFFCell const &cell)
final;
228 void closeTableCell()
final;
230 void addCoveredTableCell(
STOFFVec2i const &pos)
final;
250 bool closeSection()
final;
252 void insertBreak(
BreakType breakType)
final;
256 void _openPageSpan(
bool sendHeaderFooters=
true);
258 void _closePageSpan();
260 void _startSubDocument();
261 void _endSubDocument();
263 void _handleFrameParameters(librevenge::RVNGPropertyList &propList,
STOFFPosition const &pos);
265 void _openParagraph();
266 void _closeParagraph();
267 void _resetParagraphState(
const bool isListElement=
false);
270 void _openListElement();
272 void _closeListElement();
279 int _getListId()
const;
285 void _flushDeferredTabs();
290 std::shared_ptr<STOFFSpreadsheetListenerInternal::State> _pushParsingState();
292 void _popParsingState();
296 std::shared_ptr<STOFFSpreadsheetListenerInternal::DocumentState>
m_ds;
298 std::shared_ptr<STOFFSpreadsheetListenerInternal::State>
m_ps;
300 std::vector<std::shared_ptr<STOFFSpreadsheetListenerInternal::State> >
m_psStack;
std::shared_ptr< STOFFSpreadsheetListenerInternal::State > m_ps
the actual local parse state
Definition: STOFFSpreadsheetListener.hxx:298
bool canOpenSectionAddBreak() const final
returns true if we can add open a section, add page break, ...
Definition: STOFFSpreadsheetListener.hxx:236
Type getType() const final
returns the listener type
Definition: STOFFSpreadsheetListener.hxx:73
a structure used to define a cell and its format
Definition: STOFFCell.hxx:53
std::shared_ptr< STOFFSpreadsheetListenerInternal::DocumentState > m_ds
the main parse state
Definition: STOFFSpreadsheetListener.hxx:296
Type
the listener type
Definition: STOFFListener.hxx:57
small class use to define a sheet cell content
Definition: STOFFCell.hxx:234
a link
Definition: libstaroffice_internal.hxx:375
Internal and low level namespace to define the states of STOFFSpreadsheetListener.
Definition: STOFFSpreadsheetListener.cxx:73
a class used to recreate the table structure using cell informations, ....
Definition: STOFFTable.hxx:51
std::vector< std::shared_ptr< STOFFSpreadsheetListenerInternal::State > > m_psStack
stack of local state
Definition: STOFFSpreadsheetListener.hxx:300
a note
Definition: libstaroffice_internal.hxx:389
class to store the paragraph properties
Definition: STOFFParagraph.hxx:47
librevenge::RVNGSpreadsheetInterface * m_documentInterface
the document interface
Definition: STOFFSpreadsheetListener.hxx:302
This class contents the main functions needed to create a spreadsheet processing Document.
Definition: STOFFSpreadsheetListener.hxx:64
std::shared_ptr< STOFFSubDocument > STOFFSubDocumentPtr
a smart pointer of STOFFSubDocument
Definition: libstaroffice_internal.hxx:494
a class used to store a chart associated to a spreadsheet ....
Definition: STOFFChart.hxx:56
SubDocumentType
Definition: libstaroffice_internal.hxx:185
a class which stores section properties
Definition: STOFFSection.hxx:45
a field
Definition: libstaroffice_internal.hxx:363
a structure used to define a picture shape
Definition: STOFFGraphicShape.hxx:45
small class use to define a embedded object
Definition: libstaroffice_internal.hxx:408
bool isSectionOpened() const final
returns true if a section is opened
Definition: STOFFSpreadsheetListener.hxx:241
STOFFVec2< int > STOFFVec2i
STOFFVec2 of int.
Definition: libstaroffice_internal.hxx:762
Class to store font.
Definition: STOFFFont.hxx:43
A class which defines the page properties.
Definition: STOFFPageSpan.hxx:75
BreakType
the different break type
Definition: STOFFListener.hxx:59
std::shared_ptr< STOFFListManager > STOFFListManagerPtr
a smart pointer of STOFFListManager
Definition: libstaroffice_internal.hxx:488
This class contains a virtual interface to all listener.
Definition: STOFFListener.hxx:50
Class to store a graphic style.
Definition: STOFFGraphicStyle.hxx:44
Class to define the position of an object (textbox, picture, ..) in the document. ...
Definition: STOFFPosition.hxx:47