summaryrefslogtreecommitdiff
path: root/writerperfect/source/calc
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-05-14 14:06:52 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-05-15 13:05:35 +0200
commit5f170e69728b8741ce3c0af1d140023577cc470b (patch)
tree5bdde1373c80fa784bbaeef9ed3a4e952197741a /writerperfect/source/calc
parentd15c240434d61422e718a08db7d184d86f2b5f15 (diff)
weld WPFTEncodingDialog
and pass in parent window for dialog Change-Id: Ibe9f576a74dfbbee3e568c8d3454440700cb0405 Reviewed-on: https://gerrit.libreoffice.org/54328 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'writerperfect/source/calc')
-rw-r--r--writerperfect/source/calc/MSWorksCalcImportFilter.cxx23
-rw-r--r--writerperfect/source/calc/MSWorksCalcImportFilter.hxx4
-rw-r--r--writerperfect/source/calc/MWAWCalcImportFilter.cxx2
-rw-r--r--writerperfect/source/calc/MWAWCalcImportFilter.hxx4
-rw-r--r--writerperfect/source/calc/NumbersImportFilter.cxx2
-rw-r--r--writerperfect/source/calc/NumbersImportFilter.hxx4
-rw-r--r--writerperfect/source/calc/StarOfficeCalcImportFilter.cxx3
-rw-r--r--writerperfect/source/calc/StarOfficeCalcImportFilter.hxx4
8 files changed, 26 insertions, 20 deletions
diff --git a/writerperfect/source/calc/MSWorksCalcImportFilter.cxx b/writerperfect/source/calc/MSWorksCalcImportFilter.cxx
index 2b560e795a55..ee5cc3096d79 100644
--- a/writerperfect/source/calc/MSWorksCalcImportFilter.cxx
+++ b/writerperfect/source/calc/MSWorksCalcImportFilter.cxx
@@ -179,7 +179,8 @@ private:
}
////////////////////////////////////////////////////////////
-bool MSWorksCalcImportFilter::doImportDocument(librevenge::RVNGInputStream& rInput,
+bool MSWorksCalcImportFilter::doImportDocument(weld::Window* pParent,
+ librevenge::RVNGInputStream& rInput,
OdsGenerator& rGenerator, utl::MediaDescriptor&)
{
libwps::WPSKind kind = libwps::WPS_TEXT;
@@ -226,14 +227,14 @@ bool MSWorksCalcImportFilter::doImportDocument(librevenge::RVNGInputStream& rInp
try
{
- const ScopedVclPtrInstance<writerperfect::WPFTEncodingDialog> pDlg(title, encoding);
- if (pDlg->Execute() == RET_OK)
+ writerperfect::WPFTEncodingDialog aDlg(pParent, title, encoding);
+ if (aDlg.run() == RET_OK)
{
- if (!pDlg->GetEncoding().isEmpty())
- fileEncoding = pDlg->GetEncoding().toUtf8().getStr();
+ if (!aDlg.GetEncoding().isEmpty())
+ fileEncoding = aDlg.GetEncoding().toUtf8().getStr();
}
// we can fail because we are in headless mode, the user has cancelled conversion, ...
- else if (pDlg->hasUserCalledCancel())
+ else if (aDlg.hasUserCalledCancel())
return false;
}
catch (...)
@@ -248,7 +249,7 @@ bool MSWorksCalcImportFilter::doImportDocument(librevenge::RVNGInputStream& rInp
// try to ask for a password
try
{
- SfxPasswordDialog aPasswdDlg(nullptr);
+ SfxPasswordDialog aPasswdDlg(pParent);
aPasswdDlg.SetMinLen(1);
if (!aPasswdDlg.execute())
return false;
@@ -275,6 +276,7 @@ MSWorksCalcImportFilter::filter(const css::uno::Sequence<css::beans::PropertyVal
OUString sUrl;
css::uno::Reference<css::io::XInputStream> xInputStream;
css::uno::Reference<ucb::XContent> xContent;
+ css::uno::Reference<css::awt::XWindow> xDialogParent;
sal_Int32 nLength = rDescriptor.getLength();
const css::beans::PropertyValue* pValue = rDescriptor.getConstArray();
@@ -286,6 +288,8 @@ MSWorksCalcImportFilter::filter(const css::uno::Sequence<css::beans::PropertyVal
pValue[i].Value >>= xContent;
else if (pValue[i].Name == "FileName" || pValue[i].Name == "URL")
pValue[i].Value >>= sUrl;
+ else if (pValue[i].Name == "ParentWindow")
+ pValue[i].Value >>= xDialogParent;
}
if (!getXContext().is() || !xInputStream.is())
@@ -373,7 +377,8 @@ MSWorksCalcImportFilter::filter(const css::uno::Sequence<css::beans::PropertyVal
= libwps::WPSDocument::isFileFormatSupported(&structuredInput, kind,
creator, needEncoding);
if (confidence != libwps::WPS_CONFIDENCE_NONE)
- return doImportDocument(structuredInput, exporter, aDescriptor);
+ return doImportDocument(Application::GetFrameWeld(xDialogParent),
+ structuredInput, exporter, aDescriptor);
}
}
}
@@ -382,7 +387,7 @@ MSWorksCalcImportFilter::filter(const css::uno::Sequence<css::beans::PropertyVal
{
}
- return doImportDocument(input, exporter, aDescriptor);
+ return doImportDocument(Application::GetFrameWeld(xDialogParent), input, exporter, aDescriptor);
}
bool MSWorksCalcImportFilter::doDetectFormat(librevenge::RVNGInputStream& rInput,
diff --git a/writerperfect/source/calc/MSWorksCalcImportFilter.hxx b/writerperfect/source/calc/MSWorksCalcImportFilter.hxx
index 4af9bee1f800..8b303a1737dd 100644
--- a/writerperfect/source/calc/MSWorksCalcImportFilter.hxx
+++ b/writerperfect/source/calc/MSWorksCalcImportFilter.hxx
@@ -40,8 +40,8 @@ public:
private:
virtual bool doDetectFormat(librevenge::RVNGInputStream& rInput, OUString& rTypeName) override;
- virtual bool doImportDocument(librevenge::RVNGInputStream& rInput, OdsGenerator& rGenerator,
- utl::MediaDescriptor&) override;
+ virtual bool doImportDocument(weld::Window* pParent, librevenge::RVNGInputStream& rInput,
+ OdsGenerator& rGenerator, utl::MediaDescriptor&) override;
virtual void doRegisterHandlers(OdsGenerator& rGenerator) override;
};
diff --git a/writerperfect/source/calc/MWAWCalcImportFilter.cxx b/writerperfect/source/calc/MWAWCalcImportFilter.cxx
index 6981f70ffd45..c251fc1f2b42 100644
--- a/writerperfect/source/calc/MWAWCalcImportFilter.cxx
+++ b/writerperfect/source/calc/MWAWCalcImportFilter.cxx
@@ -39,7 +39,7 @@ static bool handleEmbeddedMWAWSpreadsheetObject(const librevenge::RVNGBinaryData
return MWAWDocument::decodeSpreadsheet(data, &exporter);
}
-bool MWAWCalcImportFilter::doImportDocument(librevenge::RVNGInputStream& rInput,
+bool MWAWCalcImportFilter::doImportDocument(weld::Window*, librevenge::RVNGInputStream& rInput,
OdsGenerator& rGenerator, utl::MediaDescriptor&)
{
return MWAWDocument::MWAW_R_OK == MWAWDocument::parse(&rInput, &rGenerator);
diff --git a/writerperfect/source/calc/MWAWCalcImportFilter.hxx b/writerperfect/source/calc/MWAWCalcImportFilter.hxx
index 4b0b3727a9d3..6deb1ff4c1eb 100644
--- a/writerperfect/source/calc/MWAWCalcImportFilter.hxx
+++ b/writerperfect/source/calc/MWAWCalcImportFilter.hxx
@@ -35,8 +35,8 @@ public:
private:
virtual bool doDetectFormat(librevenge::RVNGInputStream& rInput, OUString& rTypeName) override;
- virtual bool doImportDocument(librevenge::RVNGInputStream& rInput, OdsGenerator& rGenerator,
- utl::MediaDescriptor&) override;
+ virtual bool doImportDocument(weld::Window* pParent, librevenge::RVNGInputStream& rInput,
+ OdsGenerator& rGenerator, utl::MediaDescriptor&) override;
virtual void doRegisterHandlers(OdsGenerator& rGenerator) override;
};
diff --git a/writerperfect/source/calc/NumbersImportFilter.cxx b/writerperfect/source/calc/NumbersImportFilter.cxx
index 68f091768c0f..3841ca35e12b 100644
--- a/writerperfect/source/calc/NumbersImportFilter.cxx
+++ b/writerperfect/source/calc/NumbersImportFilter.cxx
@@ -22,7 +22,7 @@ using com::sun::star::uno::XInterface;
using libetonyek::EtonyekDocument;
-bool NumbersImportFilter::doImportDocument(librevenge::RVNGInputStream& rInput,
+bool NumbersImportFilter::doImportDocument(weld::Window*, librevenge::RVNGInputStream& rInput,
OdsGenerator& rGenerator, utl::MediaDescriptor&)
{
return EtonyekDocument::parse(&rInput, &rGenerator);
diff --git a/writerperfect/source/calc/NumbersImportFilter.hxx b/writerperfect/source/calc/NumbersImportFilter.hxx
index ccb28f7e0492..59ba90e25c15 100644
--- a/writerperfect/source/calc/NumbersImportFilter.hxx
+++ b/writerperfect/source/calc/NumbersImportFilter.hxx
@@ -34,8 +34,8 @@ public:
private:
virtual bool doDetectFormat(librevenge::RVNGInputStream& rInput, OUString& rTypeName) override;
- virtual bool doImportDocument(librevenge::RVNGInputStream& rInput, OdsGenerator& rGenerator,
- utl::MediaDescriptor&) override;
+ virtual bool doImportDocument(weld::Window* pParent, librevenge::RVNGInputStream& rInput,
+ OdsGenerator& rGenerator, utl::MediaDescriptor&) override;
virtual void doRegisterHandlers(OdsGenerator& rGenerator) override;
};
diff --git a/writerperfect/source/calc/StarOfficeCalcImportFilter.cxx b/writerperfect/source/calc/StarOfficeCalcImportFilter.cxx
index 913636e31b02..a8505700c2ac 100644
--- a/writerperfect/source/calc/StarOfficeCalcImportFilter.cxx
+++ b/writerperfect/source/calc/StarOfficeCalcImportFilter.cxx
@@ -37,7 +37,8 @@ static bool handleEmbeddedSTOFFSpreadsheetObject(const librevenge::RVNGBinaryDat
return STOFFDocument::decodeSpreadsheet(data, &exporter);
}
-bool StarOfficeCalcImportFilter::doImportDocument(librevenge::RVNGInputStream& rInput,
+bool StarOfficeCalcImportFilter::doImportDocument(weld::Window*,
+ librevenge::RVNGInputStream& rInput,
OdsGenerator& rGenerator, utl::MediaDescriptor&)
{
return STOFFDocument::STOFF_R_OK == STOFFDocument::parse(&rInput, &rGenerator);
diff --git a/writerperfect/source/calc/StarOfficeCalcImportFilter.hxx b/writerperfect/source/calc/StarOfficeCalcImportFilter.hxx
index d288f91f6b44..1120e5169e24 100644
--- a/writerperfect/source/calc/StarOfficeCalcImportFilter.hxx
+++ b/writerperfect/source/calc/StarOfficeCalcImportFilter.hxx
@@ -36,8 +36,8 @@ public:
private:
virtual bool doDetectFormat(librevenge::RVNGInputStream& rInput, OUString& rTypeName) override;
- virtual bool doImportDocument(librevenge::RVNGInputStream& rInput, OdsGenerator& rGenerator,
- utl::MediaDescriptor&) override;
+ virtual bool doImportDocument(weld::Window* pParent, librevenge::RVNGInputStream& rInput,
+ OdsGenerator& rGenerator, utl::MediaDescriptor&) override;
virtual void doRegisterHandlers(OdsGenerator& rGenerator) override;
};