Main Page
Namespaces
Classes
Files
File List
File Members
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
libwpg
53
{
54
class
WPGPaintInterface;
55
}
56
57
class
WPXBinaryData;
58
class
WPXDocumentInterface;
59
class
WPXInputStream;
60
64
class
MWAWDocument
65
{
66
public
:
68
enum
Confidence
{
69
MWAW_C_NONE
=0,
70
MWAW_C_UNSUPPORTED_ENCRYPTION
,
71
MWAW_C_SUPPORTED_ENCRYPTION
,
72
MWAW_C_EXCELLENT
73
};
75
enum
Kind
{
76
MWAW_K_UNKNOWN
=0 ,
77
MWAW_K_TEXT
,
78
MWAW_K_DRAW
,
79
MWAW_K_PAINT
,
80
MWAW_K_PRESENTATION
,
81
MWAW_K_SPREADSHEET
,
82
MWAW_K_DATABASE
83
};
85
enum
Result
{
86
MWAW_R_OK
=0 ,
87
MWAW_R_FILE_ACCESS_ERROR
,
88
MWAW_R_OLE_ERROR
,
89
MWAW_R_PARSE_ERROR
,
90
MWAW_R_PASSWORD_MISSMATCH_ERROR
,
91
MWAW_R_UNKNOWN_ERROR
92
};
94
enum
Type
{
95
MWAW_T_UNKNOWN
=0 ,
96
MWAW_T_ACTA
,
97
MWAW_T_BEAGLEWORKS
,
98
MWAW_T_CLARISWORKS
,
99
MWAW_T_DOCMAKER
,
100
MWAW_T_EDOC
,
101
MWAW_T_FRAMEMAKER
,
102
MWAW_T_FULLWRITE
,
103
MWAW_T_GREATWORKS
,
104
MWAW_T_HANMACWORDJ
,
105
MWAW_T_HANMACWORDK
,
106
MWAW_T_LIGHTWAYTEXT
,
107
MWAW_T_MACDOC
,
108
MWAW_T_MACDRAW
,
109
MWAW_T_MACPAINT
,
110
MWAW_T_MARINERWRITE
,
111
MWAW_T_MINDWRITE
,
112
MWAW_T_MORE
,
113
MWAW_T_MICROSOFTWORD
,
114
MWAW_T_MICROSOFTWORKS
,
115
MWAW_T_MACWRITE
,
116
MWAW_T_MACWRITEPRO
,
117
MWAW_T_NISUSWRITER
,
118
MWAW_T_PAGEMAKER
,
119
MWAW_T_RAGTIME
,
120
MWAW_T_READYSETGO
,
121
MWAW_T_TEACHTEXT
,
122
MWAW_T_TEXEDIT
,
123
MWAW_T_WRITENOW
,
124
MWAW_T_WRITERPLUS
,
125
MWAW_T_XPRESS
,
126
MWAW_T_ZWRITE
,
127
128
MWAW_T_RESERVED1
,
129
MWAW_T_RESERVED2
,
130
MWAW_T_RESERVED3
,
131
MWAW_T_RESERVED4
,
132
MWAW_T_RESERVED5
,
133
MWAW_T_RESERVED6
,
134
MWAW_T_RESERVED7
,
135
MWAW_T_RESERVED8
,
136
MWAW_T_RESERVED9
137
};
138
147
static
MWAWLIB
Confidence
isFileFormatSupported
(WPXInputStream *input,
Type
&type,
Kind
&kind);
156
static
MWAWLIB
Result
parse
(WPXInputStream *input, WPXDocumentInterface *documentInterface,
char
const
*password=0);
157
168
static
MWAWLIB
bool
decodeGraphic
(WPXBinaryData
const
&binary, libwpg::WPGPaintInterface *paintInterface);
169
};
170
171
#endif
/* MWAWDOCUMENT_HXX */
172
// vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
Generated on Wed May 7 2014 00:30:20 for libmwaw by
doxygen
1.8.3.1