MarinerWrtText.hxx Source File documentation

MarinerWrtText.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 Mariner Write text document
36 *
37 */
38 #ifndef MARINER_WRT_TEXT
39 # define MARINER_WRT_TEXT
40
41 #include "libmwaw_internal.hxx"
42 #include "MWAWDebug.hxx"
43
44 namespace MarinerWrtTextInternal
45 {
46 struct Paragraph;
47 struct State;
48 struct Table;
49 struct Zone;
50 }
51
52 struct MarinerWrtEntry;
53 class MarinerWrtParser;
54
60 class MarinerWrtText
61 {
62 friend class MarinerWrtParser;
63 public:
65 explicit MarinerWrtText(MarinerWrtParser &parser);
67 virtual ~MarinerWrtText();
68
70 int version() const;
71
73 int numPages() const;
74
75 protected:
77 void setProperty(MarinerWrtTextInternal::Paragraph const &ruler);
78
80 void flushExtra();
81
82 //
83 // intermediate level
84 //
86 bool send(int zoneId);
88 bool send(MarinerWrtTextInternal::Zone const &zone, MWAWEntry const &entry);
89
91 bool findTableStructure(MarinerWrtTextInternal::Table &table, MWAWEntry const &entry);
93 bool sendTable(MarinerWrtTextInternal::Table &table);
95 bool readTextStruct(MarinerWrtEntry const &entry, int zoneId);
97 bool readZone(MarinerWrtEntry const &entry, int zoneId);
99 int computeNumPages(MarinerWrtTextInternal::Zone const &zone) const;
101 bool readFonts(MarinerWrtEntry const &entry, int zoneId);
102
104 bool readFontNames(MarinerWrtEntry const &entry, int zoneId);
105
107 bool readRulers(MarinerWrtEntry const &entry, int zoneId);
108
110 bool readPLCZone(MarinerWrtEntry const &entry, int zoneId);
111
113 bool readStyleNames(MarinerWrtEntry const &entry, int zoneId);
114
115 private:
116 MarinerWrtText(MarinerWrtText const &orig) = delete;
117 MarinerWrtText &operator=(MarinerWrtText const &orig) = delete;
118
119 protected:
120 //
121 // data
122 //
124 MWAWParserStatePtr m_parserState;
125
127 std::shared_ptr<MarinerWrtTextInternal::State> m_state;
128
130 MarinerWrtParser *m_mainParser;
131 };
132 #endif
133 // 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
MWAWEntry
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:46
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
MarinerWrtTextInternal::Paragraph::BorderFill::m_backColor
MWAWColor m_backColor
the background color
Definition: MarinerWrtText.cxx:199
MarinerWrtText::version
int version() const
returns the file version
Definition: MarinerWrtText.cxx:575
MarinerWrtTextInternal::Zone::getPosition
bool getPosition(long cPos, long &fPos, size_t &subZone) const
returns the file position and the number of the sub zone
Definition: MarinerWrtText.cxx:373
MWAWFont::set
void set(Script const &newscript)
sets the script position
Definition: MWAWFont.hxx:314
MarinerWrtTextInternal::Paragraph::~Paragraph
~Paragraph() final
destructor
Definition: MarinerWrtText.cxx:219
MarinerWrtTextInternal::Zone::m_parsed
bool m_parsed
a flag to know if the zone is parsed
Definition: MarinerWrtText.cxx:437
MWAWFont::setUnderlineType
void setUnderlineType(Line::Type type=Line::Single)
sets the underline type
Definition: MWAWFont.hxx:474
MarinerWrtTextInternal::Paragraph::BorderFill::BorderFill
BorderFill()
constructor
Definition: MarinerWrtText.cxx:147
MarinerWrtText::readPLCZone
bool readPLCZone(MarinerWrtEntry const &entry, int zoneId)
try to read a PLC zone: position in text to char(zone 4) or ruler(zone 5) id
Definition: MarinerWrtText.cxx:1123
MarinerWrtTextInternal::Font::operator<<
friend std::ostream & operator<<(std::ostream &o, Font const &font)
operator<<
Definition: MarinerWrtText.cxx:85
MarinerWrtTextInternal::Paragraph::BorderFill::hasBackgroundColor
bool hasBackgroundColor() const
return true if we have a not white background color
Definition: MarinerWrtText.cxx:168
MWAWFont::smallCapsBit
@ smallCapsBit
Definition: MWAWFont.hxx:192
MWAWTabStop::m_leaderCharacter
uint16_t m_leaderCharacter
the leader char
Definition: MWAWParagraph.hxx:78
MarinerWrtTextInternal::Zone::m_posFontMap
std::map< long, int > m_posFontMap
a map pos -> fontId
Definition: MarinerWrtText.cxx:431
MWAW_DEBUG_MSG
#define MWAW_DEBUG_MSG(M)
Definition: libmwaw_internal.hxx:129
MWAWParagraph::resizeBorders
void resizeBorders(size_t newSize)
a function used to resize the borders list ( adding empty borders if needed )
Definition: MWAWParagraph.hxx:122
MWAWListener::ColumnBreak
@ ColumnBreak
Definition: MWAWListener.hxx:58
MarinerWrtTextInternal::Table::Cell::m_rulerId
int m_rulerId
a list of cell ruler id
Definition: MarinerWrtText.cxx:524
MarinerWrtText::m_state
std::shared_ptr< MarinerWrtTextInternal::State > m_state
the state
Definition: MarinerWrtText.hxx:127
MWAWBorder::m_type
Type m_type
the border repetition
Definition: libmwaw_internal.hxx:385
MWAWBorder::Dash
@ Dash
Definition: libmwaw_internal.hxx:335
MWAWFont::Line
a small struct to define a line in MWAWFont
Definition: MWAWFont.hxx:47
MarinerWrtEntry::name
std::string name() const
returns the entry name;
Definition: MarinerWrtParser.cxx:1541
MWAWParagraph::m_tabs
MWAWVariable< std::vector< MWAWTabStop > > m_tabs
the tabulations
Definition: MWAWParagraph.hxx:162
MarinerWrtTextInternal::Zone::getRuler
bool getRuler(int id, Paragraph &ruler) const
returns a ruler corresponding to an id (if possible)
Definition: MarinerWrtText.cxx:411
MarinerWrtText::setProperty
void setProperty(MarinerWrtTextInternal::Paragraph const &ruler)
sends a paragraph property to the listener
Definition: MarinerWrtText.cxx:1587
MWAWCell::setPosition
void setPosition(MWAWVec2i posi)
set the cell positions : 0,0 -> A1, 0,1 -> A2
Definition: MWAWCell.hxx:189
MarinerWrtStruct::value
long value(int i) const
returns the ith value (or 0 if it does not exists )
Definition: MarinerWrtParser.cxx:1594
MarinerWrtParser::sendToken
void sendToken(int zoneId, long tokenId)
ask the graph parser to send a token
Definition: MarinerWrtParser.cxx:337
MWAWBorder::Simple
@ Simple
Definition: libmwaw_internal.hxx:335
MarinerWrtTextInternal::operator<<
std::ostream & operator<<(std::ostream &o, Font const &font)
Definition: MarinerWrtText.cxx:85
MarinerWrtText::readFontNames
bool readFontNames(MarinerWrtEntry const &entry, int zoneId)
try to read a font name zone
Definition: MarinerWrtText.cxx:1176
MWAWFont::boldBit
@ boldBit
Definition: MWAWFont.hxx:190
MarinerWrtTextInternal::Paragraph::BorderFill::resetBorders
void resetBorders()
reset the borders
Definition: MarinerWrtText.cxx:180
MarinerWrtTextInternal::Zone::m_posRulerMap
std::map< long, int > m_posRulerMap
a map pos -> rulerId
Definition: MarinerWrtText.cxx:433
MarinerWrtText::MarinerWrtText
MarinerWrtText(MarinerWrtParser &parser)
constructor
Definition: MarinerWrtText.cxx:564
MWAWColor::white
static MWAWColor white()
return the white color
Definition: libmwaw_internal.hxx:250
MWAWParagraph::m_listLevelIndex
MWAWVariable< int > m_listLevelIndex
the actual level index
Definition: MWAWParagraph.hxx:174
MWAWTable.hxx
MWAWFont::setColor
void setColor(MWAWColor color)
sets the font color
Definition: MWAWFont.hxx:341
libmwaw::BottomBit
@ BottomBit
Definition: libmwaw_internal.hxx:178
MWAWTabStop::CENTER
@ CENTER
Definition: MWAWParagraph.hxx:48
MWAWParagraph::setInterline
void setInterline(double value, librevenge::RVNGUnit unit, LineSpacingType type=Fixed)
set the interline
Definition: MWAWParagraph.hxx:129
MarinerWrtTextInternal::Table::m_rowsList
std::vector< Row > m_rowsList
the list of row
Definition: MarinerWrtText.cxx:489
MWAWEntry::id
int id() const
returns the id
Definition: MWAWEntry.hxx:164
MarinerWrtText::readFonts
bool readFonts(MarinerWrtEntry const &entry, int zoneId)
try to read a font zone
Definition: MarinerWrtText.cxx:1260
MarinerWrtTextInternal::Paragraph::BorderFill::operator<<
friend std::ostream & operator<<(std::ostream &o, BorderFill const &fill)
operator<<
Definition: MarinerWrtText.cxx:294
MWAWFontConverter.hxx
MWAWColor
the class to store a color
Definition: libmwaw_internal.hxx:192
libmwaw::appendUnicode
void appendUnicode(uint32_t val, librevenge::RVNGString &buffer)
adds an unicode character to a string
Definition: libmwaw_internal.cxx:63
MWAWParagraph::m_spacings
MWAWVariable< double > m_spacings[3]
the line spacing
Definition: MWAWParagraph.hxx:156
MarinerWrtEntry::m_fileType
int m_fileType
the entry type
Definition: MarinerWrtParser.hxx:88
MarinerWrtText::readZone
bool readZone(MarinerWrtEntry const &entry, int zoneId)
try to read a text zone
Definition: MarinerWrtText.cxx:603
MWAWParagraph::JustificationFullAllLines
@ JustificationFullAllLines
Definition: MWAWParagraph.hxx:91
MarinerWrtTextInternal::Paragraph::BorderFill::isDefault
bool isDefault() const
return true if the properties are default properties
Definition: MarinerWrtText.cxx:156
MWAWFont::outlineBit
@ outlineBit
Definition: MWAWFont.hxx:191
MWAWParagraph
class to store the paragraph properties
Definition: MWAWParagraph.hxx:84
MarinerWrtTextInternal::Paragraph::BorderFill::resetBackgroundColor
void resetBackgroundColor()
reset the background color
Definition: MarinerWrtText.cxx:161
MWAWFont::Line::Simple
@ Simple
Definition: MWAWFont.hxx:49
MWAWBorder::None
@ None
Definition: libmwaw_internal.hxx:335
MarinerWrtTextInternal::Paragraph::m_cellFill
BorderFill m_cellFill
the cell fill properties
Definition: MarinerWrtText.cxx:216
MWAW_FALLTHROUGH
#define MWAW_FALLTHROUGH
Definition: libmwaw_internal.hxx:118
MWAWFont::setUnderline
void setUnderline(Line const &line)
sets the underline
Definition: MWAWFont.hxx:461
MWAWBorder::m_width
double m_width
the border total width in point
Definition: libmwaw_internal.hxx:387
MarinerWrtTextInternal::Zone::m_rulerList
std::vector< Paragraph > m_rulerList
a list of ruler
Definition: MarinerWrtText.cxx:427
MWAWCell::setBackgroundColor
void setBackgroundColor(MWAWColor color)
sets the background color
Definition: MWAWCell.hxx:332
MarinerWrtTextInternal::Table::Cell::m_entry
MWAWEntry m_entry
the cell entry
Definition: MarinerWrtText.cxx:522
MarinerWrtParser::getSection
MWAWSection getSection(int zoneId) const
returns the section information corresponding to a zone
Definition: MarinerWrtParser.cxx:285
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
MarinerWrtTextInternal::Zone::Information::Information
Information()
constructor
Definition: MarinerWrtText.cxx:442
MarinerWrtTextInternal::Table::Cell::m_width
int m_width
the column width
Definition: MarinerWrtText.cxx:526
MarinerWrtTextInternal::Paragraph::update
void update(float percent, MWAWCell &cell) const
updates the paragraph knowing the paragraph pattern percent
Definition: MarinerWrtText.cxx:128
MWAWParagraph::m_margins
MWAWVariable< double > m_margins[3]
the margins
Definition: MWAWParagraph.hxx:148
MWAWBorder::Dot
@ Dot
Definition: libmwaw_internal.hxx:335
MWAWTabStop::DECIMAL
@ DECIMAL
Definition: MWAWParagraph.hxx:48
MarinerWrtTextInternal::Table::Table
Table(Zone const &zone)
constructor
Definition: MarinerWrtText.cxx:472
MarinerWrtTextInternal::Table::Row::m_lastChar
long m_lastChar
the last table position
Definition: MarinerWrtText.cxx:501
MWAWSection::numColumns
int numColumns() const
returns the number of columns
Definition: MWAWSection.hxx:71
MWAWFont::uppercaseBit
@ uppercaseBit
Definition: MWAWFont.hxx:192
MarinerWrtTextInternal::Paragraph::BorderFill::m_borderTypes
int m_borderTypes[4]
the border type L T R B
Definition: MarinerWrtText.cxx:205
MWAWCell.hxx
MWAWTable::TableDimBit
@ TableDimBit
Definition: MWAWTable.hxx:56
MarinerWrtParser::getPatternPercent
float getPatternPercent(int id) const
return the pattern percent which corresponds to an id (or -1)
Definition: MarinerWrtParser.cxx:332
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
MarinerWrtTextInternal::Zone::m_infoList
std::vector< Information > m_infoList
the list of information of the text in the file
Definition: MarinerWrtText.cxx:423
MarinerWrtTextInternal::Table::Row::m_height
int m_height
the table height ( <=0 a least )
Definition: MarinerWrtText.cxx:503
MWAWSubDocument.hxx
MWAWColor::barycenter
static MWAWColor barycenter(float alpha, MWAWColor const &colA, float beta, MWAWColor const &colB)
return alpha*colA+beta*colB
Definition: libmwaw_internal.cxx:206
MWAWParagraph::m_borders
std::vector< MWAWVariable< MWAWBorder > > m_borders
list of border ( order MWAWBorder::Pos)
Definition: MWAWParagraph.hxx:186
MarinerWrtTextInternal::Table::Row
a table row of a MarinerWrtText
Definition: MarinerWrtText.cxx:492
MWAWParagraph::AtLeast
@ AtLeast
Definition: MWAWParagraph.hxx:94
MarinerWrtText::flushExtra
void flushExtra()
sends the data which have not yet been sent to the listener
Definition: MarinerWrtText.cxx:2034
MWAWBorder::m_widthsList
std::vector< double > m_widthsList
the different length used for each line/sep (if defined)
Definition: libmwaw_internal.hxx:391
MWAWParagraph::JustificationCenter
@ JustificationCenter
Definition: MWAWParagraph.hxx:90
MarinerWrtParser::decodeZone
bool decodeZone(std::vector< MarinerWrtStruct > &dataList, long numData=999999)
try to decode a zone
Definition: MarinerWrtParser.cxx:1440
MWAWFont::shadowBit
@ shadowBit
Definition: MWAWFont.hxx:191
MarinerWrtText::~MarinerWrtText
virtual ~MarinerWrtText()
destructor
Definition: MarinerWrtText.cxx:571
MarinerWrtText::m_mainParser
MarinerWrtParser * m_mainParser
the main parser;
Definition: MarinerWrtText.hxx:130
MWAWParagraph.hxx
MarinerWrtText::readStyleNames
bool readStyleNames(MarinerWrtEntry const &entry, int zoneId)
try to read a style name zone
Definition: MarinerWrtText.cxx:1524
MarinerWrtText::findTableStructure
bool findTableStructure(MarinerWrtTextInternal::Table &table, MWAWEntry const &entry)
try to find the table structure beginning in actual position
Definition: MarinerWrtText.cxx:1048
MWAWRSRCParser.hxx
MarinerWrtTextInternal::Zone::Zone
Zone(int zId)
constructor
Definition: MarinerWrtText.cxx:359
libmwaw::Bottom
@ Bottom
Definition: libmwaw_internal.hxx:176
libmwaw_internal.hxx
MWAWPosition.hxx
MWAWEntry::setEnd
void setEnd(long off)
sets the end offset
Definition: MWAWEntry.hxx:77
MWAWTable::setMergeBorders
bool setMergeBorders(bool val)
sets the merge borders' value
Definition: MWAWTable.hxx:100
MWAWParagraph::m_backgroundColor
MWAWVariable< MWAWColor > m_backgroundColor
the background color
Definition: MWAWParagraph.hxx:183
MarinerWrtText::sendTable
bool sendTable(MarinerWrtTextInternal::Table &table)
try to send a table
Definition: MarinerWrtText.cxx:994
MarinerWrtTextInternal::Table::Cell::Cell
Cell()
Definition: MarinerWrtText.cxx:510
MarinerWrtTextInternal::Paragraph::m_cellSep
int m_cellSep
a cell separator
Definition: MarinerWrtText.cxx:214
MarinerWrtText::operator=
MarinerWrtText & operator=(MarinerWrtText const &orig)=delete
MWAWBorder
a border
Definition: libmwaw_internal.hxx:333
MWAWEntry::setBegin
void setBegin(long off)
sets the begin offset
Definition: MWAWEntry.hxx:67
MWAWColor::isBlack
bool isBlack() const
return true if the color is black
Definition: libmwaw_internal.hxx:284
MarinerWrtTextInternal::Paragraph::BorderFill::m_patternId
int m_patternId
the pattern id
Definition: MarinerWrtText.cxx:201
MarinerWrtTextInternal::Paragraph::m_paraFill
BorderFill m_paraFill
the paragraph fill properties
Definition: MarinerWrtText.cxx:208
MarinerWrtTextInternal::State
Internal: the state of a MarinerWrtText.
Definition: MarinerWrtText.cxx:532
MarinerWrtParser::newPage
void newPage(int number)
adds a new page
Definition: MarinerWrtParser.cxx:295
MWAWEntry::length
long length() const
returns the length of the zone
Definition: MWAWEntry.hxx:93
MWAWTable
a class used to recreate the table structure using cell informations, ....
Definition: MWAWTable.hxx:51
MarinerWrtTextInternal::Table::Row::m_cellsList
std::vector< Cell > m_cellsList
a list of cell entry list
Definition: MarinerWrtText.cxx:505
libmwaw::RightBit
@ RightBit
Definition: libmwaw_internal.hxx:178
MWAWVec2< long >
MWAWTabStop::m_alignment
Alignment m_alignment
the alignment ( left, center, ...)
Definition: MWAWParagraph.hxx:76
MWAWFont::boxedBit
@ boxedBit
Definition: MWAWFont.hxx:195
MWAWSection
a class which stores section properties
Definition: MWAWSection.hxx:45
MWAWDebug.hxx
MarinerWrtTextInternal::Zone::Information::m_pos
MWAWEntry m_pos
the file position
Definition: MarinerWrtText.cxx:458
MWAWFont::getDebugString
std::string getDebugString(std::shared_ptr< MWAWFontConverter > &converter) const
returns a string which can be used for debugging
Definition: MWAWFont.cxx:181
MWAWEntry::begin
long begin() const
returns the begin offset
Definition: MWAWEntry.hxx:83
MarinerWrtTextInternal::State::getZone
Zone & getZone(int id)
return a reference to a textzone ( if zone not exists, created it )
Definition: MarinerWrtText.cxx:543
MWAWEntry::setLength
void setLength(long l)
sets the zone size
Definition: MWAWEntry.hxx:72
MarinerWrtTextInternal::Paragraph::BorderFill::getBorder
MWAWBorder getBorder(int pos) const
return a border corresponding to a pos
Definition: MarinerWrtText.cxx:241
MarinerWrtStruct::m_pos
MWAWEntry m_pos
the file data position (for type=0 data )
Definition: MarinerWrtParser.hxx:122
MarinerWrtTextInternal::Font
Internal: struct used to store the font of a MarinerWrtText.
Definition: MarinerWrtText.cxx:63
MarinerWrtParser
the main class to read a Mariner Write file
Definition: MarinerWrtParser.hxx:134
MarinerWrtTextInternal::Zone::m_idFontMap
std::map< int, int > m_idFontMap
a map id -> fontId
Definition: MarinerWrtText.cxx:429
MWAWTable::setColsSize
void setColsSize(std::vector< float > const &cSize)
define the columns size (in point)
Definition: MWAWTable.hxx:133
MWAWColor::black
static MWAWColor black()
return the back color
Definition: libmwaw_internal.hxx:245
MWAWListLevel::RIGHT
@ RIGHT
Definition: MWAWList.hxx:50
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
MarinerWrtText::send
bool send(int zoneId)
try to send a zone (knowing zoneId)
Definition: MarinerWrtText.cxx:773
MarinerWrtStruct::m_type
int m_type
the data type
Definition: MarinerWrtParser.hxx:124
MWAWEntry::setId
void setId(int newId)
sets the id
Definition: MWAWEntry.hxx:169
MarinerWrtTextInternal::Font::m_font
MWAWFont m_font
the font
Definition: MarinerWrtText.cxx:76
MarinerWrtText::readRulers
bool readRulers(MarinerWrtEntry const &entry, int zoneId)
try to read a ruler zone
Definition: MarinerWrtText.cxx:1593
MarinerWrtTextInternal::Font::m_extra
std::string m_extra
extra data
Definition: MarinerWrtText.cxx:82
MarinerWrtTextInternal::Zone::Information::m_extra
std::string m_extra
extra data
Definition: MarinerWrtText.cxx:462
MarinerWrtText::m_parserState
MWAWParserStatePtr m_parserState
the parser state
Definition: MarinerWrtText.hxx:124
MarinerWrtTextInternal::Paragraph::operator=
Paragraph & operator=(Paragraph const &)=default
MarinerWrtTextInternal::Paragraph::BorderFill::m_foreColor
MWAWColor m_foreColor
the foreground color
Definition: MarinerWrtText.cxx:197
MarinerWrtTextInternal::Paragraph::m_cellHeight
int m_cellHeight
a cell height
Definition: MarinerWrtText.cxx:212
MWAWFont::setOverline
void setOverline(Line const &line)
sets the overline
Definition: MWAWFont.hxx:383
MarinerWrtTextInternal::Paragraph::BorderFill::m_borderColor
MWAWColor m_borderColor
the border color
Definition: MarinerWrtText.cxx:203
libmwaw::Top
@ Top
Definition: libmwaw_internal.hxx:176
MWAWBorder::m_style
Style m_style
the border style
Definition: libmwaw_internal.hxx:380
MarinerWrtEntry
a entry to store a zone structure
Definition: MarinerWrtParser.hxx:62
MarinerWrtTextInternal::Font::m_localId
int m_localId
the local id
Definition: MarinerWrtText.cxx:78
MWAWEntry::end
long end() const
returns the end offset
Definition: MWAWEntry.hxx:88
MWAWFont::setSize
void setSize(float sz, bool isRelative=false)
sets the font size
Definition: MWAWFont.hxx:275
MarinerWrtStruct::numValues
int numValues() const
returns the number of values
Definition: MarinerWrtParser.hxx:108
MWAWListLevel::m_bullet
librevenge::RVNGString m_bullet
the bullet if we have an bullet level
Definition: MWAWList.hxx:114
MarinerWrtStruct::isBasic
bool isBasic() const
returns true if this corresponds to a simple container
Definition: MarinerWrtParser.hxx:113
MWAWFont::getUnderline
const Line & getUnderline() const
returns the underline
Definition: MWAWFont.hxx:456
MarinerWrtTextInternal::Paragraph::BorderFill::hasBorders
bool hasBorders() const
return true if we have border
Definition: MarinerWrtText.cxx:185
MarinerWrtTextInternal::Zone::length
long length() const
returns the zone length
Definition: MarinerWrtText.cxx:388
MarinerWrtText
the main class to read the text part of Mariner Write file
Definition: MarinerWrtText.hxx:60
MWAWBorder::Double
@ Double
Definition: libmwaw_internal.hxx:337
libmwaw::LeftBit
@ LeftBit
Definition: libmwaw_internal.hxx:178
MarinerWrtTextInternal::Table::Cell::ok
bool ok() const
Definition: MarinerWrtText.cxx:517
MarinerWrtStruct
Internal: a struct used to read some field.
Definition: MarinerWrtParser.hxx:96
MarinerWrtTextInternal::Paragraph::BorderFill
small structure to store border/fills properties in MarinerWrtText
Definition: MarinerWrtText.cxx:145
MWAWFont::italicBit
@ italicBit
Definition: MWAWFont.hxx:190
MWAWFont::Line::Dot
@ Dot
Definition: MWAWFont.hxx:49
MarinerWrtTextInternal::Paragraph::BorderFill::getBackgroundColor
MWAWColor getBackgroundColor(float percent) const
returns the background color knowing the pattern percent
Definition: MarinerWrtText.cxx:173
MarinerWrtTextInternal::Paragraph::update
void update(float percent)
updates the paragraph knowing the paragraph pattern percent
Definition: MarinerWrtText.cxx:113
MarinerWrtTextInternal::Zone
Internal: struct used to store zone data of a MarinerWrtText.
Definition: MarinerWrtText.cxx:355
MarinerWrtTextInternal::Zone::Information::operator<<
friend std::ostream & operator<<(std::ostream &o, Information const &info)
operator<<
Definition: MarinerWrtText.cxx:449
MWAWTextListener.hxx
MWAWListLevel::BULLET
@ BULLET
Definition: MWAWList.hxx:46
MarinerWrtTextInternal::Font::Font
Font()
constructor
Definition: MarinerWrtText.cxx:65
MarinerWrtTextInternal::Table::m_zone
const Zone & m_zone
the actual zone
Definition: MarinerWrtText.cxx:487
libmwaw::Right
@ Right
Definition: libmwaw_internal.hxx:176
MarinerWrtTextInternal::Table
Internal: struct used to store the table of a MarinerWrtText.
Definition: MarinerWrtText.cxx:468
MarinerWrtTextInternal::Table::nextCharPos
long nextCharPos() const
returns the next char position after the table
Definition: MarinerWrtText.cxx:478
MWAWParagraph::JustificationFull
@ JustificationFull
Definition: MWAWParagraph.hxx:90
MWAWListLevel::m_labelWidth
double m_labelWidth
the minimum label width
Definition: MWAWList.hxx:105
MWAWSection.hxx
MarinerWrtTextInternal::State::m_textZoneMap
std::map< int, Zone > m_textZoneMap
a map id -> textZone
Definition: MarinerWrtText.cxx:555
MWAWParagraph::JustificationRight
@ JustificationRight
Definition: MWAWParagraph.hxx:91
MWAWParserStatePtr
std::shared_ptr< MWAWParserState > MWAWParserStatePtr
a smart pointer of MWAWParserState
Definition: libmwaw_internal.hxx:557
MarinerWrtTextInternal::Font::m_tokenId
long m_tokenId
the token id
Definition: MarinerWrtText.cxx:80
libmwaw::TopBit
@ TopBit
Definition: libmwaw_internal.hxx:178
MarinerWrtTextInternal::Zone::m_id
int m_id
the zone id
Definition: MarinerWrtText.cxx:421
MarinerWrtTextInternal
Internal: the structures of a MarinerWrtText.
Definition: MarinerWrtText.cxx:59
MWAWListLevel
small structure to keep information about a list level
Definition: MWAWList.hxx:44
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
MarinerWrtTextInternal::Zone::Information
struct used to keep the information of a small zone of MarinerWrtTextInternal::Zone
Definition: MarinerWrtText.cxx:440
MWAWListLevel::m_type
Type m_type
the type of the level
Definition: MWAWList.hxx:101
MarinerWrtTextInternal::Zone::getFont
bool getFont(int id, Font &ft) const
returns a fonts corresponding to an id (if possible)
Definition: MarinerWrtText.cxx:396
MWAWEntry::valid
bool valid() const
returns true if the zone length is positive
Definition: MWAWEntry.hxx:99
MarinerWrtText::readTextStruct
bool readTextStruct(MarinerWrtEntry const &entry, int zoneId)
try to read the text struct
Definition: MarinerWrtText.cxx:667
MarinerWrtTextInternal::State::m_version
int m_version
the file version
Definition: MarinerWrtText.cxx:553
MarinerWrtText::computeNumPages
int computeNumPages(MarinerWrtTextInternal::Zone const &zone) const
try to compute the number of pages of a zone, returns 0 if not data
Definition: MarinerWrtText.cxx:647
MWAWFont::setUnderlineWordFlag
void setUnderlineWordFlag(bool wordFlag=false)
sets the underline word flag
Definition: MWAWFont.hxx:479
libmwaw::Left
@ Left
Definition: libmwaw_internal.hxx:176
MWAWFont::setBackgroundColor
void setBackgroundColor(MWAWColor color)
sets the font background color
Definition: MWAWFont.hxx:352
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
MWAWListLevel::CENTER
@ CENTER
Definition: MWAWList.hxx:50
MWAWFont::Script
a small struct to define the script position in MWAWFont
Definition: MWAWFont.hxx:106
MWAWFont::Line::Double
@ Double
Definition: MWAWFont.hxx:51
MWAWColor::isWhite
bool isWhite() const
return true if the color is white
Definition: libmwaw_internal.hxx:289
MarinerWrtTextInternal::Table::Row::Row
Row()
constructor
Definition: MarinerWrtText.cxx:494
MWAWFont.hxx
MarinerWrtEntry::m_N
int m_N
the number of value
Definition: MarinerWrtParser.hxx:90
MWAWTabStop::RIGHT
@ RIGHT
Definition: MWAWParagraph.hxx:48
MarinerWrtText::numPages
int numPages() const
returns the number of pages
Definition: MarinerWrtText.cxx:582
MWAWFont
Class to store font.
Definition: MWAWFont.hxx:43
MWAWCell
a structure used to define a cell and its format
Definition: MWAWCell.hxx:52
MWAWParagraph::m_extra
std::string m_extra
a string to store some errors
Definition: MWAWParagraph.hxx:190
MarinerWrtTextInternal::Zone::Information::m_cPos
MWAWVec2l m_cPos
the characters positions
Definition: MarinerWrtText.cxx:460
MarinerWrtParser.hxx
MWAWParagraph::m_listId
MWAWVariable< int > m_listId
the list id (if know )
Definition: MWAWParagraph.hxx:176
MarinerWrtTextInternal::Zone::m_fontList
std::vector< Font > m_fontList
a list of font
Definition: MarinerWrtText.cxx:425
MarinerWrtText.hxx
MWAWBorder::m_color
MWAWColor m_color
the border color
Definition: libmwaw_internal.hxx:393
MWAWFont::hiddenBit
@ hiddenBit
Definition: MWAWFont.hxx:191
MarinerWrtTextInternal::Table::Cell
a table cell of a MarinerWrtText
Definition: MarinerWrtText.cxx:508
MWAWListLevel::m_alignment
Alignment m_alignment
the alignment ( left, center, ...)
Definition: MWAWList.hxx:108
MWAWVec2i
MWAWVec2< int > MWAWVec2i
MWAWVec2 of int.
Definition: libmwaw_internal.hxx:838
libmwaw::DebugStream
std::stringstream DebugStream
a basic stream (if debug_with_files is not defined, does nothing)
Definition: MWAWDebug.hxx:61
MarinerWrtTextInternal::Paragraph
Internal: struct used to store the paragraph of a MarinerWrtText.
Definition: MarinerWrtText.cxx:97
MarinerWrtTextInternal::Paragraph::Paragraph
Paragraph()
constructor
Definition: MarinerWrtText.cxx:99
MarinerWrtTextInternal::Zone::m_actZone
int m_actZone
a index used to know the next zone in MarinerWrtText::readZone
Definition: MarinerWrtText.cxx:435
MarinerWrtTextInternal::State::State
State()
constructor
Definition: MarinerWrtText.cxx:534
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
MarinerWrtTextInternal::Paragraph::m_cellWidth
int m_cellWidth
a cell width
Definition: MarinerWrtText.cxx:210
MarinerWrtTextInternal::Paragraph::operator<<
friend std::ostream & operator<<(std::ostream &o, Paragraph const &para)
operator<<
Definition: MarinerWrtText.cxx:223
MWAWFont::setFlags
void setFlags(uint32_t fl)
sets the font attributes bold, ...
Definition: MWAWFont.hxx:325
MWAWFont::lowercaseBit
@ lowercaseBit
Definition: MWAWFont.hxx:193