297 lines
10 KiB
Text
297 lines
10 KiB
Text
/*************************************************************************
|
|
*
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
*
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* This file is part of OpenOffice.org.
|
|
*
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
* only, as published by the Free Software Foundation.
|
|
*
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Lesser General Public License version 3 for more details
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
* <http://www.openoffice.org/license.html>
|
|
* for a copy of the LGPLv3 License.
|
|
*
|
|
************************************************************************/
|
|
#ifndef __com_sun_star_presentation_XSlideShowController_idl__
|
|
#define __com_sun_star_presentation_XSlideShowController_idl__
|
|
|
|
#include <com/sun/star/drawing/XDrawPage.idl>
|
|
#include <com/sun/star/container/XIndexAccess.idl>
|
|
#include <com/sun/star/lang/XComponent.idl>
|
|
#include <com/sun/star/presentation/XSlideShow.idl>
|
|
|
|
//=============================================================================
|
|
|
|
module com { module sun { module star { module presentation {
|
|
|
|
//=============================================================================
|
|
|
|
/** interface to control a running slide show.
|
|
|
|
@see XPresentation2
|
|
@since OOo 3.0
|
|
*/
|
|
interface XSlideShowController
|
|
{
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** returns true if the slide show is still running.
|
|
If this returns false, this component is already disposed.
|
|
You can start a new slide show and get a new instance
|
|
of <type>XSlideShowController</type> from <type>XPresentation2</type>
|
|
*/
|
|
boolean isRunning();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** @returns
|
|
the number of slides in this slide show.
|
|
|
|
@see getSlideByIndex
|
|
*/
|
|
long getSlideCount();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** gives access to the slides that will be shown in this slide show.
|
|
|
|
<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 slide show. 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 );
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** adds a listener that receives events while the slide show 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 skipped.*/
|
|
void gotoNextSlide();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** goto and display previous slide.
|
|
<p>Remaining effects on the current slide will be skipped.*/
|
|
void gotoPreviousSlide();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** goto and display last slide.
|
|
<p>Remaining effects on the current slide will be skipped.*/
|
|
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 normally not be shown during
|
|
the current slide show.
|
|
|
|
@throws com::sun::star::lang::IllegalArgumentException
|
|
if the given page is not a valid slide of the document for
|
|
which this slide show 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 slide show. All effects are paused.
|
|
<p>The slide show continues on next user input or if
|
|
<member>resume</member> is called.
|
|
*/
|
|
void pause();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** resumes a paused slide show.
|
|
*/
|
|
void resume();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** returns <TRUE/> if the slide show is currently paused.
|
|
|
|
@see <member>pause</member>
|
|
@see <member>resume</member>
|
|
*/
|
|
boolean isPaused();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** pauses the slide show and blanks the screen in the given color.
|
|
<p>Change attribute <member>Pause</member> to false to unpause
|
|
the slide show.
|
|
*/
|
|
void blankScreen( [in] long Color );
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** activates the user interface of this slide show.
|
|
|
|
@see <member>deactivate()</member>
|
|
@see <member>isActive()</member>
|
|
*/
|
|
void activate();
|
|
|
|
//-------------------------------------------------------------------------
|
|
/** can be called to deactivate the user interface of this slide show.
|
|
|
|
<p>A deactivated
|
|
@see <member>activate()</member>
|
|
@see <member>isActive()</member>
|
|
*/
|
|
void deactivate();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** determines if the slide show is active.
|
|
|
|
@return
|
|
<TRUE/> for UI active slide show
|
|
<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 slide show was started to run endlessly.
|
|
*/
|
|
boolean isEndless();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** Returns <TRUE/> if the slide show was started in full-screen mode.
|
|
*/
|
|
boolean isFullScreen();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** If this attribute is set to <TRUE/>, the window of the slide show is
|
|
always on top of all other windows.
|
|
*/
|
|
[attribute] boolean AlwaysOnTop;
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** If this attribute is <TRUE/>, the mouse is visible during the
|
|
slide show.
|
|
*/
|
|
[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;
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** returns the actual <type>XSlideShow</type> instance that runs the
|
|
slide show.
|
|
<br>Normally all navigation should be done using this controller and
|
|
not the <type>XSlideShow</type> itself. */
|
|
XSlideShow getSlideShow();
|
|
|
|
//-------------------------------------------------------------------------
|
|
};
|
|
|
|
//=============================================================================
|
|
|
|
}; }; }; };
|
|
|
|
#endif
|