diff options
Diffstat (limited to 'udkapi/com/sun/star/script/XEventAttacher.idl')
-rw-r--r-- | udkapi/com/sun/star/script/XEventAttacher.idl | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/udkapi/com/sun/star/script/XEventAttacher.idl b/udkapi/com/sun/star/script/XEventAttacher.idl new file mode 100644 index 000000000..d8a17e1d7 --- /dev/null +++ b/udkapi/com/sun/star/script/XEventAttacher.idl @@ -0,0 +1,97 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_script_XEventAttacher_idl__ +#define __com_sun_star_script_XEventAttacher_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +#include <com/sun/star/lang/XEventListener.idl> + +#include <com/sun/star/script/XAllListener.idl> + +#include <com/sun/star/lang/IllegalArgumentException.idl> + +#include <com/sun/star/beans/IntrospectionException.idl> + +#include <com/sun/star/script/CannotCreateAdapterException.idl> + +#include <com/sun/star/lang/ServiceNotRegisteredException.idl> + + + + module com { module sun { module star { module script { + +/** makes it possible to attach script events given by a sequence of + ScriptEventDescriptor structures to a given interface. + */ +published interface XEventAttacher: com::sun::star::uno::XInterface +{ + /** registers the given "AllListener" object as a listener at the + given interface by creating a suitable listener adapter and + calling the "addListener" method corresponding to the + "ListenerType". + */ + com::sun::star::lang::XEventListener attachListener( [in] com::sun::star::uno::XInterface xTarget, + [in] com::sun::star::script::XAllListener xAllListener, + [in] any aHelper, + [in] string aListenerType, + [in] string aAddListenerParam ) + raises( com::sun::star::lang::IllegalArgumentException, + com::sun::star::beans::IntrospectionException, + com::sun::star::script::CannotCreateAdapterException, + com::sun::star::lang::ServiceNotRegisteredException ); + + /** registers an object as a listener at the given interface by + creating a suitable listener adapter and calling the method + which corresponds to the listener type. + + <p>Only the event corresponding to the given event method + will be delegated to <var>xAllListener</var>.</p> + */ + com::sun::star::lang::XEventListener attachSingleEventListener( [in] com::sun::star::uno::XInterface xTarget, + [in] com::sun::star::script::XAllListener xAllListener, + [in] any aHelper, + [in] string aListenerType, + [in] string aAddListenerParam, + [in] string aEventMethod ) + raises( com::sun::star::lang::IllegalArgumentException, + com::sun::star::beans::IntrospectionException, + com::sun::star::script::CannotCreateAdapterException, + com::sun::star::lang::ServiceNotRegisteredException ); + + /** removes a listener object as a listener from the given interface. + + <p> This method can and should be used as a contrary method + to the two attach methods.</p> + */ + void removeListener( [in] com::sun::star::uno::XInterface xTarget, + [in] string aListenerType, + [in] string aRemoveListenerParam, + [in] com::sun::star::lang::XEventListener xToRemoveListener ) + raises( com::sun::star::lang::IllegalArgumentException, + com::sun::star::beans::IntrospectionException ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |