| /************************************************************** |
| * |
| * 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 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_beans_XMultiPropertySet_idl__ |
| #define __com_sun_star_beans_XMultiPropertySet_idl__ |
| |
| #ifndef __com_sun_star_uno_XInterface_idl__ |
| #include <com/sun/star/uno/XInterface.idl> |
| #endif |
| |
| #ifndef __com_sun_star_beans_XPropertySetInfo_idl__ |
| #include <com/sun/star/beans/XPropertySetInfo.idl> |
| #endif |
| |
| #ifndef __com_sun_star_beans_PropertyVetoException_idl__ |
| #include <com/sun/star/beans/PropertyVetoException.idl> |
| #endif |
| |
| #ifndef __com_sun_star_lang_IllegalArgumentException_idl__ |
| #include <com/sun/star/lang/IllegalArgumentException.idl> |
| #endif |
| |
| #ifndef __com_sun_star_lang_WrappedTargetException_idl__ |
| #include <com/sun/star/lang/WrappedTargetException.idl> |
| #endif |
| |
| #ifndef __com_sun_star_beans_XPropertiesChangeListener_idl__ |
| #include <com/sun/star/beans/XPropertiesChangeListener.idl> |
| #endif |
| |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module beans { |
| |
| //============================================================================= |
| |
| /** provides access to multiple properties with a single call. |
| */ |
| published interface XMultiPropertySet: com::sun::star::uno::XInterface |
| { |
| //------------------------------------------------------------------------- |
| |
| /** @returns |
| the <type>XPropertySetInfo</type> interface, which describes |
| all properties of the object to which this interface belongs. |
| <const>NULL</const> is returned if the object cannot or will |
| not provide information about the properties. |
| |
| @see XPropertySet::getPropertySetInfo |
| */ |
| com::sun::star::beans::XPropertySetInfo getPropertySetInfo(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** sets the values to the properties with the specified names. |
| |
| <p>The values of the properties must change before the bound |
| events are fired. The values of the constrained properties |
| should change after the vetoable events are fired and only if no |
| exception occured. Unknown properties are ignored. </p> |
| |
| @param aPropertyNames |
| specifies the names of the properties. All names must be unique. |
| This sequence must be alphabetically sorted. |
| |
| @param aValues |
| contains the new values of the properties. The order is the same |
| as in <var>aPropertyNames</var>. |
| |
| @throws IllegalArgumentException |
| if one of the new values cannot be converted to the type |
| of the underlying property by an identity or widening conversion. |
| |
| @throws com::sun::star::lang:WrappedTargetException |
| if the implementation has an internal reason for the exception. |
| In this case the original exception is wrapped. |
| */ |
| void setPropertyValues( [in] sequence<string> aPropertyNames, |
| [in] sequence<any> aValues ) |
| raises( com::sun::star::beans::PropertyVetoException, |
| com::sun::star::lang::IllegalArgumentException, |
| com::sun::star::lang::WrappedTargetException ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** @returns |
| a sequence of all values of the properties which are specified by their names. |
| |
| <p>The order of the values in the returned sequence will be the same |
| as the order of the names in the argument. </p> |
| |
| @param aPropertyNames |
| specifies the names of the properties. |
| This sequence must be alphabetically sorted. |
| */ |
| sequence<any> getPropertyValues( [in] sequence<string> aPropertyNames ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** adds an <type>XPropertiesChangeListener</type> to the |
| specified property with the specified names. |
| |
| <p>The implementation can ignore the names of the properties |
| and fire the event on all properties. </p> |
| |
| <p>It is suggested to allow multiple registration of the same listener, |
| thus for each time a listener is added, it has to be removed. |
| |
| @param aPropertyNames |
| specifies the names of the properties. |
| |
| @param xListener |
| contains the listener for the property change events. |
| |
| @see removePropertiesChangeListener |
| */ |
| [oneway] void addPropertiesChangeListener( [in] sequence<string> aPropertyNames, |
| [in] com::sun::star::beans::XPropertiesChangeListener xListener ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** removes an <type>XPropertiesChangeListener</type> from the listener list. |
| |
| <p>It is a "noop" if the listener is not registered. </p> |
| |
| <p>It is suggested to allow multiple registration of the same listener, |
| thus for each time a listener is added, it has to be removed. |
| |
| @param |
| contains the listener to be removed. |
| |
| @see addPropertiesChangeListener |
| */ |
| [oneway] void removePropertiesChangeListener( [in] com::sun::star::beans::XPropertiesChangeListener xListener ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** fires a sequence of <type>PropertyChangeEvent</type>s to the specified |
| listener. |
| |
| @param aPropertynames |
| specifies the sorted names of the properties. |
| |
| @param xListener |
| contains the listener for the property change events. |
| */ |
| [oneway] void firePropertiesChangeEvent( [in] sequence<string> aPropertyNames, |
| [in] com::sun::star::beans::XPropertiesChangeListener xListener ); |
| |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |