| /************************************************************** |
| * |
| * 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_presentation_XSlideShowController_idl__ |
| #define __com_sun_star_presentation_XSlideShowController_idl__ |
| |
| #ifndef __com_sun_star_drawing_XDrawPage_idl__ |
| #include <com/sun/star/drawing/XDrawPage.idl> |
| #endif |
| |
| #ifndef __com_sun_star_container_XIndexAccess_idl__ |
| #include <com/sun/star/container/XIndexAccess.idl> |
| #endif |
| |
| #ifndef __com_sun_star_lang_XComponent_idl__ |
| #include <com/sun/star/lang/XComponent.idl> |
| #endif |
| |
| #ifndef __com_sun_star_presentation_XSlideShow_idl__ |
| #include <com/sun/star/presentation/XSlideShow.idl> |
| #endif |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module presentation { |
| |
| //============================================================================= |
| |
| /** interface to control a running slideshow. |
| |
| @see XPresentation2 |
| @since OpenOffice 3.0 |
| */ |
| interface XSlideShowController |
| { |
| //------------------------------------------------------------------------- |
| |
| /** returns true if the slideshow is still running. |
| If this returns false, this component is already disposed. |
| You can start a new slideshow and get a new instance |
| of <type>XSlideShowController</type> from <type>XPresentation2</type> |
| */ |
| boolean isRunning(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** @returns |
| the number of slides in this slideshow. |
| |
| @see getSlideByIndex |
| */ |
| long getSlideCount(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** gives access to the slides that will be shown in this slideshow. |
| |
| <p>Slides are returned in the order they will be displayed in the |
| presentation which can be different than the orders of slides in |
| the document. Not all slides must be present and each slide can |
| be used more than once. |
| |
| @returns |
| the slide at the specified index. |
| |
| @param Index |
| specifies the position in the list of slides that are displayed |
| in this slideshow. The first index is 0. |
| |
| @throws com::sun::star::lang::IndexOutOfBoundException |
| if the index is not valid. |
| |
| */ |
| ::com::sun::star::drawing::XDrawPage getSlideByIndex( [in] long Index ) |
| raises( com::sun::star::lang::IndexOutOfBoundsException ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** addes a listener that recieves events while the slideshow is running. */ |
| void addSlideShowListener( [in] XSlideShowListener Listener ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** removes a listener. */ |
| void removeSlideShowListener( [in] XSlideShowListener Listener ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** start next effects that wait on a generic trigger. |
| <p>If no generic triggers are waiting the next |
| slide will be displayed. |
| */ |
| void gotoNextEffect(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** undo the last effects that where triggered by a generic trigger. |
| <p>If there is no previous effect that can be undone then the |
| previous slide will be displayed. |
| */ |
| void gotoPreviousEffect(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** goto and display first slide */ |
| void gotoFirstSlide(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** goto and display next slide. |
| <p>Remaining effects on the current slide will be skiped.*/ |
| void gotoNextSlide(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** goto and display previous slide. |
| <p>Remaining effects on the current slide will be skiped.*/ |
| void gotoPreviousSlide(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** goto and display last slide. |
| <p>Remaining effects on the current slide will be skiped.*/ |
| void gotoLastSlide(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** goto the given textual bookmark */ |
| void gotoBookmark( [in] string Bookmark ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** jumps to the given slide. |
| <p>The slide can also be a slide that would normaly not be shown during |
| the current slideshow. |
| |
| @throws com::sun::star::lang::IllegalArgumentException |
| if the given page is not a valid slide of the document for |
| which this slideshow is started. Also not allowed are master, |
| notes and handout pages. |
| */ |
| void gotoSlide( [in] com::sun::star::drawing::XDrawPage Page ) |
| raises( com::sun::star::lang::IllegalArgumentException ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** jumps to the slide at the given index. |
| */ |
| void gotoSlideIndex( [in] long Index ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** stop all currently played sounds */ |
| void stopSound(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** pauses the slideshow. All effects are paused. |
| <p>The slideshow continues on next user input or if |
| <member>resume</member> is called. |
| */ |
| void pause(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** resumes a paused slideshow. |
| */ |
| void resume(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** returns <TRUE/> if the slideshow is currently paused. |
| |
| @see <member>pause</member> |
| @see <member>resume</member> |
| */ |
| boolean isPaused(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** pauses the slideshow and blanks the screen in the given color. |
| <p>Change attribute <member>Pause</member> to false to unpause |
| the slideshow. |
| */ |
| void blankScreen( [in] long Color ); |
| |
| //------------------------------------------------------------------------- |
| |
| /** activates the user interface of this slideshow. |
| |
| @see <member>deactivate()</member> |
| @see <member>isActive()</member> |
| */ |
| void activate(); |
| |
| //------------------------------------------------------------------------- |
| /** can be called to deactivate the user interface of this slideshow. |
| |
| <p>A deactivated |
| @see <member>activate()</member> |
| @see <member>isActive()</member> |
| */ |
| void deactivate(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** determines if the slideshow is active. |
| |
| @return |
| <TRUE/> for UI active slideshow |
| <br> |
| <FALSE/> otherwise |
| */ |
| boolean isActive(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** returns slide that is currently displayed */ |
| com::sun::star::drawing::XDrawPage getCurrentSlide(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** returns the index of the current slide. */ |
| long getCurrentSlideIndex(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** the index for the slide that is displayed next. */ |
| long getNextSlideIndex(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** returns <TRUE/> if the slideshow was started to run endlessly. |
| */ |
| boolean isEndless(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** Returns <TRUE/> if the slideshow was started in full-screen mode. |
| */ |
| boolean isFullScreen(); |
| |
| //------------------------------------------------------------------------- |
| |
| /** If this attribute is set to <TRUE/>, the window of the slideshow is |
| always on top of all other windows. |
| */ |
| [attribute] boolean AlwaysOnTop; |
| |
| //------------------------------------------------------------------------- |
| |
| /** If this attribute is <TRUE/>, the mouse is visible during the |
| slideshow. |
| */ |
| [attribute] boolean MouseVisible; |
| |
| //------------------------------------------------------------------------- |
| |
| /** If this is <TRUE/>, a pen is shown during presentation. |
| |
| <p>You can draw on the presentation with this pen.</p> |
| */ |
| [attribute] boolean UsePen; |
| |
| //------------------------------------------------------------------------- |
| |
| /** This attribute changes the color of the pen. */ |
| [attribute] long PenColor; |
| |
| //------------------------------------------------------------------------- |
| |
| /** This attribute changes the width of the pen. |
| |
| @since OpenOffice 4.1 |
| */ |
| [attribute] double PenWidth; |
| |
| //------------------------------------------------------------------------- |
| |
| /** returns the actuall <type>XSlideShow</type> instance that runs the |
| slideshow. |
| <br>Normaly all navigation should be done using this controller and |
| not the <type>XSlideShow</type> itself. */ |
| XSlideShow getSlideShow(); |
| |
| //------------------------------------------------------------------------- |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |