diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2021-02-14 21:29:45 +0900 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2021-02-17 02:43:18 +0100 |
commit | 246af1d40ec515fe31ef2ac3375401c3fe284157 (patch) | |
tree | e88dd7c878a6fcfe142ebc4b291a50de4e438642 /vcl/source/filter/graphicfilter.cxx | |
parent | 3885ef7df0e2a648579100e338920054dbadf6e2 (diff) |
Move TGA reader from filter module into VCL
Change-Id: I0fea5d6e75c6bfd05ea91ed7b92aaacfcc5ec177
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111010
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl/source/filter/graphicfilter.cxx')
-rw-r--r-- | vcl/source/filter/graphicfilter.cxx | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/vcl/source/filter/graphicfilter.cxx b/vcl/source/filter/graphicfilter.cxx index 3a2e38ec5b11..3546539b8787 100644 --- a/vcl/source/filter/graphicfilter.cxx +++ b/vcl/source/filter/graphicfilter.cxx @@ -49,6 +49,7 @@ #include "ixpm/xpmread.hxx" #include <filter/TiffReader.hxx> #include <filter/TiffWriter.hxx> +#include <filter/TgaReader.hxx> #include <osl/module.hxx> #include <com/sun/star/uno/Reference.h> #include <com/sun/star/awt/Size.hpp> @@ -648,7 +649,6 @@ extern "C" bool ipsGraphicImport( SvStream& rStream, Graphic& rGraphic, FilterCo extern "C" bool iptGraphicImport( SvStream& rStream, Graphic& rGraphic, FilterConfigItem* pConfigItem ); extern "C" bool ipxGraphicImport( SvStream& rStream, Graphic& rGraphic, FilterConfigItem* pConfigItem ); extern "C" bool iraGraphicImport( SvStream& rStream, Graphic& rGraphic, FilterConfigItem* pConfigItem ); -extern "C" bool itgGraphicImport( SvStream& rStream, Graphic& rGraphic, FilterConfigItem* pConfigItem ); #endif @@ -675,8 +675,6 @@ PFilterCall ImpFilterLibCacheEntry::GetImportFunction() mpfnImport = reinterpret_cast<PFilterCall>(maLibrary.getFunctionSymbol("ipxGraphicImport")); else if (maFormatName == "ira") mpfnImport = reinterpret_cast<PFilterCall>(maLibrary.getFunctionSymbol("iraGraphicImport")); - else if (maFormatName == "itg") - mpfnImport = reinterpret_cast<PFilterCall>(maLibrary.getFunctionSymbol("itgGraphicImport")); #else if (maFormatName == "icd") mpfnImport = icdGraphicImport; @@ -696,8 +694,6 @@ PFilterCall ImpFilterLibCacheEntry::GetImportFunction() mpfnImport = ipxGraphicImport; else if (maFormatName == "ira") mpfnImport = iraGraphicImport; - else if (maFormatName == "itg") - mpfnImport = itgGraphicImport; #endif } @@ -1430,7 +1426,7 @@ void GraphicFilter::preload() sal_Int32 nTokenCount = comphelper::string::getTokenCount(aFilterPath, ';'); ImpFilterLibCache& rCache = Cache::get(); static const std::initializer_list<std::u16string_view> aFilterNames = { - u"icd", u"idx", u"ime", u"ipb", u"ipd", u"ips", u"ipt", u"ipx", u"ira", u"itg", + u"icd", u"idx", u"ime", u"ipb", u"ipd", u"ips", u"ipt", u"ipx", u"ira", }; // Load library for each filter. @@ -1714,6 +1710,14 @@ ErrCode GraphicFilter::readWithTypeSerializer(SvStream & rStream, Graphic & rGra return aReturnCode; } +ErrCode GraphicFilter::readTGA(SvStream & rStream, Graphic & rGraphic) +{ + if (ImportTgaGraphic(rStream, rGraphic)) + return ERRCODE_NONE; + else + return ERRCODE_GRFILTER_FILTERERROR; +} + ErrCode GraphicFilter::ImportGraphic( Graphic& rGraphic, const OUString& rPath, SvStream& rIStream, sal_uInt16 nFormat, sal_uInt16* pDeterminedFormat, GraphicFilterImportFlags nImportFlags, const css::uno::Sequence< css::beans::PropertyValue >* /*pFilterData*/, @@ -1827,6 +1831,10 @@ ErrCode GraphicFilter::ImportGraphic( Graphic& rGraphic, const OUString& rPath, { nStatus = readTIFF(rIStream, rGraphic, eLinkType); } + else if (aFilterName.equalsIgnoreAsciiCase(IMP_TGA) ) + { + nStatus = readTGA(rIStream, rGraphic); + } else nStatus = ERRCODE_GRFILTER_FILTERERROR; } |