Files
core/ASCOfficeDocFile/DocxDocConverter/Endnote.h
Alexey.Musinov 9ea51f5678 выпиливание boost'a
git-svn-id: svn://fileserver/activex/AVS/Sources/TeamlabOffice/trunk/ServerComponents@52920 954022d7-b5bf-4e40-9824-e11837661b57
2016-05-20 22:33:45 +03:00

53 lines
1.7 KiB
C++

#pragma once
#include "ITextItem.h"
#include "EndnoteRef.h"
#include "EndnoteReference.h"
#include "PLC.h"
namespace ASCDocFileFormat
{
typedef PLC<EmptyPLCData> PlcfendTxt;
typedef PLC<short> PlcfendRef;
class Endnote: public ITextItem
{
struct EndnoteItemWithOffset
{
TextItemPtr endnoteItem;
unsigned int endnoteItemOffset;
EndnoteItemWithOffset():
endnoteItem(), endnoteItemOffset(0)
{
}
EndnoteItemWithOffset( const TextItemPtr& _endnoteItem, unsigned int _endnoteItemOffset ):
endnoteItem(_endnoteItem), endnoteItemOffset(_endnoteItemOffset)
{
}
};
private:
list<EndnoteItemWithOffset> textItems;
unsigned int endnoteItemsOffset;
short aFtnIdx;
public:
explicit Endnote( short _aFtnIdx = 0 );
Endnote( const Endnote& _endnote );
void AddTextItem( const ITextItem& _textItem );
short GetIndex() const;
virtual ~Endnote();
virtual wstring GetAllText() const;
virtual operator wstring() const;
virtual vector<TextItemPtr> GetAllParagraphsCopy() const;
virtual vector<ITextItem*> GetAllParagraphs();
virtual vector<PapxInFkp> GetAllParagraphsProperties( vector<unsigned int>* allParagraphsOffsets ) const;
virtual vector<Chpx> GetAllRunProperties( vector<unsigned int>* allRunsOffsets ) const;
virtual vector<IParagraphItemPtr> GetAllRunsCopy( vector<unsigned int>* allRunsOffsets ) const;
virtual vector<IParagraphItemPtr> GetAllParagraphItemsCopy( vector<unsigned int>* allParagraphItemsOffsets ) const;
virtual IVirtualConstructor* New() const;
virtual IVirtualConstructor* Clone() const;
};
}