summaryrefslogtreecommitdiff
path: root/framework/source/interaction
diff options
context:
space:
mode:
authorMathias Bauer <mba@openoffice.org>2010-04-16 23:01:28 +0200
committerMathias Bauer <mba@openoffice.org>2010-04-16 23:01:28 +0200
commit39e9098c77157ea38411a237a6b52e0f76f12ce1 (patch)
tree9dbcd58a44a141701a05260517acba699d88e992 /framework/source/interaction
parent9c10c47f9cfb8f7641f0bb16908e0d19ad7d08ec (diff)
CWS gnumake2: export all symbols in framework using declspec
Diffstat (limited to 'framework/source/interaction')
-rw-r--r--framework/source/interaction/makefile.mk3
-rw-r--r--framework/source/interaction/preventduplicateinteraction.cxx224
2 files changed, 1 insertions, 226 deletions
diff --git a/framework/source/interaction/makefile.mk b/framework/source/interaction/makefile.mk
index 4ae3564c21f7..b109082906b3 100644
--- a/framework/source/interaction/makefile.mk
+++ b/framework/source/interaction/makefile.mk
@@ -45,8 +45,7 @@ CDEFS+=-DCOMPMOD_NAMESPACE=framework
# --- Generate -----------------------------------------------------
-SLOFILES= $(SLO)$/quietinteraction.obj \
- $(SLO)$/preventduplicateinteraction.obj
+SLOFILES= $(SLO)$/quietinteraction.obj
# --- Targets ------------------------------------------------------
diff --git a/framework/source/interaction/preventduplicateinteraction.cxx b/framework/source/interaction/preventduplicateinteraction.cxx
deleted file mode 100644
index 4e30da90e25b..000000000000
--- a/framework/source/interaction/preventduplicateinteraction.cxx
+++ /dev/null
@@ -1,224 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: preventduplicateinteraction.cxx,v $
- * $Revision: 1.6 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_framework.hxx"
-
-#include "interaction/preventduplicateinteraction.hxx"
-
-//_________________________________________________________________________________________________________________
-// my own includes
-//_________________________________________________________________________________________________________________
-
-//_________________________________________________________________________________________________________________
-// interface includes
-//_________________________________________________________________________________________________________________
-#include <com/sun/star/task/XInteractionAbort.hpp>
-#include <com/sun/star/task/XInteractionRetry.hpp>
-
-//_________________________________________________________________________________________________________________
-// other includes
-//_________________________________________________________________________________________________________________
-
-//_________________________________________________________________________________________________________________
-// namespace
-//_________________________________________________________________________________________________________________
-
-namespace framework{
-
-namespace css = ::com::sun::star;
-
-//_________________________________________________________________________________________________________________
-// exported const
-//_________________________________________________________________________________________________________________
-
-#define IMPLEMENTATIONNAME_UIINTERACTIONHANDLER ::rtl::OUString::createFromAscii("com.sun.star.comp.uui.UUIInteractionHandler")
-
-//_________________________________________________________________________________________________________________
-// exported definitions
-//_________________________________________________________________________________________________________________
-
-//_________________________________________________________________________________________________________________
-
-PreventDuplicateInteraction::PreventDuplicateInteraction(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR)
- : ThreadHelpBase2()
- , m_xSMGR(xSMGR)
-{
-}
-
-//_________________________________________________________________________________________________________________
-
-PreventDuplicateInteraction::~PreventDuplicateInteraction()
-{
-}
-
-//_________________________________________________________________________________________________________________
-
-void PreventDuplicateInteraction::setHandler(const css::uno::Reference< css::task::XInteractionHandler >& xHandler)
-{
- // SAFE ->
- ::osl::ResettableMutexGuard aLock(m_aLock);
- m_xHandler = xHandler;
- aLock.clear();
- // <- SAFE
-}
-
-//_________________________________________________________________________________________________________________
-
-void PreventDuplicateInteraction::useDefaultUUIHandler()
-{
- // SAFE ->
- ::osl::ResettableMutexGuard aLock(m_aLock);
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
- aLock.clear();
- // <- SAFE
-
- css::uno::Reference< css::task::XInteractionHandler > xHandler(
- xSMGR->createInstance(IMPLEMENTATIONNAME_UIINTERACTIONHANDLER),
- css::uno::UNO_QUERY_THROW);
-
- // SAFE ->
- aLock.reset();
- m_xHandler = xHandler;
- aLock.clear();
- // <- SAFE
-}
-
-//_________________________________________________________________________________________________________________
-
-void SAL_CALL PreventDuplicateInteraction::handle(const css::uno::Reference< css::task::XInteractionRequest >& xRequest)
- throw(css::uno::RuntimeException)
-{
- css::uno::Any aRequest = xRequest->getRequest();
- sal_Bool bHandleIt = sal_True;
-
- // SAFE ->
- ::osl::ResettableMutexGuard aLock(m_aLock);
-
- InteractionList::iterator pIt;
- for ( pIt = m_lInteractionRules.begin();
- pIt != m_lInteractionRules.end() ;
- ++pIt )
- {
- InteractionInfo& rInfo = *pIt;
-
- if (aRequest.isExtractableTo(rInfo.m_aInteraction))
- {
- ++rInfo.m_nCallCount;
- rInfo.m_xRequest = xRequest;
- bHandleIt = (rInfo.m_nCallCount <= rInfo.m_nMaxCount);
- break;
- }
- }
-
- css::uno::Reference< css::task::XInteractionHandler > xHandler = m_xHandler;
-
- aLock.clear();
- // <- SAFE
-
- if (
- (bHandleIt ) &&
- (xHandler.is())
- )
- {
- xHandler->handle(xRequest);
- }
- else
- {
- const css::uno::Sequence< css::uno::Reference< css::task::XInteractionContinuation > > lContinuations = xRequest->getContinuations();
- sal_Int32 c = lContinuations.getLength();
- sal_Int32 i = 0;
- for (i=0; i<c; ++i)
- {
- css::uno::Reference< css::task::XInteractionAbort > xAbort(lContinuations[i], css::uno::UNO_QUERY);
- if (xAbort.is())
- {
- xAbort->select();
- break;
- }
- }
- }
-}
-
-//_________________________________________________________________________________________________________________
-
-void PreventDuplicateInteraction::addInteractionRule(const PreventDuplicateInteraction::InteractionInfo& aInteractionInfo)
-{
- // SAFE ->
- ::osl::ResettableMutexGuard aLock(m_aLock);
-
- InteractionList::iterator pIt;
- for ( pIt = m_lInteractionRules.begin();
- pIt != m_lInteractionRules.end() ;
- ++pIt )
- {
- InteractionInfo& rInfo = *pIt;
- if (rInfo.m_aInteraction == aInteractionInfo.m_aInteraction)
- {
- rInfo.m_nMaxCount = aInteractionInfo.m_nMaxCount ;
- rInfo.m_nCallCount = aInteractionInfo.m_nCallCount;
- return;
- }
- }
-
- m_lInteractionRules.push_back(aInteractionInfo);
-
- aLock.clear();
- // <- SAFE
-}
-
-//_________________________________________________________________________________________________________________
-
-sal_Bool PreventDuplicateInteraction::getInteractionInfo(const css::uno::Type& aInteraction,
- PreventDuplicateInteraction::InteractionInfo* pReturn ) const
-{
- // SAFE ->
- ::osl::ResettableMutexGuard aLock(m_aLock);
-
- PreventDuplicateInteraction::InteractionList::const_iterator pIt;
- for ( pIt = m_lInteractionRules.begin();
- pIt != m_lInteractionRules.end() ;
- ++pIt )
- {
- const PreventDuplicateInteraction::InteractionInfo& rInfo = *pIt;
- if (rInfo.m_aInteraction == aInteraction)
- {
- *pReturn = rInfo;
- return sal_True;
- }
- }
-
- aLock.clear();
- // <- SAFE
-
- return sal_False;
-}
-
-} // namespace framework