diff options
author | Christian Lippka <christian.lippka@sun.com> | 2010-04-28 19:02:34 +0200 |
---|---|---|
committer | Christian Lippka <christian.lippka@sun.com> | 2010-04-28 19:02:34 +0200 |
commit | 9813fe0c3869e6b1c90d78b666e371eafca1d808 (patch) | |
tree | 18bacb040159fa07f41b8a193471f8d6b67eee4c /framework/source/interaction | |
parent | 1a7fdd6139827e020b76fc70754e7ff6ee5d9cd6 (diff) | |
parent | 515792c312abc929b4616c757b8eaced67718d10 (diff) |
renaissance2: rebase m77
Diffstat (limited to 'framework/source/interaction')
-rw-r--r-- | framework/source/interaction/quietinteraction.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/framework/source/interaction/quietinteraction.cxx b/framework/source/interaction/quietinteraction.cxx index f00bee4ed432..d5d11ebc2097 100644 --- a/framework/source/interaction/quietinteraction.cxx +++ b/framework/source/interaction/quietinteraction.cxx @@ -44,7 +44,9 @@ #include <com/sun/star/task/XInteractionAbort.hpp> #include <com/sun/star/task/XInteractionApprove.hpp> #include <com/sun/star/document/XInteractionFilterSelect.hpp> +#include <com/sun/star/document/XInteractionFilterOptions.hpp> #include <com/sun/star/document/AmbigousFilterRequest.hpp> +#include <com/sun/star/document/FilterOptionsRequest.hpp> #include <com/sun/star/task/ErrorCodeRequest.hpp> #ifndef _COM_SUN_STAR_DOCUMENT_LOCKEDDOCUMENTREQUEST_HPP_ @@ -111,6 +113,7 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI css::uno::Reference< css::task::XInteractionAbort > xAbort ; css::uno::Reference< css::task::XInteractionApprove > xApprove ; css::uno::Reference< css::document::XInteractionFilterSelect > xFilter ; + css::uno::Reference< css::document::XInteractionFilterOptions > xFOptions ; sal_Int32 nCount=lContinuations.getLength(); for (sal_Int32 i=0; i<nCount; ++i) @@ -123,6 +126,9 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI if ( ! xFilter.is() ) xFilter = css::uno::Reference< css::document::XInteractionFilterSelect >( lContinuations[i], css::uno::UNO_QUERY ); + + if ( ! xFOptions.is() ) + xFOptions = css::uno::Reference< css::document::XInteractionFilterOptions >( lContinuations[i], css::uno::UNO_QUERY ); } // differ between abortable interactions (error, unknown filter ...) @@ -130,6 +136,7 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI css::task::ErrorCodeRequest aErrorCodeRequest ; css::document::AmbigousFilterRequest aAmbigousFilterRequest; css::document::LockedDocumentRequest aLockedDocumentRequest; + css::document::FilterOptionsRequest aFilterOptionsRequest; if (aRequest>>=aAmbigousFilterRequest) { @@ -163,6 +170,15 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI xAbort->select(); } else + if (aRequest>>=aFilterOptionsRequest) + { + if (xFOptions.is()) + { + // let the default filter options be used + xFOptions->select(); + } + } + else if (xAbort.is()) xAbort->select(); } |