summaryrefslogtreecommitdiff
path: root/slideshow/source/engine/slide/shapemanagerimpl.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'slideshow/source/engine/slide/shapemanagerimpl.hxx')
-rw-r--r--slideshow/source/engine/slide/shapemanagerimpl.hxx212
1 files changed, 0 insertions, 212 deletions
diff --git a/slideshow/source/engine/slide/shapemanagerimpl.hxx b/slideshow/source/engine/slide/shapemanagerimpl.hxx
deleted file mode 100644
index cf5addcc9..000000000
--- a/slideshow/source/engine/slide/shapemanagerimpl.hxx
+++ /dev/null
@@ -1,212 +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.
- *
- ************************************************************************/
-#ifndef INCLUDED_SLIDESHOW_SHAPEMANAGERIMPL_HXX
-#define INCLUDED_SLIDESHOW_SHAPEMANAGERIMPL_HXX
-
-#include <osl/mutex.hxx>
-#include <cppuhelper/interfacecontainer.h>
-#include <com/sun/star/presentation/XShapeEventListener.hpp>
-
-#include "shape.hxx"
-#include "subsettableshapemanager.hxx"
-#include "eventmultiplexer.hxx"
-#include "layermanager.hxx"
-#include "viewupdate.hxx"
-#include "shapemaps.hxx"
-#include "cursormanager.hxx"
-#include "hyperlinkarea.hxx"
-#include "listenercontainer.hxx"
-#include "shapelistenereventhandler.hxx"
-#include "mouseeventhandler.hxx"
-
-#include <boost/shared_ptr.hpp>
-#include <boost/enable_shared_from_this.hpp>
-#include <boost/noncopyable.hpp>
-#include <set>
-#include <map>
-
-namespace slideshow {
-namespace internal {
-
-/** Listener class for shape events
-
- This helper class registers itself on each view, and
- broadcasts the XShapeEventListener events. The mouse motion
- events are needed for setting the shape cursor.
-*/
-class ShapeManagerImpl : public SubsettableShapeManager,
- public ShapeListenerEventHandler,
- public MouseEventHandler,
- public ViewUpdate,
- public boost::enable_shared_from_this<ShapeManagerImpl>,
- private boost::noncopyable
-{
-public:
- /** Create a shape event broadcaster
-
- @param rEventMultiplexer
- The slideshow-global event source, where this class
- registeres its event handlers.
- */
- ShapeManagerImpl( EventMultiplexer& rMultiplexer,
- LayerManagerSharedPtr const& rLayerManager,
- CursorManager& rCursorManager,
- const ShapeEventListenerMap& rGlobalListenersMap,
- const ShapeCursorMap& rGlobalCursorMap );
-
- /** Enables event listening.
-
- @param bSlideBackgoundPainted
- When true, the initial slide content on the background layer
- is already rendered (e.g. from a previous slide
- transition). When false, slide renders initial content of
- slide.
- */
- void activate( bool bSlideBackgoundPainted );
-
- /** Disables event listening.
- */
- void deactivate();
-
- // Disposable interface
- // ---------------------------------------------------------------
-
- virtual void dispose();
-
-private:
-
- // MouseEventHandler interface
- // ---------------------------------------------------------------
-
- virtual bool handleMousePressed(
- ::com::sun::star::awt::MouseEvent const& evt );
- virtual bool handleMouseReleased(
- ::com::sun::star::awt::MouseEvent const& evt );
- virtual bool handleMouseEntered(
- ::com::sun::star::awt::MouseEvent const& evt );
- virtual bool handleMouseExited(
- ::com::sun::star::awt::MouseEvent const& evt );
- virtual bool handleMouseDragged(
- ::com::sun::star::awt::MouseEvent const& evt );
- virtual bool handleMouseMoved(
- ::com::sun::star::awt::MouseEvent const& evt );
-
-
- // ViewUpdate interface
- // -------------------------------------------------------------------
-
- virtual bool update();
- virtual bool update( ViewSharedPtr const& rView );
- virtual bool needsUpdate() const;
-
-
- // ShapeManager interface
- // ---------------------------------------------------
-
- virtual void enterAnimationMode( const AnimatableShapeSharedPtr& rShape );
- virtual void leaveAnimationMode( const AnimatableShapeSharedPtr& rShape );
- virtual void notifyShapeUpdate( const ShapeSharedPtr& rShape );
- virtual ShapeSharedPtr lookupShape(
- ::com::sun::star::uno::Reference<
- ::com::sun::star::drawing::XShape > const & xShape ) const;
- virtual void addHyperlinkArea( const boost::shared_ptr<HyperlinkArea>& rArea );
- virtual void removeHyperlinkArea( const boost::shared_ptr<HyperlinkArea>& rArea );
-
-
- // SubsettableShapeManager interface
- // ---------------------------------------------------
-
- virtual boost::shared_ptr<AttributableShape> getSubsetShape(
- const boost::shared_ptr<AttributableShape>& rOrigShape,
- const DocTreeNode& rTreeNode );
- virtual void revokeSubset(
- const boost::shared_ptr<AttributableShape>& rOrigShape,
- const boost::shared_ptr<AttributableShape>& rSubsetShape );
-
- virtual void addIntrinsicAnimationHandler(
- const IntrinsicAnimationEventHandlerSharedPtr& rHandler );
- virtual void removeIntrinsicAnimationHandler(
- const IntrinsicAnimationEventHandlerSharedPtr& rHandler );
- virtual bool notifyIntrinsicAnimationsEnabled();
- virtual bool notifyIntrinsicAnimationsDisabled();
-
-
- // ShapeListenerEventHandler
- // ---------------------------------------------
-
- virtual bool listenerAdded( const ::com::sun::star::uno::Reference<
- ::com::sun::star::presentation::XShapeEventListener>& xListener,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::drawing::XShape>& xShape );
-
- virtual bool listenerRemoved( const ::com::sun::star::uno::Reference<
- ::com::sun::star::presentation::XShapeEventListener>& xListener,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::drawing::XShape>& xShape );
-
- // ShapeCursorEventHandler interface
- // ---------------------------------------------------------------
-
- virtual bool cursorChanged( const ::com::sun::star::uno::Reference<
- ::com::sun::star::drawing::XShape>& xShape,
- sal_Int16 nCursor );
-
-
- ::rtl::OUString checkForHyperlink( ::basegfx::B2DPoint const& hitPos )const;
-
-
- typedef std::map<ShapeSharedPtr,
- boost::shared_ptr< ::cppu::OInterfaceContainerHelper >,
- Shape::lessThanShape> ShapeToListenersMap;
- typedef std::map<ShapeSharedPtr, sal_Int16,
- Shape::lessThanShape> ShapeToCursorMap;
- typedef std::set<HyperlinkAreaSharedPtr,
- HyperlinkArea::lessThanArea> AreaSet;
-
- typedef ThreadUnsafeListenerContainer<
- IntrinsicAnimationEventHandlerSharedPtr,
- std::vector<IntrinsicAnimationEventHandlerSharedPtr> > ImplIntrinsicAnimationEventHandlers;
-
- EventMultiplexer& mrMultiplexer;
- LayerManagerSharedPtr mpLayerManager;
- CursorManager& mrCursorManager;
- const ShapeEventListenerMap& mrGlobalListenersMap;
- const ShapeCursorMap& mrGlobalCursorMap;
- ShapeToListenersMap maShapeListenerMap;
- ShapeToCursorMap maShapeCursorMap;
- AreaSet maHyperlinkShapes;
- ImplIntrinsicAnimationEventHandlers maIntrinsicAnimationEventHandlers;
- bool mbEnabled;
-};
-
-} // namespace internal
-} // namespace presentation
-
-#endif /* INCLUDED_SLIDESHOW_SHAPEMANAGERIMPL_HXX */
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */