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;
212 void insertEquation(
STOFFFrameStyle const &frame, librevenge::RVNGString
const &equation,
221 void openTable(
STOFFTable const &table)
final;
223 void closeTable()
final;
225 void openTableRow(
float h, librevenge::RVNGUnit unit,
bool headerRow=
false)
final;
227 void closeTableRow()
final;
229 void openTableCell(
STOFFCell const &cell)
final;
231 void closeTableCell()
final;
233 void addCoveredTableCell(
STOFFVec2i const &pos)
final;
253 bool closeSection()
final;
255 void insertBreak(
BreakType breakType)
final;
259 void _openPageSpan(
bool sendHeaderFooters=
true);
261 void _closePageSpan();
263 void _startSubDocument();
264 void _endSubDocument();
266 void _handleFrameParameters(librevenge::RVNGPropertyList &propList,
STOFFFrameStyle const &frame);
268 void _openParagraph();
269 void _closeParagraph();
270 void _resetParagraphState(
const bool isListElement=
false);
273 void _openListElement();
275 void _closeListElement();
282 int _getListId()
const;
288 void _flushDeferredTabs();
293 std::shared_ptr<STOFFSpreadsheetListenerInternal::State> _pushParsingState();
295 void _popParsingState();
299 std::shared_ptr<STOFFSpreadsheetListenerInternal::DocumentState>
m_ds;
301 std::shared_ptr<STOFFSpreadsheetListenerInternal::State>
m_ps;
303 std::vector<std::shared_ptr<STOFFSpreadsheetListenerInternal::State> >
m_psStack;
std::shared_ptr< STOFFSpreadsheetListenerInternal::State > m_ps
the actual local parse state
Definition: STOFFSpreadsheetListener.hxx:301
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:299
Class to store a frame style.
Definition: STOFFFrameStyle.hxx:45
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:74
bool isSectionOpened() const final
returns true if a section is opened
Definition: STOFFSpreadsheetListener.hxx:244
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:303
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:305
This class contents the main functions needed to create a spreadsheet processing Document.
Definition: STOFFSpreadsheetListener.hxx:64
bool canOpenSectionAddBreak() const final
returns true if we can add open a section, add page break, ...
Definition: STOFFSpreadsheetListener.hxx:239
std::shared_ptr< STOFFSubDocument > STOFFSubDocumentPtr
a smart pointer of STOFFSubDocument
Definition: libstaroffice_internal.hxx:499
a class used to store a chart associated to a spreadsheet ....
Definition: STOFFChart.hxx:57
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
STOFFVec2< int > STOFFVec2i
STOFFVec2 of int.
Definition: libstaroffice_internal.hxx:767
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
Type getType() const final
returns the listener type
Definition: STOFFSpreadsheetListener.hxx:73
std::shared_ptr< STOFFListManager > STOFFListManagerPtr
a smart pointer of STOFFListManager
Definition: libstaroffice_internal.hxx:493
This class contains a virtual interface to all listener.
Definition: STOFFListener.hxx:50
Class to store a graphic style.
Definition: STOFFGraphicStyle.hxx:44