MWAWDocument.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 
39 #ifndef MWAWDOCUMENT_HXX
40 #define MWAWDOCUMENT_HXX
41 
42 #ifdef _WINDLL
43 # ifdef BUILD_MWAW
44 # define MWAWLIB _declspec(dllexport)
45 # else
46 # define MWAWLIB _declspec(dllimport)
47 # endif
48 #else
49 # define MWAWLIB
50 #endif
51 
52 namespace librevenge
53 {
54 class RVNGBinaryData;
55 class RVNGDrawingInterface;
56 class RVNGPresentationInterface;
57 class RVNGSpreadsheetInterface;
58 class RVNGTextInterface;
59 class RVNGInputStream;
60 }
61 
66 {
67 public:
69  enum Confidence {
74  };
76  enum Kind {
84  };
86  enum Result {
93  };
95  enum Type {
152  MWAW_T_4DIMENSION /* 4th Dimension: TODO*/,
153 
163  };
164 
173  static MWAWLIB Confidence isFileFormatSupported(librevenge::RVNGInputStream *input, Type &type, Kind &kind);
174 
175  // ------------------------------------------------------------
176  // the different main parsers
177  // ------------------------------------------------------------
178 
187  static MWAWLIB Result parse(librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *documentInterface, char const *password=0);
188 
197  static MWAWLIB Result parse(librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *documentInterface, char const *password=0);
198 
208  static MWAWLIB Result parse(librevenge::RVNGInputStream *input, librevenge::RVNGPresentationInterface *documentInterface, char const *password=0);
209 
219  static MWAWLIB Result parse(librevenge::RVNGInputStream *input, librevenge::RVNGSpreadsheetInterface *documentInterface, char const *password=0);
220 
221  // ------------------------------------------------------------
222  // decoders of the embedded zones created by libmwaw
223  // ------------------------------------------------------------
224 
234  static MWAWLIB bool decodeGraphic(librevenge::RVNGBinaryData const &binary, librevenge::RVNGDrawingInterface *documentInterface);
235 
246  static MWAWLIB bool decodeSpreadsheet(librevenge::RVNGBinaryData const &binary, librevenge::RVNGSpreadsheetInterface *documentInterface);
247 
257  static MWAWLIB bool decodeText(librevenge::RVNGBinaryData const &binary, librevenge::RVNGTextInterface *documentInterface);
258 };
259 
260 #endif /* MWAWDOCUMENT_HXX */
261 // vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
MacDraw: TODO.
Definition: MWAWDocument.hxx:120
TeachText/SimpleText.
Definition: MWAWDocument.hxx:144
Tex-Edit (v2)
Definition: MWAWDocument.hxx:145
Wingz (v1.1)
Definition: MWAWDocument.hxx:147
Z-Write (v1.3)
Definition: MWAWDocument.hxx:151
Reserved for future use.
Definition: MWAWDocument.hxx:155
Reserved for future use.
Definition: MWAWDocument.hxx:160
ClarisWorks/AppleWorks: all versions, export text, draw(as text), paint, spreadsheet/database (as spr...
Definition: MWAWDocument.hxx:101
unknown
Definition: MWAWDocument.hxx:77
FoxBase: TODO.
Definition: MWAWDocument.hxx:107
presentation graphic
Definition: MWAWDocument.hxx:81
This class provides all the functions needed by applications to parse many pre-MacOSX documents...
Definition: MWAWDocument.hxx:65
Reserved for future use.
Definition: MWAWDocument.hxx:161
bitmap graphic
Definition: MWAWDocument.hxx:80
Type
an enum to define the different type of document
Definition: MWAWDocument.hxx:95
BeagleWorks (v1.0)/WordPerfect Works (v1.2): export database(as spreadsheet), draw, paint, spreadsheet and text files.
Definition: MWAWDocument.hxx:99
supported
Definition: MWAWDocument.hxx:73
Reserved for future use.
Definition: MWAWDocument.hxx:159
Symposium: TODO.
Definition: MWAWDocument.hxx:143
encryption not supported
Definition: MWAWDocument.hxx:71
DBase: TODO.
Definition: MWAWDocument.hxx:102
unknown error
Definition: MWAWDocument.hxx:92
Definition: MWAWDocument.hxx:152
Microsoft Works Mac: export database(as spreadsheet), graphic, spreadsheet and text files...
Definition: MWAWDocument.hxx:129
LightWayText (only v4 Mac format)
Definition: MWAWDocument.hxx:117
Microsoft Multiplan: TODO.
Definition: MWAWDocument.hxx:127
More (v2-3): retrieve the organization part but not the slide/tree parts.
Definition: MWAWDocument.hxx:125
Reserved for future use.
Definition: MWAWDocument.hxx:154
Trapeze spreadsheet: TODO.
Definition: MWAWDocument.hxx:146
OverVUE: TODO.
Definition: MWAWDocument.hxx:133
SuperPaint: export drawing and paint v1 document.
Definition: MWAWDocument.hxx:142
Nisus Writer (v3.4-v6.5)
Definition: MWAWDocument.hxx:132
MacPaint: v1-v2.
Definition: MWAWDocument.hxx:122
Reserved for future use.
Definition: MWAWDocument.hxx:157
static MWAWLIB bool decodeSpreadsheet(librevenge::RVNGBinaryData const &binary, librevenge::RVNGSpreadsheetInterface *documentInterface)
Parses the spreadsheet contained in the binary data and called documentInterface to reconstruct a spr...
Definition: MWAWDocument.cxx:351
Adobe Illustrator: TODO.
Definition: MWAWDocument.hxx:98
FullImpact: TODO.
Definition: MWAWDocument.hxx:109
problem when reading the OLE structure
Definition: MWAWDocument.hxx:89
static MWAWLIB bool decodeGraphic(librevenge::RVNGBinaryData const &binary, librevenge::RVNGDrawingInterface *documentInterface)
Parses the graphic contained in the binary data and called documentInterface to reconstruct a graphic...
Definition: MWAWDocument.cxx:334
FrameMaker: TODO.
Definition: MWAWDocument.hxx:108
Reserved for future use.
Definition: MWAWDocument.hxx:158
Ready,Set,Go!: TODO.
Definition: MWAWDocument.hxx:137
word processing file
Definition: MWAWDocument.hxx:78
PixelPaint: TODO.
Definition: MWAWDocument.hxx:135
problem when accessing file
Definition: MWAWDocument.hxx:88
Family Tree Maker: TODO.
Definition: MWAWDocument.hxx:105
#define MWAWLIB
Definition: MWAWDocument.hxx:49
PageMaker: TODO.
Definition: MWAWDocument.hxx:134
static MWAWLIB Result parse(librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *documentInterface, char const *password=0)
Parses the input stream content.
Definition: MWAWDocument.cxx:294
encryption supported
Definition: MWAWDocument.hxx:72
FullPaint: TODO.
Definition: MWAWDocument.hxx:110
static MWAWLIB Confidence isFileFormatSupported(librevenge::RVNGInputStream *input, Type &type, Kind &kind)
Analyzes the content of an input stream to see if it can be parsed.
Definition: MWAWDocument.cxx:99
MacWrite II/Pro.
Definition: MWAWDocument.hxx:131
RagTime: TODO.
Definition: MWAWDocument.hxx:136
not supported
Definition: MWAWDocument.hxx:70
Reserved for future use.
Definition: MWAWDocument.hxx:156
Kind
an enum to define the kind of document
Definition: MWAWDocument.hxx:76
conversion ok
Definition: MWAWDocument.hxx:87
database
Definition: MWAWDocument.hxx:83
Result
an enum which defines the result of the file parsing
Definition: MWAWDocument.hxx:86
static MWAWLIB bool decodeText(librevenge::RVNGBinaryData const &binary, librevenge::RVNGTextInterface *documentInterface)
Parses the text contained in the binary data and called documentInterface to reconstruct a text...
Definition: MWAWDocument.cxx:368
Microsoft Word (v1-v5)
Definition: MWAWDocument.hxx:128
MacDraft: TODO.
Definition: MWAWDocument.hxx:119
eDOC (v2)
Definition: MWAWDocument.hxx:104
problem when using the given password
Definition: MWAWDocument.hxx:91
Kaleida Graph: TODO.
Definition: MWAWDocument.hxx:116
Unrecognised file type.
Definition: MWAWDocument.hxx:96
FullWrite Professional: basic.
Definition: MWAWDocument.hxx:111
Acta (v2 and Classic v1)
Definition: MWAWDocument.hxx:97
Confidence
an enum which defines if we have confidence that a file is supported
Definition: MWAWDocument.hxx:69
DocMaker (v4)
Definition: MWAWDocument.hxx:103
MacDraw II/Pro: TODO.
Definition: MWAWDocument.hxx:121
FileMaker: TODO.
Definition: MWAWDocument.hxx:106
HanMac Word-K (v2.0.5-2.0.6)
Definition: MWAWDocument.hxx:114
Claris Resolve (v1.1)
Definition: MWAWDocument.hxx:100
MindWrite.
Definition: MWAWDocument.hxx:124
XPress: TODO.
Definition: MWAWDocument.hxx:150
Microsoft File: TODO.
Definition: MWAWDocument.hxx:126
Reserved for future use.
Definition: MWAWDocument.hxx:162
GreatWorks (v1-v2): export text, drawing, paint and spreadsheet document.
Definition: MWAWDocument.hxx:112
WriteNow.
Definition: MWAWDocument.hxx:148
WriterPlus.
Definition: MWAWDocument.hxx:149
MacWrite.
Definition: MWAWDocument.hxx:130
MacDoc (v1.3)
Definition: MWAWDocument.hxx:118
InfoGenie: TODO.
Definition: MWAWDocument.hxx:115
Mariner Write (only v1.6-v3.5 Mac Classic)
Definition: MWAWDocument.hxx:123
problem when parsing the file
Definition: MWAWDocument.hxx:90
vectorized grphic
Definition: MWAWDocument.hxx:79
HanMac Word-J (v2.0.4)
Definition: MWAWDocument.hxx:113
spreadsheet
Definition: MWAWDocument.hxx:82

Generated on Fri Jul 25 2014 13:24:33 for libmwaw by doxygen 1.8.7