10 #ifndef __ABWCONTENTCOLLECTOR_H__    11 #define __ABWCONTENTCOLLECTOR_H__    18 #include <librevenge/librevenge.h>   115   std::stack<std::pair<int, std::shared_ptr<ABWListElement>>> 
m_listLevels;
   121   ABWContentCollector(librevenge::RVNGTextInterface *iface, 
const std::map<int, int> &tableSizes,
   122                       const std::map<std::string, ABWData> &data,
   123                       const std::map<
int, std::shared_ptr<ABWListElement>> &listElements);
   128   void collectTextStyle(
const char *name, 
const char *
basedon, 
const char *
followedby, 
const char *props) 
override;
   129   void collectDocumentProperties(
const char *props) 
override;
   130   void collectParagraphProperties(
const char *level, 
const char *listid, 
const char *parentid, 
const char *style, 
const char *props) 
override;
   131   void collectSectionProperties(
const char *footer, 
const char *footerLeft, 
const char *footerFirst, 
const char *footerLast,
   132                                 const char *header, 
const char *headerLeft, 
const char *headerFirst, 
const char *headerLast,
   133                                 const char *props) 
override;
   134   void collectCharacterProperties(
const char *style, 
const char *props) 
override;
   135   void collectPageSize(
const char *width, 
const char *height, 
const char *units, 
const char *pageScale) 
override;
   136   void closeParagraphOrListElement() 
override;
   137   void closeSpan() 
override;
   138   void openLink(
const char *href) 
override;
   139   void closeLink() 
override;
   140   void openFoot(
const char *
id) 
override;
   141   void closeFoot() 
override;
   142   void openEndnote(
const char *
id) 
override;
   143   void closeEndnote() 
override;
   144   void openField(
const char *type, 
const char *
id) 
override;
   145   void closeField() 
override;
   146   void endSection() 
override;
   147   void startDocument() 
override;
   148   void endDocument() 
override;
   149   void insertLineBreak() 
override;
   150   void insertColumnBreak() 
override;
   151   void insertPageBreak() 
override;
   152   void insertText(
const char *text) 
override;
   153   void insertImage(
const char *dataid, 
const char *props) 
override;
   154   void collectList(
const char *, 
const char *, 
const char *, 
const char *, 
const char *, 
const char *)
 override {}
   156   void collectData(
const char *name, 
const char *mimeType, 
const librevenge::RVNGBinaryData &data) 
override;
   157   void collectHeaderFooter(
const char *
id, 
const char *type) 
override;
   159   void openTable(
const char *props) 
override;
   160   void closeTable() 
override;
   161   void openCell(
const char *props) 
override;
   162   void closeCell() 
override;
   164   void openFrame(
const char *props, 
const char *imageId, 
const char *title, 
const char *alt) 
override;
   168   void addMetadataEntry(
const char *name, 
const char *value) 
override;
   176   void _addBorderProperties(
const std::map<std::string, std::string> &map, librevenge::RVNGPropertyList &propList, 
const std::string &defaultUndefBorderProp=
"");
   178   void _openPageSpan();
   179   void _closePageSpan();
   182   void _closeSection();
   189   void _openParagraph();
   190   void _closeParagraph();
   192   void _openListElement();
   193   void _closeListElement();
   195   void _handleListChange();
   197   void _recurseListLevels(
int oldLevel, 
int newLevel, 
int listId);
   198   void _writeOutDummyListLevels(
int oldLevel, 
int newLevel);
   205   void _openTableRow();
   206   void _closeTableRow();
   207   void _openTableCell();
   208   void _closeTableCell();
   215   void _recurseTextProperties(
const char *name, 
ABWPropertyMap &styleProps);
   216   std::string _findDocumentProperty(
const char *name);
   217   std::string _findParagraphProperty(
const char *name);
   218   std::string _findCharacterProperty(
const char *name);
   219   std::string _findTableProperty(
const char *name);
   220   std::string _findCellProperty(
const char *name);
   221   std::string _findSectionProperty(
const char *name);
   222   std::string _findMetadataEntry(
const char *name);
   224   void _fillParagraphProperties(librevenge::RVNGPropertyList &propList, 
bool isListElement);
   225   bool _convertFieldDTFormat(std::string 
const &dtFormat, librevenge::RVNGPropertyListVector &propVect);
   227   int getCellPos(
const char *startProp, 
const char *endProp, 
int defStart);
   229   std::shared_ptr<ABWContentParsingState> 
m_ps;
   238   const std::map<std::string, ABWData> &
m_data;
 ABWPropertyMap m_currentTableProperties
Definition: ABWContentCollector.h:50
bool m_inParagraphOrListElement
Definition: ABWContentCollector.h:81
bool m_isSpanOpened
Definition: ABWContentCollector.h:78
bool m_isRowWithoutCell
Definition: ABWContentCollector.h:61
Definition: ABWContentCollector.h:35
bool m_isCellWithoutParagraph
Definition: ABWContentCollector.h:60
ABWOutputElements m_pageOutputElements
Definition: ABWContentCollector.h:242
int m_currentListId
Definition: ABWContentCollector.h:111
bool m_isFooterOpened
Definition: ABWContentCollector.h:74
ABWPropertyMap m_currentCharacterStyle
Definition: ABWContentCollector.h:85
std::stack< std::shared_ptr< ABWContentParsingState > > m_parsingStates
Definition: ABWContentCollector.h:231
std::map< std::string, ABWStyle > m_textStyles
Definition: ABWContentCollector.h:233
ABWPropertyMap m_documentStyle
Definition: ABWContentCollector.h:235
librevenge::RVNGTextInterface * m_iface
Definition: ABWContentCollector.h:230
bool m_deferredColumnBreak
Definition: ABWContentCollector.h:106
bool m_isPageFrame
Definition: ABWContentCollector.h:76
int m_footerLeftId
Definition: ABWContentCollector.h:94
Definition: ABWContentCollector.h:118
bool m_isPageSpanOpened
Definition: ABWContentCollector.h:71
bool m_isTableRowOpened
Definition: ABWContentCollector.h:57
Definition: AbiDocument.cpp:16
int m_currentTableCol
Definition: ABWContentCollector.h:53
ABWOutputElements m_outputElements
Definition: ABWContentCollector.h:241
int m_tableCounter
Definition: ABWContentCollector.h:240
Definition: ABWContentCollector.h:29
Definition: ABWContentCollector.h:27
std::shared_ptr< ABWContentParsingState > m_ps
Definition: ABWContentCollector.h:229
Definition: ABWOutputElements.h:24
int m_currentTableRow
Definition: ABWContentCollector.h:54
Definition: ABWContentCollector.h:64
bool m_isHeaderOpened
Definition: ABWContentCollector.h:73
const std::map< std::string, ABWData > & m_data
Definition: ABWContentCollector.h:238
bool m_deferredPageBreak
Definition: ABWContentCollector.h:105
int m_headerId
Definition: ABWContentCollector.h:97
int m_footerId
Definition: ABWContentCollector.h:93
int m_headerFirstId
Definition: ABWContentCollector.h:99
Definition: ABWContentCollector.h:28
double m_pageMarginRight
Definition: ABWContentCollector.h:92
double m_pageMarginTop
Definition: ABWContentCollector.h:89
int m_footerLastId
Definition: ABWContentCollector.h:96
double m_pageHeight
Definition: ABWContentCollector.h:88
librevenge::RVNGString m_currentHeaderFooterOccurrence
Definition: ABWContentCollector.h:102
std::string basedon
Definition: ABWContentCollector.h:39
Definition: ABWContentCollector.h:32
bool m_isTableCellOpened
Definition: ABWContentCollector.h:59
std::string followedby
Definition: ABWContentCollector.h:40
std::vector< std::shared_ptr< ABWListElement > > m_dummyListElements
Definition: ABWContentCollector.h:244
double m_pageWidth
Definition: ABWContentCollector.h:87
~ABWStyle()
Definition: ABWContentCollector.h:38
int m_currentListLevel
Definition: ABWContentCollector.h:110
double m_pageMarginBottom
Definition: ABWContentCollector.h:90
bool m_isTableColumnOpened
Definition: ABWContentCollector.h:58
const std::map< int, std::shared_ptr< ABWListElement > > & m_listElements
Definition: ABWContentCollector.h:243
std::set< std::string > m_dontLoop
Definition: ABWContentCollector.h:232
Definition: ABWCollector.h:106
int m_currentHeaderFooterId
Definition: ABWContentCollector.h:101
bool m_isDocumentStarted
Definition: ABWContentCollector.h:70
int m_headerLastId
Definition: ABWContentCollector.h:100
ABWContext
Definition: ABWContentCollector.h:25
double m_pageMarginLeft
Definition: ABWContentCollector.h:91
std::stack< ABWContentTableState > m_tableStates
Definition: ABWContentCollector.h:114
std::stack< std::pair< int, std::shared_ptr< ABWListElement > > > m_listLevels
Definition: ABWContentCollector.h:115
ABWPropertyMap m_currentCellProperties
Definition: ABWContentCollector.h:51
int m_footerFirstId
Definition: ABWContentCollector.h:95
ABWPropertyMap properties
Definition: ABWContentCollector.h:41
int m_currentTableCellNumberInRow
Definition: ABWContentCollector.h:55
void collectList(const char *, const char *, const char *, const char *, const char *, const char *) override
Definition: ABWContentCollector.h:154
bool m_isNote
Definition: ABWContentCollector.h:108
ABWStyle()
Definition: ABWContentCollector.h:37
bool m_isListElementOpened
Definition: ABWContentCollector.h:80
ABWPropertyMap m_currentParagraphStyle
Definition: ABWContentCollector.h:84
ABWPropertyMap m_currentSectionStyle
Definition: ABWContentCollector.h:83
Definition: ABWContentCollector.h:44
std::map< std::string, std::string > ABWPropertyMap
Definition: ABWCollector.h:39
Definition: ABWContentCollector.h:31
bool m_isParagraphOpened
Definition: ABWContentCollector.h:79
int m_headerLeftId
Definition: ABWContentCollector.h:98
ABWPropertyMap m_metadata
Definition: ABWContentCollector.h:236
ABWContext m_parsingContext
Definition: ABWContentCollector.h:103
int m_currentTableId
Definition: ABWContentCollector.h:56
bool m_isFirstTextInListElement
Definition: ABWContentCollector.h:112
const std::map< int, int > & m_tableSizes
Definition: ABWContentCollector.h:239
Definition: ABWContentCollector.h:30
bool m_isSectionOpened
Definition: ABWContentCollector.h:72