diff options
-rw-r--r-- | framework/source/interaction/stillinteraction.cxx | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/framework/source/interaction/stillinteraction.cxx b/framework/source/interaction/stillinteraction.cxx index 156baf9c8b39..278053d6f6bb 100644 --- a/framework/source/interaction/stillinteraction.cxx +++ b/framework/source/interaction/stillinteraction.cxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: stillinteraction.cxx,v $ - * $Revision: 1.6 $ + * $Revision: 1.7 $ * * This file is part of OpenOffice.org. * @@ -50,6 +50,10 @@ #include <com/sun/star/document/AmbigousFilterRequest.hpp> #include <com/sun/star/task/ErrorCodeRequest.hpp> +#ifndef _COM_SUN_STAR_DOCUMENT_LOCKEDDOCUMENTREQUEST_HPP_ +#include <com/sun/star/document/LockedDocumentRequest.hpp> +#endif + //_________________________________________________________________________________________________________________ // other includes //_________________________________________________________________________________________________________________ @@ -128,6 +132,7 @@ void SAL_CALL StillInteraction::handle( const css::uno::Reference< css::task::XI // and other ones (ambigous but not unknown filter ...) css::task::ErrorCodeRequest aErrorCodeRequest ; css::document::AmbigousFilterRequest aAmbigousFilterRequest; + css::document::LockedDocumentRequest aLockedDocumentRequest; if (aRequest>>=aAmbigousFilterRequest) { @@ -151,6 +156,16 @@ void SAL_CALL StillInteraction::handle( const css::uno::Reference< css::task::XI xAbort->select(); } else + if( aRequest >>= aLockedDocumentRequest ) + { + // the locked document should be opened readonly by default + if (xApprove.is()) + xApprove->select(); + else + if (xAbort.is()) + xAbort->select(); + } + else if (xAbort.is()) xAbort->select(); } |