2004-11-26 19:20:15 +00:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* $RCSfile: slideshow.cxx,v $
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-10-11 07:17:41 +00:00
|
|
|
* $Revision: 1.6 $
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-10-11 07:17:41 +00:00
|
|
|
* last change: $Author: obo $ $Date: 2005-10-11 08:17:41 $
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* The Contents of this file are made available subject to
|
|
|
|
* the terms of GNU Lesser General Public License Version 2.1.
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* GNU Lesser General Public License Version 2.1
|
|
|
|
* =============================================
|
|
|
|
* Copyright 2005 by Sun Microsystems, Inc.
|
|
|
|
* 901 San Antonio Road, Palo Alto, CA 94303, USA
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License version 2.1, as published by the Free Software Foundation.
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* This library 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 for more details.
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
2005-09-09 05:07:28 +00:00
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
|
|
* MA 02111-1307 USA
|
2004-11-26 19:20:15 +00:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
#ifndef _SD_SLIDESHOW_HXX
|
|
|
|
#include "slideshow.hxx"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef _SD_SLIDESHOWIMPL_HXX_
|
|
|
|
#include "slideshowimpl.hxx"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
using namespace ::sd;
|
|
|
|
using namespace ::rtl;
|
|
|
|
|
|
|
|
Slideshow::Slideshow( ViewShell* pViewSh, ::sd::View* pView, SdDrawDocument* pDoc )
|
|
|
|
: mpImpl( new SlideshowImpl(pViewSh, pView, pDoc ) )
|
|
|
|
{
|
|
|
|
mpImpl->acquire();
|
|
|
|
}
|
|
|
|
|
|
|
|
Slideshow::~Slideshow()
|
|
|
|
{
|
|
|
|
dispose();
|
|
|
|
mpImpl->release();
|
|
|
|
}
|
|
|
|
|
2005-01-21 15:34:40 +00:00
|
|
|
bool Slideshow::startShow( PresentationSettings* pPresSettings )
|
2004-11-26 19:20:15 +00:00
|
|
|
{
|
2005-01-21 15:34:40 +00:00
|
|
|
return mpImpl->startShow( pPresSettings );
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
2005-01-21 15:34:40 +00:00
|
|
|
bool Slideshow::startPreview(
|
2004-11-26 19:20:15 +00:00
|
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xDrawPage,
|
|
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xAnimationNode,
|
|
|
|
::Window* pParent )
|
|
|
|
{
|
2005-03-30 09:30:44 +00:00
|
|
|
if( mpImpl->startPreview( xDrawPage, xAnimationNode, pParent ) )
|
|
|
|
{
|
|
|
|
ShowWindow* pShowWindow = mpImpl->getShowWindow();
|
|
|
|
if( pShowWindow )
|
|
|
|
pShowWindow->setSlideshow( this );
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::paint( const Rectangle& rRect )
|
|
|
|
{
|
|
|
|
mpImpl->paint( rRect );
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::stopShow()
|
|
|
|
{
|
|
|
|
mpImpl->stopShow();
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::dispose()
|
|
|
|
{
|
|
|
|
mpImpl->stopShow();
|
|
|
|
}
|
|
|
|
|
|
|
|
ShowWindow* Slideshow::getShowWindow()
|
|
|
|
{
|
|
|
|
return mpImpl->mpShowWindow;
|
|
|
|
}
|
|
|
|
|
|
|
|
int Slideshow::getAnimationMode()
|
|
|
|
{
|
|
|
|
return mpImpl->meAnimationMode;
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::jumpToPageIndex( sal_Int32 nPageIndex )
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
mpImpl->displaySlideIndex( nPageIndex );
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::jumpToPageNumber( sal_Int32 nPageNumber )
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
mpImpl->displaySlideNumber( nPageNumber );
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
sal_Int32 Slideshow::getCurrentPageNumber()
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
return mpImpl->getCurrentSlideNumber();
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
sal_Int32 Slideshow::getCurrentPageIndex()
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
return mpImpl->getCurrentSlideIndex();
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::jumpToBookmark( const String& sBookmark )
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
mpImpl->jumpToBookmark( sBookmark );
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
2005-01-21 15:34:40 +00:00
|
|
|
void Slideshow::setRehearseTimings( bool bRehearseTimings )
|
|
|
|
{
|
|
|
|
mpImpl->mbRehearseTimings = bRehearseTimings;
|
|
|
|
}
|
|
|
|
|
2004-11-26 19:20:15 +00:00
|
|
|
bool Slideshow::isFullScreen()
|
|
|
|
{
|
|
|
|
return mpImpl->maPresSettings.mbFullScreen;
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::resize( const Size &rSize )
|
|
|
|
{
|
|
|
|
mpImpl->resize( rSize );
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::activate()
|
|
|
|
{
|
|
|
|
mpImpl->activate();
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::deactivate()
|
|
|
|
{
|
|
|
|
mpImpl->deactivate();
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::setWindow( sd::Window* pWindow )
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::requestHelp(const HelpEvent& rHEvt)
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::isTerminated()
|
|
|
|
{
|
|
|
|
return !mpImpl->mxShow.is();
|
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::keyInput(const KeyEvent& rKEvt)
|
|
|
|
{
|
|
|
|
return mpImpl->keyInput(rKEvt);
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::mouseButtonDown(const MouseEvent& rMEvt)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::mouseMove(const MouseEvent& rMEvt)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::mouseButtonUp(const MouseEvent& rMEvt)
|
|
|
|
{
|
|
|
|
mpImpl->mouseButtonUp( rMEvt );
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::command(const CommandEvent& rCEvt)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::isAlwaysOnTop()
|
|
|
|
{
|
|
|
|
return mpImpl->maPresSettings.mbAlwaysOnTop;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::pause( bool bPause )
|
|
|
|
{
|
|
|
|
return mpImpl->pause( bPause );
|
|
|
|
}
|
|
|
|
|
|
|
|
void Slideshow::receiveRequest(SfxRequest& rReq)
|
|
|
|
{
|
|
|
|
mpImpl->receiveRequest( rReq );
|
|
|
|
}
|
|
|
|
|
|
|
|
sal_Int32 Slideshow::getFirstPageNumber()
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
return mpImpl->getFirstSlideNumber();
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
sal_Int32 Slideshow::getLastPageNumber()
|
|
|
|
{
|
2005-10-11 07:17:41 +00:00
|
|
|
return mpImpl->getLastSlideNumber();
|
2004-11-26 19:20:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::isEndless()
|
|
|
|
{
|
|
|
|
return mpImpl->isEndless();
|
|
|
|
}
|
|
|
|
|
|
|
|
bool Slideshow::isDrawingPossible()
|
|
|
|
{
|
|
|
|
return mpImpl->isDrawingPossible();
|
|
|
|
}
|
|
|
|
|
|
|
|
|