summaryrefslogtreecommitdiff
path: root/filter
diff options
context:
space:
mode:
authorPeter Jentsch <pjotr@guineapics.de>2011-10-14 22:12:29 +0200
committerPeter Jentsch <pjotr@guineapics.de>2011-10-18 22:14:09 +0200
commit960f4bdd71c9de19059279d61abb142ddfdac0ce (patch)
treebcb48dddc340c696f89fa5b6431ee035e436f20d /filter
parentaaf48368c80e60d6bf325573bab89a2efae6da4c (diff)
initial support for user defined xslt service impl in filter jar
Supports importing the 2nd userdata parameter for xslt filter definitions from manually edited custom XML filter settings. UI currently not available.
Diffstat (limited to 'filter')
-rw-r--r--filter/source/xsltdialog/typedetectionimport.cxx1
-rw-r--r--filter/source/xsltdialog/xmlfiltercommon.hxx1
-rw-r--r--filter/source/xsltdialog/xmlfiltersettingsdialog.cxx9
3 files changed, 9 insertions, 2 deletions
diff --git a/filter/source/xsltdialog/typedetectionimport.cxx b/filter/source/xsltdialog/typedetectionimport.cxx
index 9133f9bd495c..07dd0797c5e8 100644
--- a/filter/source/xsltdialog/typedetectionimport.cxx
+++ b/filter/source/xsltdialog/typedetectionimport.cxx
@@ -183,6 +183,7 @@ filter_info_impl* TypeDetectionImporter::createFilterForNode( Node * pNode )
OUString aAdapterService( getSubdata( 0, aDelim, aFilterUserData ) );
//Import/ExportService
+ pFilter->maXSLTTransformerImpl = getSubdata( 1, aDelim, aFilterUserData );
pFilter->maImportService = getSubdata( 2, aDelim, aFilterUserData );
pFilter->maExportService = getSubdata( 3, aDelim, aFilterUserData );
pFilter->maImportXSLT = getSubdata( 4, aDelim, aFilterUserData );
diff --git a/filter/source/xsltdialog/xmlfiltercommon.hxx b/filter/source/xsltdialog/xmlfiltercommon.hxx
index 6ff28094c846..c1da769c1a8c 100644
--- a/filter/source/xsltdialog/xmlfiltercommon.hxx
+++ b/filter/source/xsltdialog/xmlfiltercommon.hxx
@@ -70,6 +70,7 @@ public:
rtl::OUString maDocType;
rtl::OUString maImportService;
rtl::OUString maExportService;
+ rtl::OUString maXSLTTransformerImpl;
sal_Int32 maFlags;
sal_Int32 maFileFormatVersion;
diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
index 2ba839205b7e..c11a455d5be1 100644
--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
@@ -1167,6 +1167,7 @@ void XMLFilterSettingsDialog::initFilterList()
continue;
// get filter information from userdata
+ pTempFilter->maXSLTTransformerImpl = aUserData[1];
pTempFilter->maImportService = aUserData[2];
pTempFilter->maExportService = aUserData[3];
pTempFilter->maImportXSLT = aUserData[4];
@@ -1645,7 +1646,8 @@ filter_info_impl::filter_info_impl( const filter_info_impl& rInfo ) :
maFlags( rInfo.maFlags ),
maFileFormatVersion( rInfo.maFileFormatVersion ),
mnDocumentIconID( rInfo.mnDocumentIconID ),
- mbReadonly( rInfo.mbReadonly )
+ mbReadonly( rInfo.mbReadonly ),
+ maXSLTTransformerImpl( rInfo.maXSLTTransformerImpl )
{
}
@@ -1668,7 +1670,9 @@ int filter_info_impl::operator==( const filter_info_impl& r ) const
maImportService != r.maImportService ||
maImportTemplate != r.maImportTemplate ||
maFlags != r.maFlags ||
- maFileFormatVersion != r.maFileFormatVersion )
+ maFileFormatVersion != r.maFileFormatVersion ||
+ maXSLTTransformerImpl != r.maXSLTTransformerImpl
+ )
return false;
return true;
@@ -1689,6 +1693,7 @@ Sequence< OUString > filter_info_impl::getFilterUserData() const
aUserData[3] = pInfo->maXMLExporter;
}
*/
+ aUserData[1] = maXSLTTransformerImpl;
aUserData[2] = maImportService;
aUserData[3] = maExportService;
aUserData[4] = maImportXSLT;