From 958c09acc1058a4a0eba28ac94f2883fff64d600 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Wed, 8 Nov 2017 11:45:56 +0000 Subject: add dif support to fftester MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I1428dcaea579c73712f5228dd6de73c7369a7948 Reviewed-on: https://gerrit.libreoffice.org/44457 Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- sc/source/filter/excel/excel.cxx | 11 +++++++++++ vcl/workben/fftester.cxx | 14 ++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/sc/source/filter/excel/excel.cxx b/sc/source/filter/excel/excel.cxx index fb72a5cd73f3..5c590dd407c9 100644 --- a/sc/source/filter/excel/excel.cxx +++ b/sc/source/filter/excel/excel.cxx @@ -280,4 +280,15 @@ extern "C" SAL_DLLPUBLIC_EXPORT bool SAL_CALL TestImportWKS(SvStream& rStream) return ScFormatFilter::Get().ScImportLotus123(aMedium, &aDocument, RTL_TEXTENCODING_ASCII_US) == ERRCODE_NONE; } +extern "C" SAL_DLLPUBLIC_EXPORT bool SAL_CALL TestImportDIF(SvStream &rStream) +{ + ScDLL::Init(); + ScDocument aDocument; + ScDocOptions aDocOpt = aDocument.GetDocOptions(); + aDocOpt.SetLookUpColRowNames(false); + aDocument.SetDocOptions(aDocOpt); + aDocument.MakeTable(0); + return ScFormatFilter::Get().ScImportDif(rStream, &aDocument, ScAddress(0, 0, 0), RTL_TEXTENCODING_IBM_850) == ERRCODE_NONE; +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/workben/fftester.cxx b/vcl/workben/fftester.cxx index 952988f32341..7b61bbb8c40b 100644 --- a/vcl/workben/fftester.cxx +++ b/vcl/workben/fftester.cxx @@ -514,6 +514,20 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv) SvFileStream aFileStream(out, StreamMode::READ); ret = (int) (*pfnImport)(aFileStream); } + else if (strcmp(argv[2], "dif") == 0) + { + static FFilterCall pfnImport(nullptr); + if (!pfnImport) + { + osl::Module aLibrary; + aLibrary.loadRelative(&thisModule, "libscfiltlo.so", SAL_LOADMODULE_LAZY); + pfnImport = reinterpret_cast( + aLibrary.getFunctionSymbol("TestImportDIF")); + aLibrary.release(); + } + SvFileStream aFileStream(out, StreamMode::READ); + ret = (int) (*pfnImport)(aFileStream); + } else if (strcmp(argv[2], "sc-rtf") == 0) { static FFilterCall pfnImport(nullptr); -- cgit