22#include <com/sun/star/frame/XDispatchProviderInterception.hpp>
23#include <com/sun/star/frame/XDispatchProviderInterceptor.hpp>
24#include <com/sun/star/frame/XDispatchProvider.hpp>
25#include <com/sun/star/frame/XDispatch.hpp>
26#include <com/sun/star/frame/XFrame.hpp>
27#include <com/sun/star/frame/DispatchDescriptor.hpp>
39class DispatchProvider;
50 css::frame::XDispatchProvider,
51 css::frame::XDispatchProviderInterception,
52 css::lang::XEventListener >
90 iterator
findByReference(
const css::uno::Reference< css::frame::XDispatchProviderInterceptor >& xInterceptor)
95 if (pIt->xInterceptor == xInterceptor)
111 for (iterator pIt=
begin(); pIt!=
end(); ++pIt)
113 for (
const OUString& pattern : pIt->lURLPattern)
191 virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL
queryDispatch(
const css::util::URL& aURL ,
192 const OUString& sTargetFrameName,
193 sal_Int32 nSearchFlags )
override;
208 virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL
queryDispatches(
const css::uno::Sequence< css::frame::DispatchDescriptor >& lDescriptor)
override;
248 virtual void SAL_CALL
disposing(
const css::lang::EventObject& aEvent)
override;
bool Matches(std::u16string_view rStr) const
implements a list of items of type InterceptorInfo, and provides some special functions on it.
iterator findByReference(const css::uno::Reference< css::frame::XDispatchProviderInterceptor > &xInterceptor)
search for an interceptor inside this list using it's reference.
iterator findByPattern(std::u16string_view sURL)
search for an interceptor inside this list using it's reference.
implements a helper to support interception with additional functionality.
virtual void SAL_CALL registerDispatchProviderInterceptor(const css::uno::Reference< css::frame::XDispatchProviderInterceptor > &xInterceptor) override
register an interceptor.
virtual void SAL_CALL releaseDispatchProviderInterceptor(const css::uno::Reference< css::frame::XDispatchProviderInterceptor > &xInterceptor) override
release an interceptor.
virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL queryDispatches(const css::uno::Sequence< css::frame::DispatchDescriptor > &lDescriptor) override
implements an optimized queryDispatch() for remote.
InterceptionHelper(const css::uno::Reference< css::frame::XFrame > &xOwner, rtl::Reference< DispatchProvider > xSlave)
creates a new interception helper instance.
css::uno::WeakReference< css::frame::XFrame > m_xOwnerWeak
reference to the frame, which uses this instance to implement its own interception.
rtl::Reference< DispatchProvider > GetSlave() const
InterceptorList m_lInterceptionRegs
contains all registered interceptor objects.
virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch(const css::util::URL &aURL, const OUString &sTargetFrameName, sal_Int32 nSearchFlags) override
query for a dispatch, which implements the requested feature.
virtual ~InterceptionHelper() override
standard destructor.
rtl::Reference< DispatchProvider > m_xSlave
this interception helper implements the top level master of an interceptor list .....
virtual void SAL_CALL disposing(const css::lang::EventObject &aEvent) override
Is called from our owner frame, in case he will be disposed.
enumrange< T >::Iterator begin(enumrange< T >)
bind an interceptor component to its URL pattern registration.
css::uno::Reference< css::frame::XDispatchProvider > xInterceptor
reference to the interceptor component.
css::uno::Sequence< OUString > lURLPattern
it's registration for URL patterns.