diff options
Diffstat (limited to 'svtools/inc/svtools/filter.hxx')
-rw-r--r-- | svtools/inc/svtools/filter.hxx | 346 |
1 files changed, 173 insertions, 173 deletions
diff --git a/svtools/inc/svtools/filter.hxx b/svtools/inc/svtools/filter.hxx index ceb966ac90ff..492ed852765a 100644 --- a/svtools/inc/svtools/filter.hxx +++ b/svtools/inc/svtools/filter.hxx @@ -2,7 +2,7 @@ /************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * + * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite @@ -52,88 +52,88 @@ struct ImplDirEntryHelper class Window; class Graphic; -#define OPT_FILTERSECTION "Graphic" +#define OPT_FILTERSECTION "Graphic" -#define GRFILTER_OK 0 -#define GRFILTER_OPENERROR 1 -#define GRFILTER_IOERROR 2 -#define GRFILTER_FORMATERROR 3 -#define GRFILTER_VERSIONERROR 4 -#define GRFILTER_FILTERERROR 5 -#define GRFILTER_ABORT 6 -#define GRFILTER_TOOBIG 7 +#define GRFILTER_OK 0 +#define GRFILTER_OPENERROR 1 +#define GRFILTER_IOERROR 2 +#define GRFILTER_FORMATERROR 3 +#define GRFILTER_VERSIONERROR 4 +#define GRFILTER_FILTERERROR 5 +#define GRFILTER_ABORT 6 +#define GRFILTER_TOOBIG 7 #define GRFILTER_OUTHINT_GREY 1 -#define GRFILTER_FORMAT_NOTFOUND ((USHORT)0xFFFF) -#define GRFILTER_FORMAT_DONTKNOW ((USHORT)0xFFFF) +#define GRFILTER_FORMAT_NOTFOUND ((USHORT)0xFFFF) +#define GRFILTER_FORMAT_DONTKNOW ((USHORT)0xFFFF) #define GRFILTER_I_FLAGS_SET_LOGSIZE_FOR_JPEG 00000001 #define GRFILTER_I_FLAGS_DONT_SET_LOGSIZE_FOR_JPEG 00000002 #define GRFILTER_I_FLAGS_FOR_PREVIEW 00000004 #define GRFILTER_I_FLAGS_ALLOW_PARTIAL_STREAMREAD 00000010 -#define IMP_BMP "SVBMP" -#define IMP_SVMETAFILE "SVMETAFILE" -#define IMP_WMF "SVWMF" -#define IMP_EMF "SVEMF" -#define IMP_SVSGF "SVSGF" -#define IMP_SVSGV "SVSGV" -#define IMP_GIF "SVIGIF" -#define IMP_PNG "SVIPNG" -#define IMP_JPEG "SVIJPEG" -#define IMP_XBM "SVIXBM" -#define IMP_XPM "SVIXPM" -#define EXP_BMP "SVBMP" -#define EXP_SVMETAFILE "SVMETAFILE" -#define EXP_WMF "SVWMF" -#define EXP_EMF "SVEMF" -#define EXP_JPEG "SVEJPEG" -#define EXP_SVG "SVESVG" -#define EXP_PNG "SVEPNG" - -#define BMP_SHORTNAME "BMP" -#define GIF_SHORTNAME "GIF" -#define JPG_SHORTNAME "JPG" -#define MET_SHORTNAME "MET" -#define PCT_SHORTNAME "PCT" -#define PNG_SHORTNAME "PNG" -#define SVM_SHORTNAME "SVM" -#define TIF_SHORTNAME "TIF" -#define WMF_SHORTNAME "WMF" -#define EMF_SHORTNAME "EMF" +#define IMP_BMP "SVBMP" +#define IMP_SVMETAFILE "SVMETAFILE" +#define IMP_WMF "SVWMF" +#define IMP_EMF "SVEMF" +#define IMP_SVSGF "SVSGF" +#define IMP_SVSGV "SVSGV" +#define IMP_GIF "SVIGIF" +#define IMP_PNG "SVIPNG" +#define IMP_JPEG "SVIJPEG" +#define IMP_XBM "SVIXBM" +#define IMP_XPM "SVIXPM" +#define EXP_BMP "SVBMP" +#define EXP_SVMETAFILE "SVMETAFILE" +#define EXP_WMF "SVWMF" +#define EXP_EMF "SVEMF" +#define EXP_JPEG "SVEJPEG" +#define EXP_SVG "SVESVG" +#define EXP_PNG "SVEPNG" + +#define BMP_SHORTNAME "BMP" +#define GIF_SHORTNAME "GIF" +#define JPG_SHORTNAME "JPG" +#define MET_SHORTNAME "MET" +#define PCT_SHORTNAME "PCT" +#define PNG_SHORTNAME "PNG" +#define SVM_SHORTNAME "SVM" +#define TIF_SHORTNAME "TIF" +#define WMF_SHORTNAME "WMF" +#define EMF_SHORTNAME "EMF" // ------------------------------------ // - Info-Klasse fuer alle von uns -// unterstuetzten Grafik-Fileformate +// unterstuetzten Grafik-Fileformate // ------------------------------------ -#define GFF_NOT ( (USHORT)0x0000 ) -#define GFF_BMP ( (USHORT)0x0001 ) -#define GFF_GIF ( (USHORT)0x0002 ) -#define GFF_JPG ( (USHORT)0x0003 ) -#define GFF_PCD ( (USHORT)0x0004 ) -#define GFF_PCX ( (USHORT)0x0005 ) -#define GFF_PNG ( (USHORT)0x0006 ) -#define GFF_TIF ( (USHORT)0x0007 ) -#define GFF_XBM ( (USHORT)0x0008 ) -#define GFF_XPM ( (USHORT)0x0009 ) -#define GFF_PBM ( (USHORT)0x000a ) -#define GFF_PGM ( (USHORT)0x000b ) -#define GFF_PPM ( (USHORT)0x000c ) -#define GFF_RAS ( (USHORT)0x000d ) -#define GFF_TGA ( (USHORT)0x000e ) -#define GFF_PSD ( (USHORT)0x000f ) -#define GFF_EPS ( (USHORT)0x0010 ) -#define GFF_DXF ( (USHORT)0x00f1 ) -#define GFF_MET ( (USHORT)0x00f2 ) -#define GFF_PCT ( (USHORT)0x00f3 ) -#define GFF_SGF ( (USHORT)0x00f4 ) -#define GFF_SVM ( (USHORT)0x00f5 ) -#define GFF_WMF ( (USHORT)0x00f6 ) -#define GFF_SGV ( (USHORT)0x00f7 ) -#define GFF_EMF ( (USHORT)0x00f8 ) -#define GFF_XXX ( (USHORT)0xffff ) +#define GFF_NOT ( (USHORT)0x0000 ) +#define GFF_BMP ( (USHORT)0x0001 ) +#define GFF_GIF ( (USHORT)0x0002 ) +#define GFF_JPG ( (USHORT)0x0003 ) +#define GFF_PCD ( (USHORT)0x0004 ) +#define GFF_PCX ( (USHORT)0x0005 ) +#define GFF_PNG ( (USHORT)0x0006 ) +#define GFF_TIF ( (USHORT)0x0007 ) +#define GFF_XBM ( (USHORT)0x0008 ) +#define GFF_XPM ( (USHORT)0x0009 ) +#define GFF_PBM ( (USHORT)0x000a ) +#define GFF_PGM ( (USHORT)0x000b ) +#define GFF_PPM ( (USHORT)0x000c ) +#define GFF_RAS ( (USHORT)0x000d ) +#define GFF_TGA ( (USHORT)0x000e ) +#define GFF_PSD ( (USHORT)0x000f ) +#define GFF_EPS ( (USHORT)0x0010 ) +#define GFF_DXF ( (USHORT)0x00f1 ) +#define GFF_MET ( (USHORT)0x00f2 ) +#define GFF_PCT ( (USHORT)0x00f3 ) +#define GFF_SGF ( (USHORT)0x00f4 ) +#define GFF_SVM ( (USHORT)0x00f5 ) +#define GFF_WMF ( (USHORT)0x00f6 ) +#define GFF_SGV ( (USHORT)0x00f7 ) +#define GFF_EMF ( (USHORT)0x00f8 ) +#define GFF_XXX ( (USHORT)0xffff ) // --------------- // - RequestInfo - @@ -141,8 +141,8 @@ class Graphic; struct RequestInfo { - BYTE* pBuffer; - ULONG nRealBufferSize; + BYTE* pBuffer; + ULONG nRealBufferSize; }; // --------------------- @@ -151,62 +151,62 @@ struct RequestInfo class SVT_DLLPUBLIC GraphicDescriptor { - SvStream* pFileStm; - Link aReqLink; - String aPathExt; - Size aPixSize; - Size aLogSize; - SvStream* pMemStm; - SvStream* pBaseStm; - ULONG nStmPos; - USHORT nBitsPerPixel; - USHORT nPlanes; - USHORT nFormat; - BOOL bCompressed; - BOOL bDataReady; - BOOL bLinked; - BOOL bLinkChanged; - BOOL bWideSearch; - BOOL bBaseStm; - long nExtra1; - long nExtra2; - - void ImpConstruct(); - - BOOL ImpDetectBMP( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectGIF( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectJPG( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPCD( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPCX( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPNG( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectTIF( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectXBM( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectXPM( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPBM( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPGM( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPPM( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectRAS( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectTGA( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPSD( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectEPS( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectDXF( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectMET( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectPCT( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectSGF( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectSVM( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectWMF( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectSGV( SvStream& rStm, BOOL bExtendedInfo ); - BOOL ImpDetectEMF( SvStream& rStm, BOOL bExtendedInfo ); + SvStream* pFileStm; + Link aReqLink; + String aPathExt; + Size aPixSize; + Size aLogSize; + SvStream* pMemStm; + SvStream* pBaseStm; + ULONG nStmPos; + USHORT nBitsPerPixel; + USHORT nPlanes; + USHORT nFormat; + BOOL bCompressed; + BOOL bDataReady; + BOOL bLinked; + BOOL bLinkChanged; + BOOL bWideSearch; + BOOL bBaseStm; + long nExtra1; + long nExtra2; + + void ImpConstruct(); + + BOOL ImpDetectBMP( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectGIF( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectJPG( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPCD( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPCX( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPNG( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectTIF( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectXBM( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectXPM( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPBM( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPGM( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPPM( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectRAS( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectTGA( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPSD( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectEPS( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectDXF( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectMET( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectPCT( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectSGF( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectSVM( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectWMF( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectSGV( SvStream& rStm, BOOL bExtendedInfo ); + BOOL ImpDetectEMF( SvStream& rStm, BOOL bExtendedInfo ); GraphicDescriptor( const GraphicDescriptor& ); GraphicDescriptor& operator=( const GraphicDescriptor& ); protected: - BOOL IsDataReady() const; - BOOL IsWideSearch() const; - SvStream& GetSearchStream() const; - const String& GetPathExtension() const; + BOOL IsDataReady() const; + BOOL IsWideSearch() const; + SvStream& GetSearchStream() const; + const String& GetPathExtension() const; public: @@ -237,26 +237,26 @@ public: // bei bExtendedInfo == TRUE werden soweit wie moeglich // Daten aus dem jeweiligen FileHeader ermittelt // ( Groesse, Farbtiefe usw. ) - virtual BOOL Detect( BOOL bExtendedInfo = FALSE ); + virtual BOOL Detect( BOOL bExtendedInfo = FALSE ); // liefert das Fileformat nach erfolgreicher Detektion zurueck; // wenn kein Format erkannt wurde, ist das Formart GFF_NOT - USHORT GetFileFormat() const { return nFormat; } + USHORT GetFileFormat() const { return nFormat; } // liefert die Pixel-Bildgroesse oder 0-Size zurueck - const Size& GetSizePixel() const { return (Size&) aPixSize; } + const Size& GetSizePixel() const { return (Size&) aPixSize; } // liefert die logische Bildgroesse in 1/100mm oder 0-Size zurueck - const Size& GetSize_100TH_MM() const { return (Size&) aLogSize; } + const Size& GetSize_100TH_MM() const { return (Size&) aLogSize; } // liefert die Bits/Pixel oder 0 zurueck - USHORT GetBitsPerPixel() const { return nBitsPerPixel; } + USHORT GetBitsPerPixel() const { return nBitsPerPixel; } // liefert die Anzahl der Planes oder 0 zurueck - USHORT GetPlanes() const { return nPlanes; } + USHORT GetPlanes() const { return nPlanes; } // zeigt an, ob das Bild evtl. komprimiert (wie auch immer) ist - BOOL IsCompressed() const { return bCompressed; } + BOOL IsCompressed() const { return bCompressed; } // setzt den LinkHdl zum Setzen der Bytes; // der Handler muss einen Pointer auf die RequestInfo-Struktur @@ -264,14 +264,14 @@ public: // Daten muss im Handler ueber ::GetRequestedByteCount() erfragt werden; // die tatsaechlich zur Verfuegung gestellte BYTE-Anzahl // wird in der RequestInfo-Struktur gesetzt - void SetRequestHdl( const Link& rRequestHdl ); + void SetRequestHdl( const Link& rRequestHdl ); // gibt den LinkHdl zum Setzen der Bytes zurueck - const Link& GetRequestHdl() const { return aReqLink; } + const Link& GetRequestHdl() const { return aReqLink; } // muss im ReqHdl gerufen werden, um zu erfahren, wieviele // Bytes _mindestens_ bereitgestellt werden muessen - ULONG GetRequestedByteCount() const; + ULONG GetRequestedByteCount() const; // gibt die Filternummer des Filters zurueck, // der im GraphicFilter zum Lesen dieses Formats @@ -285,12 +285,12 @@ public: struct FilterErrorEx { - ULONG nFilterError; - ULONG nStreamError; - long nDummy1; - long nDummy2; - long nDummy3; - long nDummy4; + ULONG nFilterError; + ULONG nStreamError; + long nDummy1; + long nDummy2; + long nDummy3; + long nDummy4; FilterErrorEx() : nFilterError( 0UL ), nStreamError( 0UL ) {} }; @@ -305,72 +305,72 @@ class SVT_DLLPUBLIC GraphicFilter private: - void ImplInit(); - ULONG ImplSetError( ULONG nError, const SvStream* pStm = NULL ); - sal_uInt16 ImpTestOrFindFormat( const String& rPath, SvStream& rStream, sal_uInt16& rFormat ); + void ImplInit(); + ULONG ImplSetError( ULONG nError, const SvStream* pStm = NULL ); + sal_uInt16 ImpTestOrFindFormat( const String& rPath, SvStream& rStream, sal_uInt16& rFormat ); DECL_LINK( FilterCallback, ConvertData* pData ); protected: - String aFilterPath; - FilterConfigCache* pConfig; - FilterErrorEx* pErrorEx; - sal_Bool bAbort; - sal_Bool bUseConfig; - sal_Bool bDummy1; - sal_Bool bDummy2; - sal_Bool bDummy3; - sal_Bool bDummy4; - long nExpGraphHint; - long nDummy2; - void* pDummy1; - void* pDummy2; + String aFilterPath; + FilterConfigCache* pConfig; + FilterErrorEx* pErrorEx; + sal_Bool bAbort; + sal_Bool bUseConfig; + sal_Bool bDummy1; + sal_Bool bDummy2; + sal_Bool bDummy3; + sal_Bool bDummy4; + long nExpGraphHint; + long nDummy2; + void* pDummy1; + void* pDummy2; public: GraphicFilter( sal_Bool bUseConfig = sal_True ); ~GraphicFilter(); - void SetFilterPath( const String& rFilterPath ) { aFilterPath = rFilterPath; }; + void SetFilterPath( const String& rFilterPath ) { aFilterPath = rFilterPath; }; USHORT GetImportFormatCount(); USHORT GetImportFormatNumber( const String& rFormatName ); - USHORT GetImportFormatNumberForMediaType( const String& rMediaType ); + USHORT GetImportFormatNumberForMediaType( const String& rMediaType ); USHORT GetImportFormatNumberForShortName( const String& rShortName ); - sal_uInt16 GetImportFormatNumberForTypeName( const String& rType ); + sal_uInt16 GetImportFormatNumberForTypeName( const String& rType ); String GetImportFormatName( USHORT nFormat ); String GetImportFormatTypeName( USHORT nFormat ); String GetImportFormatMediaType( USHORT nFormat ); String GetImportFormatShortName( USHORT nFormat ); - String GetImportOSFileType( USHORT nFormat ); - String GetImportWildcard( USHORT nFormat, sal_Int32 nEntry = 0 ); - BOOL IsImportPixelFormat( USHORT nFormat ); + String GetImportOSFileType( USHORT nFormat ); + String GetImportWildcard( USHORT nFormat, sal_Int32 nEntry = 0 ); + BOOL IsImportPixelFormat( USHORT nFormat ); USHORT GetExportFormatCount(); USHORT GetExportFormatNumber( const String& rFormatName ); USHORT GetExportFormatNumberForMediaType( const String& rShortName ); USHORT GetExportFormatNumberForShortName( const String& rShortName ); - sal_uInt16 GetExportFormatNumberForTypeName( const String& rType ); + sal_uInt16 GetExportFormatNumberForTypeName( const String& rType ); String GetExportFormatName( USHORT nFormat ); String GetExportFormatTypeName( USHORT nFormat ); String GetExportFormatMediaType( USHORT nFormat ); String GetExportFormatShortName( USHORT nFormat ); - String GetExportOSFileType( USHORT nFormat ); - String GetExportWildcard( USHORT nFormat, sal_Int32 nEntry = 0 ); - BOOL IsExportPixelFormat( USHORT nFormat ); + String GetExportOSFileType( USHORT nFormat ); + String GetExportWildcard( USHORT nFormat, sal_Int32 nEntry = 0 ); + BOOL IsExportPixelFormat( USHORT nFormat ); - BOOL HasImportDialog( USHORT nFormat ); - BOOL DoImportDialog( Window* pWindow, USHORT nFormat ); + BOOL HasImportDialog( USHORT nFormat ); + BOOL DoImportDialog( Window* pWindow, USHORT nFormat ); - BOOL HasExportDialog( USHORT nFormat ); - BOOL DoExportDialog( Window* pWindow, USHORT nFormat ); - BOOL DoExportDialog( Window* pWindow, USHORT nFormat, FieldUnit eFieldUnit ); + BOOL HasExportDialog( USHORT nFormat ); + BOOL DoExportDialog( Window* pWindow, USHORT nFormat ); + BOOL DoExportDialog( Window* pWindow, USHORT nFormat, FieldUnit eFieldUnit ); - USHORT ExportGraphic( const Graphic& rGraphic, const INetURLObject& rPath, + USHORT ExportGraphic( const Graphic& rGraphic, const INetURLObject& rPath, USHORT nFormat = GRFILTER_FORMAT_DONTKNOW, const com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >* pFilterData = NULL ); - USHORT ExportGraphic( const Graphic& rGraphic, const String& rPath, + USHORT ExportGraphic( const Graphic& rGraphic, const String& rPath, SvStream& rOStm, USHORT nFormat = GRFILTER_FORMAT_DONTKNOW, const com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >* pFilterData = NULL ); long GetExportGraphicHint() const { return nExpGraphHint; } @@ -402,12 +402,12 @@ public: void Abort() { bAbort = TRUE; } - const FilterErrorEx& GetLastError() const; - void ResetLastError(); + const FilterErrorEx& GetLastError() const; + void ResetLastError(); const Link GetFilterCallback() const; - static GraphicFilter* GetGraphicFilter(); - static int LoadGraphic( const String& rPath, const String& rFilter, + static GraphicFilter* GetGraphicFilter(); + static int LoadGraphic( const String& rPath, const String& rFilter, Graphic& rGraphic, GraphicFilter* pFilter = NULL, USHORT* pDeterminedFormat = NULL ); |