diff options
Diffstat (limited to 'sdext/source/presenter/PresenterProtocolHandler.cxx')
-rw-r--r-- | sdext/source/presenter/PresenterProtocolHandler.cxx | 1004 |
1 files changed, 0 insertions, 1004 deletions
diff --git a/sdext/source/presenter/PresenterProtocolHandler.cxx b/sdext/source/presenter/PresenterProtocolHandler.cxx deleted file mode 100644 index 0b87adf..0000000 --- a/sdext/source/presenter/PresenterProtocolHandler.cxx +++ /dev/null @@ -1,1004 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * 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. - * - ************************************************************************/ - -// MARKER(update_precomp.py): autogen include statement, do not remove -#include "precompiled_sdext.hxx" - -#include "PresenterProtocolHandler.hxx" -#include "PresenterConfigurationAccess.hxx" -#include "PresenterController.hxx" -#include "PresenterHelper.hxx" -#include "PresenterNotesView.hxx" -#include "PresenterPaneContainer.hxx" -#include "PresenterPaneFactory.hxx" -#include "PresenterViewFactory.hxx" -#include "PresenterWindowManager.hxx" -#include <com/sun/star/frame/XController.hpp> -#include <com/sun/star/drawing/SlideSorter.hpp> -#include <com/sun/star/drawing/framework/Configuration.hpp> -#include <com/sun/star/drawing/framework/XControllerManager.hpp> -#include <com/sun/star/drawing/framework/ResourceId.hpp> -#include <com/sun/star/drawing/framework/ResourceActivationMode.hpp> -#include <com/sun/star/presentation/XSlideShow.hpp> -#include <com/sun/star/presentation/XSlideShowView.hpp> -#include <com/sun/star/presentation/XPresentationSupplier.hpp> -#include <cppuhelper/compbase2.hxx> -#include <boost/bind.hpp> -#include <tools/debug.hxx> - -using namespace ::com::sun::star; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::drawing::framework; -using ::rtl::OUString; - -#define A2S(pString) (::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(pString))) - -namespace sdext { namespace presenter { - -namespace { - const static OUString gsProtocol (A2S("vnd.com.sun.star.comp.PresenterScreen:")); - - class Command - { - public: - virtual void Execute (void) = 0; - virtual bool IsEnabled (void) const = 0; - virtual Any GetState (void) const = 0; - }; - - class GotoPreviousSlideCommand : public Command - { - public: - GotoPreviousSlideCommand ( - const rtl::Reference<PresenterController>& rpPresenterController); - virtual ~GotoPreviousSlideCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - private: - rtl::Reference<PresenterController> mpPresenterController; - }; - - class GotoNextSlideCommand : public Command - { - public: - GotoNextSlideCommand ( - const rtl::Reference<PresenterController>& rpPresenterController); - virtual ~GotoNextSlideCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - private: - rtl::Reference<PresenterController> mpPresenterController; - }; - - class GotoNextEffectCommand : public Command - { - public: - GotoNextEffectCommand ( - const rtl::Reference<PresenterController>& rpPresenterController); - virtual ~GotoNextEffectCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - private: - rtl::Reference<PresenterController> mpPresenterController; - }; - - class SetNotesViewCommand : public Command - { - public: - SetNotesViewCommand ( - const bool bOn, - const rtl::Reference<PresenterController>& rpPresenterController); - virtual ~SetNotesViewCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - private: - bool mbOn; - rtl::Reference<PresenterController> mpPresenterController; - bool IsActive (const ::rtl::Reference<PresenterWindowManager>& rpWindowManager) const; - }; - - class SetSlideSorterCommand : public Command - { - public: - SetSlideSorterCommand ( - const bool bOn, - const rtl::Reference<PresenterController>& rpPresenterController); - virtual ~SetSlideSorterCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - private: - bool mbOn; - rtl::Reference<PresenterController> mpPresenterController; - }; - - class SetHelpViewCommand : public Command - { - public: - SetHelpViewCommand ( - const bool bOn, - const rtl::Reference<PresenterController>& rpPresenterController); - virtual ~SetHelpViewCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - private: - bool mbOn; - rtl::Reference<PresenterController> mpPresenterController; - }; - - class NotesFontSizeCommand : public Command - { - public: - NotesFontSizeCommand( - const rtl::Reference<PresenterController>& rpPresenterController, - const sal_Int32 nSizeChange); - virtual ~NotesFontSizeCommand (void) {} - virtual void Execute (void); - virtual bool IsEnabled (void) const; - virtual Any GetState (void) const; - protected: - ::rtl::Reference<PresenterNotesView> GetNotesView (void) const; - private: - rtl::Reference<PresenterController> mpPresenterController; - const sal_Int32 mnSizeChange; - }; - -} // end of anonymous namespace - - -namespace { - typedef ::cppu::WeakComponentImplHelper2 < - css::frame::XDispatch, - css::document::XEventListener - > PresenterDispatchInterfaceBase; -} - -class PresenterProtocolHandler::Dispatch - : protected ::cppu::BaseMutex, - public PresenterDispatchInterfaceBase -{ -public: - typedef void (PresenterProtocolHandler::Dispatch::* Action)(void); - - /** Create a new Dispatch object. When the given command name - (rsURLPath) is not known then an empty reference is returned. - */ - static Reference<frame::XDispatch> Create ( - const OUString& rsURLPath, - const ::rtl::Reference<PresenterController>& rpPresenterController); - - void SAL_CALL disposing (void); - static Command* CreateCommand ( - const OUString& rsURLPath, - const ::rtl::Reference<PresenterController>& rpPresenterController); - - - // XDispatch - virtual void SAL_CALL dispatch( - const css::util::URL& aURL, - const css::uno::Sequence<css::beans::PropertyValue>& rArguments) - throw(css::uno::RuntimeException); - - virtual void SAL_CALL addStatusListener( - const css::uno::Reference<css::frame::XStatusListener>& rxListener, - const css::util::URL& rURL) - throw(css::uno::RuntimeException); - - virtual void SAL_CALL removeStatusListener ( - const css::uno::Reference<css::frame::XStatusListener>& rxListener, - const css::util::URL& rURL) - throw(css::uno::RuntimeException); - - - // document::XEventListener - - virtual void SAL_CALL notifyEvent (const css::document::EventObject& rEvent) - throw(css::uno::RuntimeException); - - - // lang::XEventListener - - virtual void SAL_CALL disposing (const css::lang::EventObject& rEvent) - throw(css::uno::RuntimeException); - -private: - OUString msURLPath; - ::boost::scoped_ptr<Command> mpCommand; - ::rtl::Reference<PresenterController> mpPresenterController; - typedef ::std::vector<Reference<frame::XStatusListener> > StatusListenerContainer; - StatusListenerContainer maStatusListenerContainer; - bool mbIsListeningToWindowManager; - - Dispatch ( - const OUString& rsURLPath, - const ::rtl::Reference<PresenterController>& rpPresenterController); - virtual ~Dispatch (void); - - void ThrowIfDisposed (void) const throw (css::lang::DisposedException); -}; - - - - -//----- Service --------------------------------------------------------------- - -OUString PresenterProtocolHandler::getImplementationName_static (void) -{ - return A2S("vnd.sun.star.sdext.presenter.PresenterProtocolHandler"); -} - - - - -Sequence<OUString> PresenterProtocolHandler::getSupportedServiceNames_static (void) -{ - static const ::rtl::OUString sServiceName(A2S("com.sun.star.frame.ProtocolHandler")); - return Sequence<rtl::OUString>(&sServiceName, 1); -} - - - - -Reference<XInterface> PresenterProtocolHandler::Create ( - const Reference<uno::XComponentContext>& rxContext) - SAL_THROW((Exception)) -{ - return Reference<XInterface>(static_cast<XWeak*>(new PresenterProtocolHandler(rxContext))); -} - - - - -//===== PresenterProtocolHandler ========================================================= - - -PresenterProtocolHandler::PresenterProtocolHandler (const Reference<XComponentContext>& rxContext) - : PresenterProtocolHandlerInterfaceBase(m_aMutex) -{ - (void)rxContext; -} - - - - -PresenterProtocolHandler::~PresenterProtocolHandler (void) -{ -} - - - - -void SAL_CALL PresenterProtocolHandler::disposing (void) -{ -} - - - - -//----- XInitialize ----------------------------------------------------------- - -void SAL_CALL PresenterProtocolHandler::initialize (const Sequence<Any>& aArguments) - throw (Exception, RuntimeException) -{ - ThrowIfDisposed(); - if (aArguments.getLength() > 0) - { - try - { - Reference<frame::XFrame> xFrame; - if (aArguments[0] >>= xFrame) - { - mpPresenterController = PresenterController::Instance(xFrame); - } - } - catch (RuntimeException&) - { - OSL_ASSERT(false); - } - } -} - - - - -//----- XDispatchProvider ----------------------------------------------------- - -Reference<frame::XDispatch> SAL_CALL PresenterProtocolHandler::queryDispatch ( - const css::util::URL& rURL, - const rtl::OUString& rsTargetFrameName, - sal_Int32 nSearchFlags) - throw(RuntimeException) -{ - (void)rsTargetFrameName; - (void)nSearchFlags; - ThrowIfDisposed(); - - Reference<frame::XDispatch> xDispatch; - - if (rURL.Protocol == gsProtocol) - { - xDispatch.set(Dispatch::Create(rURL.Path, mpPresenterController)); - } - - return xDispatch; -} - - - - -Sequence<Reference<frame::XDispatch> > SAL_CALL PresenterProtocolHandler::queryDispatches( - const Sequence<frame::DispatchDescriptor>& rDescriptors) - throw(RuntimeException) -{ - (void)rDescriptors; - ThrowIfDisposed(); - return Sequence<Reference<frame::XDispatch> >(); -} - - - - -//----------------------------------------------------------------------------- - -void PresenterProtocolHandler::ThrowIfDisposed (void) const - throw (::com::sun::star::lang::DisposedException) -{ - if (rBHelper.bDisposed || rBHelper.bInDispose) - { - throw lang::DisposedException ( - OUString(RTL_CONSTASCII_USTRINGPARAM( - "PresenterProtocolHandler object has already been disposed")), - const_cast<uno::XWeak*>(static_cast<const uno::XWeak*>(this))); - } -} - - - - -//===== PresenterProtocolHandler::Dispatch ==================================== - -Reference<frame::XDispatch> PresenterProtocolHandler::Dispatch::Create ( - const OUString& rsURLPath, - const ::rtl::Reference<PresenterController>& rpPresenterController) -{ - ::rtl::Reference<Dispatch> pDispatch (new Dispatch (rsURLPath, rpPresenterController)); - if (pDispatch->mpCommand.get() != NULL) - return Reference<frame::XDispatch>(pDispatch.get()); - else - return NULL; -} - - - - -PresenterProtocolHandler::Dispatch::Dispatch ( - const OUString& rsURLPath, - const ::rtl::Reference<PresenterController>& rpPresenterController) - : PresenterDispatchInterfaceBase(m_aMutex), - msURLPath(rsURLPath), - mpCommand(CreateCommand(rsURLPath, rpPresenterController)), - mpPresenterController(rpPresenterController), - maStatusListenerContainer(), - mbIsListeningToWindowManager(false) -{ - if (mpCommand.get() != NULL) - { - mpPresenterController->GetWindowManager()->AddLayoutListener(this); - mbIsListeningToWindowManager = true; - } -} - - - - -Command* PresenterProtocolHandler::Dispatch::CreateCommand ( - const OUString& rsURLPath, - const ::rtl::Reference<PresenterController>& rpPresenterController) -{ - if (rsURLPath.getLength() <= 5) - return NULL; - switch (rsURLPath[0]) - { - case sal_Char('C') : - switch (rsURLPath[5]) - { - case sal_Char('N'): - if (rsURLPath == A2S("CloseNotes")) - return new SetNotesViewCommand(false, rpPresenterController); - break; - case sal_Char('S'): - if (rsURLPath == A2S("CloseSlideSorter")) - return new SetSlideSorterCommand(false, rpPresenterController); - break; - case sal_Char('H'): - if (rsURLPath == A2S("CloseHelp")) - return new SetHelpViewCommand(false, rpPresenterController); - break; - } - break; - case sal_Char('G') : - if (rsURLPath == A2S("GrowNotesFont")) - return new NotesFontSizeCommand(rpPresenterController, +1); - break; - - case sal_Char('N') : - switch (rsURLPath[4]) - { - case sal_Char('E'): - if (rsURLPath == A2S("NextEffect")) - return new GotoNextEffectCommand(rpPresenterController); - case sal_Char('S'): - if (rsURLPath == A2S("NextSlide")) - return new GotoNextSlideCommand(rpPresenterController); - break; - } - break; - - case sal_Char('P') : - if (rsURLPath == A2S("PrevSlide")) - return new GotoPreviousSlideCommand(rpPresenterController); - break; - - case sal_Char('S') : - switch (rsURLPath[4]) - { - case sal_Char('N'): - if (rsURLPath == A2S("ShowNotes")) - return new SetNotesViewCommand(true, rpPresenterController); - break; - - case sal_Char('S'): - if (rsURLPath == A2S("ShowSlideSorter")) - return new SetSlideSorterCommand(true, rpPresenterController); - break; - - case sal_Char('H'): - if (rsURLPath == A2S("ShowHelp")) - return new SetHelpViewCommand(true, rpPresenterController); - break; - - case sal_Char('n'): - if (rsURLPath == A2S("ShrinkNotesFont")) - return new NotesFontSizeCommand(rpPresenterController, -1); - break; - } - break; - - default: - break; - } - - return NULL; -} - - - - -PresenterProtocolHandler::Dispatch::~Dispatch (void) -{ -} - - - - -void PresenterProtocolHandler::Dispatch::disposing (void) -{ - if (mbIsListeningToWindowManager) - { - if (mpPresenterController.get() != NULL) - mpPresenterController->GetWindowManager()->RemoveLayoutListener(this); - mbIsListeningToWindowManager = false; - } - - msURLPath = OUString(); - mpCommand.reset(); -} - - - - -//----- XDispatch ------------------------------------------------------------- - -void SAL_CALL PresenterProtocolHandler::Dispatch::dispatch( - const css::util::URL& rURL, - const css::uno::Sequence<css::beans::PropertyValue>& rArguments) - throw(css::uno::RuntimeException) -{ - (void)rArguments; - ThrowIfDisposed(); - - if (rURL.Protocol == gsProtocol - && rURL.Path == msURLPath) - { - if (mpCommand.get() != NULL) - mpCommand->Execute(); - } - else - { - // We can not throw an IllegalArgumentException - throw RuntimeException(); - } -} - - - - -void SAL_CALL PresenterProtocolHandler::Dispatch::addStatusListener( - const css::uno::Reference<css::frame::XStatusListener>& rxListener, - const css::util::URL& rURL) - throw(css::uno::RuntimeException) -{ - if (rURL.Path == msURLPath) - { - maStatusListenerContainer.push_back(rxListener); - - frame::FeatureStateEvent aEvent; - aEvent.FeatureURL = rURL; - aEvent.IsEnabled = mpCommand->IsEnabled(); - aEvent.Requery = sal_False; - aEvent.State = mpCommand->GetState(); - rxListener->statusChanged(aEvent); - } - else - throw RuntimeException(); -} - - - - -void SAL_CALL PresenterProtocolHandler::Dispatch::removeStatusListener ( - const css::uno::Reference<css::frame::XStatusListener>& rxListener, - const css::util::URL& rURL) - throw(css::uno::RuntimeException) -{ - if (rURL.Path == msURLPath) - { - StatusListenerContainer::iterator iListener ( - ::std::find( - maStatusListenerContainer.begin(), - maStatusListenerContainer.end(), - rxListener)); - if (iListener != maStatusListenerContainer.end()) - maStatusListenerContainer.erase(iListener); - } - else - throw RuntimeException(); -} - - - - -//----------------------------------------------------------------------------- - -void PresenterProtocolHandler::Dispatch::ThrowIfDisposed (void) const - throw (::com::sun::star::lang::DisposedException) -{ - if (rBHelper.bDisposed || rBHelper.bInDispose) - { - throw lang::DisposedException ( - OUString(RTL_CONSTASCII_USTRINGPARAM( - "PresenterProtocolHandler::Dispatch object has already been disposed")), - const_cast<uno::XWeak*>(static_cast<const uno::XWeak*>(this))); - } -} - - - - -//----- document::XEventListener ---------------------------------------------- - -void SAL_CALL PresenterProtocolHandler::Dispatch::notifyEvent ( - const css::document::EventObject& rEvent) - throw(css::uno::RuntimeException) -{ - (void)rEvent; - - mpCommand->GetState(); -} - - - - -//----- lang::XEventListener -------------------------------------------------- - -void SAL_CALL PresenterProtocolHandler::Dispatch::disposing (const css::lang::EventObject& rEvent) - throw(css::uno::RuntimeException) -{ - (void)rEvent; - mbIsListeningToWindowManager = false; -} - - - - - -//===== GotoPreviousSlideCommand ============================================== - -GotoPreviousSlideCommand::GotoPreviousSlideCommand ( - const rtl::Reference<PresenterController>& rpPresenterController) - : mpPresenterController(rpPresenterController) -{ -} - - - -void GotoPreviousSlideCommand::Execute (void) -{ - if ( ! mpPresenterController.is()) - return; - - if ( ! mpPresenterController->GetSlideShowController().is()) - return; - - mpPresenterController->GetSlideShowController()->gotoPreviousSlide(); -} - - - - -bool GotoPreviousSlideCommand::IsEnabled (void) const -{ - if ( ! mpPresenterController.is()) - return false; - - if ( ! mpPresenterController->GetSlideShowController().is()) - return false; - - return mpPresenterController->GetSlideShowController()->getCurrentSlideIndex()>0; -} - - - - -Any GotoPreviousSlideCommand::GetState (void) const -{ - return Any(sal_False); -} - - - - -//===== GotoNextEffect ======================================================== - -GotoNextEffectCommand::GotoNextEffectCommand ( - const rtl::Reference<PresenterController>& rpPresenterController) - : mpPresenterController(rpPresenterController) -{ -} - - - -void GotoNextEffectCommand::Execute (void) -{ - if ( ! mpPresenterController.is()) - return; - - if ( ! mpPresenterController->GetSlideShowController().is()) - return; - - mpPresenterController->GetSlideShowController()->gotoNextEffect(); -} - - - - -bool GotoNextEffectCommand::IsEnabled (void) const -{ - // The next slide command is always enabled, even when the current slide - // is the last slide: from the last slide it goes to the pause slide, - // and from there it ends the slide show. - return true; -} - - - - -Any GotoNextEffectCommand::GetState (void) const -{ - return Any(sal_False); -} - - - - -//===== GotoNextSlide ========================================================= - -GotoNextSlideCommand::GotoNextSlideCommand ( - const rtl::Reference<PresenterController>& rpPresenterController) - : mpPresenterController(rpPresenterController) -{ -} - - - -void GotoNextSlideCommand::Execute (void) -{ - if ( ! mpPresenterController.is()) - return; - - if ( ! mpPresenterController->GetSlideShowController().is()) - return; - - mpPresenterController->GetSlideShowController()->gotoNextSlide(); -} - - - - -bool GotoNextSlideCommand::IsEnabled (void) const -{ - // The next slide command is always enabled, even when the current slide - // is the last slide: from the last slide it goes to the pause slide, - // and from there it ends the slide show. - return true; -} - - - - -Any GotoNextSlideCommand::GetState (void) const -{ - return Any(sal_False); -} - - - - -//===== SetNotesViewCommand =================================================== - -SetNotesViewCommand::SetNotesViewCommand ( - const bool bOn, - const rtl::Reference<PresenterController>& rpPresenterController) - : mbOn(bOn), - mpPresenterController(rpPresenterController) -{ -} - - - - -void SetNotesViewCommand::Execute (void) -{ - if ( ! mpPresenterController.is()) - return; - - ::rtl::Reference<PresenterWindowManager> pWindowManager ( - mpPresenterController->GetWindowManager()); - if ( ! pWindowManager.is()) - return; - - if (mbOn) - pWindowManager->SetViewMode(PresenterWindowManager::VM_Notes); - else - pWindowManager->SetViewMode(PresenterWindowManager::VM_Standard); -} - - - - -bool SetNotesViewCommand::IsEnabled (void) const -{ - return true; -} - - - - -Any SetNotesViewCommand::GetState (void) const -{ - if ( ! mpPresenterController.is()) - return Any(false); - - ::rtl::Reference<PresenterWindowManager> pWindowManager ( - mpPresenterController->GetWindowManager()); - if ( ! pWindowManager.is()) - return Any(false); - - return Any(IsActive(pWindowManager)); -} - - - - -bool SetNotesViewCommand::IsActive ( - const ::rtl::Reference<PresenterWindowManager>& rpWindowManager) const -{ - return rpWindowManager->GetViewMode() == PresenterWindowManager::VM_Notes; -} - - - - -//===== SetSlideSorterCommand ================================================= - -SetSlideSorterCommand::SetSlideSorterCommand ( - const bool bOn, - const rtl::Reference<PresenterController>& rpPresenterController) - : mbOn(bOn), - mpPresenterController(rpPresenterController) -{ -} - - - - -void SetSlideSorterCommand::Execute (void) -{ - if ( ! mpPresenterController.is()) - return; - - ::rtl::Reference<PresenterWindowManager> pWindowManager ( - mpPresenterController->GetWindowManager()); - if ( ! pWindowManager.is()) - return; - - pWindowManager->SetSlideSorterState(mbOn); -} - - - - -bool SetSlideSorterCommand::IsEnabled (void) const -{ - return true; -} - - - - -Any SetSlideSorterCommand::GetState (void) const -{ - if ( ! mpPresenterController.is()) - return Any(false); - - ::rtl::Reference<PresenterWindowManager> pWindowManager ( - mpPresenterController->GetWindowManager()); - if ( ! pWindowManager.is()) - return Any(false); - - return Any(pWindowManager->GetViewMode()==PresenterWindowManager::VM_SlideOverview); -} - - - - -//===== SetHelpViewCommand =================================================== - -SetHelpViewCommand::SetHelpViewCommand ( - const bool bOn, - const rtl::Reference<PresenterController>& rpPresenterController) - : mbOn(bOn), - mpPresenterController(rpPresenterController) -{ -} - - - - -void SetHelpViewCommand::Execute (void) -{ - if ( ! mpPresenterController.is()) - return; - - ::rtl::Reference<PresenterWindowManager> pWindowManager ( - mpPresenterController->GetWindowManager()); - if ( ! pWindowManager.is()) - return; - - pWindowManager->SetHelpViewState(mbOn); -} - - - - -bool SetHelpViewCommand::IsEnabled (void) const -{ - return true; -} - - - - -Any SetHelpViewCommand::GetState (void) const -{ - if ( ! mpPresenterController.is()) - return Any(false); - - ::rtl::Reference<PresenterWindowManager> pWindowManager ( - mpPresenterController->GetWindowManager()); - if ( ! pWindowManager.is()) - return Any(false); - - return Any(pWindowManager->GetViewMode()==PresenterWindowManager::VM_Help); -} - - - - -//===== NotesFontSizeCommand ================================================== - -NotesFontSizeCommand::NotesFontSizeCommand( - const rtl::Reference<PresenterController>& rpPresenterController, - const sal_Int32 nSizeChange) - : mpPresenterController(rpPresenterController), - mnSizeChange(nSizeChange) -{ -} - - - - -::rtl::Reference<PresenterNotesView> NotesFontSizeCommand::GetNotesView (void) const -{ - if (mpPresenterController.get() == NULL) - return NULL; - - PresenterPaneContainer::SharedPaneDescriptor pDescriptor ( - mpPresenterController->GetPaneContainer()->FindViewURL( - PresenterViewFactory::msNotesViewURL)); - if (pDescriptor.get() == NULL) - return NULL; - - return dynamic_cast<PresenterNotesView*>(pDescriptor->mxView.get()); -} - - - - -void NotesFontSizeCommand::Execute (void) -{ - ::rtl::Reference<PresenterNotesView> pView (GetNotesView()); - if (pView.is()) - pView->ChangeFontSize(mnSizeChange); -} - - - - -bool NotesFontSizeCommand::IsEnabled (void) const -{ - return true; -} - - - - -Any NotesFontSizeCommand::GetState (void) const -{ - return Any(); -} - - -} } // end of namespace ::sdext::presenter - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |