MWAWDocument Class Reference documentation

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Static Public Member Functions | List of all members
MWAWDocument Class Reference

This class provides all the functions needed by applications to parse many pre-MacOSX documents. More...

`#include <MWAWDocument.hxx>`

## Public Types
enum | Confidence { MWAW_C_NONE =0, MWAW_C_UNSUPPORTED_ENCRYPTION, MWAW_C_SUPPORTED_ENCRYPTION, MWAW_C_EXCELLENT }
| an enum which defines if we have confidence that a file is supported More...
enum | Kind { MWAW_K_UNKNOWN =0, MWAW_K_TEXT, MWAW_K_DRAW, MWAW_K_PAINT, MWAW_K_PRESENTATION, MWAW_K_SPREADSHEET, MWAW_K_DATABASE }
| an enum to define the kind of document More...
enum | Result { MWAW_R_OK =0, MWAW_R_FILE_ACCESS_ERROR, MWAW_R_OLE_ERROR, MWAW_R_PARSE_ERROR, MWAW_R_PASSWORD_MISSMATCH_ERROR, MWAW_R_UNKNOWN_ERROR }
| an enum which defines the result of the file parsing More...
enum | Type { MWAW_T_UNKNOWN =0, MWAW_T_ACTA, MWAW_T_ADOBEILLUSTRATOR, MWAW_T_BEAGLEWORKS, MWAW_T_CLARISRESOLVE, MWAW_T_CLARISWORKS, MWAW_T_DBASE, MWAW_T_DOCMAKER, MWAW_T_EDOC, MWAW_T_FAMILYTREEMAKER, MWAW_T_FILEMAKER, MWAW_T_FOXBASE, MWAW_T_FRAMEMAKER, MWAW_T_FULLIMPACT, MWAW_T_FULLPAINT, MWAW_T_FULLWRITE, MWAW_T_GREATWORKS, MWAW_T_HANMACWORDJ, MWAW_T_HANMACWORDK, MWAW_T_INFOGENIE, MWAW_T_KALEIDAGRAPH, MWAW_T_LIGHTWAYTEXT, MWAW_T_MACDOC, MWAW_T_MACDRAFT, MWAW_T_MACDRAW, MWAW_T_MACDRAWPRO, MWAW_T_MACPAINT, MWAW_T_MARINERWRITE, MWAW_T_MINDWRITE, MWAW_T_MORE, MWAW_T_MICROSOFTFILE, MWAW_T_MICROSOFTMULTIPLAN, MWAW_T_MICROSOFTWORD, MWAW_T_MICROSOFTWORKS, MWAW_T_MACWRITE, MWAW_T_MACWRITEPRO, MWAW_T_NISUSWRITER, MWAW_T_OVERVUE, MWAW_T_PAGEMAKER, MWAW_T_PIXELPAINT, MWAW_T_RAGTIME, MWAW_T_READYSETGO, MWAW_T_SUPERPAINT, MWAW_T_SYMPOSIUM, MWAW_T_TEACHTEXT, MWAW_T_TEXEDIT, MWAW_T_TRAPEZE, MWAW_T_WINGZ, MWAW_T_WRITENOW, MWAW_T_WRITERPLUS, MWAW_T_XPRESS, MWAW_T_ZWRITE, MWAW_T_4DIMENSION, MWAW_T_RESERVED1, MWAW_T_RESERVED2, MWAW_T_RESERVED3, MWAW_T_RESERVED4, MWAW_T_RESERVED5, MWAW_T_RESERVED6, MWAW_T_RESERVED7, MWAW_T_RESERVED8, MWAW_T_RESERVED9 }
| an enum to define the different type of document More...

## Static Public Member Functions
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. More...
static MWAWLIB Result | parse (librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *documentInterface, char const *password=0)
| Parses the input stream content. More...
static MWAWLIB Result | parse (librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *documentInterface, char const *password=0)
| Parses the input stream content. More...
static MWAWLIB Result | parse (librevenge::RVNGInputStream *input, librevenge::RVNGPresentationInterface *documentInterface, char const *password=0)
| Parses the input stream content. More...
static MWAWLIB Result | parse (librevenge::RVNGInputStream *input, librevenge::RVNGSpreadsheetInterface *documentInterface, char const *password=0)
| Parses the input stream content. More...
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. More...
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 spreadsheet. More...
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. More...

## Detailed Description

This class provides all the functions needed by applications to parse many pre-MacOSX documents.

## Member Enumeration Documentation

enum MWAWDocument::Confidence

an enum which defines if we have confidence that a file is supported

Enumerator
MWAW_C_NONE | not supported
MWAW_C_UNSUPPORTED_ENCRYPTION | encryption not supported
MWAW_C_SUPPORTED_ENCRYPTION | encryption supported
MWAW_C_EXCELLENT | supported

enum MWAWDocument::Kind

an enum to define the kind of document

Enumerator
MWAW_K_UNKNOWN | unknown
MWAW_K_TEXT | word processing file
MWAW_K_DRAW | vectorized grphic
MWAW_K_PAINT | bitmap graphic
MWAW_K_PRESENTATION | presentation graphic
MWAW_K_SPREADSHEET | spreadsheet
MWAW_K_DATABASE | database

enum MWAWDocument::Result

an enum which defines the result of the file parsing

Enumerator
MWAW_R_OK | conversion ok
MWAW_R_FILE_ACCESS_ERROR | problem when accessing file
MWAW_R_OLE_ERROR | problem when reading the OLE structure
MWAW_R_PARSE_ERROR | problem when parsing the file
MWAW_R_PASSWORD_MISSMATCH_ERROR | problem when using the given password
MWAW_R_UNKNOWN_ERROR | unknown error

enum MWAWDocument::Type

an enum to define the different type of document

Enumerator
MWAW_T_UNKNOWN | Unrecognised file type.
MWAW_T_ACTA | Acta (v2 and Classic v1)
MWAW_T_ADOBEILLUSTRATOR | Adobe Illustrator: TODO.
MWAW_T_BEAGLEWORKS | BeagleWorks (v1.0)/WordPerfect Works (v1.2): export database(as spreadsheet), draw, paint, spreadsheet and text files.
MWAW_T_CLARISRESOLVE | Claris Resolve (v1.1)
MWAW_T_CLARISWORKS | ClarisWorks/AppleWorks: all versions, export database (as spreadsheet), draw(as text), paint, presentation, spreadsheet, text document.
MWAW_T_DBASE | DBase: TODO.
MWAW_T_DOCMAKER | DocMaker (v4)
MWAW_T_EDOC | eDOC (v2)
MWAW_T_FAMILYTREEMAKER | Family Tree Maker: TODO.
MWAW_T_FILEMAKER | FileMaker: TODO.
MWAW_T_FOXBASE | FoxBase: TODO.
MWAW_T_FRAMEMAKER | FrameMaker: TODO.
MWAW_T_FULLIMPACT | FullImpact: TODO.
MWAW_T_FULLPAINT | FullPaint: TODO.
MWAW_T_FULLWRITE | FullWrite Professional: basic.
MWAW_T_GREATWORKS | GreatWorks (v1-v2): export text, drawing, paint and spreadsheet document.
MWAW_T_HANMACWORDJ | HanMac Word-J (v2.0.4)
MWAW_T_HANMACWORDK | HanMac Word-K (v2.0.5-2.0.6)
MWAW_T_INFOGENIE | InfoGenie: TODO.
MWAW_T_KALEIDAGRAPH | Kaleida Graph: TODO.
MWAW_T_LIGHTWAYTEXT | LightWayText (only v4 Mac format)
MWAW_T_MACDOC | MacDoc (v1.3)
MWAW_T_MACDRAFT | MacDraft: TODO.
MWAW_T_MACDRAW | MacDraw: v0-v1.
MWAW_T_MACDRAWPRO | MacDraw II: v1.0-v1.1, MacDraw Pro: v1.
MWAW_T_MACPAINT | MacPaint: v1-v2.
MWAW_T_MARINERWRITE | Mariner Write (only v1.6-v3.5 Mac Classic)
MWAW_T_MINDWRITE | MindWrite.
MWAW_T_MORE | More (v2-3): retrieve the organization part but not the slide/tree parts.
MWAW_T_MICROSOFTFILE | Microsoft File: TODO.
MWAW_T_MICROSOFTMULTIPLAN | Microsoft Multiplan: TODO.
MWAW_T_MICROSOFTWORD | Microsoft Word (v1-v5)
MWAW_T_MICROSOFTWORKS | Microsoft Works Mac: export database(as spreadsheet), graphic, spreadsheet and text files.
MWAW_T_MACWRITE | MacWrite.
MWAW_T_MACWRITEPRO | MacWrite II/Pro.
MWAW_T_NISUSWRITER | Nisus Writer (v3.4-v6.5)
MWAW_T_OVERVUE | OverVUE: TODO.
MWAW_T_PAGEMAKER | PageMaker: TODO.
MWAW_T_PIXELPAINT | PixelPaint: TODO.
MWAW_T_RAGTIME | RagTime: (Mac v2.1-v3.2)
MWAW_T_READYSETGO | Ready,Set,Go!: TODO.
MWAW_T_SUPERPAINT | SuperPaint: export drawing and paint v1 document. Note the other documents v2-v3 seems to be basic MacPaint/Pict files
MWAW_T_SYMPOSIUM | Symposium: TODO.
MWAW_T_TEACHTEXT | TeachText/SimpleText.
MWAW_T_TEXEDIT | Tex-Edit (v2)
MWAW_T_TRAPEZE | Trapeze spreadsheet: TODO.
MWAW_T_WINGZ | Wingz (v1.1)
MWAW_T_WRITENOW | WriteNow.
MWAW_T_WRITERPLUS | WriterPlus.
MWAW_T_XPRESS | XPress: TODO.
MWAW_T_ZWRITE | Z-Write (v1.3)
MWAW_T_4DIMENSION |
MWAW_T_RESERVED1 | Reserved for future use.
MWAW_T_RESERVED2 | Reserved for future use.
MWAW_T_RESERVED3 | Reserved for future use.
MWAW_T_RESERVED4 | Reserved for future use.
MWAW_T_RESERVED5 | Reserved for future use.
MWAW_T_RESERVED6 | Reserved for future use.
MWAW_T_RESERVED7 | Reserved for future use.
MWAW_T_RESERVED8 | Reserved for future use.
MWAW_T_RESERVED9 | Reserved for future use.

## Member Function Documentation

bool MWAWDocument::decodeGraphic | ( | librevenge::RVNGBinaryData const & | binary,
|  | librevenge::RVNGDrawingInterface * | documentInterface
| ) |  |
| static

Parses the graphic contained in the binary data and called documentInterface to reconstruct a graphic.

The input is normally send to a librevenge::RVNGXXXInterface with mimeType="image/mwaw-odg", ie. it must correspond to a picture created by the MWAWGraphicEncoder class via a MWAWPropertyEncoder.

Parameters

  binary | a list of librevenge::RVNGDrawingInterface stored in a documentInterface,
  documentInterface | the RVNGDrawingInterface which will convert the graphic is some specific format.

Note
  this function appears with MWAW_GRAPHIC_VERSION==1 in libmwaw-0.2

bool MWAWDocument::decodeSpreadsheet | ( | librevenge::RVNGBinaryData const & | binary,
|  | librevenge::RVNGSpreadsheetInterface * | documentInterface
| ) |  |
| static

Parses the spreadsheet contained in the binary data and called documentInterface to reconstruct a spreadsheet.

The input is normally send to a librevenge::RVNGXXXInterface with mimeType="image/mwaw-ods", ie. it must correspond to a spreadsheet created by the MWAWSpreadsheetInterface class via a MWAWPropertyEncoder.

Parameters

  binary | a list of librevenge::RVNGSpreadsheetInterface stored in a documentInterface,
  documentInterface | the RVNGSpreadsheetInterface which will convert the spreadsheet is some specific format.

Note
  this function appears in libmwaw-0.3.0 (and returns always false). It was only implemented with MWAW_SPREADSHEET_VERSION==2 in libmwaw-0.3.1

bool MWAWDocument::decodeText | ( | librevenge::RVNGBinaryData const & | binary,
|  | librevenge::RVNGTextInterface * | documentInterface
| ) |  |
| static

Parses the text contained in the binary data and called documentInterface to reconstruct a text.

The input is normally send to a librevenge::RVNGXXXInterface with mimeType="image/mwaw-odt", ie. it must correspond to a text created by the MWAWTextInterface class via a MWAWPropertyEncoder.

Parameters

  binary | a list of librevenge::RVNGTextInterface stored in a documentInterface,
  documentInterface | the RVNGTextInterface which will convert the text is some specific format.

Note
  Reserved for future use. Actually, it only returns false.

MWAWDocument::Confidence MWAWDocument::isFileFormatSupported | ( | librevenge::RVNGInputStream * | input,
|  | MWAWDocument::Type & | type,
|  | Kind & | kind
| ) |  |
| static

Analyzes the content of an input stream to see if it can be parsed.

Parameters

  input | The input stream
  type | The document type ( filled if the file is supported )
  kind | The document kind ( filled if the file is supported )

Returns
  A confidence value which represents the likelyhood that the content from the input stream can be parsed

Note
  encryption enum appears with MWAW_TEXT_VERSION==2

MWAWDocument::Result MWAWDocument::parse | ( | librevenge::RVNGInputStream * | input,
|  | librevenge::RVNGTextInterface * | documentInterface,
|  | char const * | password = `0`
| ) |  |
| static

Parses the input stream content.

It will make callbacks to the functions provided by a librevenge::RVNGTextInterface class implementation when needed. This is often commonly called the 'main parsing routine'.

Parameters

  input | The input stream
  documentInterface | A RVNGTextInterface implementation
  password | The file password

Note
  password appears with MWAW_TEXT_VERSION==2

MWAWDocument::Result MWAWDocument::parse | ( | librevenge::RVNGInputStream * | input,
|  | librevenge::RVNGDrawingInterface * | documentInterface,
|  | char const * | password = `0`
| ) |  |
| static

Parses the input stream content.

It will make callbacks to the functions provided by a librevenge::RVNGDrawingInterface class implementation when needed. This is often commonly called the 'main parsing routine'.

Parameters

  input | The input stream
  documentInterface | A RVNGDrawingInterface implementation
  password | The file password

Note
  Reserved for future use. Actually, it only returns MWAW_R_UNKNOWN_ERROR.

MWAWDocument::Result MWAWDocument::parse | ( | librevenge::RVNGInputStream * | input,
|  | librevenge::RVNGPresentationInterface * | documentInterface,
|  | char const * | password = `0`
| ) |  |
| static

Parses the input stream content.

It will make callbacks to the functions provided by a librevenge::RVNGPresentationInterface class implementation when needed. This is often commonly called the 'main parsing routine'.

Parameters

  input | The input stream
  documentInterface | A RVNGPresentationInterface implementation
  password | The file password

Note
  Reserved for future use. Actually, it only returns MWAW_R_UNKNOWN_ERROR.

MWAWDocument::Result MWAWDocument::parse | ( | librevenge::RVNGInputStream * | input,
|  | librevenge::RVNGSpreadsheetInterface * | documentInterface,
|  | char const * | password = `0`
| ) |  |
| static

Parses the input stream content.

It will make callbacks to the functions provided by a librevenge::RVNGSpreadsheetInterface class implementation when needed. This is often commonly called the 'main parsing routine'.

Parameters

  input | The input stream
  documentInterface | A RVNGSpreadsheetInterface implementation
  password | The file password

Note
  this function appears with MWAW_SPREADSHEET_VERSION==1 in libmwaw-0.3

The documentation for this class was generated from the following files:

- MWAWDocument.hxx
- MWAWDocument.cxx