summaryrefslogtreecommitdiff
path: root/uui/source/iahndl.hxx
diff options
context:
space:
mode:
authorKai Sommerfeld <kso@openoffice.org>2009-12-09 18:54:57 +0100
committerKai Sommerfeld <kso@openoffice.org>2009-12-09 18:54:57 +0100
commitc7cd1b3ffde4a2ea187d6d962081ff5cf94da688 (patch)
tree9b39150e62ba32a88cb7fc86905d242446c13df5 /uui/source/iahndl.hxx
parent4a8daa26e866b3c84585c41b8be010c0a77a30b4 (diff)
InteractionHandler refactoring, 1st wave.
Diffstat (limited to 'uui/source/iahndl.hxx')
-rw-r--r--uui/source/iahndl.hxx302
1 files changed, 111 insertions, 191 deletions
diff --git a/uui/source/iahndl.hxx b/uui/source/iahndl.hxx
index aba8a1fd45ad..c479bc95c5fc 100644
--- a/uui/source/iahndl.hxx
+++ b/uui/source/iahndl.hxx
@@ -32,61 +32,47 @@
#define UUI_IAHNDL_HXX
#include <vector>
+
#include "osl/mutex.hxx"
+#include "rtl/ustring.hxx"
+
#include "com/sun/star/uno/Reference.hxx"
#include "com/sun/star/uno/Sequence.hxx"
#include "com/sun/star/beans/Optional.hpp"
-#include "com/sun/star/embed/XStorage.hpp"
#include "com/sun/star/task/InteractionClassification.hpp"
-#include "com/sun/star/task/PasswordRequestMode.hpp"
-#include "com/sun/star/task/FutureDocumentVersionProductUpdateRequest.hpp"
-#include "com/sun/star/security/DocumentSignatureInformation.hpp"
-#include "com/sun/star/security/XCertificate.hpp"
-#include "com/sun/star/xml/crypto/XSecurityEnvironment.hpp"
-#include "tools/solar.h"
-#include "tools/errcode.hxx"
-#include "vcl/wintypes.hxx"
-#include "fltdlg.hxx"
-
-class Window;
-class LoginErrorInfo;
-struct CntHTTPCookieRequest;
-
-#define DESCRIPTION_1 1
-#define DESCRIPTION_2 2
-#define TITLE 3
-#define UUI_DOC_LOAD_LOCK 0
-#define UUI_DOC_OWN_LOAD_LOCK 1
-#define UUI_DOC_SAVE_LOCK 2
-#define UUI_DOC_OWN_SAVE_LOCK 3
+#include "tools/solar.h" // USHORT
+#include "tools/errcode.hxx" // ErrCode
+#include "tools/rc.hxx" // Resource
+#include "vcl/wintypes.hxx" // WinBits
namespace com { namespace sun { namespace star {
- namespace document {
- class AmbigousFilterRequest;
- class FilterOptionsRequest;
- class NoSuchFilterRequest;
+ namespace awt {
+ class XWindow;
+ }
+ namespace embed {
+ class XStorage;
}
namespace lang {
class XMultiServiceFactory;
}
+ namespace security {
+ class DocumentSignatureInformation;
+ }
namespace task {
+ class FutureDocumentVersionProductUpdateRequest;
class XInteractionContinuation;
class XInteractionHandler;
class XInteractionRequest;
}
namespace ucb {
- class AuthenticationRequest;
- class HandleCookiesRequest;
class NameClashResolveRequest;
- class CertificateValidationRequest;
- }
- namespace uno {
- class RuntimeException;
}
} } }
+class Window;
+
//============================================================================
struct InteractionHandlerData
{
@@ -107,7 +93,7 @@ class UUIInteractionHelper
private:
osl::Mutex m_aPropertyMutex;
com::sun::star::uno::Reference<
- com::sun::star::lang::XMultiServiceFactory > m_xServiceFactory;
+ com::sun::star::lang::XMultiServiceFactory > m_xServiceFactory;
com::sun::star::uno::Sequence< com::sun::star::uno::Any > m_aProperties;
UUIInteractionHelper(UUIInteractionHelper &); // not implemented
@@ -139,19 +125,22 @@ public:
com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
+ // Helper.
+ static ::rtl::OUString
+ replaceMessageWithArguments(
+ ::rtl::OUString aMessage,
+ std::vector< rtl::OUString > const & rArguments );
+
private:
bool
- handle_impl(
+ handleRequest_impl(
com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionRequest > const & rRequest)
+ com::sun::star::task::XInteractionRequest > const & rRequest,
+ bool bObtainErrorStringOnly,
+ bool & bHasErrorString,
+ rtl::OUString & rErrorString)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
- getInteractionHandlerList(InteractionHandlerDataList &rdataList);
-
- sal_Bool
- isDomainMatch( rtl::OUString hostName, rtl::OUString certHostName);
-
static long
handlerequest(void* pHandleData, void* pInteractionHandler);
@@ -177,109 +166,47 @@ private:
SAL_THROW(());
com::sun::star::uno::Reference< com::sun::star::task::XInteractionHandler >
- getInteractionHandler() const
+ getInteractionHandler()
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
- executeLoginDialog(LoginErrorInfo & rInfo,
- rtl::OUString const & rRealm)
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- void
- executeMasterPasswordDialog(LoginErrorInfo & rInfo,
- com::sun::star::task::PasswordRequestMode nMode)
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- void
- executePasswordDialog(LoginErrorInfo & rInfo,
- com::sun::star::task::PasswordRequestMode nMode,
- ::rtl::OUString aDocumentName)
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- void
- executeMSPasswordDialog(LoginErrorInfo & rInfo,
- com::sun::star::task::PasswordRequestMode nMode,
- ::rtl::OUString aDocumentName)
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- void
- executeCookieDialog(CntHTTPCookieRequest & rRequest)
+ bool
+ tryOtherInteractionHandler(
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
void
- executeFilterDialog(rtl::OUString const & rURL ,
- uui::FilterNameList const & rFilters,
- rtl::OUString & rFilter )
+ getInteractionHandlerList(InteractionHandlerDataList &rdataList)
SAL_THROW((com::sun::star::uno::RuntimeException));
- sal_Bool
- executeUnknownAuthDialog(
- const com::sun::star::uno::Reference<
- com::sun::star::security::XCertificate >& rXCert )
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- sal_Bool
- executeSSLWarnDialog(
- const com::sun::star::uno::Reference<
- com::sun::star::security::XCertificate >& rXCert,
- sal_Int32 const & failures,
- const rtl::OUString & hostName)
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- rtl::OUString
- getLocalizedDatTimeStr( ::com::sun::star::util::DateTime aDateTime );
-
- USHORT
- executeErrorDialog(
- com::sun::star::task::InteractionClassification eClassification,
- rtl::OUString const & rContext,
- rtl::OUString const & rMessage,
- WinBits nButtonMask )
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- USHORT
- executeMessageBox( rtl::OUString const & rTitle,
- rtl::OUString const & rMessage,
- WinBits nButtonMask )
- SAL_THROW((com::sun::star::uno::RuntimeException));
+ static bool
+ isInformationalErrorMessageRequest(
+ com::sun::star::uno::Sequence<
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionContinuation > > const &
+ rContinuations);
//=====================================================================
- bool handleMessageboxRequests(
- ::com::sun::star::uno::Reference<
- ::com::sun::star::task::XInteractionRequest > const & rRequest,
- bool bObtainErrorStringOnly,
- bool & bHasErrorString,
- rtl::OUString & rErrorString);
- bool handleErrorHandlerRequests(
- ::com::sun::star::uno::Reference<
- ::com::sun::star::task::XInteractionRequest > const & rRequest,
+ bool
+ handleInteractiveIOException(
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest,
bool bObtainErrorStringOnly,
bool & bHasErrorString,
- rtl::OUString & rErrorString);
-
- bool handleDialogRequests(
- ::com::sun::star::uno::Reference<
- ::com::sun::star::task::XInteractionRequest > const & rRequest);
+ rtl::OUString & rErrorString)
+ SAL_THROW((com::sun::star::uno::RuntimeException));
- //=====================================================================
- void
+ bool
handleAuthenticationRequest(
- com::sun::star::ucb::AuthenticationRequest const & rRequest,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations,
- rtl::OUString const & rURL)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handleCertificateValidationRequest(
- com::sun::star::ucb::CertificateValidationRequest const & rRequest,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
void
@@ -291,73 +218,44 @@ private:
rContinuations)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handleMasterPasswordRequest(
- com::sun::star::task::PasswordRequestMode nMode,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handlePasswordRequest(
- com::sun::star::task::PasswordRequestMode nMode,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations,
- ::rtl::OUString aDocumentName = ::rtl::OUString())
- SAL_THROW((com::sun::star::uno::RuntimeException));
-
- void
- handleMSPasswordRequest(
- com::sun::star::task::PasswordRequestMode nMode,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations,
- ::rtl::OUString aDocumentName = ::rtl::OUString())
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handleCookiesRequest(
- com::sun::star::ucb::HandleCookiesRequest const & rRequest,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handleNoSuchFilterRequest(
- com::sun::star::document::NoSuchFilterRequest const & rRequest,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handleAmbigousFilterRequest(
- com::sun::star::document::AmbigousFilterRequest const & rRequest,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
- void
+ bool
handleFilterOptionsRequest(
- com::sun::star::document::FilterOptionsRequest const & rRequest,
- com::sun::star::uno::Sequence<
- com::sun::star::uno::Reference<
- com::sun::star::task::XInteractionContinuation > > const &
- rContinuations)
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((com::sun::star::uno::RuntimeException));
void
- handleErrorRequest(
+ handleErrorHandlerRequest(
com::sun::star::task::InteractionClassification eClassification,
ErrCode nErrorCode,
std::vector< rtl::OUString > const & rArguments,
@@ -419,27 +317,49 @@ private:
rtl::OUString & rErrorString)
SAL_THROW((::com::sun::star::uno::RuntimeException));
- void handleLockedDocumentRequest(
- const ::rtl::OUString& aDocumentURL,
- const ::rtl::OUString& aInfo,
- ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::task::XInteractionContinuation > > const &
- rContinuations,
- sal_uInt16 nMode )
+ bool handleLockedDocumentRequest(
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((::com::sun::star::uno::RuntimeException));
- void handleChangedByOthersRequest(
- ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference<
- ::com::sun::star::task::XInteractionContinuation > > const &
- rContinuations )
+ bool handleChangedByOthersRequest(
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((::com::sun::star::uno::RuntimeException));
- void handleLockFileIgnoreRequest(
- ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference<
- ::com::sun::star::task::XInteractionContinuation > > const &
- rContinuations )
+ bool handleLockFileIgnoreRequest(
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
SAL_THROW((::com::sun::star::uno::RuntimeException));
};
+class ErrorResource: private Resource
+{
+public:
+ inline ErrorResource(ResId & rResId) SAL_THROW(()): Resource(rResId) {}
+
+ inline ~ErrorResource() SAL_THROW(()) { FreeResource(); }
+
+ bool getString(ErrCode nErrorCode, rtl::OUString * pString) const
+ SAL_THROW(());
+};
+
+/*
+class InteractionRequest
+{
+public:
+ InteractionRequest(
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > const & rRequest)
+ : m_aRequest( rRequest ) {}
+
+ virtual bool toString( rtl::OUString & rString ) = 0;
+ virtual bool handle( rtl::OUString & rString ) = 0;
+
+private:
+ com::sun::star::uno::Reference<
+ com::sun::star::task::XInteractionRequest > m_aRequest;
+};
+*/
+
#endif // UUI_IAHNDL_HXX