filters.h File Reference

(r1785/r1476)

#include "list.h"
#include "pathname.h"
#include "docrect.h"
#include "attr.h"
#include "attrmgr.h"
#include "txtattr.h"
#include "fontclass.h"
#include <limits.h>
#include "oilfltrs.h"

Go to the source code of this file.

Classes

class  FilterFlags
 Indicate what functions a filter is capable of. More...
class  ImportPosition
class  SnapShotItem
 Defines what is saved during a current attribute snap shot. More...
class  SnapShotList
 Defines what is saved during a current attribute snap shot. More...
class  AttrRecordItem
 Used to record the state of an AttributeEntry array. More...
class  AttrRecordList
 Used to store a stack of AttributeEntry states. Used by filters that need to keep an attribute state stack (eg the RTF filter). More...
class  Filter
 Pure base class for import and export filters. Provides static functions to initialise and deinitialise all the available filters. More...
class  FilterRenderCallback
 Handling callbacks from RenderTree Notes: RenderTree function calls the main function in this class when it's about to render any Node. More...
class  VectorFilter
 Allows filter families to contain all vector formats. All filters that load vector-based files (EPS, metafiles, and so on), should be derived from this class. Vector files often contain bitmaps - if in doubt, derive from the VectorFilter. More...
class  BitmapFilter
 Allows filter families to contain all bitmap formats. All filters that load pure bitmap files (TIFF, JPEG, BMP etc) should be derived from this class. Some file formats contain mixes of vector and bitmap graphics (e.g. EPS) - in this case, always derive from the VectorFilter. More...
class  CompatibleFilter
 A simple ListItem derived class to allow a list of filters to be maintained - the list holds all the filters that claim to understand a particular file (see FilterFamily). It is not derived from the Filter class itself because although the Filter class is derived from ListItem too, we want to store a list of pointers to existing filters, rather than actual instances of the Filter class. For each entry, a 'compatibility rating' is held, to allow the FilterFamily class (the client of this class) to choose the most compatible filter from the list. More...
class  CompatibleFilterList
 Simple list class to allow a list of compatible filters to be maintained. More...
class  FilterFamily
 Special version of an import filter. This filter is actually a subset of the installed filters, to allow the user to easily specify a broad category of file rather than the exact file format and application version that they want to import (because they might not actually know!). It understands all the files that all the family of filters understand, by the simple expedient of being a generic interface to all of them. i.e. Given any file, this filter asks all the others how compatible they are with the file. It then chooses the filter that has the highest compatibility rating, and gets it to import the file. More...
class  GenericFilter
 A filter for all file types. This is the default filter that the user can import with. More...
class  VectorFilterFamily
 A filter for all vector file types. e.g. EPS, WMF, Draw, etc. More...
class  BitmapFilterFamily
 A filter for all bitmap file types. e.g. BMP, JPEG, PCX etc. More...
class  GenericEPSFilter
 A filter for all EPS files, regardless of the flavour. More...
class  PaletteFilterFamily
 A filter for all palette files. More...

Defines

#define FILTERID_INVALID   (-1)
#define FILTERID_USERCHOICE   (UINT_MAX)
#define FILTERID_NONE   (0)
#define FILTERID_GENERIC   (1)
#define FILTERID_VECTOR   (2)
#define FILTERID_BITMAP   (3)
#define FILTERID_METAFILE   (4)
#define FILTERID_AIEPS   (5)
#define FILTERID_AI5EPS   (6)
#define FILTERID_ARTWORKS_EPS   (7)
#define FILTERID_CAMELOT_EPS   (8)
#define FILTERID_COREL3_EPS   (9)
#define FILTERID_COREL4_EPS   (10)
#define FILTERID_ACORN_DRAW   (11)
#define FILTERID_BMP   (12)
#define FILTERID_EPS   (13)
#define FILTERID_NATIVE   (14)
#define FILTERID_CORELPALETTEFILE   (15)
#define FILTERID_CDR   (16)
#define FILTERID_FREEHAND_EPS   (17)
#define FILTERID_ENHMETAFILE   (18)
#define BUILD_NATIVE_FILTERS   FALSE
#define FILTERID_NATIVE_EPS   (19)
#define FILTERID_WEB   (20)
#define FILTERID_CMX16   (21)
#define FILTERID_CMX32   (22)
#define FILTERID_CMXIMPORT   (23)
#define FILTERID_AI8EPS   (24)
#define FILTERID_FLASH   (25)
#define FILTERID_PHOTOSHOPEPS   (26)
#define FILTERID_PALETTE   (30)
#define FILTERID_MSPALETTE   (31)
#define FILTERID_ADOBECOLOURTABLE   (32)
#define FILTERID_ADOBECOLOURSWATCH   (33)
#define FILTERID_PSPPALETTE   (34)
#define FILTERID_JCWPALETTE   (35)
#define FILTERID_IMAGEMAP   (40)
#define FILTERID_ACCUSOFT   (100)
#define FILTERID_ACCUSOFTBMP   (101)
#define FILTERID_BROOKTROUT   (102)
#define FILTERID_CALS   (103)
#define FILTERID_DCX   (104)
#define FILTERID_GIF   (105)
#define FILTERID_GX2   (106)
#define FILTERID_HALOCUT   (107)
#define FILTERID_IFF   (108)
#define FILTERID_IMG   (109)
#define FILTERID_IOCA   (110)
#define FILTERID_JPEG   (111)
#define FILTERID_KOFAX   (112)
#define FILTERID_LASERDATA   (113)
#define FILTERID_MACPAINT   (114)
#define FILTERID_MSICONS   (115)
#define FILTERID_MSPAINT   (116)
#define FILTERID_PCX   (117)
#define FILTERID_PHOTOCD   (118)
#define FILTERID_PHOTOSHOP   (119)
#define FILTERID_PICT   (120)
#define FILTERID_SUN   (121)
#define FILTERID_TARGA   (122)
#define FILTERID_TIFF   (123)
#define FILTERID_WPG   (124)
#define FILTERID_XWINDOWS   (125)
#define FILTERID_PREVIEW   (126)
#define FILTERID_TI_GIF   (127)
#define FILTERID_SPRITE   (128)
#define FILTERID_PPM   (129)
#define FILTERID_PGM   (130)
#define FILTERID_PBM   (131)
#define FILTERID_DXF   (132)
#define FILTERID_PNG   (133)
#define FILTERID_PREVIEW_BMP   (134)
#define FILTERID_PREVIEW_GIF   (135)
#define FILTERID_PREVIEW_JPEG   (136)
#define FILTERID_PREVIEW_PNG   (137)
#define FILTERID_PREVIEW_TIFF   (138)
#define FILTERID_IMPORT_JPEG   (140)
#define FILTERID_EXPORT_JPEG   (141)
#define BUILD_TEXT_FILTERS   TRUE
#define BUILD_OTHER_TEXT_FILTERS   FALSE
#define FILTERID_TEXT   (200)
#define FILTERID_TEXT_ASCII   (201)
#define FILTERID_TEXT_UNICODE   (202)
#define FILTERID_TEXT_RTF   (203)
#define FILTERID_HTML   (204)
#define FILTERID_FLARETEMPLATE   (205)
#define FILTERID_ALDUS_START   1000
#define FILTERID_ALDUS_END   1099
#define FILTERID_IMAGEMAGICK_START   1100
#define FILTERID_IMAGEMAGICK_END   1999

Typedefs

typedef UINT32 ID

Enumerations

enum  SelectionType {
  SELECTION, DRAWING, SPREAD, ABITMAP,
  SOMEBITMAPS, PAGE
}
enum  BitmapFilterSupport { NoBitmapSupport, SimpleBitmapSupport, IndirectedBitmapSupport }
enum  DESTRUCTION_METHOD { DM_INVALID = 0, DM_DELETE_WHEN_DONE = 1, DM_KEEP_WHEN_DONE }


Define Documentation

#define BUILD_NATIVE_FILTERS   FALSE
 

Definition at line 144 of file filters.h.

#define BUILD_OTHER_TEXT_FILTERS   FALSE
 

Definition at line 221 of file filters.h.

#define BUILD_TEXT_FILTERS   TRUE
 

Definition at line 220 of file filters.h.

#define FILTERID_ACCUSOFT   (100)
 

Definition at line 171 of file filters.h.

#define FILTERID_ACCUSOFTBMP   (101)
 

Definition at line 172 of file filters.h.

#define FILTERID_ACORN_DRAW   (11)
 

Definition at line 135 of file filters.h.

#define FILTERID_ADOBECOLOURSWATCH   (33)
 

Definition at line 162 of file filters.h.

#define FILTERID_ADOBECOLOURTABLE   (32)
 

Definition at line 161 of file filters.h.

#define FILTERID_AI5EPS   (6)
 

Definition at line 130 of file filters.h.

#define FILTERID_AI8EPS   (24)
 

Definition at line 150 of file filters.h.

#define FILTERID_AIEPS   (5)
 

Definition at line 129 of file filters.h.

#define FILTERID_ALDUS_END   1099
 

Definition at line 235 of file filters.h.

#define FILTERID_ALDUS_START   1000
 

Definition at line 234 of file filters.h.

#define FILTERID_ARTWORKS_EPS   (7)
 

Definition at line 131 of file filters.h.

#define FILTERID_BITMAP   (3)
 

Definition at line 127 of file filters.h.

#define FILTERID_BMP   (12)
 

Definition at line 136 of file filters.h.

#define FILTERID_BROOKTROUT   (102)
 

Definition at line 173 of file filters.h.

#define FILTERID_CALS   (103)
 

Definition at line 174 of file filters.h.

#define FILTERID_CAMELOT_EPS   (8)
 

Definition at line 132 of file filters.h.

#define FILTERID_CDR   (16)
 

Definition at line 140 of file filters.h.

#define FILTERID_CMX16   (21)
 

Definition at line 147 of file filters.h.

#define FILTERID_CMX32   (22)
 

Definition at line 148 of file filters.h.

#define FILTERID_CMXIMPORT   (23)
 

Definition at line 149 of file filters.h.

#define FILTERID_COREL3_EPS   (9)
 

Definition at line 133 of file filters.h.

#define FILTERID_COREL4_EPS   (10)
 

Definition at line 134 of file filters.h.

#define FILTERID_CORELPALETTEFILE   (15)
 

Definition at line 139 of file filters.h.

#define FILTERID_DCX   (104)
 

Definition at line 175 of file filters.h.

#define FILTERID_DXF   (132)
 

Definition at line 206 of file filters.h.

#define FILTERID_ENHMETAFILE   (18)
 

Definition at line 142 of file filters.h.

#define FILTERID_EPS   (13)
 

Definition at line 137 of file filters.h.

#define FILTERID_EXPORT_JPEG   (141)
 

Definition at line 217 of file filters.h.

#define FILTERID_FLARETEMPLATE   (205)
 

Definition at line 231 of file filters.h.

#define FILTERID_FLASH   (25)
 

Definition at line 153 of file filters.h.

#define FILTERID_FREEHAND_EPS   (17)
 

Definition at line 141 of file filters.h.

#define FILTERID_GENERIC   (1)
 

Definition at line 125 of file filters.h.

#define FILTERID_GIF   (105)
 

Definition at line 176 of file filters.h.

#define FILTERID_GX2   (106)
 

Definition at line 177 of file filters.h.

#define FILTERID_HALOCUT   (107)
 

Definition at line 178 of file filters.h.

#define FILTERID_HTML   (204)
 

Definition at line 228 of file filters.h.

#define FILTERID_IFF   (108)
 

Definition at line 179 of file filters.h.

#define FILTERID_IMAGEMAGICK_END   1999
 

Definition at line 239 of file filters.h.

#define FILTERID_IMAGEMAGICK_START   1100
 

Definition at line 238 of file filters.h.

#define FILTERID_IMAGEMAP   (40)
 

Definition at line 167 of file filters.h.

#define FILTERID_IMG   (109)
 

Definition at line 180 of file filters.h.

#define FILTERID_IMPORT_JPEG   (140)
 

Definition at line 216 of file filters.h.

#define FILTERID_INVALID   (-1)
 

Definition at line 120 of file filters.h.

#define FILTERID_IOCA   (110)
 

Definition at line 181 of file filters.h.

#define FILTERID_JCWPALETTE   (35)
 

Definition at line 164 of file filters.h.

#define FILTERID_JPEG   (111)
 

Definition at line 182 of file filters.h.

#define FILTERID_KOFAX   (112)
 

Definition at line 183 of file filters.h.

#define FILTERID_LASERDATA   (113)
 

Definition at line 184 of file filters.h.

#define FILTERID_MACPAINT   (114)
 

Definition at line 185 of file filters.h.

#define FILTERID_METAFILE   (4)
 

Definition at line 128 of file filters.h.

#define FILTERID_MSICONS   (115)
 

Definition at line 186 of file filters.h.

#define FILTERID_MSPAINT   (116)
 

Definition at line 187 of file filters.h.

#define FILTERID_MSPALETTE   (31)
 

Definition at line 160 of file filters.h.

#define FILTERID_NATIVE   (14)
 

Definition at line 138 of file filters.h.

#define FILTERID_NATIVE_EPS   (19)
 

Definition at line 145 of file filters.h.

#define FILTERID_NONE   (0)
 

Definition at line 123 of file filters.h.

#define FILTERID_PALETTE   (30)
 

Definition at line 159 of file filters.h.

#define FILTERID_PBM   (131)
 

Definition at line 204 of file filters.h.

#define FILTERID_PCX   (117)
 

Definition at line 188 of file filters.h.

#define FILTERID_PGM   (130)
 

Definition at line 203 of file filters.h.

#define FILTERID_PHOTOCD   (118)
 

Definition at line 189 of file filters.h.

#define FILTERID_PHOTOSHOP   (119)
 

Definition at line 190 of file filters.h.

#define FILTERID_PHOTOSHOPEPS   (26)
 

Definition at line 156 of file filters.h.

#define FILTERID_PICT   (120)
 

Definition at line 191 of file filters.h.

#define FILTERID_PNG   (133)
 

Definition at line 208 of file filters.h.

#define FILTERID_PPM   (129)
 

Definition at line 202 of file filters.h.

#define FILTERID_PREVIEW   (126)
 

Definition at line 197 of file filters.h.

#define FILTERID_PREVIEW_BMP   (134)
 

Definition at line 210 of file filters.h.

#define FILTERID_PREVIEW_GIF   (135)
 

Definition at line 211 of file filters.h.

#define FILTERID_PREVIEW_JPEG   (136)
 

Definition at line 212 of file filters.h.

#define FILTERID_PREVIEW_PNG   (137)
 

Definition at line 213 of file filters.h.

#define FILTERID_PREVIEW_TIFF   (138)
 

Definition at line 214 of file filters.h.

#define FILTERID_PSPPALETTE   (34)
 

Definition at line 163 of file filters.h.

#define FILTERID_SPRITE   (128)
 

Definition at line 200 of file filters.h.

#define FILTERID_SUN   (121)
 

Definition at line 192 of file filters.h.

#define FILTERID_TARGA   (122)
 

Definition at line 193 of file filters.h.

#define FILTERID_TEXT   (200)
 

Definition at line 222 of file filters.h.

#define FILTERID_TEXT_ASCII   (201)
 

Definition at line 223 of file filters.h.

#define FILTERID_TEXT_RTF   (203)
 

Definition at line 225 of file filters.h.

#define FILTERID_TEXT_UNICODE   (202)
 

Definition at line 224 of file filters.h.

#define FILTERID_TI_GIF   (127)
 

Definition at line 199 of file filters.h.

#define FILTERID_TIFF   (123)
 

Definition at line 194 of file filters.h.

#define FILTERID_USERCHOICE   (UINT_MAX)
 

Definition at line 122 of file filters.h.

#define FILTERID_VECTOR   (2)
 

Definition at line 126 of file filters.h.

#define FILTERID_WEB   (20)
 

Definition at line 146 of file filters.h.

#define FILTERID_WPG   (124)
 

Definition at line 195 of file filters.h.

#define FILTERID_XWINDOWS   (125)
 

Definition at line 196 of file filters.h.


Typedef Documentation

typedef UINT32 ID
 

Definition at line 433 of file filters.h.


Enumeration Type Documentation

enum BitmapFilterSupport
 

Enumerator:
NoBitmapSupport 
SimpleBitmapSupport 
IndirectedBitmapSupport 

Definition at line 307 of file filters.h.

00308 {
00309     NoBitmapSupport, 
00310     SimpleBitmapSupport, 
00311     IndirectedBitmapSupport
00312 };

enum DESTRUCTION_METHOD
 

Enumerator:
DM_INVALID 
DM_DELETE_WHEN_DONE 
DM_KEEP_WHEN_DONE 

Definition at line 426 of file filters.h.

00427 {
00428     DM_INVALID          = 0,    // don't use this, it's for catching duff initialization
00429     DM_DELETE_WHEN_DONE = 1,
00430     DM_KEEP_WHEN_DONE
00431 };

enum SelectionType
 

Enumerator:
SELECTION 
DRAWING 
SPREAD 
ABITMAP 
SOMEBITMAPS 
PAGE 

Definition at line 243 of file filters.h.


Generated on Sat Nov 10 03:49:09 2007 for Camelot by  doxygen 1.4.4