2010-10-27 12:53:26 +01:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2012-07-11 09:51:50 +01:00
|
|
|
/*
|
|
|
|
* 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 .
|
|
|
|
*/
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
2014-04-18 22:23:58 +02:00
|
|
|
#ifndef INCLUDED_SLIDESHOW_SOURCE_INC_SLIDE_HXX
|
|
|
|
#define INCLUDED_SLIDESHOW_SOURCE_INC_SLIDE_HXX
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
#include "shapemanager.hxx"
|
|
|
|
#include "subsettableshapemanager.hxx"
|
|
|
|
#include "unoviewcontainer.hxx"
|
2006-12-13 15:02:36 +00:00
|
|
|
#include "slidebitmap.hxx"
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
#include "shapemaps.hxx"
|
2006-12-13 15:02:36 +00:00
|
|
|
|
2016-02-01 18:53:50 +02:00
|
|
|
#include <memory>
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
namespace com { namespace sun { namespace star {
|
|
|
|
namespace drawing {
|
|
|
|
class XDrawPage;
|
2009-06-29 15:15:41 +02:00
|
|
|
class XDrawPagesSupplier;
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
}
|
|
|
|
namespace uno {
|
|
|
|
class XComponentContext;
|
|
|
|
}
|
|
|
|
namespace animations {
|
|
|
|
class XAnimationNode;
|
|
|
|
} } } }
|
|
|
|
|
|
|
|
namespace basegfx
|
|
|
|
{
|
|
|
|
class B2IVector;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
/* Definition of Slide interface */
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
2006-12-13 15:02:36 +00:00
|
|
|
namespace slideshow
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
{
|
|
|
|
namespace internal
|
|
|
|
{
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
class RGBColor;
|
|
|
|
class ScreenUpdater;
|
2009-06-29 15:15:41 +02:00
|
|
|
typedef ::std::vector< ::cppcanvas::PolyPolygonSharedPtr> PolyPolygonVector;
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
class Slide
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
{
|
|
|
|
public:
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
// Showing
|
2014-02-25 20:37:55 +01:00
|
|
|
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
|
|
|
/** Prepares to show slide.
|
|
|
|
|
|
|
|
Call this method to reduce the timeout show(), and
|
|
|
|
getInitialSlideBitmap() need to complete. If
|
2011-12-01 23:41:42 +02:00
|
|
|
prefetch() is not called explicitly, the named
|
2014-04-10 10:34:23 +02:00
|
|
|
methods will call it implicitly.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
*/
|
2016-01-14 11:45:01 +02:00
|
|
|
virtual void prefetch() = 0;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
|
|
|
/** Shows the slide on all registered views
|
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
After this call, the slide will render itself to the
|
|
|
|
views, and start its animations.
|
|
|
|
|
|
|
|
@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.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
*/
|
2016-01-14 11:45:01 +02:00
|
|
|
virtual void show( bool bSlideBackgoundPainted ) = 0;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
/** Force-ends the slide
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
After this call, the slide has stopped all animations,
|
|
|
|
and ceased rendering/visualization on all views.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
*/
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
virtual void hide() = 0;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
// Queries
|
2014-02-25 20:37:55 +01:00
|
|
|
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
/** Query the size of this slide in user coordinates
|
|
|
|
|
|
|
|
This value is retrieved from the XDrawPage properties.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
*/
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
virtual basegfx::B2IVector getSlideSize() const = 0;
|
|
|
|
|
|
|
|
/// Gets the underlying API page
|
2015-10-29 10:47:45 +02:00
|
|
|
virtual css::uno::Reference< css::drawing::XDrawPage > getXDrawPage() const = 0;
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
|
|
|
|
/// Gets the animation node.
|
2015-10-29 10:47:45 +02:00
|
|
|
virtual css::uno::Reference< css::animations::XAnimationNode > getXAnimationNode() const = 0;
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
|
2009-06-29 15:15:41 +02:00
|
|
|
///Gets the slide Polygons
|
|
|
|
virtual PolyPolygonVector getPolygons() = 0;
|
|
|
|
|
|
|
|
///Draw the slide Polygons
|
|
|
|
virtual void drawPolygons() const = 0;
|
|
|
|
|
2010-12-02 13:34:17 +01:00
|
|
|
///Check if paint overlay is already active
|
2009-06-29 15:15:41 +02:00
|
|
|
virtual bool isPaintOverlayActive() const = 0;
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
|
2010-12-02 13:34:17 +01:00
|
|
|
virtual void enablePaintOverlay() = 0;
|
|
|
|
virtual void disablePaintOverlay() = 0;
|
|
|
|
|
|
|
|
virtual void update_settings( bool bUserPaintEnabled, RGBColor const& aUserPaintColor, double dUserPaintStrokeWidth ) = 0;
|
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
// Slide bitmaps
|
2014-02-25 20:37:55 +01:00
|
|
|
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
|
|
|
/** Request bitmap for current slide appearance.
|
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
The bitmap returned by this method depends on the
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
current state of the slide and the contained
|
|
|
|
animations. A newly generated slide will return the
|
|
|
|
initial slide content here (e.g. with all 'appear'
|
|
|
|
effect shapes invisible), a slide whose effects are
|
|
|
|
currently running will return a bitmap corresponding
|
|
|
|
to the current position on the animation timeline, and
|
|
|
|
a slide whose effects have all been run will generate
|
|
|
|
a bitmap with the final slide appearance (e.g. with
|
|
|
|
all 'hide' effect shapes invisible).
|
|
|
|
|
|
|
|
@param rView
|
|
|
|
View to retrieve bitmap for (note that the bitmap will
|
|
|
|
have device-pixel equivalence to the content that
|
|
|
|
would have been rendered onto the given view). Note
|
2006-12-13 15:02:36 +00:00
|
|
|
that the view must have been added to this slide
|
|
|
|
before via viewAdded().
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
*/
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
virtual SlideBitmapSharedPtr
|
|
|
|
getCurrentSlideBitmap( const UnoViewSharedPtr& rView ) const = 0;
|
2012-03-14 13:27:56 +01:00
|
|
|
|
|
|
|
protected:
|
|
|
|
~Slide() {}
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
|
2016-02-01 18:53:50 +02:00
|
|
|
typedef ::std::shared_ptr< Slide > SlideSharedPtr;
|
2005-10-11 07:54:29 +00:00
|
|
|
|
INTEGRATION: CWS presfixes12 (1.8.12); FILE MERGED
2007/05/10 20:32:41 thb 1.8.12.5: #i37778# Reworked LayerManager::updateShapeLayers - now much better aligned with general shape update, and avoids superfluous rendering; made unit tests work again; passing down slide background repaint status to LayerManager; relaxed preconditions for Shape::getUpdateArea() - no longer requires views to work; now catching singular view matrix and using sensible default at API border
2007/05/02 21:37:24 thb 1.8.12.4: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/03/06 21:54:19 thb 1.8.12.3: #i37778# Added bool property to disable z order correct animations
2007/01/30 16:43:51 thb 1.8.12.2: #i37778# Made view update/repaint/resize work again; swapped BackgroundShape parameters for correct mtf import
2007/01/29 14:02:28 thb 1.8.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
2007-07-17 14:15:07 +00:00
|
|
|
class EventQueue;
|
|
|
|
class CursorManager;
|
|
|
|
class EventMultiplexer;
|
|
|
|
class ActivitiesQueue;
|
|
|
|
class UserEventQueue;
|
|
|
|
class RGBColor;
|
|
|
|
|
|
|
|
/** Construct from XDrawPage
|
|
|
|
|
|
|
|
The Slide object generally works in XDrawPage model
|
|
|
|
coordinates, that is, the page will have the width and
|
|
|
|
height as specified in the XDrawPage's property
|
|
|
|
set. The top, left corner of the page will be rendered
|
|
|
|
at (0,0) in the given canvas' view coordinate system.
|
|
|
|
|
|
|
|
Does not render anything initially
|
|
|
|
|
|
|
|
@param xDrawPage
|
|
|
|
Page to display on this slide
|
|
|
|
|
|
|
|
@param xRootNode
|
|
|
|
Root of the SMIL animation tree. Used to animate the slide.
|
|
|
|
|
|
|
|
@param rEventQueue
|
|
|
|
EventQueue. Used to post events.
|
|
|
|
|
|
|
|
@param rActivitiesQueue
|
|
|
|
ActivitiesQueue. Used to run animations.
|
|
|
|
|
|
|
|
@param rEventMultiplexer
|
|
|
|
Event source
|
|
|
|
|
|
|
|
@param rUserEventQueue
|
|
|
|
UserEeventQueue
|
|
|
|
*/
|
2015-10-29 10:47:45 +02:00
|
|
|
SlideSharedPtr createSlide( const css::uno::Reference< css::drawing::XDrawPage >& xDrawPage,
|
|
|
|
const css::uno::Reference< css::drawing::XDrawPagesSupplier >& xDrawPages,
|
|
|
|
const css::uno::Reference< css::animations::XAnimationNode >& xRootNode,
|
2009-06-29 15:15:41 +02:00
|
|
|
EventQueue& rEventQueue,
|
|
|
|
EventMultiplexer& rEventMultiplexer,
|
|
|
|
ScreenUpdater& rScreenUpdater,
|
|
|
|
ActivitiesQueue& rActivitiesQueue,
|
|
|
|
UserEventQueue& rUserEventQueue,
|
|
|
|
CursorManager& rCursorManager,
|
|
|
|
const UnoViewContainer& rViewContainer,
|
2015-10-29 10:47:45 +02:00
|
|
|
const css::uno::Reference< css::uno::XComponentContext >& xContext,
|
2009-06-29 15:15:41 +02:00
|
|
|
const ShapeEventListenerMap& rShapeListenerMap,
|
|
|
|
const ShapeCursorMap& rShapeCursorMap,
|
|
|
|
const PolyPolygonVector& rPolyPolygonVector,
|
|
|
|
RGBColor const& aUserPaintColor,
|
|
|
|
double dUserPaintStrokeWidth,
|
|
|
|
bool bUserPaintEnabled,
|
|
|
|
bool bIntrinsicAnimationsAllowed,
|
|
|
|
bool bDisableAnimationZOrder );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/15 11:47:37 thb 1.1.2.20: #i35043# Now handle the case of a missing main sequence (have to manually trigger slideAnimationEnd then)
2004/11/10 15:33:36 thb 1.1.2.19: #i36284# Fixed unholy interaction between wait cursor and hidden/pen cursor settings
2004/11/08 06:05:22 thb 1.1.2.18: #110496# Implemented slide pre-rendering, with bitmap buffering for various slide states at the Slide object; added dedicated backbuffer objects for background shape; corrected animation node restart behaviour; added wait cursor display
2004/11/03 18:41:28 thb 1.1.2.17: #i36221# Now honoring interactive sequences (apart from the main animation sequence), which enables trigger effects to work. Had to tweak quite some more, to get click handling, and mouse cursor changes to work with that (now, a registered shape click event at the UserEventQueue automatically sets the shape cursor to REFHAND, as long as events are pending for that shape)
2004/11/02 00:01:03 thb 1.1.2.16: #i36284#, #i36283#: Added MouseVisible attribute; fixed prob with UserPaintOverlay not being removed when the next slide became visible; Added ForceManualAdvance attribute
2004/10/22 16:36:49 thb 1.1.2.15: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:38 thb 1.1.2.14: #i35043# Added Event and EventTrigger functionality for after effect (but also for most of the other EventTrigger types); faked a DimColor implementation (currently based on fillcolor); refactored a little bit
2004/10/19 22:12:03 thb 1.1.2.13: #110496#, #i35043#, #i35133#: Chose some more speaking names for some Shape methods; added GIF animation support; corrected a few slide transitions
2004/10/08 20:08:18 thb 1.1.2.12: #i34997# Fixed several node state inconsistencies, which led to start/end activities not correctly updating the shapes; added proper updating behaviour to LayerManager (several display-changing cases were missing); fixed SLIDEWIPE for shape transitions; improved docs and structure slightly
2004/09/12 21:03:40 thb 1.1.2.11: #110496# Now painting views black, intially. The slide now has an explicit shape, which, if necessary, paints the page background in white. Furthermore, slide transitions now handle the case correctly, when the leaving slide is invalid
2004/09/09 15:38:33 thb 1.1.2.10: #110496# Changed slideshow API to handle properties more flexible; added start slide index to show(); internally, wired user paint mode into slideshow
2004/09/09 14:36:54 cl 1.1.2.9: make use of the animation node sequence from show()
2004/09/06 13:50:02 thb 1.1.2.8: #110496# Reworked event handling, we now have the EventMultiplexer, which is the only instance actually registering a listener at the view. Added user painting on the slideshow canvas
2004/09/03 15:06:27 thb 1.1.2.7: #110496# Changed view clear mechanics: now, the XSlideShowView is responsible for full view clears. Furthermore, implemented resizing during the running slideshow
2004/09/03 11:00:25 thb 1.1.2.6: #110496# Slide event handling was completely broken, fixed that (the reason was that ultimately, the presentation did not call prefetchShow before asking isAnimated)
2004/09/01 20:26:46 thb 1.1.2.5: #110496# Implemented fade, slide and push special transition effects (had to pass Slide ptrs to transitionfactory again)
2004/08/31 17:05:23 thb 1.1.2.4: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 13:26:01 thb 1.1.2.3: #110496# Implemented shape broadcasting
2004/08/26 12:33:54 thb 1.1.2.2: #110496# Fixed the problem that a slide's LayerManager stayed registered at the ActivitiesQueue; work-arounded various basegfx clipper bugs; fixed the problem that the SlideChanger painted repeatedly into its sprites
2004/08/05 19:59:58 thb 1.1.2.1: #110496# Moved from source/engine
2004-11-26 18:20:32 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2014-04-18 22:23:58 +02:00
|
|
|
#endif // INCLUDED_SLIDESHOW_SOURCE_INC_SLIDE_HXX
|
2010-10-27 12:53:26 +01:00
|
|
|
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|