diff options
Diffstat (limited to 'writerperfect/source/writer/MSWorksImportFilter.cxx')
-rw-r--r-- | writerperfect/source/writer/MSWorksImportFilter.cxx | 82 |
1 files changed, 43 insertions, 39 deletions
diff --git a/writerperfect/source/writer/MSWorksImportFilter.cxx b/writerperfect/source/writer/MSWorksImportFilter.cxx index 9af6027b3e75..c22474d190bc 100644 --- a/writerperfect/source/writer/MSWorksImportFilter.cxx +++ b/writerperfect/source/writer/MSWorksImportFilter.cxx @@ -18,77 +18,83 @@ #include "MSWorksImportFilter.hxx" #include <strings.hrc> -using com::sun::star::uno::Sequence; -using com::sun::star::uno::XInterface; using com::sun::star::uno::Exception; using com::sun::star::uno::RuntimeException; +using com::sun::star::uno::Sequence; using com::sun::star::uno::XComponentContext; +using com::sun::star::uno::XInterface; -static bool handleEmbeddedWKSObject(const librevenge::RVNGBinaryData &data, OdfDocumentHandler *pHandler, const OdfStreamType streamType) +static bool handleEmbeddedWKSObject(const librevenge::RVNGBinaryData& data, + OdfDocumentHandler* pHandler, const OdfStreamType streamType) { OdsGenerator exporter; exporter.addDocumentHandler(pHandler, streamType); - return libwps::WPSDocument::parse(data.getDataStream(), &exporter)==libwps::WPS_OK; + return libwps::WPSDocument::parse(data.getDataStream(), &exporter) == libwps::WPS_OK; } -bool MSWorksImportFilter::doImportDocument(librevenge::RVNGInputStream &rInput, OdtGenerator &rGenerator, utl::MediaDescriptor &) +bool MSWorksImportFilter::doImportDocument(librevenge::RVNGInputStream& rInput, + OdtGenerator& rGenerator, utl::MediaDescriptor&) { libwps::WPSKind kind = libwps::WPS_TEXT; libwps::WPSCreator creator; bool needEncoding = false; - const libwps::WPSConfidence confidence = libwps::WPSDocument::isFileFormatSupported(&rInput, kind, creator, needEncoding); + const libwps::WPSConfidence confidence + = libwps::WPSDocument::isFileFormatSupported(&rInput, kind, creator, needEncoding); std::string fileEncoding; try { - if ((kind == libwps::WPS_TEXT) && (confidence == libwps::WPS_CONFIDENCE_EXCELLENT) && needEncoding) + if ((kind == libwps::WPS_TEXT) && (confidence == libwps::WPS_CONFIDENCE_EXCELLENT) + && needEncoding) { OUString title, encoding; switch (creator) { - case libwps::WPS_MSWORKS: - title = WpResId(STR_ENCODING_DIALOG_TITLE_MSWORKS); - encoding = "CP850"; - break; - case libwps::WPS_RESERVED_0: // MS Write - title = WpResId(STR_ENCODING_DIALOG_TITLE_MSWRITE); - encoding = "CP1252"; - break; - case libwps::WPS_RESERVED_1: // DosWord - title = WpResId(STR_ENCODING_DIALOG_TITLE_DOSWORD); - encoding = "CP850"; - break; - default: - title = WpResId(STR_ENCODING_DIALOG_TITLE); - encoding = "CP850"; - break; + case libwps::WPS_MSWORKS: + title = WpResId(STR_ENCODING_DIALOG_TITLE_MSWORKS); + encoding = "CP850"; + break; + case libwps::WPS_RESERVED_0: // MS Write + title = WpResId(STR_ENCODING_DIALOG_TITLE_MSWRITE); + encoding = "CP1252"; + break; + case libwps::WPS_RESERVED_1: // DosWord + title = WpResId(STR_ENCODING_DIALOG_TITLE_DOSWORD); + encoding = "CP850"; + break; + default: + title = WpResId(STR_ENCODING_DIALOG_TITLE); + encoding = "CP850"; + break; } const ScopedVclPtrInstance<writerperfect::WPFTEncodingDialog> pDlg(title, encoding); if (pDlg->Execute() == RET_OK) { if (!pDlg->GetEncoding().isEmpty()) - fileEncoding=pDlg->GetEncoding().toUtf8().getStr(); + fileEncoding = pDlg->GetEncoding().toUtf8().getStr(); } // we can fail because we are in headless mode, the user has cancelled conversion, ... else if (pDlg->hasUserCalledCancel()) return false; } } - catch (css::uno::Exception &e) + catch (css::uno::Exception& e) { SAL_WARN("writerperfect", "ignoring " << e); } - return libwps::WPS_OK == libwps::WPSDocument::parse(&rInput, &rGenerator, "", fileEncoding.c_str()); + return libwps::WPS_OK + == libwps::WPSDocument::parse(&rInput, &rGenerator, "", fileEncoding.c_str()); } -bool MSWorksImportFilter::doDetectFormat(librevenge::RVNGInputStream &rInput, OUString &rTypeName) +bool MSWorksImportFilter::doDetectFormat(librevenge::RVNGInputStream& rInput, OUString& rTypeName) { libwps::WPSKind kind = libwps::WPS_TEXT; libwps::WPSCreator creator; bool needEncoding; - const libwps::WPSConfidence confidence = libwps::WPSDocument::isFileFormatSupported(&rInput, kind, creator, needEncoding); + const libwps::WPSConfidence confidence + = libwps::WPSDocument::isFileFormatSupported(&rInput, kind, creator, needEncoding); if ((kind == libwps::WPS_TEXT) && (confidence == libwps::WPS_CONFIDENCE_EXCELLENT)) { @@ -111,7 +117,7 @@ bool MSWorksImportFilter::doDetectFormat(librevenge::RVNGInputStream &rInput, OU return false; } -void MSWorksImportFilter::doRegisterHandlers(OdtGenerator &rGenerator) +void MSWorksImportFilter::doRegisterHandlers(OdtGenerator& rGenerator) { rGenerator.registerEmbeddedObjectHandler("image/wks-ods", &handleEmbeddedWKSObject); } @@ -122,25 +128,23 @@ OUString SAL_CALL MSWorksImportFilter::getImplementationName() return OUString("com.sun.star.comp.Writer.MSWorksImportFilter"); } -sal_Bool SAL_CALL MSWorksImportFilter::supportsService(const OUString &rServiceName) +sal_Bool SAL_CALL MSWorksImportFilter::supportsService(const OUString& rServiceName) { return cppu::supportsService(this, rServiceName); } -Sequence< OUString > SAL_CALL MSWorksImportFilter::getSupportedServiceNames() +Sequence<OUString> SAL_CALL MSWorksImportFilter::getSupportedServiceNames() { - Sequence < OUString > aRet(2); - OUString *pArray = aRet.getArray(); - pArray[0] = "com.sun.star.document.ImportFilter"; - pArray[1] = "com.sun.star.document.ExtendedTypeDetection"; + Sequence<OUString> aRet(2); + OUString* pArray = aRet.getArray(); + pArray[0] = "com.sun.star.document.ImportFilter"; + pArray[1] = "com.sun.star.document.ExtendedTypeDetection"; return aRet; } -extern "C" -SAL_DLLPUBLIC_EXPORT css::uno::XInterface * +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface* com_sun_star_comp_Writer_MSWorksImportFilter_get_implementation( - css::uno::XComponentContext *const context, - const css::uno::Sequence<css::uno::Any> &) + css::uno::XComponentContext* const context, const css::uno::Sequence<css::uno::Any>&) { return cppu::acquire(new MSWorksImportFilter(context)); } |