summaryrefslogtreecommitdiffstats
path: root/offapi/com/sun/star/presentation/XSlideShowController.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/presentation/XSlideShowController.idl')
-rw-r--r--offapi/com/sun/star/presentation/XSlideShowController.idl267
1 files changed, 267 insertions, 0 deletions
diff --git a/offapi/com/sun/star/presentation/XSlideShowController.idl b/offapi/com/sun/star/presentation/XSlideShowController.idl
new file mode 100644
index 000000000..2d93e33c9
--- /dev/null
+++ b/offapi/com/sun/star/presentation/XSlideShowController.idl
@@ -0,0 +1,267 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * 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 .
+ */
+#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 XSlideShowController from XPresentation2
+ */
+ 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::IndexOutOfBoundsException
+ 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 were 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
+ resume() is called.
+ */
+ void pause();
+
+
+ /** resumes a paused slide show.
+ */
+ void resume();
+
+
+ /** returns `TRUE` if the slide show is currently paused.
+
+ @see pause()
+ @see resume()
+ */
+ boolean isPaused();
+
+
+ /** pauses the slide show and blanks the screen in the given color.
+ <p>Change attribute Pause to false to unpause
+ the slide show.
+ */
+ void blankScreen( [in] long Color );
+
+
+ /** activates the user interface of this slide show.
+
+ @see deactivate()
+ @see isActive()
+ */
+ void activate();
+
+ /** can be called to deactivate the user interface of this slide show.
+
+ <p>A deactivated
+ @see activate()
+ @see isActive()
+ */
+ 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;
+
+ /** This attribute changes the width of the pen.
+
+ @since LibreOffice 4.2
+ */
+ [attribute] double PenWidth;
+
+
+ /** This method clears ink drawing from the slideshow being played
+
+ @since LibreOffice 7.2
+ */
+ void setEraseAllInk( [in] boolean EraseAllInk );
+
+ /** returns the actual XSlideShow instance that runs the
+ slide show.
+ <br>Normally all navigation should be done using this controller and
+ not the XSlideShow itself. */
+ XSlideShow getSlideShow();
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */