WPSContentListener Class Reference

#include <WPSContentListener.h>

Inheritance diagram for WPSContentListener:
WPSListener

Public Types

enum  NoteType { FOOTNOTE, ENDNOTE }
 defines the footnote type More...
 
- Public Types inherited from WPSListener
enum  FieldType {
  None, PageNumber, Date, Time,
  Title, Link, Database
}
 Defines some basic type for field. More...
 

Public Member Functions

 WPSContentListener (std::vector< WPSPageSpan > const &pageList, librevenge::RVNGTextInterface *documentInterface)
 
virtual ~WPSContentListener ()
 
void setDocumentLanguage (int lcid)
 
void startDocument ()
 
void endDocument ()
 
void handleSubDocument (WPSSubDocumentPtr &subDocument, libwps::SubDocumentType subDocumentType)
 
bool isHeaderFooterOpened () const
 
void insertCharacter (uint8_t character)
 adds a basic character, .. More...
 
void insertUnicode (uint32_t character)
 adds an unicode character More...
 
void insertUnicodeString (librevenge::RVNGString const &str)
 adds a unicode string More...
 
void insertTab ()
 
void insertEOL (bool softBreak=false)
 
void insertBreak (const uint8_t breakType)
 
void setFont (const WPSFont &font)
 set the actual font More...
 
WPSFont const & getFont () const
 returns the actual font More...
 
bool isParagraphOpened () const
 returns true if a paragraph or a list is opened More...
 
void setParagraph (const WPSParagraph &para)
 sets the actual paragraph More...
 
WPSParagraph const & getParagraph () const
 returns the actual paragraph More...
 
void setCurrentList (shared_ptr< WPSList > list)
 function to set the actual list More...
 
shared_ptr< WPSListgetCurrentList () const
 returns the current list More...
 
void insertField (FieldType type)
 adds a field type More...
 
void insertDateTimeField (char const *format)
 insert a date/time field with given format (see strftime) More...
 
void insertNote (const NoteType noteType, WPSSubDocumentPtr &subDocument)
 adds note More...
 
void insertLabelNote (const NoteType noteType, librevenge::RVNGString const &label, WPSSubDocumentPtr &subDocument)
 adds a label note More...
 
void insertComment (WPSSubDocumentPtr &subDocument)
 adds comment More...
 
void insertPicture (WPSPosition const &pos, const librevenge::RVNGBinaryData &binaryData, std::string type="image/pict", librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList())
 adds a picture in given position More...
 
void insertTextBox (WPSPosition const &pos, WPSSubDocumentPtr subDocument, librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList())
 adds a textbox in given position More...
 
void openTable (std::vector< float > const &colWidth, librevenge::RVNGUnit unit)
 open a table More...
 
void closeTable ()
 closes this table More...
 
void openTableRow (float h, librevenge::RVNGUnit unit, bool headerRow=false)
 open a row with given height. More...
 
void closeTableRow ()
 closes this row More...
 
void openTableCell (WPSCell const &cell, librevenge::RVNGPropertyList const &extras=librevenge::RVNGPropertyList())
 low level function to define a cell. More...
 
void closeTableCell ()
 close a cell More...
 
void addEmptyTableCell (Vec2i const &pos, Vec2i span=Vec2i(1, 1))
 add empty cell More...
 
bool isSectionOpened () const
 returns true if a section is opened More...
 
int getSectionNumColumns () const
 returns the actual number of columns ( or 1 if no section is opened ) More...
 
bool openSection (std::vector< int > colsWidth=std::vector< int >(), librevenge::RVNGUnit unit=librevenge::RVNG_INCH)
 open a section if possible More...
 
bool closeSection ()
 close a section More...
 
- Public Member Functions inherited from WPSListener
 WPSListener ()
 
virtual ~WPSListener ()
 

Protected Member Functions

void _openSection ()
 
void _closeSection ()
 
void _openPageSpan ()
 
void _closePageSpan ()
 
void _updatePageSpanDependent (bool set)
 
void _startSubDocument ()
 
void _endSubDocument ()
 
void _handleFrameParameters (librevenge::RVNGPropertyList &propList, WPSPosition const &pos)
 
bool _openFrame (WPSPosition const &pos, librevenge::RVNGPropertyList extras=librevenge::RVNGPropertyList())
 
void _closeFrame ()
 
void _openParagraph ()
 
void _closeParagraph ()
 
void _appendParagraphProperties (librevenge::RVNGPropertyList &propList, const bool isListElement=false)
 
void _resetParagraphState (const bool isListElement=false)
 
void _openListElement ()
 
void _closeListElement ()
 
void _changeList ()
 
void _openSpan ()
 
void _closeSpan ()
 
void _flushText ()
 
void _flushDeferredTabs ()
 
void _insertBreakIfNecessary (librevenge::RVNGPropertyList &propList)
 
shared_ptr
< WPSContentParsingState
_pushParsingState ()
 creates a new parsing state (copy of the actual state) More...
 
void _popParsingState ()
 resets the previous parsing state More...
 

Protected Attributes

shared_ptr
< WPSDocumentParsingState
m_ds
 
shared_ptr
< WPSContentParsingState
m_ps
 
std::vector< shared_ptr
< WPSContentParsingState > > 
m_psStack
 
librevenge::RVNGTextInterface * m_documentInterface
 

Private Member Functions

 WPSContentListener (const WPSContentListener &)
 
WPSContentListeneroperator= (const WPSContentListener &)
 

Additional Inherited Members

- Static Public Member Functions inherited from WPSListener
static void appendUnicode (uint32_t val, librevenge::RVNGString &buffer)
 adds an unicode character to a string ( with correct encoding ). More...
 

Member Enumeration Documentation

defines the footnote type

Enumerator
FOOTNOTE 
ENDNOTE 

Constructor & Destructor Documentation

WPSContentListener::WPSContentListener ( std::vector< WPSPageSpan > const &  pageList,
librevenge::RVNGTextInterface *  documentInterface 
)
WPSContentListener::~WPSContentListener ( )
virtual
WPSContentListener::WPSContentListener ( const WPSContentListener )
private

Member Function Documentation

void WPSContentListener::_appendParagraphProperties ( librevenge::RVNGPropertyList &  propList,
const bool  isListElement = false 
)
protected

Referenced by _openListElement(), and _openParagraph().

void WPSContentListener::_changeList ( )
protected
void WPSContentListener::_closeFrame ( )
protected
void WPSContentListener::_closeListElement ( )
protected

Referenced by _closeParagraph().

void WPSContentListener::_closePageSpan ( )
protected
void WPSContentListener::_closeParagraph ( )
protected
void WPSContentListener::_closeSection ( )
protected
void WPSContentListener::_closeSpan ( )
protected
void WPSContentListener::_endSubDocument ( )
protected

Referenced by closeTable(), and handleSubDocument().

void WPSContentListener::_flushDeferredTabs ( )
protected
void WPSContentListener::_flushText ( )
protected
void WPSContentListener::_handleFrameParameters ( librevenge::RVNGPropertyList &  propList,
WPSPosition const &  pos 
)
protected

Referenced by _openFrame().

void WPSContentListener::_insertBreakIfNecessary ( librevenge::RVNGPropertyList &  propList)
protected
bool WPSContentListener::_openFrame ( WPSPosition const &  pos,
librevenge::RVNGPropertyList  extras = librevenge::RVNGPropertyList() 
)
protected
void WPSContentListener::_openListElement ( )
protected

Referenced by _openSpan().

void WPSContentListener::_openPageSpan ( )
protected

Referenced by _openSection().

void WPSContentListener::_openParagraph ( )
protected
void WPSContentListener::_openSection ( )
protected
void WPSContentListener::_popParsingState ( )
protected

resets the previous parsing state

Referenced by closeTable(), and handleSubDocument().

shared_ptr< WPSContentParsingState > WPSContentListener::_pushParsingState ( )
protected

creates a new parsing state (copy of the actual state)

Returns
the old one

Referenced by handleSubDocument(), and openTable().

void WPSContentListener::_resetParagraphState ( const bool  isListElement = false)
protected

Referenced by _openListElement(), and _openParagraph().

void WPSContentListener::_startSubDocument ( )
protected

Referenced by handleSubDocument(), and openTable().

void WPSContentListener::_updatePageSpanDependent ( bool  set)
protected
void WPSContentListener::addEmptyTableCell ( Vec2i const &  pos,
Vec2i  span = Vec2i(1,1) 
)

add empty cell

bool WPSContentListener::closeSection ( )

close a section

void WPSContentListener::closeTable ( )

closes this table

Referenced by _endSubDocument(), and endDocument().

void WPSContentListener::closeTableCell ( )
void WPSContentListener::closeTableRow ( )

closes this row

void WPSContentListener::endDocument ( )
shared_ptr< WPSList > WPSContentListener::getCurrentList ( ) const

returns the current list

Referenced by setParagraph().

WPSFont const & WPSContentListener::getFont ( ) const
virtual

returns the actual font

Implements WPSListener.

WPSParagraph const & WPSContentListener::getParagraph ( ) const
virtual

returns the actual paragraph

Implements WPSListener.

int WPSContentListener::getSectionNumColumns ( ) const

returns the actual number of columns ( or 1 if no section is opened )

void WPSContentListener::handleSubDocument ( WPSSubDocumentPtr subDocument,
libwps::SubDocumentType  subDocumentType 
)
void WPSContentListener::insertBreak ( const uint8_t  breakType)
virtual

Implements WPSListener.

void WPSContentListener::insertCharacter ( uint8_t  character)
virtual

adds a basic character, ..

Implements WPSListener.

void WPSContentListener::insertComment ( WPSSubDocumentPtr subDocument)

adds comment

void WPSContentListener::insertDateTimeField ( char const *  format)
virtual

insert a date/time field with given format (see strftime)

Implements WPSListener.

Referenced by insertField().

void WPSContentListener::insertEOL ( bool  softBreak = false)
virtual

Implements WPSListener.

void WPSContentListener::insertField ( WPSContentListener::FieldType  type)
virtual

adds a field type

Implements WPSListener.

void WPSContentListener::insertLabelNote ( const NoteType  noteType,
librevenge::RVNGString const &  label,
WPSSubDocumentPtr subDocument 
)

adds a label note

Must not happen excepted in corrupted document, so we do the minimum. Note that we have no choice, either we begin by closing the paragraph, ... or we reprogram handleSubDocument.

Referenced by insertNote().

void WPSContentListener::insertNote ( const NoteType  noteType,
WPSSubDocumentPtr subDocument 
)

adds note

void WPSContentListener::insertPicture ( WPSPosition const &  pos,
const librevenge::RVNGBinaryData &  binaryData,
std::string  type = "image/pict",
librevenge::RVNGPropertyList  frameExtras = librevenge::RVNGPropertyList() 
)

adds a picture in given position

void WPSContentListener::insertTab ( )
virtual

Implements WPSListener.

void WPSContentListener::insertTextBox ( WPSPosition const &  pos,
WPSSubDocumentPtr  subDocument,
librevenge::RVNGPropertyList  frameExtras = librevenge::RVNGPropertyList() 
)

adds a textbox in given position

void WPSContentListener::insertUnicode ( uint32_t  character)
virtual

adds an unicode character

by convention if character=0xfffd(undef), no character is added

Implements WPSListener.

Referenced by insertCharacter().

void WPSContentListener::insertUnicodeString ( librevenge::RVNGString const &  str)
virtual

adds a unicode string

Implements WPSListener.

Referenced by insertDateTimeField(), and insertField().

bool WPSContentListener::isHeaderFooterOpened ( ) const
bool WPSContentListener::isParagraphOpened ( ) const
virtual

returns true if a paragraph or a list is opened

Implements WPSListener.

bool WPSContentListener::isSectionOpened ( ) const

returns true if a section is opened

bool WPSContentListener::openSection ( std::vector< int >  colsWidth = std::vector<int>(),
librevenge::RVNGUnit  unit = librevenge::RVNG_INCH 
)

open a section if possible

void WPSContentListener::openTable ( std::vector< float > const &  colWidth,
librevenge::RVNGUnit  unit 
)

open a table

void WPSContentListener::openTableCell ( WPSCell const &  cell,
librevenge::RVNGPropertyList const &  extras = librevenge::RVNGPropertyList() 
)

low level function to define a cell.

Parameters
cellthe cell position, alignement, ...
extrasto be used to pass extra data, for instance spreadsheet data

Referenced by WPS8TableInternal::Cell::send().

void WPSContentListener::openTableRow ( float  h,
librevenge::RVNGUnit  unit,
bool  headerRow = false 
)

open a row with given height.

If h<0, use min-row-heigth

WPSContentListener& WPSContentListener::operator= ( const WPSContentListener )
private
void WPSContentListener::setCurrentList ( shared_ptr< WPSList list)

function to set the actual list

Referenced by setParagraph().

void WPSContentListener::setDocumentLanguage ( int  lcid)
virtual

Implements WPSListener.

void WPSContentListener::setFont ( const WPSFont font)
virtual

set the actual font

Implements WPSListener.

void WPSContentListener::setParagraph ( const WPSParagraph para)
virtual

sets the actual paragraph

Implements WPSListener.

void WPSContentListener::startDocument ( )

Referenced by _openPageSpan().

Member Data Documentation

std::vector<shared_ptr<WPSContentParsingState> > WPSContentListener::m_psStack
protected

The documentation for this class was generated from the following files:

Generated on Thu Oct 9 2014 14:30:04 for libwps by doxygen 1.8.8