#pragma once #include "Paragraph.h" namespace ASCDocFileFormat { class Footer: public ITextItem { struct FooterItemWithOffset { TextItemPtr footerItem; unsigned int footerItemOffset; FooterItemWithOffset() : footerItem(), footerItemOffset(0) { } FooterItemWithOffset(const TextItemPtr& _footerItem, unsigned int _footerItemOffset) : footerItem(_footerItem), footerItemOffset(_footerItemOffset) { } }; private: list textItems; unsigned int footerItemsOffset; public: explicit Footer(); Footer( const Footer& _footer ); void AddTextItem( const ITextItem& _textItem ); virtual ~Footer(); virtual wstring GetAllText() const; virtual operator wstring() const; virtual vector GetAllParagraphsCopy() const; virtual vector GetAllParagraphs(); virtual vector GetAllParagraphsProperties( vector* allParagraphsOffsets ) const; virtual vector GetAllRunProperties( vector* allRunsOffsets ) const; virtual vector GetAllRunsCopy( vector* allRunsOffsets ) const; virtual vector GetAllParagraphItemsCopy( vector* allParagraphItemsOffsets ) const; virtual IVirtualConstructor* New() const; virtual IVirtualConstructor* Clone() const; }; }