summaryrefslogtreecommitdiff
path: root/vcl/source/filter/graphicfilter.cxx
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2021-02-14 21:29:45 +0900
committerTomaž Vajngerl <quikee@gmail.com>2021-02-17 02:43:18 +0100
commit246af1d40ec515fe31ef2ac3375401c3fe284157 (patch)
treee88dd7c878a6fcfe142ebc4b291a50de4e438642 /vcl/source/filter/graphicfilter.cxx
parent3885ef7df0e2a648579100e338920054dbadf6e2 (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.cxx20
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;
}