Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef PF_FRAG_TEXT_H
00022 #define PF_FRAG_TEXT_H
00023
00024 #include "ut_types.h"
00025 #include "pt_Types.h"
00026 #include "pf_Frag.h"
00027 #include <string>
00028
00036 class ABI_EXPORT pf_Frag_Text : public pf_Frag
00037 {
00038 public:
00039 pf_Frag_Text(pt_PieceTable * pPT,
00040 PT_BufIndex bufIndex,
00041 UT_uint32 length,
00042 PT_AttrPropIndex indexAP,
00043 fd_Field * m_pField);
00044 virtual ~pf_Frag_Text();
00045
00046 virtual bool createSpecialChangeRecord(PX_ChangeRecord ** ppcr,
00047 PT_DocPosition dpos,
00048 PT_BlockOffset blockOffset) const;
00049 virtual bool createSpecialChangeRecord(PX_ChangeRecord ** ppcr,
00050 PT_DocPosition dpos,
00051 PT_BlockOffset blockOffset,
00052 PT_BlockOffset startFragOffset,
00053 PT_BlockOffset endFragOffset) const;
00054 inline PT_BufIndex getBufIndex(void) const
00055 {
00056 return m_bufIndex;
00057 }
00058
00059 void changeLength(UT_uint32 newLength);
00060 void adjustOffsetLength(PT_BufIndex bi, UT_uint32 newLength);
00061 void setField(fd_Field * pField);
00062
00063 virtual bool usesXID() const {return false;}
00064
00065 #ifdef PT_TEST
00066 virtual void __dump(FILE * fp) const;
00067 #endif
00068
00069 std::string toString() const;
00070
00071 protected:
00072 virtual bool _isContentEqual(const pf_Frag & f2) const;
00073 PT_BufIndex m_bufIndex;
00074 };
00075
00076 #endif