28 #include <librevenge-stream/librevenge-stream.h>
64 std::string
getDebugString(std::shared_ptr<WPSStream>
const &stream)
const;
100 char const *password=
nullptr);
104 void parse(librevenge::RVNGSpreadsheetInterface *documentInterface) final;
118 bool getField(
int fId, librevenge::RVNGString &text,
120 librevenge::RVNGString const &fileName) const;
std::map< int, int > m_posFontIdMap
the position to font map(complex text)
Definition: Quattro9.h:70
std::shared_ptr< Quattro9Spreadsheet > m_spreadsheetParser
the spreadsheet manager
Definition: Quattro9.h:209
static RVNGInputStreamPtr decodeStream(RVNGInputStreamPtr input, std::vector< uint8_t > const &key)
try to decode a stream, if successful, replace the stream'input by the new one
Definition: Quattro9.cpp:1808
std::shared_ptr< WKSContentListener > createListener(librevenge::RVNGSpreadsheetInterface *interface)
creates the main listener
Definition: Quattro9.cpp:581
Quattro9Parser(RVNGInputStreamPtr &input, WPSHeaderPtr &header, libwps_tools_win::Font::Type encoding=libwps_tools_win::Font::UNKNOWN, char const *password=nullptr)
constructor
Definition: Quattro9.cpp:404
define the font properties
Definition: WPSFont.h:36
void sendHeaderFooter(bool header)
send the header/footer
Definition: Quattro9.cpp:1740
libwps_tools_win::Font::Type getDefaultFontType() const
returns the default font type, ie.
Definition: Quattro9.cpp:422
bool getFont(int id, WPSFont &font) const
returns the font corresponding to an id
Definition: Quattro9.cpp:509
bool getExternalFileName(int fId, librevenge::RVNGString &fName) const
returns the name of the fId file
Definition: Quattro9.cpp:427
int version() const
return the file version
Definition: Quattro9.cpp:417
static bool readOleBOlePart(std::shared_ptr< WPSStream > stream)
try to read the BOlePart sub stream: a zone which contains 5 long
Definition: Quattro9.cpp:1784
std::string getDebugString(std::shared_ptr< WPSStream > const &stream) const
internal: returns a debug string
Definition: Quattro9.cpp:313
~Quattro9Parser() final
destructor
Definition: Quattro9.cpp:413
Definition: Quattro9.h:43
a structure used to define a picture style
Definition: WPSGraphicStyle.h:37
bool readDocumentStrings(std::shared_ptr< WPSStream > const &stream)
read a zone 407 which contains a list of stream
Definition: Quattro9.cpp:1627
bool readFontStyles(std::shared_ptr< WPSStream > const &stream)
read a font style zone: zone 7
Definition: Quattro9.cpp:1336
void parse(librevenge::RVNGSpreadsheetInterface *documentInterface) final
called by WPSDocument to parse the file
Definition: Quattro9.cpp:535
bool readZone(std::shared_ptr< WPSStream > &stream)
try to read a zone
Definition: Quattro9.cpp:725
bool sendPageGraphics(int sheetId) const
send the page graphic corresponding to a sheet
Definition: Quattro9.cpp:501
static bool readFilePositions(std::shared_ptr< WPSStream > const &stream, long(&filePos)[2])
read a zone which contains two files position (prev and next): zone 2,402,602,a02 ...
Definition: Quattro9.cpp:1689
std::shared_ptr< librevenge::RVNGInputStream > RVNGInputStreamPtr
shared pointer to librevenge::RVNGInputStream
Definition: libwps_internal.h:87
bool readZones()
finds the different zones in the main OLE stream (spreadsheet, chart, print, ...) ...
Definition: Quattro9.cpp:648
std::shared_ptr< Quattro9Graph > m_graphParser
the graph manager
Definition: Quattro9.h:207
bool readPString(std::shared_ptr< WPSStream > const &stream, long endPos, Quattro9ParserInternal::TextEntry &entry)
try to read a string: length[2bytes], unknow[bytes] followed by the string
Definition: Quattro9.cpp:1258
void send(std::shared_ptr< WPSStream > const &stream, WPSFont const &font, libwps_tools_win::Font::Type type, WKSContentListenerPtr &listener)
sends the text to the main listener
Definition: Quattro9.cpp:322
bool empty() const
returns true if the string is empty
Definition: Quattro9.h:55
bool valid(bool checkId=false) const
returns true if the zone length is positive
Definition: WPSEntry.h:89
TextEntry()
constructor
Definition: Quattro9.h:46
This class parses Quattro9 Pro spreadsheet file.
Definition: Quattro9Spreadsheet.h:56
bool readTextStyles(std::shared_ptr< WPSStream > const &stream, long endPos, Quattro9ParserInternal::TextEntry &entry)
read a text entry style zone
Definition: Quattro9.cpp:1406
std::string m_extra
extra data
Definition: Quattro9.h:74
the class to store a color
Definition: libwps_internal.h:280
This class parses Quattro Pro WP spreadsheet: .qpw.
Definition: Quattro9.h:90
Vec2f getCellPosition(int sheetId, Vec2i const &cell) const
returns the beginning position of a cell
Definition: Quattro9.cpp:520
bool getColor(int id, WPSColor &color) const
returns the color corresponding to an id
Definition: Quattro9.cpp:491
bool readTextFontStyles(std::shared_ptr< WPSStream > const &stream, int dataSz, WPSFont &font)
read a font style in a text entry zone
Definition: Quattro9.cpp:1458
bool checkHeader(WPSHeader *header, bool strict=false)
checks if the document header is correct (or not)
Definition: Quattro9.cpp:599
WPSEntry m_entry
the text entry
Definition: Quattro9.h:66
static bool readOleLinkInfo(std::shared_ptr< WPSStream > stream)
try to read the link info sub stream
Definition: Quattro9.cpp:1754
std::shared_ptr< WKSContentListener > m_listener
Definition: Quattro9.h:203
std::shared_ptr< WKSContentListener > WKSContentListenerPtr
shared pointer to WKSContentListener
Definition: libwps_internal.h:114
bool getPattern(int id, WPSGraphicStyle::Pattern &pattern) const
returns the pattern corresponding to a pattern id between 0 and 24
Definition: Quattro9.cpp:496
std::shared_ptr< Quattro9ParserInternal::State > m_state
the listener (if set)
Definition: Quattro9.h:205
basic class to store an entry in a file This contained :
Definition: WPSEntry.h:38
Internal: the subdocument of a WPS4Parser.
Definition: Quattro9.cpp:60
Internal: namespace to define internal class of Quattro9Parser.
Definition: Quattro9.cpp:57
small structure use to store a stream and it debug file
Definition: WPSStream.h:29
bool readFontNames(std::shared_ptr< WPSStream > const &stream)
read a font name zone: zone 6
Definition: Quattro9.cpp:1293
std::vector< WPSFont > m_fontsList
the list of fonts
Definition: Quattro9.h:68
This class parses Quattro9Pro graph file.
Definition: Quattro9Graph.h:52
librevenge::RVNGString getString(std::shared_ptr< WPSStream > const &stream, libwps_tools_win::Font::Type type=libwps_tools_win::Font::WIN3_WEUROPE) const
returns the string
Definition: Quattro9.cpp:280
bool parseOLEStream(RVNGInputStreamPtr input, std::string const &avoid="")
try to parse the OLE stream(except the main stream)
Definition: Quattro9.cpp:675
void addDocumentStrings()
add the document strings to the spreadsheetParser
Definition: Quattro9.cpp:525
std::shared_ptr< WPSHeader > WPSHeaderPtr
shared pointer to WPSHeader
Definition: libwps_internal.h:109
Definition: WKSParser.h:33
bool getField(int fId, librevenge::RVNGString &text, QuattroFormulaInternal::CellReference &ref, librevenge::RVNGString const &fileName) const
returns the text and cell of a field instruction
Definition: Quattro9.cpp:444
Definition: WKSContentListener.h:53
int m_flag
the flag
Definition: Quattro9.h:72
bool readDocumentFields(std::shared_ptr< WPSStream > const &stream)
read a zone 406 which contains a list of fields
Definition: Quattro9.cpp:1521