HanMacWrdJText.hxx Source File documentation

HanMacWrdJText.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 HanMac Word-J text document
36 *
37 */
38 #ifndef HAN_MAC_WRD_J_TEXT
39 # define HAN_MAC_WRD_J_TEXT
40
41 #include <map>
42 #include <vector>
43
44 #include "libmwaw_internal.hxx"
45 #include "MWAWDebug.hxx"
46
47 namespace HanMacWrdJTextInternal
48 {
49 struct Paragraph;
50 class SubDocument;
51 struct TextZone;
52 struct State;
53 }
54
55 class HanMacWrdJParser;
56
62 class HanMacWrdJText
63 {
64 friend class HanMacWrdJTextInternal::SubDocument;
65 friend class HanMacWrdJParser;
66 public:
68 explicit HanMacWrdJText(HanMacWrdJParser &parser);
70 virtual ~HanMacWrdJText();
71
73 int version() const;
74
76 int numPages() const;
77
78 protected:
80 bool sendMainText();
82 bool sendText(long id, long cPos, MWAWListenerPtr listener=MWAWListenerPtr());
84 bool canSendTextAsGraphic(long id, long cPos);
86 bool sendText(HanMacWrdJTextInternal::TextZone const &zone, long cPos, MWAWListenerPtr listener=MWAWListenerPtr());
88 bool canSendTextAsGraphic(HanMacWrdJTextInternal::TextZone const &zone, long cPos);
90 void flushExtra();
91
93 int computeNumPages(HanMacWrdJTextInternal::TextZone const &zone);
95 std::vector<long> getTokenIdList() const;
97 void updateTextZoneTypes(std::map<long,int> const &idTypeMap);
99 void updateFootnoteInformations(long const &textZId, std::vector<long> const &fPosList);
100
101 //
102 // intermediate level
103 //
104
106 bool readFontNames(MWAWEntry const &entry);
108 bool readFonts(MWAWEntry const &entry);
110 bool readFont(MWAWFont &font, long endPos=-1);
112 bool readParagraphs(MWAWEntry const &entry);
114 bool readParagraph(HanMacWrdJTextInternal::Paragraph &para, long endPos=-1);
116 bool readStyles(MWAWEntry const &entry);
118 bool readTextZonesList(MWAWEntry const &entry);
120 bool readTextZone(MWAWEntry const &entry, int actZone);
122 bool readTextToken(long endPos, HanMacWrdJTextInternal::TextZone &zone);
124 bool readSections(MWAWEntry const &entry);
126 bool readFtnPos(MWAWEntry const &entry);
127
128 //
129 // low level
130 //
131
132 private:
133 HanMacWrdJText(HanMacWrdJText const &orig) = delete;
134 HanMacWrdJText &operator=(HanMacWrdJText const &orig) = delete;
135
136 protected:
137 //
138 // data
139 //
141 MWAWParserStatePtr m_parserState;
142
144 std::shared_ptr<HanMacWrdJTextInternal::State> m_state;
145
147 HanMacWrdJParser *m_mainParser;
148 };
149 #endif
150 // vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
HanMacWrdJTextInternal::PLC::m_type
PLCType m_type
PLC type.
Definition: HanMacWrdJText.cxx:95
HanMacWrdJText::readTextZone
bool readTextZone(MWAWEntry const &entry, int actZone)
try to read a text zone ( type 5 )
Definition: HanMacWrdJText.cxx:1070
HanMacWrdJParser::sendZone
bool sendZone(long zId)
send a zone
Definition: HanMacWrdJParser.cxx:200
HanMacWrdJText::version
int version() const
returns the file version
Definition: HanMacWrdJText.cxx:446
MWAWEntry
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:46
HanMacWrdJParser.hxx
MWAWField::Time
@ Time
Definition: libmwaw_internal.hxx:401
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
HanMacWrdJText::sendMainText
bool sendMainText()
send the main text zone
Definition: HanMacWrdJText.cxx:536
HanMacWrdJTextInternal::State::m_sectionList
std::vector< Section > m_sectionList
the list of section
Definition: HanMacWrdJText.cxx:334
MWAWFont::reverseVideoBit
@ reverseVideoBit
Definition: MWAWFont.hxx:192
HanMacWrdJTextInternal::State::m_paragraphList
std::vector< Paragraph > m_paragraphList
the list of paragraph
Definition: HanMacWrdJText.cxx:332
HanMacWrdJTextInternal::TextZone::m_PLCMap
std::multimap< long, PLC > m_PLCMap
the plc map
Definition: HanMacWrdJText.cxx:254
MWAWInputStream::get
static std::shared_ptr< MWAWInputStream > get(librevenge::RVNGBinaryData const &data, bool inverted)
returns a new input stream corresponding to a librevenge::RVNGBinaryData
Definition: MWAWInputStream.cxx:102
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
MWAWNote
a note
Definition: libmwaw_internal.hxx:445
MWAWTabStop::m_leaderCharacter
uint16_t m_leaderCharacter
the leader char
Definition: MWAWParagraph.hxx:78
HanMacWrdJTextInternal::TextZone::T_Unknown
@ T_Unknown
Definition: HanMacWrdJText.cxx:234
MWAW_DEBUG_MSG
#define MWAW_DEBUG_MSG(M)
Definition: libmwaw_internal.hxx:129
HanMacWrdJText::readFonts
bool readFonts(MWAWEntry const &entry)
try to read the fonts zone (type 0)
Definition: HanMacWrdJText.cxx:1568
HanMacWrdJTextInternal::Token::m_type
int m_type
the token type
Definition: HanMacWrdJText.cxx:148
HanMacWrdJTextInternal::PLC::m_id
int m_id
the indentificator
Definition: HanMacWrdJText.cxx:97
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
libmwaw::DebugFile::addDelimiter
void addDelimiter(long pos, char c)
adds a not breaking delimiter in position pos
Definition: MWAWDebug.cxx:73
HanMacWrdJTextInternal::TextZone::T_Header
@ T_Header
Definition: HanMacWrdJText.cxx:233
HanMacWrdJText::canSendTextAsGraphic
bool canSendTextAsGraphic(long id, long cPos)
check if we can send a textzone as graphic
Definition: HanMacWrdJText.cxx:486
HanMacWrdJText::m_parserState
MWAWParserStatePtr m_parserState
the parser state
Definition: HanMacWrdJText.hxx:141
HanMacWrdJTextInternal::Paragraph::Paragraph
Paragraph()
Constructor.
Definition: HanMacWrdJText.cxx:266
HanMacWrdJTextInternal::SubDocument::m_textParser
HanMacWrdJText * m_textParser
the text parser
Definition: HanMacWrdJText.cxx:385
libmwaw::Position
Position
basic position enum
Definition: libmwaw_internal.hxx:176
HanMacWrdJTextInternal::TextZone::m_entry
MWAWEntry m_entry
the main entry
Definition: HanMacWrdJText.cxx:250
MWAWField::m_DTFormat
std::string m_DTFormat
the date/time format using strftime format if defined
Definition: libmwaw_internal.hxx:424
MWAWFont::Script::sub100
static Script sub100()
return a yposition which correspond to a basic subscript100
Definition: MWAWFont.hxx:125
MWAWFont::boldBit
@ boldBit
Definition: MWAWFont.hxx:190
MWAWFont::setColor
void setColor(MWAWColor color)
sets the font color
Definition: MWAWFont.hxx:341
libmwaw::DebugFile::open
bool open(std::string const &filename)
opens/creates a file to store a result
Definition: MWAWDebug.cxx:46
HanMacWrdJText::~HanMacWrdJText
virtual ~HanMacWrdJText()
destructor
Definition: HanMacWrdJText.cxx:442
HanMacWrdJTextInternal::SubDocument::m_bookmark
std::string m_bookmark
the bookmark string
Definition: HanMacWrdJText.cxx:391
MWAWTabStop::CENTER
@ CENTER
Definition: MWAWParagraph.hxx:48
MWAWFont::setWidthStreching
void setWidthStreching(float scale=1.0)
sets the text width streching
Definition: MWAWFont.hxx:303
HanMacWrdJTextInternal::Token::operator<<
friend std::ostream & operator<<(std::ostream &o, Token const &tk)
operator<<
Definition: HanMacWrdJText.cxx:115
MWAWFontConverter.hxx
MWAWColor
the class to store a color
Definition: libmwaw_internal.hxx:192
MWAWParagraph::m_spacings
MWAWVariable< double > m_spacings[3]
the line spacing
Definition: MWAWParagraph.hxx:156
MWAWSection::setColumns
void setColumns(int num, double width, librevenge::RVNGUnit widthUnit, double colSep=0)
a function which sets n uniform columns
Definition: MWAWSection.cxx:109
HanMacWrdJText::computeNumPages
int computeNumPages(HanMacWrdJTextInternal::TextZone const &zone)
compute the number of pages present in a zone
Definition: HanMacWrdJText.cxx:848
MWAWSubDocumentPtr
std::shared_ptr< MWAWSubDocument > MWAWSubDocumentPtr
a smart pointer of MWAWSubDocument
Definition: libmwaw_internal.hxx:565
MWAWFont::outlineBit
@ outlineBit
Definition: MWAWFont.hxx:191
HanMacWrdJParser::newPage
void newPage(int number)
adds a new page
Definition: HanMacWrdJParser.cxx:224
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
MWAWParagraph
class to store the paragraph properties
Definition: MWAWParagraph.hxx:84
HanMacWrdJText::m_state
std::shared_ptr< HanMacWrdJTextInternal::State > m_state
the state
Definition: HanMacWrdJText.hxx:144
HanMacWrdJTextInternal::RULER
@ RULER
Definition: HanMacWrdJText.cxx:61
HanMacWrdJTextInternal::Section::Section
Section()
constructor
Definition: HanMacWrdJText.cxx:164
MWAWFont::Line::Simple
@ Simple
Definition: MWAWFont.hxx:49
HanMacWrdJParser::readClassicHeader
bool readClassicHeader(HanMacWrdJZoneHeader &header, long endPos=-1)
try to read a header of classic zone
Definition: HanMacWrdJParser.cxx:237
MWAWBorder::m_width
double m_width
the border total width in point
Definition: libmwaw_internal.hxx:387
HanMacWrdJTextInternal::SubDocument::S_String
@ S_String
Definition: HanMacWrdJText.cxx:352
HanMacWrdJTextInternal::TextZone::T_Comment
@ T_Comment
Definition: HanMacWrdJText.cxx:234
HanMacWrdJTextInternal::LINE
@ LINE
Definition: HanMacWrdJText.cxx:61
HanMacWrdJTextInternal::SubDocument::SubDocument
SubDocument(HanMacWrdJText &pars, MWAWInputStreamPtr const &input, long id, long cPos=0)
constructor to call a textzone
Definition: HanMacWrdJText.cxx:355
MWAWEntry::setParsed
void setParsed(bool ok=true) const
sets the flag m_parsed to true or false
Definition: MWAWEntry.hxx:126
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
MWAWSubDocument
abstract class used to store a subdocument (with a comparison function)
Definition: MWAWSubDocument.hxx:41
HanMacWrdJTextInternal::Token
Internal: class to store a token of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:103
MWAWParagraph::m_margins
MWAWVariable< double > m_margins[3]
the margins
Definition: MWAWParagraph.hxx:148
MWAWTabStop::DECIMAL
@ DECIMAL
Definition: MWAWParagraph.hxx:48
HanMacWrdJTextInternal::Token::m_bookmark
std::string m_bookmark
the bookmark string
Definition: HanMacWrdJText.cxx:154
HanMacWrdJTextInternal::State::State
State()
constructor
Definition: HanMacWrdJText.cxx:314
MWAWFont::Script::super100
static Script super100()
return a yposition which correspond to a basic superscript100
Definition: MWAWFont.hxx:135
HanMacWrdJTextInternal::TextZone::Type
Type
enum used to define the zone type
Definition: HanMacWrdJText.cxx:233
HanMacWrdJTextInternal::Section
Internal: class to store a section of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:162
MWAWField::PageCount
@ PageCount
Definition: libmwaw_internal.hxx:401
MWAWField::Date
@ Date
Definition: libmwaw_internal.hxx:401
HanMacWrdJTextInternal::State::m_idTextZoneMap
std::map< long, int > m_idTextZoneMap
a map textId -> id in m_textZoneList
Definition: HanMacWrdJText.cxx:342
HanMacWrdJTextInternal::SubDocument::operator!=
bool operator!=(MWAWSubDocument const &doc) const final
operator!=
Definition: HanMacWrdJText.cxx:418
MWAWFont::setStrikeOutType
void setStrikeOutType(Line::Type type=Line::Single)
sets the strikeoutline type
Definition: MWAWFont.hxx:435
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
MWAWSubDocument.hxx
HanMacWrdJTextInternal::State::m_actualPage
int m_actualPage
Definition: HanMacWrdJText.cxx:343
HanMacWrdJText::getTokenIdList
std::vector< long > getTokenIdList() const
returns the list of zoneId which corresponds to the token
Definition: HanMacWrdJText.cxx:467
HanMacWrdJTextInternal::TextZone::T_Main
@ T_Main
Definition: HanMacWrdJText.cxx:233
MWAWFont::setUnderlineWidth
void setUnderlineWidth(float w)
sets the underline width
Definition: MWAWFont.hxx:484
MWAWParagraph::m_borders
std::vector< MWAWVariable< MWAWBorder > > m_borders
list of border ( order MWAWBorder::Pos)
Definition: MWAWParagraph.hxx:186
HanMacWrdJText
the main class to read the text part of HanMac Word-J file
Definition: HanMacWrdJText.hxx:62
libmwaw::SubDocumentType
SubDocumentType
Definition: libmwaw_internal.hxx:188
HanMacWrdJTextInternal::TextZone::T_Textbox
@ T_Textbox
Definition: HanMacWrdJText.cxx:233
MWAWSubDocument::m_input
std::shared_ptr< MWAWInputStream > m_input
the input
Definition: MWAWSubDocument.hxx:77
MWAWFont::m_extra
std::string m_extra
extra data
Definition: MWAWFont.hxx:573
HanMacWrdJTextInternal::PLC::PLC
PLC(PLCType w=Unknown, int id=0)
constructor
Definition: HanMacWrdJText.cxx:65
MWAWFont::boxedRoundedBit
@ boxedRoundedBit
Definition: MWAWFont.hxx:196
MWAWParagraph::JustificationCenter
@ JustificationCenter
Definition: MWAWParagraph.hxx:90
MWAWParagraph::m_breakStatus
MWAWVariable< int > m_breakStatus
a list of bits: 0x1 (unbreakable), 0x2 (do not break after)
Definition: MWAWParagraph.hxx:169
HanMacWrdJText::updateFootnoteInformations
void updateFootnoteInformations(long const &textZId, std::vector< long > const &fPosList)
update the footnote text zone id and the list of first char position
Definition: HanMacWrdJText.cxx:916
HanMacWrdJTextInternal::TextZone::m_type
Type m_type
the zone type
Definition: HanMacWrdJText.cxx:248
MWAWFont::shadowBit
@ shadowBit
Definition: MWAWFont.hxx:191
HanMacWrdJTextInternal::TextZone::T_Footer
@ T_Footer
Definition: HanMacWrdJText.cxx:233
MWAWParagraph.hxx
HanMacWrdJTextInternal::Paragraph::m_addPageBreak
bool m_addPageBreak
flag to store a force page break
Definition: HanMacWrdJText.cxx:303
HanMacWrdJTextInternal::CHAR
@ CHAR
Definition: HanMacWrdJText.cxx:61
HanMacWrdJParser
the main class to read a HanMac Word-J file
Definition: HanMacWrdJParser.hxx:109
MWAWRSRCParser.hxx
libmwaw::Bottom
@ Bottom
Definition: libmwaw_internal.hxx:176
libmwaw_internal.hxx
MWAWPosition.hxx
HanMacWrdJTextInternal::SubDocument::~SubDocument
~SubDocument() final
destructor
Definition: HanMacWrdJText.cxx:373
HanMacWrdJTextInternal::SubDocument::SubDocument
SubDocument(HanMacWrdJText &pars, MWAWInputStreamPtr const &input, std::string const &text)
constructor to send a string
Definition: HanMacWrdJText.cxx:363
HanMacWrdJText::readFtnPos
bool readFtnPos(MWAWEntry const &entry)
try to read the footnote position
Definition: HanMacWrdJText.cxx:2285
HanMacWrdJTextInternal::Section::getSection
MWAWSection getSection() const
returns a MWAWSection
Definition: HanMacWrdJText.cxx:173
HanMacWrdJTextInternal::PLCType
PLCType
different PLC types
Definition: HanMacWrdJText.cxx:61
HanMacWrdJText::readStyles
bool readStyles(MWAWEntry const &entry)
try to read the style zone (type 2)
Definition: HanMacWrdJText.cxx:1731
MWAWBorder
a border
Definition: libmwaw_internal.hxx:333
MWAWSection::m_columns
std::vector< Column > m_columns
the different column
Definition: MWAWSection.hxx:108
HanMacWrdJTextInternal::SubDocument::S_TextZone
@ S_TextZone
Definition: HanMacWrdJText.cxx:352
HanMacWrdJTextInternal::Paragraph
Internal: class to store the paragraph properties of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:264
HanMacWrdJTextInternal::Section::operator<<
friend std::ostream & operator<<(std::ostream &o, Section const &sec)
operator<<
Definition: HanMacWrdJText.cxx:203
libmwaw::VMiddle
@ VMiddle
Definition: libmwaw_internal.hxx:176
HanMacWrdJTextInternal::Section::m_extra
std::string m_extra
extra string string
Definition: HanMacWrdJText.cxx:227
MWAWEntry::length
long length() const
returns the length of the zone
Definition: MWAWEntry.hxx:93
MWAWVec2< int >
HanMacWrdJTextInternal::State
Internal: the state of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:312
MWAWFont::size
float size() const
returns the font size
Definition: MWAWFont.hxx:270
HanMacWrdJTextInternal::Token::m_id
long m_id
the id ( to be send)
Definition: HanMacWrdJText.cxx:150
MWAWGraphicListener.hxx
MWAWTabStop::m_alignment
Alignment m_alignment
the alignment ( left, center, ...)
Definition: MWAWParagraph.hxx:76
MWAWFont::boxedBit
@ boxedBit
Definition: MWAWFont.hxx:195
HanMacWrdJText::readFontNames
bool readFontNames(MWAWEntry const &entry)
try to read the fonts name zone (type 15)
Definition: HanMacWrdJText.cxx:1651
MWAWSection
a class which stores section properties
Definition: MWAWSection.hxx:45
HanMacWrdJTextInternal::State::m_fontList
std::vector< MWAWFont > m_fontList
the font list
Definition: HanMacWrdJText.cxx:330
MWAWDebug.hxx
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
HanMacWrdJTextInternal::SubDocument::m_cPos
long m_cPos
the first charecter position
Definition: HanMacWrdJText.cxx:389
HanMacWrdJText::numPages
int numPages() const
returns the number of pages
Definition: HanMacWrdJText.cxx:453
HanMacWrdJText::readParagraph
bool readParagraph(HanMacWrdJTextInternal::Paragraph &para, long endPos=-1)
try to read a paragraph ( reading up to endPos if endPos is defined )
Definition: HanMacWrdJText.cxx:1876
HanMacWrdJTextInternal::State::m_version
int m_version
the file version
Definition: HanMacWrdJText.cxx:328
MWAWVariable::get
const T & get() const
return the current value
Definition: libmwaw_internal.hxx:630
HanMacWrdJTextInternal::TextZone::T_Footnote
@ T_Footnote
Definition: HanMacWrdJText.cxx:233
MWAWFont::setOverlineWidth
void setOverlineWidth(float w)
sets the overline width
Definition: MWAWFont.hxx:406
HanMacWrdJTextInternal::Paragraph::~Paragraph
~Paragraph() final
destructor
Definition: HanMacWrdJText.cxx:306
HanMacWrdJTextInternal::SubDocument::m_type
Type m_type
the subdocument type
Definition: HanMacWrdJText.cxx:383
MWAWTabStop::m_position
double m_position
the tab position
Definition: MWAWParagraph.hxx:74
HanMacWrdJTextInternal::TextZone
Internal: a struct used to store a text zone.
Definition: HanMacWrdJText.cxx:231
MWAWFont::setId
void setId(int newId)
sets the font id
Definition: MWAWFont.hxx:264
HanMacWrdJTextInternal::State::m_ftnTextId
long m_ftnTextId
the footnote zone id;
Definition: HanMacWrdJText.cxx:336
MWAWField
a field
Definition: libmwaw_internal.hxx:399
MWAWField::PageNumber
@ PageNumber
Definition: libmwaw_internal.hxx:401
MWAWTabStop::m_decimalCharacter
uint16_t m_decimalCharacter
the decimal char
Definition: MWAWParagraph.hxx:80
MWAWParagraph::JustificationLeft
@ JustificationLeft
Definition: MWAWParagraph.hxx:90
HanMacWrdJText::readParagraphs
bool readParagraphs(MWAWEntry const &entry)
try to read the paragraphs zone (type 1)
Definition: HanMacWrdJText.cxx:2093
HanMacWrdJTextInternal::Token::m_length
int m_length
the token length in caller text
Definition: HanMacWrdJText.cxx:156
HanMacWrdJText::HanMacWrdJText
HanMacWrdJText(HanMacWrdJParser &parser)
constructor
Definition: HanMacWrdJText.cxx:435
HanMacWrdJTextInternal::SubDocument
Internal: the subdocument of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:348
HanMacWrdJTextInternal::PLC
Internal and low level: the PLC different types and their structures of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:63
libmwaw::Top
@ Top
Definition: libmwaw_internal.hxx:176
HanMacWrdJText::operator=
HanMacWrdJText & operator=(HanMacWrdJText const &orig)=delete
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
HanMacWrdJZoneHeader::m_n
int m_n
the number of item
Definition: HanMacWrdJParser.hxx:93
HanMacWrdJTextInternal::SubDocument::parse
void parse(MWAWListenerPtr &listener, libmwaw::SubDocumentType type) final
the parser function
Definition: HanMacWrdJText.cxx:397
MWAWBorder::Double
@ Double
Definition: libmwaw_internal.hxx:337
HanMacWrdJText::readTextZonesList
bool readTextZonesList(MWAWEntry const &entry)
try to read the list of textzones ( type 4)
Definition: HanMacWrdJText.cxx:922
HanMacWrdJTextInternal::Section::m_id
long m_id
the id
Definition: HanMacWrdJText.cxx:225
HanMacWrdJTextInternal::TextZone::TextZone
TextZone()
constructor
Definition: HanMacWrdJText.cxx:237
HanMacWrdJTextInternal
Internal: the structures of a HanMacWrdJText.
Definition: HanMacWrdJText.cxx:58
HanMacWrdJTextInternal::TextZone::m_parsed
bool m_parsed
true if the zone is sended
Definition: HanMacWrdJText.cxx:259
MWAWFont::italicBit
@ italicBit
Definition: MWAWFont.hxx:190
MWAWParagraph::m_marginsUnit
MWAWVariable< librevenge::RVNGUnit > m_marginsUnit
the margins INCH, ...
Definition: MWAWParagraph.hxx:150
MWAWFont::Line::Dot
@ Dot
Definition: MWAWFont.hxx:49
HanMacWrdJZoneHeader
a class use to store the classic header find before file zone
Definition: HanMacWrdJParser.hxx:60
MWAWParagraph::NoBreakWithNextBit
@ NoBreakWithNextBit
Definition: MWAWParagraph.hxx:88
MWAWTextListener.hxx
HanMacWrdJParser::decodeZone
bool decodeZone(MWAWEntry const &entry, librevenge::RVNGBinaryData &data)
try to decode a zone
Definition: HanMacWrdJParser.cxx:1168
HanMacWrdJParser::getColor
bool getColor(int colId, int patternId, MWAWColor &color) const
returns the color associated with a pattern
Definition: HanMacWrdJParser.cxx:207
libmwaw::Right
@ Right
Definition: libmwaw_internal.hxx:176
HanMacWrdJTextInternal::State::m_ftnFirstPosList
std::vector< long > m_ftnFirstPosList
the footnote begin positions
Definition: HanMacWrdJText.cxx:338
MWAWParagraph::m_spacingsInterlineUnit
MWAWVariable< librevenge::RVNGUnit > m_spacingsInterlineUnit
the interline unit PERCENT or INCH, ...
Definition: MWAWParagraph.hxx:158
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
HanMacWrdJTextInternal::TextZone::T_Table
@ T_Table
Definition: HanMacWrdJText.cxx:234
HanMacWrdJTextInternal::TextZone::m_id
long m_id
the file zone id
Definition: HanMacWrdJText.cxx:252
HanMacWrdJTextInternal::State::m_numPages
int m_numPages
Definition: HanMacWrdJText.cxx:343
HanMacWrdJZoneHeader::m_length
long m_length
the zone size
Definition: HanMacWrdJParser.hxx:91
libmwaw::DebugFile::addPos
void addPos(long pos)
adds a new position in the file
Definition: MWAWDebug.cxx:53
HanMacWrdJTextInternal::Paragraph::operator=
Paragraph & operator=(Paragraph const &)=default
MWAWEntry::valid
bool valid() const
returns true if the zone length is positive
Definition: MWAWEntry.hxx:99
HanMacWrdJText::flushExtra
void flushExtra()
sends the data which have not yet been sent to the listener
Definition: HanMacWrdJText.cxx:2378
MWAWFont::Script::super
static Script super()
return a yposition which correspond to a basic superscript
Definition: MWAWFont.hxx:130
HanMacWrdJTextInternal::Token::Token
Token()
constructor
Definition: HanMacWrdJText.cxx:105
HanMacWrdJTextInternal::State::m_textZoneList
std::vector< TextZone > m_textZoneList
the list of text zone
Definition: HanMacWrdJText.cxx:340
HanMacWrdJText::readTextToken
bool readTextToken(long endPos, HanMacWrdJTextInternal::TextZone &zone)
try to read the token in the text zone
Definition: HanMacWrdJText.cxx:1330
HanMacWrdJTextInternal::SubDocument::operator=
SubDocument & operator=(SubDocument const &orig)=delete
libmwaw::Left
@ Left
Definition: libmwaw_internal.hxx:176
MWAWTabStop::BAR
@ BAR
Definition: MWAWParagraph.hxx:48
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
HanMacWrdJZoneHeader::m_fieldSize
int m_fieldSize
the field size
Definition: HanMacWrdJParser.hxx:95
MWAWNote::FootNote
@ FootNote
Definition: libmwaw_internal.hxx:447
HanMacWrdJTextInternal::Section::m_numCols
int m_numCols
the number of column
Definition: HanMacWrdJText.cxx:219
HanMacWrdJTextInternal::Token::m_extra
std::string m_extra
extra string string
Definition: HanMacWrdJText.cxx:158
MWAWFont::Script
a small struct to define the script position in MWAWFont
Definition: MWAWFont.hxx:106
MWAWFont::Line::Double
@ Double
Definition: MWAWFont.hxx:51
HanMacWrdJTextInternal::Section::m_colWidth
std::vector< double > m_colWidth
the columns width
Definition: HanMacWrdJText.cxx:221
HanMacWrdJTextInternal::Section::m_colSep
std::vector< double > m_colSep
the columns separator width
Definition: HanMacWrdJText.cxx:223
HanMacWrdJTextInternal::Unknown
@ Unknown
Definition: HanMacWrdJText.cxx:61
HanMacWrdJTextInternal::Token::m_localId
int m_localId
the local id
Definition: HanMacWrdJText.cxx:152
MWAWListenerPtr
std::shared_ptr< MWAWListener > MWAWListenerPtr
a smart pointer of MWAWListener
Definition: libmwaw_internal.hxx:553
HanMacWrdJText::m_mainParser
HanMacWrdJParser * m_mainParser
the main parser;
Definition: HanMacWrdJText.hxx:147
MWAWFont.hxx
MWAWFont::Line::Dash
@ Dash
Definition: MWAWFont.hxx:49
MWAWTabStop::RIGHT
@ RIGHT
Definition: MWAWParagraph.hxx:48
HanMacWrdJText::readSections
bool readSections(MWAWEntry const &entry)
try to read the different sections
Definition: HanMacWrdJText.cxx:2174
MWAWFont
Class to store font.
Definition: MWAWFont.hxx:43
MWAWParagraph::m_extra
std::string m_extra
a string to store some errors
Definition: MWAWParagraph.hxx:190
MWAWField::Title
@ Title
Definition: libmwaw_internal.hxx:401
HanMacWrdJTextInternal::SubDocument::m_id
long m_id
the subdocument id
Definition: HanMacWrdJText.cxx:387
HanMacWrdJTextInternal::PLC::m_extra
std::string m_extra
extra data
Definition: HanMacWrdJText.cxx:99
HanMacWrdJText::updateTextZoneTypes
void updateTextZoneTypes(std::map< long, int > const &idTypeMap)
update the text zone type with map id->type
Definition: HanMacWrdJText.cxx:900
HanMacWrdJTextInternal::TOKEN
@ TOKEN
Definition: HanMacWrdJText.cxx:61
HanMacWrdJTextInternal::PLC::operator<<
friend std::ostream & operator<<(std::ostream &o, PLC const &plc)
operator<<
Definition: HanMacWrdJText.cxx:70
HanMacWrdJText::sendText
bool sendText(long id, long cPos, MWAWListenerPtr listener=MWAWListenerPtr())
send a text zone
Definition: HanMacWrdJText.cxx:524
libmwaw::DebugStream
std::stringstream DebugStream
a basic stream (if debug_with_files is not defined, does nothing)
Definition: MWAWDebug.hxx:61
MWAWEntry::name
const std::string & name() const
name of the entry
Definition: MWAWEntry.hxx:153
HanMacWrdJText.hxx
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
HanMacWrdJTextInternal::TextZone::m_tokenList
std::vector< Token > m_tokenList
the tokens list
Definition: HanMacWrdJText.cxx:256
HanMacWrdJText::readFont
bool readFont(MWAWFont &font, long endPos=-1)
try to read the font ( reading up to endPos if endPos is defined )
Definition: HanMacWrdJText.cxx:1439
HanMacWrdJTextInternal::SubDocument::Type
Type
the subdocument type
Definition: HanMacWrdJText.cxx:352
MWAWParagraph::NoBreakBit
@ NoBreakBit
Definition: MWAWParagraph.hxx:88
HanMacWrdJTextInternal::Paragraph::m_type
int m_type
the type
Definition: HanMacWrdJText.cxx:301
MWAWFont::setFlags
void setFlags(uint32_t fl)
sets the font attributes bold, ...
Definition: MWAWFont.hxx:325