Go to the documentation of this file.
39 # define RAGTIME5_TEXT
46 #include <librevenge/librevenge.h>
131 bool send(
int zoneId,
MWAWListenerPtr listener,
int partId=0,
int cellId=0,
double totalWidth=-1);
136 bool isLastZone,
double totalWidth);
164 std::shared_ptr<RagTime5TextInternal::State>
m_state;
ClusterText()
constructor
Definition: RagTime5Text.cxx:185
std::vector< int > m_ids
the data ids
Definition: RagTime5ClusterManager.hxx:210
@ F_textRoot
Definition: RagTime5Text.cxx:1327
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:47
@ CharBaseLine
Definition: MWAWPosition.hxx:51
bool m_isParsed
a flag to know if the zone is parsed
Definition: RagTime5StructManager.hxx:152
bool readLinkZones(RagTime5TextInternal::ClusterText &cluster, RagTime5ClusterManager::Link const &link, int what)
try to read a list of link/list definition with what=0:attachment, 1:item, 3:index,...
Definition: RagTime5Text.cxx:436
@ F_plc
Definition: RagTime5Text.cxx:1327
std::shared_ptr< MWAWInputStream > MWAWInputStreamPtr
a smart pointer of MWAWInputStream
Definition: libmwaw_internal.hxx:551
bool readPositions(int posId, std::vector< long > &listPosition)
try to read a positions zone in data
Definition: RagTime5Document.cxx:923
~ClustListParser() final
destructor
Definition: RagTime5Text.cxx:1258
size_t m_firstChar
the first char
Definition: RagTime5Text.cxx:313
@ L_ClusterLink
Definition: RagTime5ClusterManager.hxx:115
std::shared_ptr< MWAWGraphicListener > MWAWGraphicListenerPtr
a smart pointer of MWAWGraphicListener
Definition: libmwaw_internal.hxx:549
void endZone() final
end of a start zone call
Definition: RagTime5Text.cxx:1352
std::vector< PLC > m_PLCList
the PLC list
Definition: RagTime5Text.cxx:247
RagTime5Document & m_document
the parser
Definition: RagTime5Text.hxx:154
RagTime5ClusterManager::Link m_separatorLink
the word/separator link
Definition: RagTime5Text.cxx:224
#define MWAW_DEBUG_MSG(M)
Definition: libmwaw_internal.hxx:129
MWAWVec2< float > MWAWVec2f
MWAWVec2 of float.
Definition: libmwaw_internal.hxx:842
ClusterText & m_cluster
the cluster
Definition: RagTime5Text.cxx:309
Internal: the helper to read a clustList.
Definition: RagTime5Text.cxx:1196
void addDelimiter(long pos, char c)
adds a not breaking delimiter in position pos
Definition: MWAWDebug.cxx:73
a PLC of a RagTime5Text
Definition: RagTime5Text.cxx:70
ClustListParser(ClustListParser &orig)=delete
copy constructor, not implemented
MWAWVec2f m_dimensions
the attachment box
Definition: RagTime5Text.cxx:177
void setRelativePosition(AnchorTo anchor, XPos X=XLeft, YPos Y=YTop)
sets the relative position
Definition: MWAWPosition.hxx:237
TextCParser & operator=(TextCParser const &orig)=delete
copy operator (not implemented)
RagTime5ClusterManager::Link m_contentLink
the main content
Definition: RagTime5Text.cxx:212
Cluster(Type type)
constructor
Definition: RagTime5ClusterManager.hxx:279
std::shared_ptr< RagTime5ClusterManager::Cluster > getCluster() final
return the current cluster
Definition: RagTime5Text.cxx:1342
bool parseDataZone(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
parse a data block
Definition: RagTime5Text.cxx:1642
a small struct use to define a block of a RagTime5Text
Definition: RagTime5Text.cxx:124
Link m_link
the actual link
Definition: RagTime5ClusterManager.hxx:459
std::string m_kinds[2]
the zone types: normal and packing
Definition: RagTime5StructManager.hxx:132
std::vector< LinkPLC > m_linkPLCList
the link plc list
Definition: RagTime5Text.cxx:253
@ T_Unstructured
Definition: RagTime5StructManager.hxx:245
RagTime5Text & m_ragtimeParser
the main parser
Definition: RagTime5Text.cxx:307
std::shared_ptr< RagTime5TextInternal::State > m_state
the state
Definition: RagTime5Text.hxx:164
libmwaw::DebugFile & ascii()
returns the current ascii file
Definition: RagTime5StructManager.hxx:109
~BlockCellListParser() final
destructor
Definition: RagTime5Text.cxx:1319
Block()
constructor
Definition: RagTime5Text.cxx:126
RagTime5Text & operator=(RagTime5Text const &orig)=delete
static std::string printType(unsigned long fileType)
debug: print a file type
Definition: RagTime5Text.hxx:140
@ YCenter
Definition: MWAWPosition.hxx:57
small class use to define a embedded object
Definition: libmwaw_internal.hxx:467
a field of RagTime 5/6 structures
Definition: RagTime5StructManager.hxx:242
RagTime5ClusterManager::Link m_plcToStyleLink
the plc to text style link
Definition: RagTime5Text.cxx:220
bool checkClusterList(std::vector< RagTime5StructManager::ZoneLink > const &list)
check a cluster list
Definition: RagTime5Document.cxx:1117
bool m_isSent
true if the cluster was send
Definition: RagTime5ClusterManager.hxx:322
@ F_textList
Definition: RagTime5Text.cxx:1327
bool readLongList(RagTime5ClusterManager::Link const &link, std::vector< long > &list)
try to read/get the list of long of a L_LongList
Definition: RagTime5Document.cxx:914
virtual class use to parse the cluster data
Definition: RagTime5ClusterManager.hxx:381
int m_plcDefNumFree
the number of free block in the plc definition list
Definition: RagTime5Text.cxx:218
ClustListParser(RagTime5ClusterManager &clusterManager, std::string const &zoneName)
constructor
Definition: RagTime5Text.cxx:1198
BlockCellListParser()
constructor
Definition: RagTime5Text.cxx:1265
bool parseData(MWAWInputStreamPtr &input, long endPos, RagTime5Zone &, int, libmwaw::DebugStream &f) final
try to parse a data
Definition: RagTime5Text.cxx:1273
class to store the paragraph properties
Definition: MWAWParagraph.hxx:85
bool readTextSeparators(RagTime5Zone &zone, std::vector< int > &pos)
try to read the text separators
Definition: RagTime5Text.cxx:391
MWAWEntry m_entry
the zone entry
Definition: RagTime5StructManager.hxx:134
BlockCellListParser & operator=(BlockCellListParser &orig)=delete
copy operator, not implemented
bool parseZone(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f) final
parse a zone
Definition: RagTime5Text.cxx:1437
friend std::ostream & operator<<(std::ostream &o, Block const &block)
operator<<
Definition: RagTime5Text.cxx:135
virtual class use to parse the unstructured data
Definition: RagTime5StructManager.hxx:396
int numPages() const
returns the number of pages
Definition: RagTime5Text.cxx:365
MWAWBox2f m_dimension
the block dimension
Definition: RagTime5Text.cxx:149
RagTime5ClusterManager::Link m_indexLink
the index link
Definition: RagTime5Text.cxx:228
int m_id
the block id
Definition: RagTime5Text.cxx:145
DataParser(std::string const &zoneName)
constructor
Definition: RagTime5StructManager.cxx:61
std::shared_ptr< ClusterText > getTextCluster()
return the text cluster
Definition: RagTime5Text.cxx:1347
TextCParser(TextCParser const &orig)=delete
copy constructor (not implemented)
RagTime5Text(RagTime5Text const &orig)=delete
~TextCParser() final
destructor
Definition: RagTime5Text.cxx:2430
void addNote(char const *note)
adds a note in the file, in actual position
Definition: MWAWDebug.cxx:59
@ F_block
Definition: RagTime5Text.cxx:1327
bool parseZoneBlock(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
parse a zone block
Definition: RagTime5Text.cxx:2334
abstract class used to store a subdocument (with a comparison function)
Definition: MWAWSubDocument.hxx:42
Internal: the structures of a RagTime5Text.
Definition: RagTime5Text.cxx:68
@ T_FieldList
Definition: RagTime5StructManager.hxx:244
@ C_PictureZone
Definition: RagTime5ClusterManager.hxx:268
PLC()
constructor
Definition: RagTime5Text.cxx:72
basic class used to manage RagTime 5/6 zones
Definition: RagTime5ClusterManager.hxx:59
MWAWVec2i m_footnotePositions
the footnote data
Definition: RagTime5Text.cxx:179
bool readChildList(RagTime5ClusterManager::Link const &link, std::vector< RagTime5StructManager::ZoneLink > &childList, bool findN=false)
try to read a cluster child list
Definition: RagTime5Document.cxx:1073
LinkPLC()
constructor
Definition: RagTime5Text.cxx:159
@ F_textDefs
Definition: RagTime5Text.cxx:1327
MWAWParserStatePtr m_parserState
the parser state
Definition: RagTime5Text.hxx:161
std::vector< Block > m_blockList
the list of block
Definition: RagTime5Text.cxx:1311
basic class used to read/store RagTime 5/6 styles
Definition: RagTime5StyleManager.hxx:61
@ BookmarkEnd
Definition: libmwaw_internal.hxx:401
bool parseData(MWAWInputStreamPtr &input, long endPos, RagTime5Zone &, int, libmwaw::DebugStream &f) final
try to parse a data
Definition: RagTime5Text.cxx:1213
std::multimap< int, int > m_posToStyleIdMap
position to plc map
Definition: RagTime5Text.cxx:251
MWAWVec2f const & size() const
returns the frame size
Definition: MWAWPosition.hxx:135
@ F_unknLongs
Definition: RagTime5Text.cxx:1327
BlockCellListParser(BlockCellListParser &orig)=delete
copy constructor, not implemented
int m_N
the number of data ( or some flag if m_N & 0x8020)
Definition: RagTime5ClusterManager.hxx:212
a link to a name zone in RagTime 5/6 documents
Definition: RagTime5ClusterManager.hxx:222
the main class to read a RagTime v5 file
Definition: RagTime5Document.hxx:77
SubDocumentType
Definition: libmwaw_internal.hxx:188
@ F_parentLink
Definition: RagTime5Text.cxx:1327
std::vector< RagTime5StructManager::ZoneLink > m_childList
list of child
Definition: RagTime5Text.cxx:245
Internal: the state of a RagTime5Text.
Definition: RagTime5Text.cxx:264
std::shared_ptr< MWAWSpreadsheetListener > MWAWSpreadsheetListenerPtr
a smart pointer of MWAWSpreadsheetListener
Definition: libmwaw_internal.hxx:563
This class contents the main functions needed to create a spreadsheet processing Document.
Definition: MWAWSpreadsheetListener.hxx:66
bool operator!=(MWAWSubDocument const &doc) const final
operator!=
Definition: RagTime5Text.cxx:330
MWAWVec2i m_positions
the position in the text
Definition: RagTime5Text.cxx:173
bool empty() const
returns true if all link are empty
Definition: RagTime5ClusterManager.hxx:133
static std::string printType(unsigned long fileType)
debug: print a file type
Definition: RagTime5StructManager.cxx:94
std::string m_data
the database/link field ( if defined ) or the bookmark name
Definition: libmwaw_internal.hxx:426
SubDocument(RagTime5Text &parser, MWAWInputStreamPtr const &input, RagTime5TextInternal::ClusterText &cluster, RagTime5Zone &dataZone, size_t firstChar, size_t lastChar)
Definition: RagTime5Text.cxx:285
int m_plcDefFreeBegin
the plc first free block in the plc definition list
Definition: RagTime5Text.cxx:216
std::string getKindLastPart(bool main=true) const
returns the main type
Definition: RagTime5StructManager.hxx:83
Class to define the position of an object (textbox, picture, ..) in the document.
Definition: MWAWPosition.hxx:48
int m_dataId
the actual zone id
Definition: RagTime5ClusterManager.hxx:457
@ F_plcToStyle
Definition: RagTime5Text.cxx:1327
bool getBinaryResult(MWAWEmbeddedObject &object)
return the final spreadsheet
Definition: MWAWSpreadsheetEncoder.cxx:77
int m_position
the position in the text
Definition: RagTime5Text.cxx:116
bool m_hiLoEndian
the cluster hiLo endian
Definition: RagTime5ClusterManager.hxx:302
main zone in a RagTime v5-v6 document
Definition: RagTime5StructManager.hxx:51
std::vector< std::vector< Block > > m_blockList
list of block (defined in header)
Definition: RagTime5Text.cxx:241
bool readPLC(RagTime5TextInternal::ClusterText &cluster, int zoneId)
try to read a list of PLC
Definition: RagTime5Text.cxx:663
@ C_TextZone
Definition: RagTime5ClusterManager.hxx:268
Internal: the subdocument of a RagTime5Text.
Definition: RagTime5Text.cxx:282
bool getBinaryResult(MWAWEmbeddedObject &result)
return the final graphic
Definition: MWAWGraphicEncoder.cxx:77
@ F_unknData
Definition: RagTime5Text.cxx:1327
long length() const
returns the length of the zone
Definition: MWAWEntry.hxx:93
int m_fileType
the file type
Definition: RagTime5Text.cxx:118
int m_what
the plc type 0:attachment, 1:item(list item), 2:unknown, 3:index, 4:formula(page number,...
Definition: RagTime5Text.cxx:169
bool parseField(RagTime5StructManager::Field const &field, int, libmwaw::DebugStream &f) final
parse a field
Definition: RagTime5Text.cxx:1462
MWAWInputStreamPtr getInput()
returns the current input
Definition: RagTime5StructManager.hxx:94
a class which stores section properties
Definition: MWAWSection.hxx:46
bool readListZone(RagTime5ClusterManager::Link const &link)
try to read a list zone
Definition: RagTime5Document.cxx:1585
long begin() const
returns the begin offset
Definition: MWAWEntry.hxx:83
@ BookmarkStart
Definition: libmwaw_internal.hxx:401
int m_numPages
the number of pages
Definition: RagTime5Text.cxx:273
std::vector< long > m_longList
a list of long used to store decal
Definition: RagTime5ClusterManager.hxx:218
@ F_text
Definition: RagTime5Text.cxx:1327
MWAWBox2< float > MWAWBox2f
MWAWBox2 of float.
Definition: libmwaw_internal.hxx:1193
RagTime5ClusterManager::Link m_textIntListLink
list of a int link with size 2(only v6.6)
Definition: RagTime5Text.cxx:232
RagTime5Zone & m_dataZone
the data zone
Definition: RagTime5Text.cxx:311
@ F_indexList
Definition: RagTime5Text.cxx:1327
RagTime5ClusterManager::Link m_footnoteLink
the footnote link
Definition: RagTime5Text.cxx:226
low level: the text cluster of a RagTime5Text
Definition: RagTime5Text.cxx:183
int version() const
returns the file version
Definition: RagTime5Text.cxx:360
a small struct used to store link plc data: footnote, index, ...
Definition: RagTime5Text.cxx:157
std::shared_ptr< RagTime5StyleManager > m_styleManager
the style manager
Definition: RagTime5Text.hxx:159
a field
Definition: libmwaw_internal.hxx:399
std::shared_ptr< RagTime5Zone > getDataZone(int dataId) const
returns the zone corresponding to a data id (or 0)
Definition: RagTime5Document.cxx:465
@ F_footnote
Definition: RagTime5Text.cxx:1327
libmwaw::DebugFile & m_asciiFile
the ascii file
Definition: RagTime5Text.cxx:2422
@ T_2Long
Definition: RagTime5StructManager.hxx:244
the main class to read the text part of RagTime 56 file
Definition: RagTime5Text.hxx:76
std::vector< int > m_clusterList
the list of read cluster
Definition: RagTime5Text.cxx:1248
RagTime5ClusterManager & m_clusterManager
the main zone manager
Definition: RagTime5Text.cxx:1251
std::shared_ptr< RagTime5ClusterManager::Cluster > readTextCluster(RagTime5Zone &zone, int zoneType)
try to read a text cluster
Definition: RagTime5Text.cxx:2436
int m_value
an unknown value
Definition: RagTime5Text.cxx:120
long end() const
returns the end offset
Definition: MWAWEntry.hxx:88
main class used to define store librevenge::RVNGDrawingInterface lists of command in a librevenge::RV...
Definition: MWAWGraphicEncoder.hxx:56
~ClusterText() final
destructor
Definition: RagTime5Text.cxx:258
std::shared_ptr< ClusterText > m_cluster
the current cluster
Definition: RagTime5Text.cxx:2414
@ L_List
Definition: RagTime5ClusterManager.hxx:117
RagTime5ClusterManager::Link m_linkDefs[5]
the list of link zone
Definition: RagTime5Text.cxx:230
Internal: the helper to read a block 2 list.
Definition: RagTime5Text.cxx:1263
std::vector< int > m_separators
the separators
Definition: RagTime5Text.cxx:249
std::map< int, size_t > m_NToBlockIdMap
the field pos to block map
Definition: RagTime5Text.cxx:2418
int m_zoneId
the zone id
Definition: RagTime5ClusterManager.hxx:300
int m_subId
the block sub id
Definition: RagTime5Text.cxx:147
std::string m_fieldName
the actual field name
Definition: RagTime5Text.cxx:2420
void flushExtra(bool onlyCheck=false)
sends the data which have not yet been sent to the listener
Definition: RagTime5Text.cxx:824
std::multimap< int, size_t > m_posToLinkIdMap
position to link data map
Definition: RagTime5Text.cxx:255
TextCParser(RagTime5ClusterManager &parser, int type, libmwaw::DebugFile &ascii)
constructor
Definition: RagTime5Text.cxx:1330
size_t m_lastChar
the last char
Definition: RagTime5Text.cxx:315
@ F_nextId
Definition: RagTime5Text.cxx:1327
friend std::ostream & operator<<(std::ostream &o, PLC const &plc)
operator<<
Definition: RagTime5Text.cxx:79
@ F_linkDefs
Definition: RagTime5Text.cxx:1327
int m_id
an identifier
Definition: RagTime5Text.cxx:175
std::shared_ptr< RagTime5StructManager > m_structManager
the structure manager
Definition: RagTime5Text.hxx:157
@ Page
Definition: MWAWPosition.hxx:51
RagTime5Text(RagTime5Document &doc)
constructor
Definition: RagTime5Text.cxx:348
@ T_LongList
Definition: RagTime5StructManager.hxx:244
bool parseHeaderZone(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
parse the header zone
Definition: RagTime5Text.cxx:2113
std::shared_ptr< MWAWParserState > MWAWParserStatePtr
a smart pointer of MWAWParserState
Definition: libmwaw_internal.hxx:557
@ C_SpreadsheetZone
Definition: RagTime5ClusterManager.hxx:268
main class used to define store librevenge::RVNGSpreadsheetInterface lists of command in a librevenge...
Definition: MWAWSpreadsheetEncoder.hxx:56
void addPos(long pos)
adds a new position in the file
Definition: MWAWDebug.cxx:53
std::string getClusterDebugName(int id)
returns "data"+id+"A" ( followed by the cluster type and name if know)
Definition: RagTime5ClusterManager.cxx:230
std::shared_ptr< RagTime5ClusterManager > getClusterManager()
returns the cluster manager
Definition: RagTime5Document.cxx:395
bool valid() const
returns true if the zone length is positive
Definition: MWAWEntry.hxx:99
basic class used to store RagTime 5/6 structures
Definition: RagTime5StructManager.hxx:175
virtual ~RagTime5Text()
destructor
Definition: RagTime5Text.cxx:357
int m_ids[3]
the zone id
Definition: RagTime5StructManager.hxx:140
Defines MWAWSpreadsheetListener: the libmwaw spreadsheet processor listener.
a link to a small zone (or set of zones) in RagTime 5/6 documents
Definition: RagTime5ClusterManager.hxx:113
ClustListParser & operator=(ClustListParser &orig)=delete
copy operator, not implemented
an interface used to insert comment in a binary file, written in ascii form (if debug_with_files is n...
Definition: MWAWDebug.hxx:66
the cluster data
Definition: RagTime5ClusterManager.hxx:261
@ XLeft
Definition: MWAWPosition.hxx:55
namespace used to regroup all libwpd functions, enumerations which we have redefined for internal usa...
Definition: libmwaw_internal.cxx:51
RagTime5ClusterManager::Link m_unknownLink[3]
list of unknown link: the three unkndata+2-3 links and the header link3 link
Definition: RagTime5Text.cxx:236
std::vector< RagTime5ClusterManager::Link > m_unknownLinks1
list of unkndata1 links
Definition: RagTime5Text.cxx:234
std::vector< Block > m_blockCellList
list of block (defined in blockCell list)
Definition: RagTime5Text.cxx:243
std::shared_ptr< MWAWListener > MWAWListenerPtr
a smart pointer of MWAWListener
Definition: libmwaw_internal.hxx:553
void parse(MWAWListenerPtr &listener, libmwaw::SubDocumentType type) final
the parser function
Definition: RagTime5Text.cxx:318
AnchorTo m_anchorTo
anchor position
Definition: MWAWPosition.hxx:270
bool send(int zoneId, MWAWListenerPtr listener, int partId=0, int cellId=0, double totalWidth=-1)
try to send the cluster zone
Definition: RagTime5Text.cxx:372
Class to store font.
Definition: MWAWFont.hxx:44
int m_uniqueIndexId
an int used to create unique index id
Definition: RagTime5Text.cxx:277
RagTime5ClusterManager::Link m_blockCellToPlcLink
the blockCell to plc link
Definition: RagTime5Text.cxx:222
bool readUnicodeStringList(RagTime5ClusterManager::NameLink const &link, std::map< int, librevenge::RVNGString > &idToStringMap)
try to read a list of unicode string zone
Definition: RagTime5Document.cxx:843
std::string m_extra
extra data
Definition: RagTime5Text.cxx:153
bool readPLCToCharStyle(RagTime5TextInternal::ClusterText &cluster)
try to read a plc id to char style correspondance
Definition: RagTime5Text.cxx:742
int m_type
the file type
Definition: RagTime5Text.cxx:171
bool readFixedSizeZone(RagTime5ClusterManager::Link const &link, std::string const &name)
try to read a fixed size zone
Definition: RagTime5Document.cxx:1658
std::string getClusterDebugName(int id) const
returns a name which can be used to debugging
Definition: RagTime5Text.cxx:1207
RagTime5ClusterManager::Link m_plcDefLink
the plc definition link
Definition: RagTime5Text.cxx:214
bool send(int zoneId, MWAWListenerPtr listener, MWAWPosition const &pos, int partId=0, int cellId=0, double totalWidth=-1)
try to send a cluster zone (mainly unimplemented)
Definition: RagTime5Document.cxx:2609
~SubDocument() final
destructor
Definition: RagTime5Text.cxx:297
low level: parser of text cluster
Definition: RagTime5Text.cxx:1326
static bool readDataIdList(MWAWInputStreamPtr input, int n, std::vector< int > &listIds)
try to read n data id
Definition: RagTime5StructManager.cxx:332
std::stringstream DebugStream
a basic stream (if debug_with_files is not defined, does nothing)
Definition: MWAWDebug.hxx:61
std::map< int, std::shared_ptr< ClusterText > > m_idTextMap
map data id to text zone
Definition: RagTime5Text.cxx:275
int m_plc[2]
the list of zone plc (first-end)
Definition: RagTime5Text.cxx:151
std::string m_name
the link name
Definition: RagTime5ClusterManager.hxx:208
This class contains the code needed to create Graphic document.
Definition: MWAWGraphicListener.hxx:60
ClusterParser(RagTime5ClusterManager &parser, int type, std::string const &zoneName)
constructor
Definition: RagTime5ClusterManager.hxx:383
@ C_Unknown
Definition: RagTime5ClusterManager.hxx:276
int m_fieldSize
the field size
Definition: RagTime5ClusterManager.hxx:214
std::map< int, int > m_expectedIdToType
the expected id
Definition: RagTime5Text.cxx:2416
State()
constructor
Definition: RagTime5Text.cxx:266
Generated on Fri Sep 18 2020 18:14:52 for libmwaw by
doxygen 1.8.20