diff options
Diffstat (limited to 'offapi/com/sun/star/util/XModeChangeBroadcaster.idl')
-rw-r--r-- | offapi/com/sun/star/util/XModeChangeBroadcaster.idl | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/offapi/com/sun/star/util/XModeChangeBroadcaster.idl b/offapi/com/sun/star/util/XModeChangeBroadcaster.idl new file mode 100644 index 000000000..3cb0cefef --- /dev/null +++ b/offapi/com/sun/star/util/XModeChangeBroadcaster.idl @@ -0,0 +1,76 @@ +/* -*- 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_util_XModeChangeBroadcaster_idl__ +#define __com_sun_star_util_XModeChangeBroadcaster_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/NoSupportException.idl> +#include <com/sun/star/util/XModeChangeListener.idl> +#include <com/sun/star/util/XModeChangeApproveListener.idl> + + +module com { module sun { module star { module util { + + +/** broadcasts changes in an object's internal mode. + + @see XModeSelector + @see XModeChangeListener + @see XModeChangeApproveListener + + @since OOo 1.1.2 +*/ +published interface XModeChangeBroadcaster : com::sun::star::uno::XInterface +{ + /** adds the given listener to the list of components to be notified when the mode + changes. + */ + void addModeChangeListener( [in] XModeChangeListener rxListener ); + + /** removes the given listener from the list of components to be notified when the mode + changes. + */ + void removeModeChangeListener( [in] XModeChangeListener rxListener ); + + /** adds the given listener to the list of components to be notified when the mode + is about to change. + + @throws com::sun::star::lang::NoSupportException + if the component does not allow vetoing mode changes + */ + void addModeChangeApproveListener( [in] XModeChangeApproveListener rxListener ) + raises( com::sun::star::lang::NoSupportException ); + + /** remove the given listener from the list of components to be notified when the mode + is about to change. + + @throws com::sun::star::lang::NoSupportException + if the component does not allow vetoing mode changes + */ + void removeModeChangeApproveListener( [in] XModeChangeApproveListener rxListener ) + raises( com::sun::star::lang::NoSupportException ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |