/************************************************************** * * 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_awt_XAnimatedImages_idl__ #define __com_sun_star_awt_XAnimatedImages_idl__ #include <com/sun/star/container/XContainerListener.idl> #include <com/sun/star/lang/IndexOutOfBoundsException.idl> #include <com/sun/star/container/XContainer.idl> #include <com/sun/star/lang/IllegalArgumentException.idl> //====================================================================================================================== module com { module sun { module star { module awt { //====================================================================================================================== /** allows administrating a set of images, to be displayed as animated seres. <p>Components implementing this interface maintain a variable number of image sets. Components displaying those images will choose the best-fitting image set depending on the available space, and possibly other restrictions.</p> @since OOo 3.4 */ published interface XAnimatedImages { /** specifies the time in milliseconds between two animation steps. <p>This is the minimum time, the actual value might be longer due to system load. The default value will be 100 ms.</p> */ [attribute] long StepTime; /** specifies whether the animation should start over with the first image of the image series when the last image has been played. <p>The default value for this attribute is <TRUE/>.</p> */ [attribute] boolean AutoRepeat; /** controls the way the images are scaled up or down, when the available space is larger or smaller than what is needed for them. <p>Allowed values are those from the <type>ImageScaleMode</type> constants group.</p> */ [attribute] short ScaleMode { set raises (::com::sun::star::lang::IllegalArgumentException); }; /** returns the number of images sets maintained by the component. */ long getImageSetCount(); /** returns the URLs of the image set with the given index @param i_index the index of the set those image URLs are to be retrieved. Must be greater than or equal to <code>0</code>, and smaller than the value returned by <member>getImageSetCount</member>. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the <code>i_index</code> is not a valid index. */ sequence< string > getImageSet ( [in] long i_index ) raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); /** sets the URLs of the image set with the given index @param i_index the index at which a new image set should be inserted. Must be greater than or equal to <code>0</code>, and smaller than or equal to the value returned by <member>getImageSetCount</member>. @param i_imageURLs the URLs for the images for the given set. Will be resolved using a <type scope="com::sun::star::graphic">GraphicProvider</type>. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the <code>i_index</code> is not a valid index. */ void insertImageSet ( [in] long i_index, [in] sequence< string > i_imageURLs ) raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); /** replaces the image set given by index with a new one @param i_index the index of the set those image URLs are to be replaced. Must be greater than or equal to <code>0</code>, and smaller than the value returned by <member>getImageSetCount</member>. @param i_imageURLs the URLs for the images for the given set. Will be resolved using a <type scope="com::sun::star::graphic">GraphicProvider</type>. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the <code>i_index</code> is not a valid index. */ void replaceImageSet ( [in] long i_index, [in] sequence< string > i_imageURLs ) raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); /** removes the image set with the given index @param i_index the index of the set to remove. Must be greater than or equal to <code>0</code>, and smaller than the value returned by <member>getImageSetCount</member>. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the <code>i_index</code> is not a valid index. */ void removeImageSet ( [in] long i_index ) raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); /** allows other components to observer the insertion, removal, and replacement of image sets */ interface ::com::sun::star::container::XContainer; }; //====================================================================================================================== }; }; }; }; //====================================================================================================================== #endif