Version 5.2.6.1, tag libreoffice-5.2.6.1
[LibreOffice.git] / offapi / com / sun / star / frame / XDispatchProviderInterception.idl
bloba5ffb81d645928bb7dd706f3c72b94a85e1750d6
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_frame_XDispatchProviderInterception_idl__
20 #define __com_sun_star_frame_XDispatchProviderInterception_idl__
22 #include <com/sun/star/uno/XInterface.idl>
23 #include <com/sun/star/frame/XDispatchProviderInterceptor.idl>
27 module com { module sun { module star { module frame {
29 /** makes it possible to register an XDispatchProvider which
30 intercepts all requests of XDispatch to this instance.
32 <p>
33 Note: Nobody can guarantee order of used interceptor objects if more than ones exist.
34 Later registered ones will be used at first. But it's possible to increase the chance
35 for that by providing the optional interface XInterceptorInfo.
36 </p>
38 @see XDispatchProvider
39 @see XDispatch
40 @see XInterceptorInfo
42 published interface XDispatchProviderInterception: com::sun::star::uno::XInterface
44 /** registers an XDispatchProviderInterceptor, which will become
45 the first interceptor in the chain of registered interceptors.
47 @param Interceptor
48 the interceptor which wishes to be registered
50 @see XDispatchProviderInterception::releaseDispatchProviderInterceptor()
52 void registerDispatchProviderInterceptor( [in] XDispatchProviderInterceptor Interceptor );
54 /** removes an XDispatchProviderInterceptor which was previously registered
56 <p>
57 The order of removals is arbitrary. It is not necessary to remove the last
58 registered interceptor first.
59 </p>
61 @param Interceptor
62 the interceptor which wishes to be unregistered
64 @see XDispatchProviderInterception::registerDispatchProviderInterceptor()
66 void releaseDispatchProviderInterceptor( [in] XDispatchProviderInterceptor Interceptor );
70 }; }; }; };
72 #endif
74 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */