FullWrtText.hxx Source File documentation

FullWrtText.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; c-default-style: "k&r"; indent-tabs-mode: nil; tab-width: 2; c-basic-offset: 2 -*- */
2
3 /* libmwaw
4 * Version: MPL 2.0 / LGPLv2+
5 *
6 * The contents of this file are subject to the Mozilla Public License Version
7 * 2.0 (the "License"); you may not use this file except in compliance with
8 * the License or as specified alternatively below. You may obtain a copy of
9 * the License at http://www.mozilla.org/MPL/
10 *
11 * Software distributed under the License is distributed on an "AS IS" basis,
12 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13 * for the specific language governing rights and limitations under the
14 * License.
15 *
16 * Major Contributor(s):
17 * Copyright (C) 2002 William Lachance (wrlach@gmail.com)
18 * Copyright (C) 2002,2004 Marc Maurer (uwog@uwog.net)
19 * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
20 * Copyright (C) 2006, 2007 Andrew Ziem
21 * Copyright (C) 2011, 2012 Alonso Laurent (alonso@loria.fr)
22 *
23 *
24 * All Rights Reserved.
25 *
26 * For minor contributions see the git repository.
27 *
28 * Alternatively, the contents of this file may be used under the terms of
29 * the GNU Lesser General Public License Version 2 or later (the "LGPLv2+"),
30 * in which case the provisions of the LGPLv2+ are applicable
31 * instead of those above.
32 */
33
34 /*
35 * Parser to FullWrite text document
36 *
37 */
38 #ifndef FULL_WRT_TEXT
39 # define FULL_WRT_TEXT
40
41 #include "libmwaw_internal.hxx"
42
43
44 #include "MWAWDebug.hxx"
45
46 #include "FullWrtStruct.hxx"
47
48 namespace FullWrtTextInternal
49 {
50 struct Font;
51 struct Paragraph;
52
53 struct LineHeader;
54 struct Zone;
55
56 struct State;
57 }
58
59 class FullWrtParser;
60
66 class FullWrtText
67 {
68 friend class FullWrtParser;
69 public:
71 explicit FullWrtText(FullWrtParser &parser);
73 virtual ~FullWrtText();
74
76 int version() const;
77
79 int numPages() const;
80
81 protected:
82
84 void flushExtra();
85
87 bool sendMainText();
89 int getHeaderFooterId(bool header, int page, int &numSimillar) const;
90
92 bool send(int zId, MWAWColor fontColor=MWAWColor::black());
93
94 //
95 // intermediate level
96 //
97
99 bool readTextData(FullWrtStruct::EntryPtr zone);
100
102 bool send(std::shared_ptr<FullWrtTextInternal::Zone> zone, MWAWColor fontColor=MWAWColor::black());
103
105 void send(std::shared_ptr<FullWrtTextInternal::Zone> zone, int numChar,
106 FullWrtTextInternal::Font &font, FullWrtTextInternal::Paragraph &ruler,
107 std::string &str);
108
110 bool sendTable(std::shared_ptr<FullWrtTextInternal::Zone> zone,
111 FullWrtTextInternal::LineHeader const &lHeader,
112 FullWrtTextInternal::Font &font, FullWrtTextInternal::Paragraph &ruler,
113 std::string &str);
115 bool sendHiddenItem(int id, FullWrtTextInternal::Font &font, FullWrtTextInternal::Paragraph &ruler);
116
118 void prepareData()
119 {
120 sortZones();
121 createItemStructures();
122 }
123
125 void sortZones();
127 void createItemStructures();
128
129 //
130 // low level
131 //
132
134 bool readLineHeader(std::shared_ptr<FullWrtTextInternal::Zone> zone, FullWrtTextInternal::LineHeader &lHeader);
135
137 bool readItem(FullWrtStruct::EntryPtr zone, int id=-1, bool hidden=false);
138
140 bool readParagraphTabs(FullWrtStruct::EntryPtr zone, int id=-1);
142 bool readParaModDocInfo(FullWrtStruct::EntryPtr zone);
143
145 bool readStyle(FullWrtStruct::EntryPtr zone);
146
148 bool readDataMod(FullWrtStruct::EntryPtr zone, int id);
149
151 bool readColumns(FullWrtStruct::EntryPtr zone);
152
153 private:
154 FullWrtText(FullWrtText const &orig) = delete;
155 FullWrtText &operator=(FullWrtText const &orig) = delete;
156
157 protected:
158 //
159 // data
160 //
162 MWAWParserStatePtr m_parserState;
163
165 std::shared_ptr<FullWrtTextInternal::State> m_state;
166
168 FullWrtParser *m_mainParser;
169 };
170 #endif
171 // vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
MWAWTextListenerPtr
std::shared_ptr< MWAWTextListener > MWAWTextListenerPtr
a smart pointer of MWAWTextListener
Definition: libmwaw_internal.hxx:567
FullWrtTextInternal::Item::m_childList
std::vector< int > m_childList
the list of childlist
Definition: FullWrtText.cxx:200
MWAWParagraph::m_justify
MWAWVariable< Justification > m_justify
the justification
Definition: MWAWParagraph.hxx:167
MWAWInputStreamPtr
std::shared_ptr< MWAWInputStream > MWAWInputStreamPtr
a smart pointer of MWAWInputStream
Definition: libmwaw_internal.hxx:551
FullWrtText::sendMainText
bool sendMainText()
send a main zone
Definition: FullWrtText.cxx:2441
FullWrtParser::sendReference
void sendReference(int docId)
try to send a reference, in pratice do nothing
Definition: FullWrtParser.cxx:1929
FullWrtTextInternal::Item::m_collapsed
bool m_collapsed
true if the item is hidden
Definition: FullWrtText.cxx:196
MWAWFont::set
void set(Script const &newscript)
sets the script position
Definition: MWAWFont.hxx:314
MWAWFont::setUnderlineType
void setUnderlineType(Line::Type type=Line::Single)
sets the underline type
Definition: MWAWFont.hxx:474
FullWrtText::readParagraphTabs
bool readParagraphTabs(FullWrtStruct::EntryPtr zone, int id=-1)
check if the input of the zone points to a paragraph zone in DataStruct Zone
Definition: FullWrtText.cxx:2117
FullWrtTextInternal::Zone::m_extra
std::string m_extra
the extra data ( for debugging )
Definition: FullWrtText.cxx:472
FullWrtTextInternal::Zone
Internal: class to store a text zone.
Definition: FullWrtText.cxx:387
MWAWFont::smallCapsBit
@ smallCapsBit
Definition: MWAWFont.hxx:192
MWAWTabStop::m_leaderCharacter
uint16_t m_leaderCharacter
the leader char
Definition: MWAWParagraph.hxx:78
FullWrtText::readTextData
bool readTextData(FullWrtStruct::EntryPtr zone)
check if a zone is a text zone, if so read it...
Definition: FullWrtText.cxx:1645
FullWrtTextInternal::Item::Item
Item()
constructor
Definition: FullWrtText.cxx:156
MWAW_DEBUG_MSG
#define MWAW_DEBUG_MSG(M)
Definition: libmwaw_internal.hxx:129
FullWrtTextInternal::Paragraph::m_border
FullWrtStruct::Border m_border
the actual border
Definition: FullWrtText.cxx:650
MWAWVec2f
MWAWVec2< float > MWAWVec2f
MWAWVec2 of float.
Definition: libmwaw_internal.hxx:842
FullWrtTextInternal::ParaModifier::m_afterSpacing
float m_afterSpacing
the after spacing ( negative in point, positive in percent )
Definition: FullWrtText.cxx:87
MWAWVariable< double >
MWAWListener::ColumnBreak
@ ColumnBreak
Definition: MWAWListener.hxx:58
FullWrtText::sendTable
bool sendTable(std::shared_ptr< FullWrtTextInternal::Zone > zone, FullWrtTextInternal::LineHeader const &lHeader, FullWrtTextInternal::Font &font, FullWrtTextInternal::Paragraph &ruler, std::string &str)
try send a table row
Definition: FullWrtText.cxx:1214
FullWrtTextInternal::Font::update
void update()
update the font using the modifier
Definition: FullWrtText.cxx:234
libmwaw::DebugFile::addDelimiter
void addDelimiter(long pos, char c)
adds a not breaking delimiter in position pos
Definition: MWAWDebug.cxx:73
FullWrtTextInternal::Zone::m_end
long m_end
the end of the text data
Definition: FullWrtText.cxx:462
FullWrtText::readParaModDocInfo
bool readParaModDocInfo(FullWrtStruct::EntryPtr zone)
try to read the paragraph modifier (at the end of doc info)
Definition: FullWrtText.cxx:2325
FullWrtTextInternal::Paragraph::setInterlineSpacing
void setInterlineSpacing(double spacing, librevenge::RVNGUnit unit)
set the interline spacing
Definition: FullWrtText.cxx:520
MWAWParagraph::m_tabs
MWAWVariable< std::vector< MWAWTabStop > > m_tabs
the tabulations
Definition: MWAWParagraph.hxx:162
FullWrtTextInternal::ParaModifier
Internal: class to store a para modifier with appear in docInfo.
Definition: FullWrtText.cxx:62
FullWrtStruct::Border::m_backColor
MWAWColor m_backColor
the back color (used for layout )
Definition: FullWrtStruct.hxx:97
FullWrtText::m_mainParser
FullWrtParser * m_mainParser
the main parser;
Definition: FullWrtText.hxx:168
MWAWCell::setPosition
void setPosition(MWAWVec2i posi)
set the cell positions : 0,0 -> A1, 0,1 -> A2
Definition: MWAWCell.hxx:189
FullWrtTextInternal::State
Internal: the state of a FullWrtText.
Definition: FullWrtText.cxx:669
libmwaw::DOC_COMMENT_ANNOTATION
@ DOC_COMMENT_ANNOTATION
Definition: libmwaw_internal.hxx:188
FullWrtTextInternal::Paragraph::setSpacings
void setSpacings(double spacing, bool before)
set the before/after spacing ( negative in point, positive in percent )
Definition: FullWrtText.cxx:527
MWAWFont::Script::sub100
static Script sub100()
return a yposition which correspond to a basic subscript100
Definition: MWAWFont.hxx:125
MWAWFont::id
int id() const
returns the font id
Definition: MWAWFont.hxx:259
MWAWFont::boldBit
@ boldBit
Definition: MWAWFont.hxx:190
FullWrtTextInternal::Zone::Normal
@ Normal
Definition: FullWrtText.cxx:389
MWAWTable.hxx
MWAWFont::setColor
void setColor(MWAWColor color)
sets the font color
Definition: MWAWFont.hxx:341
FullWrtTextInternal::Zone::ZoneType
ZoneType
the zone type
Definition: FullWrtText.cxx:389
MWAWTabStop::CENTER
@ CENTER
Definition: MWAWParagraph.hxx:48
FullWrtTextInternal::Zone::m_flags
int m_flags[2]
the zone flags, header|footer, normal|extra
Definition: FullWrtText.cxx:466
MWAWParagraph::setInterline
void setInterline(double value, librevenge::RVNGUnit unit, LineSpacingType type=Fixed)
set the interline
Definition: MWAWParagraph.hxx:129
FullWrtTextInternal::ColumnInfo
Internal: class to store a ColumnInfo.
Definition: FullWrtText.cxx:313
FullWrtTextInternal::ColumnInfo::m_box
MWAWBox2i m_box
the bdbox
Definition: FullWrtText.cxx:332
FullWrtTextInternal::Font::m_font
MWAWFont m_font
the font
Definition: FullWrtText.cxx:223
FullWrtTextInternal::DataModifier
Internal: class to store a font/para modifier with appear in text data.
Definition: FullWrtText.cxx:93
MWAWFontConverter.hxx
MWAWColor
the class to store a color
Definition: libmwaw_internal.hxx:192
FullWrtTextInternal::ParaModifier::ParaModifier
ParaModifier()
constructor
Definition: FullWrtText.cxx:64
FullWrtTextInternal::LineHeader::operator<<
friend std::ostream & operator<<(std::ostream &o, LineHeader const &line)
operator<<
Definition: FullWrtText.cxx:286
FullWrtTextInternal::PageInfo::getSection
MWAWSection getSection() const
return a section
Definition: FullWrtText.cxx:360
MWAWParagraph::m_spacings
MWAWVariable< double > m_spacings[3]
the line spacing
Definition: MWAWParagraph.hxx:156
FullWrtStruct::Border
Internal: class to store a border which appear in docInfo.
Definition: FullWrtStruct.hxx:60
FullWrtTextInternal::State::m_entryMap
std::multimap< int, std::shared_ptr< Zone > > m_entryMap
zoneId -> entry
Definition: FullWrtText.cxx:688
FullWrtTextInternal::Item::operator<<
friend std::ostream & operator<<(std::ostream &o, Item const &it)
operator<<
Definition: FullWrtText.cxx:176
FullWrtTextInternal::DataModifier::getDocParaId
int getDocParaId() const
returns the document extra id
Definition: FullWrtText.cxx:117
MWAWParagraph::JustificationFullAllLines
@ JustificationFullAllLines
Definition: MWAWParagraph.hxx:91
FullWrtTextInternal::Item::label
std::string label() const
return a value which can be used to represent the label(changme)
Definition: FullWrtText.cxx:168
FullWrtTextInternal::DataModifier::DataModifier
DataModifier()
constructor
Definition: FullWrtText.cxx:95
MWAWFont::outlineBit
@ outlineBit
Definition: MWAWFont.hxx:191
FullWrtStruct::Border::m_color
MWAWColor m_color[2]
the colors line + ?
Definition: FullWrtStruct.hxx:103
MWAWFont::setOverlineStyle
void setOverlineStyle(Line::Style style=Line::None, bool doReset=true)
sets the overline style ( by default, we also reset the style)
Definition: MWAWFont.hxx:388
FullWrtTextInternal::Font::m_state
bool m_state[128]
the rendering state
Definition: FullWrtText.cxx:225
MWAWParagraph
class to store the paragraph properties
Definition: MWAWParagraph.hxx:84
FullWrtTextInternal::Item
Internal: class to store an item state.
Definition: FullWrtText.cxx:152
FullWrtTextInternal::LineHeader
Internal: class to store the LineHeader.
Definition: FullWrtText.cxx:267
FullWrtTextInternal::Item::m_hiddenZone
std::shared_ptr< Zone > m_hiddenZone
the hidden item zone
Definition: FullWrtText.cxx:202
MWAWFont::Line::Simple
@ Simple
Definition: MWAWFont.hxx:49
FullWrtTextInternal::Font::m_defModifier
bool m_defModifier
a flag to know if the data modifier is default
Definition: FullWrtText.cxx:229
FullWrtStruct::Border::m_type
int m_type[3]
the type (border, horizontal and vertical separators)
Definition: FullWrtStruct.hxx:91
MWAWBorder::m_width
double m_width
the border total width in point
Definition: libmwaw_internal.hxx:387
FullWrtTextInternal::Paragraph::m_isSent
bool m_isSent
a flag to know if the parser is send or not
Definition: FullWrtText.cxx:660
FullWrtTextInternal::LineHeader::m_height
float m_height
the line height in point ( if known)
Definition: FullWrtText.cxx:304
FullWrtStruct::Border::getParagraphBorders
std::vector< MWAWVariable< MWAWBorder > > getParagraphBorders() const
returns the list of border order MWAWBorder::Pos
Definition: FullWrtStruct.cxx:224
FullWrtTextInternal::LineHeader::height
float height() const
try to find the line height using m_height or m_prevHeight
Definition: FullWrtText.cxx:280
FullWrtTextInternal::Zone::Main
@ Main
Definition: FullWrtText.cxx:389
FullWrtTextInternal::DataModifier::m_color
MWAWColor m_color
the color
Definition: FullWrtText.cxx:142
FullWrtTextInternal::DataModifier::getSub
float getSub() const
returns the sub value ( negative in pt, position in li)
Definition: FullWrtText.cxx:107
libmwaw::DebugFile::addNote
void addNote(char const *note)
adds a note in the file, in actual position
Definition: MWAWDebug.cxx:59
MWAWFont::setDeltaLetterSpacing
void setDeltaLetterSpacing(float d, librevenge::RVNGUnit unit=librevenge::RVNG_POINT)
sets the letter spacing ( delta value in point )
Definition: MWAWFont.hxx:292
FullWrtTextInternal::State::m_numPages
int m_numPages
Definition: FullWrtText.cxx:701
MWAWParagraph::m_margins
MWAWVariable< double > m_margins[3]
the margins
Definition: MWAWParagraph.hxx:148
MWAWTabStop::DECIMAL
@ DECIMAL
Definition: MWAWParagraph.hxx:48
FullWrtTextInternal::LineHeader::m_font
MWAWFont m_font
the font
Definition: FullWrtText.cxx:300
FullWrtText::operator=
FullWrtText & operator=(FullWrtText const &orig)=delete
FullWrtText::createItemStructures
void createItemStructures()
create the item structures
Definition: FullWrtText.cxx:2551
FullWrtParser::getNumDocZoneStruct
int getNumDocZoneStruct() const
returns the number of zone struct
Definition: FullWrtParser.cxx:361
FullWrtTextInternal::LineHeader::LineHeader
LineHeader()
Constructor.
Definition: FullWrtText.cxx:269
FullWrtTextInternal::Zone::operator<<
friend std::ostream & operator<<(std::ostream &o, Zone const &z)
operator<<
Definition: FullWrtText.cxx:404
MWAWFont::Script::super100
static Script super100()
return a yposition which correspond to a basic superscript100
Definition: MWAWFont.hxx:135
FullWrtTextInternal::PageInfo::m_page
int m_page
the pages
Definition: FullWrtText.cxx:381
MWAWFont::uppercaseBit
@ uppercaseBit
Definition: MWAWFont.hxx:192
MWAWCell.hxx
MWAWTable::TableDimBit
@ TableDimBit
Definition: MWAWTable.hxx:56
FullWrtTextInternal::State::m_actualPage
int m_actualPage
Definition: FullWrtText.cxx:701
FullWrtText::prepareData
void prepareData()
prepare the different data (called sortZones and createItemStructures)
Definition: FullWrtText.hxx:118
FullWrtTextInternal::ColumnInfo::ColumnInfo
ColumnInfo()
Definition: FullWrtText.cxx:314
MWAWTabStop
class to store a tab use by MWAWParagraph
Definition: MWAWParagraph.hxx:46
MWAWFont::setStrikeOutStyle
void setStrikeOutStyle(Line::Style style=Line::None, bool doReset=true)
sets the strikeoutline style ( by default, we also reset the style)
Definition: MWAWFont.hxx:427
FullWrtTextInternal::Font
Internal: class to store a font and it state.
Definition: FullWrtText.cxx:210
MWAWVariable::isSet
bool isSet() const
return true if the variable is set
Definition: libmwaw_internal.hxx:635
FullWrtTextInternal::Paragraph::m_interSpacingUnit
librevenge::RVNGUnit m_interSpacingUnit
the spacing unit
Definition: FullWrtText.cxx:644
FullWrtTextInternal::ParaModifier::operator<<
friend std::ostream & operator<<(std::ostream &o, ParaModifier const &p)
operator<<
Definition: FullWrtText.cxx:71
FullWrtTextInternal::PageInfo::isSimilar
bool isSimilar(PageInfo const &p) const
returns true if the page has same color position
Definition: FullWrtText.cxx:345
MWAWParagraph::m_borders
std::vector< MWAWVariable< MWAWBorder > > m_borders
list of border ( order MWAWBorder::Pos)
Definition: MWAWParagraph.hxx:186
libmwaw::SubDocumentType
SubDocumentType
Definition: libmwaw_internal.hxx:188
FullWrtTextInternal::State::m_version
int m_version
the file version
Definition: FullWrtText.cxx:685
FullWrtTextInternal::PageInfo
Definition: FullWrtText.cxx:337
FullWrtParser::newPage
void newPage(int number)
adds a new page
Definition: FullWrtParser.cxx:337
FullWrtTextInternal::DataModifier::getBorderId
int getBorderId() const
returns the border id
Definition: FullWrtText.cxx:112
FullWrtTextInternal::Paragraph::m_actCol
int m_actCol
the index of the actual column to send
Definition: FullWrtText.cxx:658
FullWrtText::readColumns
bool readColumns(FullWrtStruct::EntryPtr zone)
check if the input of the zone points to the columns definition, ...
Definition: FullWrtText.cxx:2394
FullWrtText
the main class to read the text part of writenow file
Definition: FullWrtText.hxx:66
MWAWParagraph::JustificationCenter
@ JustificationCenter
Definition: MWAWParagraph.hxx:90
FullWrtParser::sendGraphic
void sendGraphic(int docId)
try to send a graphic
Definition: FullWrtParser.cxx:373
FullWrtTextInternal::Item::Child
@ Child
Definition: FullWrtText.cxx:154
FullWrtParser
the main class to read a FullWrite file
Definition: FullWrtParser.hxx:66
MWAWFont::Line::None
@ None
Definition: MWAWFont.hxx:49
MWAWFont::shadowBit
@ shadowBit
Definition: MWAWFont.hxx:191
FullWrtText.hxx
FullWrtTextInternal::Paragraph::Paragraph
Paragraph()
Constructor.
Definition: FullWrtText.cxx:478
MWAWParagraph.hxx
FullWrtText::m_state
std::shared_ptr< FullWrtTextInternal::State > m_state
the state
Definition: FullWrtText.hxx:165
FullWrtTextInternal::Paragraph::~Paragraph
~Paragraph() final
destructor
Definition: FullWrtText.cxx:663
libmwaw_internal.hxx
MWAWParagraph::m_backgroundColor
MWAWVariable< MWAWColor > m_backgroundColor
the background color
Definition: MWAWParagraph.hxx:183
FullWrtText::readLineHeader
bool readLineHeader(std::shared_ptr< FullWrtTextInternal::Zone > zone, FullWrtTextInternal::LineHeader &lHeader)
try to read the header of a line
Definition: FullWrtText.cxx:1317
FullWrtTextInternal::Item::m_level
int m_level
the level
Definition: FullWrtText.cxx:192
FullWrtTextInternal::Zone::m_pagesInfo
std::vector< PageInfo > m_pagesInfo
the pages info
Definition: FullWrtText.cxx:470
FullWrtParser.hxx
FullWrtStruct::getColor
bool getColor(int color, MWAWColor &col)
try to convert a file data to a color
Definition: FullWrtStruct.cxx:45
FullWrtTextInternal::Paragraph::m_befAftSpacings
double m_befAftSpacings[2]
the before/after spacing ( negative in point, positive in percent)
Definition: FullWrtText.cxx:646
FullWrtTextInternal::Paragraph::m_interSpacing
double m_interSpacing
the spacing
Definition: FullWrtText.cxx:642
FullWrtTextInternal::LineHeader::m_fontSet
bool m_fontSet
a flag to know if the font is set
Definition: FullWrtText.cxx:302
MWAWBorder
a border
Definition: libmwaw_internal.hxx:333
FullWrtTextInternal::Zone::m_zoneType
ZoneType m_zoneType
the zone type
Definition: FullWrtText.cxx:464
MWAWColor::isBlack
bool isBlack() const
return true if the color is black
Definition: libmwaw_internal.hxx:284
MWAWSection::m_columns
std::vector< Column > m_columns
the different column
Definition: MWAWSection.hxx:108
FullWrtTextInternal::Paragraph::m_align
int m_align
the align value
Definition: FullWrtText.cxx:640
FullWrtTextInternal::Item::Main
@ Main
Definition: FullWrtText.cxx:154
FullWrtTextInternal
Internal: the structures of a FullWrtText.
Definition: FullWrtText.cxx:59
FullWrtTextInternal::LineHeader::m_numChar
int m_numChar
the number of char
Definition: FullWrtText.cxx:298
MWAWSection::Column::m_width
double m_width
the columns width
Definition: MWAWSection.hxx:150
MWAWSection::Column
struct to store the columns properties
Definition: MWAWSection.hxx:120
FullWrtTextInternal::Zone::m_box
MWAWBox2f m_box
the bdbox
Definition: FullWrtText.cxx:457
MWAWTable
a class used to recreate the table structure using cell informations, ....
Definition: MWAWTable.hxx:51
FullWrtText::FullWrtText
FullWrtText(FullWrtParser &parser)
constructor
Definition: FullWrtText.cxx:708
libmwaw::RightBit
@ RightBit
Definition: libmwaw_internal.hxx:178
MWAWVec2< float >
MWAWFont::size
float size() const
returns the font size
Definition: MWAWFont.hxx:270
FullWrtTextInternal::Paragraph::m_tableBorderId
int m_tableBorderId
the table border id
Definition: FullWrtText.cxx:654
FullWrtTextInternal::Zone::getBreaksPosition
std::vector< int > getBreaksPosition() const
return the col/page break
Definition: FullWrtText.cxx:437
MWAWTabStop::m_alignment
Alignment m_alignment
the alignment ( left, center, ...)
Definition: MWAWParagraph.hxx:76
MWAWSection
a class which stores section properties
Definition: MWAWSection.hxx:45
MWAWDebug.hxx
FullWrtTextInternal::Zone::m_pages
int m_pages[2]
the pages
Definition: FullWrtText.cxx:468
FullWrtTextInternal::Zone::m_zone
FullWrtStruct::EntryPtr m_zone
the main zone
Definition: FullWrtText.cxx:455
FullWrtTextInternal::Paragraph::getTableDimensions
bool getTableDimensions(std::vector< float > &dim) const
returns the table dimension in points
Definition: FullWrtText.cxx:550
MWAWTable::setColsSize
void setColsSize(std::vector< float > const &cSize)
define the columns size (in point)
Definition: MWAWTable.hxx:133
FullWrtTextInternal::Item::m_hidden
bool m_hidden
true if the item is hidden
Definition: FullWrtText.cxx:198
FullWrtTextInternal::DataModifier::m_extra
std::string m_extra
extra data
Definition: FullWrtText.cxx:146
MWAWColor::black
static MWAWColor black()
return the back color
Definition: libmwaw_internal.hxx:245
MWAWBox2f
MWAWBox2< float > MWAWBox2f
MWAWBox2 of float.
Definition: libmwaw_internal.hxx:1193
FullWrtText::readStyle
bool readStyle(FullWrtStruct::EntryPtr zone)
try to read a style
Definition: FullWrtText.cxx:2065
MWAWTabStop::m_position
double m_position
the tab position
Definition: MWAWParagraph.hxx:74
MWAWFont::setId
void setId(int newId)
sets the font id
Definition: MWAWFont.hxx:264
FullWrtTextInternal::ParaModifier::m_beforeSpacing
float m_beforeSpacing
the before spacing ( negative in point, positive in percent )
Definition: FullWrtText.cxx:85
FullWrtTextInternal::Zone::CollapsedItem
@ CollapsedItem
Definition: FullWrtText.cxx:389
MWAWTabStop::m_decimalCharacter
uint16_t m_decimalCharacter
the decimal char
Definition: MWAWParagraph.hxx:80
MWAWParagraph::JustificationLeft
@ JustificationLeft
Definition: MWAWParagraph.hxx:90
FullWrtText::sendHiddenItem
bool sendHiddenItem(int id, FullWrtTextInternal::Font &font, FullWrtTextInternal::Paragraph &ruler)
send a hidden item
Definition: FullWrtText.cxx:1558
FullWrtText::sortZones
void sortZones()
sort the different zones, finding the main zone, ...
Definition: FullWrtText.cxx:2509
libmwaw::DOC_TEXT_BOX
@ DOC_TEXT_BOX
Definition: libmwaw_internal.hxx:188
MWAWFont::setSize
void setSize(float sz, bool isRelative=false)
sets the font size
Definition: MWAWFont.hxx:275
FullWrtTextInternal::Item::m_index
int m_index
the actual index
Definition: FullWrtText.cxx:194
FullWrtParser::sendText
void sendText(int docId, libmwaw::SubDocumentType type, MWAWNote::Type which=MWAWNote::FootNote)
try to send a footnote/endnote entry
Definition: FullWrtParser.cxx:2002
libmwaw::DOC_NOTE
@ DOC_NOTE
Definition: libmwaw_internal.hxx:188
MWAWBox2i
MWAWBox2< int > MWAWBox2i
MWAWBox2 of int.
Definition: libmwaw_internal.hxx:1191
libmwaw::LeftBit
@ LeftBit
Definition: libmwaw_internal.hxx:178
FullWrtText::readItem
bool readItem(FullWrtStruct::EntryPtr zone, int id=-1, bool hidden=false)
check if the input of the zone points to a item zone in DataStruct Zone
Definition: FullWrtText.cxx:1938
FullWrtTextInternal::DataModifier::getSuper
float getSuper() const
returns the superscript value ( negative in pt, position in li)
Definition: FullWrtText.cxx:102
MWAWFont::italicBit
@ italicBit
Definition: MWAWFont.hxx:190
MWAWSection::Column::m_widthUnit
librevenge::RVNGUnit m_widthUnit
the width unit (default inches)
Definition: MWAWSection.hxx:152
MWAWFont::Line::Dot
@ Dot
Definition: MWAWFont.hxx:49
FullWrtTextInternal::State::m_itemMap
std::map< int, Item > m_itemMap
itemId -> item
Definition: FullWrtText.cxx:692
FullWrtTextInternal::Paragraph::setBorder
void setBorder(FullWrtStruct::Border const &border)
set the border type
Definition: FullWrtText.cxx:533
FullWrtTextInternal::Item::Type
Type
the different type of id
Definition: FullWrtText.cxx:154
FullWrtText::getHeaderFooterId
int getHeaderFooterId(bool header, int page, int &numSimillar) const
return the header/footer blockid ( or -1)
Definition: FullWrtText.cxx:2460
FullWrtTextInternal::Item::m_extra
std::string m_extra
extra data
Definition: FullWrtText.cxx:206
MWAWTextListener.hxx
FullWrtText::version
int version() const
returns the file version
Definition: FullWrtText.cxx:719
FullWrtTextInternal::LineHeader::m_prevHeight
float m_prevHeight
the previous line height in point ( if known)
Definition: FullWrtText.cxx:306
FullWrtTextInternal::Paragraph::updateToSent
MWAWParagraph updateToSent() const
update the paragraph data to be sent to a listener
Definition: FullWrtText.cxx:577
FullWrtTextInternal::ParaModifier::m_extra
std::string m_extra
some extra data
Definition: FullWrtText.cxx:89
libmwaw::Right
@ Right
Definition: libmwaw_internal.hxx:176
FullWrtTextInternal::LineHeader::m_textIndent
MWAWVariable< double > m_textIndent
the text indent in inches ( if known)
Definition: FullWrtText.cxx:308
MWAWParagraph::JustificationFull
@ JustificationFull
Definition: MWAWParagraph.hxx:90
MWAWSection.hxx
MWAWParagraph::JustificationRight
@ JustificationRight
Definition: MWAWParagraph.hxx:91
MWAWParserStatePtr
std::shared_ptr< MWAWParserState > MWAWParserStatePtr
a smart pointer of MWAWParserState
Definition: libmwaw_internal.hxx:557
FullWrtText::flushExtra
void flushExtra()
sends the data which have not yet been sent to the listener
Definition: FullWrtText.cxx:2499
libmwaw::DebugFile::addPos
void addPos(long pos)
adds a new position in the file
Definition: MWAWDebug.cxx:53
MWAWCell::setBorders
void setBorders(int wh, MWAWBorder const &border)
sets the cell border: wh=libmwaw::LeftBit|...
Definition: MWAWCell.cxx:382
FullWrtTextInternal::Font::m_modifier
DataModifier m_modifier
the modifier data
Definition: FullWrtText.cxx:227
FullWrtTextInternal::Paragraph::updateFromRuler
void updateFromRuler(Paragraph const &ruler)
update the paragraph data from a ruler
Definition: FullWrtText.cxx:540
FullWrtTextInternal::Font::Font
Font()
constructor
Definition: FullWrtText.cxx:212
FullWrtTextInternal::Paragraph
Internal: class to store the paragraph properties.
Definition: FullWrtText.cxx:476
FullWrtTextInternal::PageInfo::PageInfo
PageInfo()
Definition: FullWrtText.cxx:338
FullWrtTextInternal::Zone::m_begin
long m_begin
the beginning of the text data
Definition: FullWrtText.cxx:460
FullWrtTextInternal::Item::Next
@ Next
Definition: FullWrtText.cxx:154
FullWrtStruct::Border::getBorder
static MWAWBorder getBorder(int type)
return a border corresponding to a type
Definition: FullWrtStruct.cxx:118
MWAWFont::setUnderlineWordFlag
void setUnderlineWordFlag(bool wordFlag=false)
sets the underline word flag
Definition: MWAWFont.hxx:479
FullWrtParser::getBorder
bool getBorder(int bId, FullWrtStruct::Border &border) const
try to return a border corresponding to an id
Definition: FullWrtParser.cxx:356
libmwaw::Left
@ Left
Definition: libmwaw_internal.hxx:176
FullWrtTextInternal::ColumnInfo::m_column
int m_column
the column number
Definition: FullWrtText.cxx:330
MWAWParagraph::operator=
MWAWParagraph & operator=(MWAWParagraph const &)=default
FullWrtTextInternal::State::m_paragraphMap
std::map< int, Paragraph > m_paragraphMap
rulerId -> ruler
Definition: FullWrtText.cxx:690
FullWrtTextInternal::Paragraph::m_tableFlags
std::vector< int > m_tableFlags
the list of table limit
Definition: FullWrtText.cxx:656
libmwaw::DebugFile
an interface used to insert comment in a binary file, written in ascii form (if debug_with_files is n...
Definition: MWAWDebug.hxx:65
FullWrtText::numPages
int numPages() const
returns the number of pages
Definition: FullWrtText.cxx:726
MWAWNote::FootNote
@ FootNote
Definition: libmwaw_internal.hxx:447
FullWrtTextInternal::Item::m_structId
int m_structId[5]
the item id in text struct zone ( father, child, next, prev, main )
Definition: FullWrtText.cxx:204
MWAWFont::Script
a small struct to define the script position in MWAWFont
Definition: MWAWFont.hxx:106
MWAWFont::Line::Double
@ Double
Definition: MWAWFont.hxx:51
FullWrtTextInternal::State::m_paragraphModList
std::vector< ParaModifier > m_paragraphModList
a list of paragraph modifier
Definition: FullWrtText.cxx:696
FullWrtTextInternal::Paragraph::m_isTable
bool m_isTable
a flag to know if this is a table
Definition: FullWrtText.cxx:652
FullWrtText::readDataMod
bool readDataMod(FullWrtStruct::EntryPtr zone, int id)
try to read the font/paragraph modifier zone (Zone1f)
Definition: FullWrtText.cxx:2290
FullWrtText::~FullWrtText
virtual ~FullWrtText()
destructor
Definition: FullWrtText.cxx:715
MWAWColor::isWhite
bool isWhite() const
return true if the color is white
Definition: libmwaw_internal.hxx:289
FullWrtTextInternal::DataModifier::operator<<
friend std::ostream & operator<<(std::ostream &o, DataModifier const &m)
operator<<
Definition: FullWrtText.cxx:122
FullWrtTextInternal::Paragraph::setAlign
void setAlign(int align)
set the align type
Definition: FullWrtText.cxx:514
FullWrtTextInternal::ColumnInfo::m_beginPos
int m_beginPos
the first data
Definition: FullWrtText.cxx:334
FullWrtStruct.hxx
MWAWFont.hxx
librevenge
Definition: MWAWDocument.hxx:56
MWAWFont::flags
uint32_t flags() const
returns the font flags
Definition: MWAWFont.hxx:320
FullWrtTextInternal::Font::m_item
Item m_item
the index
Definition: FullWrtText.cxx:231
FullWrtTextInternal::State::State
State()
constructor
Definition: FullWrtText.cxx:671
FullWrtTextInternal::State::m_mainZones
std::vector< int > m_mainZones
the main zone index
Definition: FullWrtText.cxx:699
FullWrtTextInternal::PageInfo::m_columns
std::vector< ColumnInfo > m_columns
the columns
Definition: FullWrtText.cxx:383
MWAWTabStop::RIGHT
@ RIGHT
Definition: MWAWParagraph.hxx:48
MWAWBox2< int >
FullWrtTextInternal::State::m_dataModMap
std::map< int, DataModifier > m_dataModMap
modId -> font/paragraph modifier
Definition: FullWrtText.cxx:694
MWAWFont
Class to store font.
Definition: MWAWFont.hxx:43
MWAWNote::EndNote
@ EndNote
Definition: libmwaw_internal.hxx:447
MWAWCell
a structure used to define a cell and its format
Definition: MWAWCell.hxx:52
FullWrtTextInternal::ColumnInfo::operator<<
friend std::ostream & operator<<(std::ostream &o, ColumnInfo const &c)
operator<<
Definition: FullWrtText.cxx:322
FullWrtText::send
bool send(int zId, MWAWColor fontColor=MWAWColor::black())
send a id zone
Definition: FullWrtText.cxx:2488
FullWrtTextInternal::Zone::Zone
Zone()
constructor
Definition: FullWrtText.cxx:391
FullWrtText::m_parserState
MWAWParserStatePtr m_parserState
the parser state
Definition: FullWrtText.hxx:162
FullWrtTextInternal::Item::Prev
@ Prev
Definition: FullWrtText.cxx:154
MWAWBorder::m_color
MWAWColor m_color
the border color
Definition: libmwaw_internal.hxx:393
FullWrtTextInternal::Item::Father
@ Father
Definition: FullWrtText.cxx:154
FullWrtTextInternal::Paragraph::m_dim
MWAWVec2f m_dim
the zone dimension
Definition: FullWrtText.cxx:648
MWAWVec2i
MWAWVec2< int > MWAWVec2i
MWAWVec2 of int.
Definition: libmwaw_internal.hxx:838
FullWrtTextInternal::DataModifier::m_data
int m_data[4]
the data
Definition: FullWrtText.cxx:144
libmwaw::DebugStream
std::stringstream DebugStream
a basic stream (if debug_with_files is not defined, does nothing)
Definition: MWAWDebug.hxx:61
FullWrtParser::sendVariable
void sendVariable(int docId)
try to send a variable, in pratice do nothing
Definition: FullWrtParser.cxx:1959
MWAWFont::setUnderlineStyle
void setUnderlineStyle(Line::Style style=Line::None, bool doReset=true)
sets the underline style ( by default, we also reset the style)
Definition: MWAWFont.hxx:466
FullWrtTextInternal::Paragraph::isTable
bool isTable() const
returns true if this is a table
Definition: FullWrtText.cxx:508
FullWrtTextInternal::LineHeader::m_extra
std::string m_extra
extra data
Definition: FullWrtText.cxx:310
MWAWSection::Column::m_margins
double m_margins[4]
the margins in inches using libmwaw::Position orders
Definition: MWAWSection.hxx:154
FullWrtStruct::EntryPtr
std::shared_ptr< Entry > EntryPtr
Definition: FullWrtStruct.hxx:153
MWAWFont::setFlags
void setFlags(uint32_t fl)
sets the font attributes bold, ...
Definition: MWAWFont.hxx:325
MWAWFont::lowercaseBit
@ lowercaseBit
Definition: MWAWFont.hxx:193