1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_presentation_XTransitionFactory_idl__
24#define __com_sun_star_presentation_XTransitionFactory_idl__
25
26#ifndef __com_sun_star_presentation_XTransition_idl__
27#include <com/sun/star/presentation/XTransition.idl>
28#endif
29#ifndef __com_sun_star_geometry_RealPoint2D_idl__
30#include <com/sun/star/geometry/RealPoint2D.idl>
31#endif
32
33
34module com {  module sun {  module star {
35
36module rendering { interface XBitmap; };
37
38module presentation {
39
40interface XTransition;
41interface XSlideShowView;
42
43/** TransitionFactory interface to request optional custom Transition instances for slideshow transitions.<p>
44
45    This interface provides the necessary methods to query and create optional transition effects for a SlideShow<p>
46
47    @since OpenOffice 2.4
48 */
49interface XTransitionFactory : ::com::sun::star::uno::XInterface
50{
51    /** Checks whether this instance provides an implementation for given transition id.<p>
52     */
53    boolean hasTransition( [in] short transitionType, [in] short transitionSubType );
54
55    /** Actually create a transition for the given transition id
56
57        @param transitionType
58        Main type of transition (@see ::com::sun::star::animation::TransitionType)
59
60        @param transitionSubType
61        Subtype for the transition (@see ::com::sun::star::animation::TransitionSubType)
62
63        @param view
64        Slideshow view to display on
65
66        @param leavingBitmap
67        Bitmap of the slide that's going to leave the screen
68
69        @param enteringBitmap
70        Bitmap of the slide that's going to enter the screen
71
72        @param slideOffset
73        Offset in pixel from the top, left edge of the view, such that the
74        slide displays similar to normal slideshow
75     */
76    XTransition createTransition( [in] short                                 transitionType,
77                                  [in] short                                 transitionSubType,
78                                  [in] XSlideShowView                        view,
79                                  [in] com::sun::star::rendering::XBitmap    leavingBitmap,
80                                  [in] com::sun::star::rendering::XBitmap    enteringBitmap );
81};
82
83service TransitionFactory : XTransitionFactory;
84
85}; }; }; };
86
87#endif
88
89