INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* $RCSfile: usereventqueue.cxx,v $
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2006-07-26 06:27:41 +00:00
|
|
|
* $Revision: 1.7 $
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2006-07-26 06:27:41 +00:00
|
|
|
* last change: $Author: rt $ $Date: 2006-07-26 07:27:41 $
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* The Contents of this file are made available subject to
|
|
|
|
* the terms of GNU Lesser General Public License Version 2.1.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* GNU Lesser General Public License Version 2.1
|
|
|
|
* =============================================
|
|
|
|
* Copyright 2005 by Sun Microsystems, Inc.
|
|
|
|
* 901 San Antonio Road, Palo Alto, CA 94303, USA
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License version 2.1, as published by the Free Software Foundation.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
2005-09-07 19:31:54 +00:00
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
|
|
* MA 02111-1307 USA
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
|
|
|
|
// must be first
|
2005-10-11 07:36:36 +00:00
|
|
|
#include "canvas/debug.hxx"
|
|
|
|
#include "delayevent.hxx"
|
|
|
|
#include "usereventqueue.hxx"
|
|
|
|
#include "slideshowexceptions.hxx"
|
|
|
|
#include "osl/mutex.hxx"
|
|
|
|
#include "com/sun/star/awt/SystemPointer.hpp"
|
|
|
|
#include "com/sun/star/awt/MouseButton.hpp"
|
|
|
|
#include "com/sun/star/awt/MouseEvent.hpp"
|
|
|
|
#include "boost/bind.hpp"
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
#include <vector>
|
|
|
|
#include <queue>
|
|
|
|
#include <map>
|
|
|
|
#include <functional>
|
|
|
|
#include <algorithm>
|
|
|
|
|
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
using namespace com::sun::star;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
|
|
|
/* Implementation of UserEventQueue class */
|
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
namespace presentation {
|
|
|
|
namespace internal {
|
|
|
|
|
|
|
|
namespace {
|
|
|
|
|
|
|
|
typedef std::vector<EventSharedPtr> ImpEventVector;
|
|
|
|
typedef std::queue<EventSharedPtr> ImpEventQueue;
|
|
|
|
typedef std::map<uno::Reference<animations::XAnimationNode>,
|
|
|
|
ImpEventVector> ImpAnimationEventMap;
|
|
|
|
typedef std::map<ShapeSharedPtr, ImpEventQueue,
|
|
|
|
Shape::lessThanShape> ImpShapeEventMap;
|
|
|
|
|
|
|
|
// MouseEventHandler base class, not consuming any event:
|
|
|
|
class MouseEventHandler_ : public MouseEventHandler
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual bool handleMousePressed( awt::MouseEvent const& e ) { return false;}
|
|
|
|
virtual bool handleMouseReleased( awt::MouseEvent const& e) { return false;}
|
|
|
|
virtual bool handleMouseEntered( awt::MouseEvent const& e ) { return false;}
|
|
|
|
virtual bool handleMouseExited( awt::MouseEvent const& e ) { return false; }
|
|
|
|
virtual bool handleMouseDragged( awt::MouseEvent const& e ) { return false;}
|
|
|
|
virtual bool handleMouseMoved( awt::MouseEvent const& e ) { return false; }
|
|
|
|
};
|
|
|
|
|
|
|
|
/** @return one event has been posted
|
|
|
|
*/
|
|
|
|
template <typename ContainerT>
|
|
|
|
bool fireSingleEvent( ContainerT & rQueue, EventQueue & rEventQueue )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
// post next event in given queue:
|
|
|
|
while (! rQueue.empty())
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
EventSharedPtr const pEvent(rQueue.front());
|
|
|
|
rQueue.pop();
|
|
|
|
|
|
|
|
// skip all inactive events (as the purpose of
|
|
|
|
// nextEventFromQueue() is to activate the next
|
|
|
|
// event, and events which return false on
|
|
|
|
// isCharged() will never be activated by the
|
|
|
|
// EventQueue)
|
|
|
|
if (pEvent->isCharged())
|
|
|
|
return rEventQueue.addEvent( pEvent );
|
|
|
|
}
|
|
|
|
return false; // no more (active) events in queue
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
/** @return at least one event has been posted
|
|
|
|
*/
|
|
|
|
template <typename ContainerT>
|
|
|
|
bool fireAllEvents( ContainerT & rQueue, EventQueue & rEventQueue )
|
|
|
|
{
|
|
|
|
bool bFiredAny = false;
|
|
|
|
while (fireSingleEvent( rQueue, rEventQueue ))
|
|
|
|
bFiredAny = true;
|
|
|
|
return bFiredAny;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class EventContainer
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
EventContainer() : maMutex(), maEvents() {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void clearContainer()
|
|
|
|
{
|
|
|
|
osl::MutexGuard const guard( maMutex );
|
|
|
|
maEvents = ImpEventQueue();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void addEvent( const EventSharedPtr& rEvent )
|
|
|
|
{
|
|
|
|
osl::MutexGuard const guard( maMutex );
|
|
|
|
maEvents.push( rEvent );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bool isEmpty()
|
|
|
|
{
|
|
|
|
osl::MutexGuard const guard( maMutex );
|
|
|
|
return maEvents.empty();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
protected:
|
|
|
|
osl::Mutex maMutex;
|
|
|
|
ImpEventQueue maEvents;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
} // anon namespace
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class PlainEventHandler : public EventHandler,
|
|
|
|
public EventContainer
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
PlainEventHandler( EventQueue & rEventQueue )
|
|
|
|
: EventContainer(), mrEventQueue(rEventQueue) {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual void dispose()
|
|
|
|
{
|
|
|
|
clearContainer();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleEvent()
|
|
|
|
{
|
|
|
|
osl::MutexGuard const guard( maMutex );
|
|
|
|
return fireAllEvents( maEvents, mrEventQueue );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
EventQueue & mrEventQueue;
|
|
|
|
};
|
|
|
|
|
|
|
|
class AllAnimationEventHandler : public AnimationEventHandler
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
AllAnimationEventHandler( EventQueue& rEventQueue )
|
|
|
|
: maMutex(),
|
|
|
|
mrEventQueue( rEventQueue ),
|
|
|
|
maAnimationEventMap() {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual void dispose()
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
|
|
|
maAnimationEventMap.clear();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleAnimationEvent( const AnimationNodeSharedPtr& rNode )
|
|
|
|
{
|
|
|
|
ENSURE_AND_RETURN(
|
|
|
|
rNode.get(),
|
|
|
|
"AllAnimationEventHandler::handleAnimationEvent(): Invalid node" );
|
|
|
|
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
|
|
|
|
|
|
|
bool bRet( false );
|
|
|
|
|
|
|
|
ImpAnimationEventMap::iterator aIter;
|
|
|
|
if( (aIter=maAnimationEventMap.find(
|
|
|
|
rNode->getXAnimationNode() )) != maAnimationEventMap.end() )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
ImpEventVector& rVec( aIter->second );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bRet = !rVec.empty();
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// registered node found -> fire all events in the vector
|
|
|
|
std::for_each( rVec.begin(), rVec.end(),
|
|
|
|
boost::bind( &EventQueue::addEvent,
|
|
|
|
boost::ref( mrEventQueue ), _1 ) );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
rVec.clear();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return bRet;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void addEvent( const EventSharedPtr& rEvent,
|
|
|
|
const uno::Reference< animations::XAnimationNode >& xNode )
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
ImpAnimationEventMap::iterator aIter;
|
|
|
|
if( (aIter=maAnimationEventMap.find( xNode )) ==
|
|
|
|
maAnimationEventMap.end() )
|
|
|
|
{
|
|
|
|
// no entry for this animation -> create one
|
|
|
|
aIter = maAnimationEventMap.insert(
|
|
|
|
ImpAnimationEventMap::value_type( xNode,
|
|
|
|
ImpEventVector() ) ).first;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// add new event to queue
|
|
|
|
aIter->second.push_back( rEvent );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bool isEmpty()
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// find at least one animation with a non-empty vector
|
|
|
|
ImpAnimationEventMap::iterator aCurr( maAnimationEventMap.begin() );
|
|
|
|
ImpAnimationEventMap::iterator aEnd( maAnimationEventMap.end() );
|
|
|
|
while( aCurr != aEnd )
|
|
|
|
{
|
|
|
|
if( !aCurr->second.empty() )
|
|
|
|
return false; // at least one non-empty entry found
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
++aCurr;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return true; // not a single non-empty entry found
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
/// Object mutex
|
|
|
|
osl::Mutex maMutex;
|
|
|
|
EventQueue& mrEventQueue;
|
|
|
|
ImpAnimationEventMap maAnimationEventMap;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class ClickEventHandler : public MouseEventHandler_,
|
|
|
|
public EventHandler,
|
|
|
|
public EventContainer
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
ClickEventHandler( EventQueue& rEventQueue )
|
|
|
|
: EventContainer(),
|
|
|
|
mrEventQueue( rEventQueue ),
|
|
|
|
mbAdvanceOnClick( true ) {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void setAdvanceOnClick( bool bAdvanceOnClick )
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
|
|
|
mbAdvanceOnClick = bAdvanceOnClick;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
virtual void dispose()
|
|
|
|
{
|
|
|
|
clearContainer();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// triggered by API calls, e.g. space bar
|
|
|
|
virtual bool handleEvent()
|
|
|
|
{
|
|
|
|
osl::MutexGuard const guard( maMutex );
|
|
|
|
return handleEvent_impl();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// triggered by mouse release:
|
|
|
|
virtual bool handleMouseReleased( const awt::MouseEvent& evt )
|
|
|
|
{
|
|
|
|
if (evt.Buttons != awt::MouseButton::LEFT)
|
|
|
|
return false;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
osl::MutexGuard const guard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
if( mbAdvanceOnClick ) {
|
|
|
|
// fire next event
|
|
|
|
return handleEvent_impl();
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
return false; // advance-on-click disabled
|
|
|
|
}
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// triggered by both:
|
|
|
|
virtual bool handleEvent_impl()
|
|
|
|
{
|
|
|
|
// fire next event:
|
|
|
|
return fireSingleEvent( maEvents, mrEventQueue );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
/// Object mutex
|
|
|
|
EventQueue& mrEventQueue;
|
|
|
|
bool mbAdvanceOnClick;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class SkipEffectEventHandler : public ClickEventHandler
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
SkipEffectEventHandler( EventQueue & rEventQueue,
|
|
|
|
EventMultiplexer & rEventMultiplexer )
|
|
|
|
: ClickEventHandler(rEventQueue),
|
|
|
|
mrEventQueue(rEventQueue),
|
|
|
|
mrEventMultiplexer(rEventMultiplexer) {}
|
|
|
|
|
|
|
|
private:
|
|
|
|
virtual bool handleEvent_impl()
|
|
|
|
{
|
|
|
|
// fire all events, so animation nodes can register their
|
|
|
|
// next effect listeners:
|
|
|
|
if (fireAllEvents( maEvents, mrEventQueue )) {
|
|
|
|
// then simulate a next effect event:
|
|
|
|
// this skip effect handler is triggered upon next effect
|
|
|
|
// events (multiplexer prio=-1)!
|
|
|
|
// Posting a notifyNextEffect() here is only safe
|
|
|
|
// (we don't run into busy loop), because we assume that
|
|
|
|
// someone has registerered above for next effects
|
|
|
|
// (multiplexer prio=0) at the user event queue.
|
2006-07-26 06:27:41 +00:00
|
|
|
return mrEventQueue.addEventForNextRound(
|
2005-10-11 07:36:36 +00:00
|
|
|
makeEvent( boost::bind(
|
|
|
|
&EventMultiplexer::notifyNextEffect,
|
|
|
|
boost::ref(mrEventMultiplexer) ) ) );
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
EventQueue & mrEventQueue;
|
|
|
|
EventMultiplexer & mrEventMultiplexer;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class RewindEffectEventHandler : public MouseEventHandler_,
|
|
|
|
public EventContainer
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
RewindEffectEventHandler( EventQueue & rEventQueue )
|
|
|
|
: EventContainer(), mrEventQueue(rEventQueue) {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
virtual void dispose()
|
|
|
|
{
|
|
|
|
clearContainer();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleMouseReleased( awt::MouseEvent const& evt )
|
|
|
|
{
|
|
|
|
if (evt.Buttons != awt::MouseButton::RIGHT)
|
|
|
|
return false;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
osl::MutexGuard const guard( maMutex );
|
|
|
|
return fireAllEvents( maEvents, mrEventQueue );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
EventQueue & mrEventQueue;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
/** Base class to share some common code between
|
|
|
|
ShapeClickEventHandler and MouseMoveHandler
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
@derive override necessary MouseEventHandler interface methods,
|
|
|
|
call sendEvent() method to actually process the event.
|
|
|
|
*/
|
|
|
|
class MouseHandlerBase : public MouseEventHandler_
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
MouseHandlerBase( EventQueue& rEventQueue )
|
|
|
|
: maMutex(),
|
|
|
|
mrEventQueue( rEventQueue ),
|
|
|
|
maShapeEventMap() {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual void dispose()
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// TODO(Q1): Check whether plain vector with swap idiom is
|
|
|
|
// okay here
|
|
|
|
maShapeEventMap = ImpShapeEventMap();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void addEvent( const EventSharedPtr& rEvent,
|
|
|
|
const ShapeSharedPtr& rShape )
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
ImpShapeEventMap::iterator aIter;
|
|
|
|
if( (aIter=maShapeEventMap.find( rShape )) == maShapeEventMap.end() )
|
|
|
|
{
|
|
|
|
// no entry for this shape -> create one
|
|
|
|
aIter = maShapeEventMap.insert(
|
|
|
|
ImpShapeEventMap::value_type( rShape,
|
|
|
|
ImpEventQueue() ) ).first;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// add new event to queue
|
|
|
|
aIter->second.push( rEvent );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bool isEmpty()
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// find at least one shape with a non-empty queue
|
|
|
|
ImpShapeEventMap::reverse_iterator aCurrShape( maShapeEventMap.begin());
|
|
|
|
ImpShapeEventMap::reverse_iterator aEndShape( maShapeEventMap.end() );
|
|
|
|
while( aCurrShape != aEndShape )
|
|
|
|
{
|
|
|
|
if( !aCurrShape->second.empty() )
|
|
|
|
return false; // at least one non-empty entry found
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
++aCurrShape;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return true; // not a single non-empty entry found
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
protected:
|
|
|
|
bool hitTest( const awt::MouseEvent& e,
|
|
|
|
ImpShapeEventMap::reverse_iterator& o_rHitShape )
|
|
|
|
{
|
|
|
|
// find hit shape in map
|
|
|
|
const basegfx::B2DPoint aPosition( e.X, e.Y );
|
|
|
|
|
|
|
|
// find matching shape (scan reversely, to coarsely match
|
|
|
|
// paint order)
|
|
|
|
ImpShapeEventMap::reverse_iterator aCurrShape(maShapeEventMap.rbegin());
|
|
|
|
ImpShapeEventMap::reverse_iterator aEndShape( maShapeEventMap.rend() );
|
|
|
|
while( aCurrShape != aEndShape )
|
|
|
|
{
|
|
|
|
// TODO(F2): Get proper geometry polygon from the
|
|
|
|
// shape, to avoid having areas outside the shape
|
|
|
|
// react on the mouse
|
|
|
|
if( aCurrShape->first->getPosSize().isInside( aPosition ) &&
|
|
|
|
aCurrShape->first->isVisible() )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
// shape hit, and shape is visible - report a
|
|
|
|
// hit
|
|
|
|
o_rHitShape = aCurrShape;
|
|
|
|
return true;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
}
|
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
++aCurrShape;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return false; // nothing hit
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bool sendEvent( ImpShapeEventMap::reverse_iterator& io_rHitShape )
|
|
|
|
{
|
|
|
|
// take next event from queue
|
|
|
|
const bool bRet( fireSingleEvent( io_rHitShape->second,
|
|
|
|
mrEventQueue ) );
|
|
|
|
|
|
|
|
// clear shape entry, if its queue is
|
|
|
|
// empty. This is important, since the shapes
|
|
|
|
// are held by shared ptr, and might otherwise
|
|
|
|
// not get released, even after their owning
|
|
|
|
// slide is long gone.
|
|
|
|
if( io_rHitShape->second.empty() )
|
|
|
|
{
|
|
|
|
// this looks funny, since ::std::map does
|
|
|
|
// provide an erase( iterator )
|
|
|
|
// method. Unfortunately, stlport does not
|
|
|
|
// declare the obvious erase(
|
|
|
|
// reverse_iterator ) needed here (missing
|
|
|
|
// orthogonality, eh?)
|
|
|
|
maShapeEventMap.erase( io_rHitShape->first );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return bRet;
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bool processEvent( const awt::MouseEvent& e )
|
|
|
|
{
|
|
|
|
ImpShapeEventMap::reverse_iterator aCurrShape;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
if( hitTest( e, aCurrShape ) )
|
|
|
|
return sendEvent( aCurrShape );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return false; // did not handle the event
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
protected:
|
|
|
|
/// Object mutex
|
|
|
|
osl::Mutex maMutex;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
EventQueue& mrEventQueue;
|
|
|
|
ImpShapeEventMap maShapeEventMap;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class ShapeClickEventHandler : public MouseHandlerBase
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
ShapeClickEventHandler( EventMultiplexer& rMultiplexer,
|
|
|
|
EventQueue& rEventQueue )
|
|
|
|
: MouseHandlerBase( rEventQueue ),
|
|
|
|
mrMultiplexer( rMultiplexer ) {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleMouseReleased( const awt::MouseEvent& e )
|
|
|
|
{
|
|
|
|
if (e.Buttons != awt::MouseButton::LEFT)
|
|
|
|
return false;
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
|
|
|
return processEvent( e );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleMouseMoved( const awt::MouseEvent& e )
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// TODO(P2): Maybe buffer last shape touched
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// if we have a shape click event, and the mouse
|
|
|
|
// hovers over this shape, change cursor to hand
|
|
|
|
ImpShapeEventMap::reverse_iterator aDummy;
|
|
|
|
if( hitTest( e, aDummy ) )
|
|
|
|
mrMultiplexer.setVolatileMouseCursor( awt::SystemPointer::REFHAND );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return false; // we don't /eat/ this event. Lower prio
|
|
|
|
// handler should see it, too.
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
EventMultiplexer& mrMultiplexer;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class MouseEnterHandler : public MouseHandlerBase
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
MouseEnterHandler( EventQueue& rEventQueue )
|
|
|
|
: MouseHandlerBase( rEventQueue ),
|
|
|
|
mpLastShape() {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleMouseMoved( const awt::MouseEvent& e )
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// TODO(P2): Maybe buffer last shape touched, and
|
|
|
|
// check against that _first_
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
ImpShapeEventMap::reverse_iterator aCurr;
|
|
|
|
if( hitTest( e, aCurr ) )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
if( aCurr->first != mpLastShape )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
// we actually hit a shape, and it's different
|
|
|
|
// from the previous one - thus we just
|
|
|
|
// entered it, raise event
|
|
|
|
sendEvent( aCurr );
|
|
|
|
mpLastShape = aCurr->first;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
}
|
2005-10-11 07:36:36 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
// don't hit no shape - thus, last shape is NULL
|
|
|
|
mpLastShape.reset();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return false; // we don't /eat/ this event. Lower prio
|
|
|
|
// handler should see it, too.
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
ShapeSharedPtr mpLastShape;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
class MouseLeaveHandler : public MouseHandlerBase
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
MouseLeaveHandler( EventQueue& rEventQueue )
|
|
|
|
: MouseHandlerBase( rEventQueue ),
|
|
|
|
maLastIter() {}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
virtual bool handleMouseMoved( const awt::MouseEvent& e )
|
|
|
|
{
|
|
|
|
osl::MutexGuard aGuard( maMutex );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// TODO(P2): Maybe buffer last shape touched, and
|
|
|
|
// check against that _first_
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
ImpShapeEventMap::reverse_iterator aCurr;
|
|
|
|
if( hitTest( e, aCurr ) )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
maLastIter = aCurr;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if( maLastIter->first.get() != NULL )
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
{
|
2005-10-11 07:36:36 +00:00
|
|
|
// last time, we were over a shape, now we're
|
|
|
|
// not - we thus just left that shape, raise
|
|
|
|
// event
|
|
|
|
sendEvent( maLastIter );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
}
|
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// in any case, when we hit this else-branch: no
|
|
|
|
// shape hit, thus have to clear maLastIter
|
|
|
|
maLastIter = ImpShapeEventMap::reverse_iterator();
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
}
|
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
return false; // we don't /eat/ this event. Lower prio
|
|
|
|
// handler should see it, too.
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
ImpShapeEventMap::reverse_iterator maLastIter;
|
|
|
|
};
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
template< typename Handler, typename Functor >
|
|
|
|
void UserEventQueue::registerEvent(
|
|
|
|
boost::shared_ptr< Handler >& rHandler,
|
|
|
|
const EventSharedPtr& rEvent,
|
|
|
|
const Functor& rRegistrationFunctor )
|
|
|
|
{
|
|
|
|
ENSURE_AND_THROW( rEvent.get(),
|
|
|
|
"UserEventQueue::registerEvent(): Invalid event" );
|
|
|
|
|
|
|
|
if( !rHandler.get() ) {
|
|
|
|
// create handler
|
|
|
|
rHandler.reset( new Handler( mrEventQueue ) );
|
|
|
|
// register handler on EventMultiplexer
|
|
|
|
rRegistrationFunctor( rHandler );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
rHandler->addEvent( rEvent );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
template< typename Handler, typename Arg, typename Functor >
|
|
|
|
void UserEventQueue::registerEvent(
|
|
|
|
boost::shared_ptr< Handler >& rHandler,
|
|
|
|
const EventSharedPtr& rEvent,
|
|
|
|
const Arg& rArg,
|
|
|
|
const Functor& rRegistrationFunctor )
|
|
|
|
{
|
|
|
|
ENSURE_AND_THROW( rEvent.get(),
|
|
|
|
"UserEventQueue::registerEvent(): Invalid event" );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
if( !rHandler.get() ) {
|
|
|
|
// create handler
|
|
|
|
rHandler.reset( new Handler( mrEventQueue ) );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// register handler on EventMultiplexer
|
|
|
|
rRegistrationFunctor( rHandler );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
rHandler->addEvent( rEvent, rArg );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// Public methods
|
|
|
|
// =====================================================
|
|
|
|
|
|
|
|
UserEventQueue::UserEventQueue( EventMultiplexer& rMultiplexer,
|
|
|
|
EventQueue& rEventQueue )
|
|
|
|
: mrMultiplexer( rMultiplexer ),
|
|
|
|
mrEventQueue( rEventQueue ),
|
|
|
|
mpStartEventHandler(),
|
|
|
|
mpEndEventHandler(),
|
|
|
|
mpAnimationStartEventHandler(),
|
|
|
|
mpAnimationEndEventHandler(),
|
|
|
|
mpAudioStoppedEventHandler(),
|
|
|
|
mpClickEventHandler(),
|
|
|
|
mpSkipEffectEventHandler(),
|
|
|
|
mpRewindEffectEventHandler(),
|
|
|
|
mpDoubleClickEventHandler(),
|
|
|
|
mpMouseEnterHandler(),
|
|
|
|
mpMouseLeaveHandler(),
|
|
|
|
mbAdvanceOnClick( true )
|
|
|
|
{
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
UserEventQueue::~UserEventQueue()
|
|
|
|
{
|
|
|
|
// unregister all handlers
|
|
|
|
clear();
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
bool UserEventQueue::isEmpty() const
|
|
|
|
{
|
|
|
|
// TODO(T2): This is not thread safe, the handlers are all
|
|
|
|
// only separately synchronized. This poses the danger of
|
|
|
|
// generating false empty status on XSlideShow::update(), such
|
|
|
|
// that the last events of a slide are not triggered.
|
|
|
|
|
|
|
|
// we're empty iff all handler queues are empty
|
|
|
|
return
|
|
|
|
(mpStartEventHandler.get() ? mpStartEventHandler->isEmpty() : true) &&
|
|
|
|
(mpEndEventHandler.get() ? mpEndEventHandler->isEmpty() : true) &&
|
|
|
|
(mpAnimationStartEventHandler.get() ? mpAnimationStartEventHandler->isEmpty() : true) &&
|
|
|
|
(mpAnimationEndEventHandler.get() ? mpAnimationEndEventHandler->isEmpty() : true) &&
|
|
|
|
(mpAudioStoppedEventHandler.get() ? mpAudioStoppedEventHandler->isEmpty() : true) &&
|
|
|
|
(mpShapeClickEventHandler.get() ? mpShapeClickEventHandler->isEmpty() : true) &&
|
|
|
|
(mpClickEventHandler.get() ? mpClickEventHandler->isEmpty() : true) &&
|
|
|
|
(mpSkipEffectEventHandler.get() != 0 ? mpSkipEffectEventHandler->isEmpty() : true) &&
|
|
|
|
(mpRewindEffectEventHandler.get() != 0 ? mpRewindEffectEventHandler->isEmpty() : true) &&
|
|
|
|
(mpShapeDoubleClickEventHandler.get() ? mpShapeDoubleClickEventHandler->isEmpty() : true) &&
|
|
|
|
(mpDoubleClickEventHandler.get() ? mpDoubleClickEventHandler->isEmpty() : true) &&
|
|
|
|
(mpMouseEnterHandler.get() ? mpMouseEnterHandler->isEmpty() : true) &&
|
|
|
|
(mpMouseLeaveHandler.get() ? mpMouseLeaveHandler->isEmpty() : true);
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::clear()
|
|
|
|
{
|
|
|
|
// unregister and delete all handlers
|
|
|
|
if( mpStartEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeSlideStartHandler( mpStartEventHandler );
|
|
|
|
mpStartEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpEndEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeSlideEndHandler( mpEndEventHandler );
|
|
|
|
mpEndEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpAnimationStartEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeAnimationStartHandler(
|
|
|
|
mpAnimationStartEventHandler );
|
|
|
|
mpAnimationStartEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpAnimationEndEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeAnimationEndHandler( mpAnimationEndEventHandler );
|
|
|
|
mpAnimationEndEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpAudioStoppedEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeAudioStoppedHandler( mpAudioStoppedEventHandler );
|
|
|
|
mpAudioStoppedEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpShapeClickEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeClickHandler( mpShapeClickEventHandler );
|
|
|
|
mrMultiplexer.removeMouseMoveHandler( mpShapeClickEventHandler );
|
|
|
|
mpShapeClickEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpClickEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeClickHandler( mpClickEventHandler );
|
|
|
|
mrMultiplexer.removeNextEffectHandler( mpClickEventHandler );
|
|
|
|
mpClickEventHandler.reset();
|
|
|
|
}
|
|
|
|
if (mpSkipEffectEventHandler.get() != 0) {
|
|
|
|
mrMultiplexer.removeClickHandler( mpSkipEffectEventHandler );
|
|
|
|
mrMultiplexer.removeNextEffectHandler( mpSkipEffectEventHandler );
|
|
|
|
mpSkipEffectEventHandler.reset();
|
|
|
|
}
|
|
|
|
if (mpRewindEffectEventHandler.get() != 0) {
|
|
|
|
mrMultiplexer.removeClickHandler( mpRewindEffectEventHandler );
|
|
|
|
mpRewindEffectEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpShapeDoubleClickEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeDoubleClickHandler( mpShapeDoubleClickEventHandler );
|
|
|
|
mrMultiplexer.removeMouseMoveHandler( mpShapeDoubleClickEventHandler );
|
|
|
|
mpShapeDoubleClickEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpDoubleClickEventHandler.get() ) {
|
|
|
|
mrMultiplexer.removeDoubleClickHandler( mpDoubleClickEventHandler );
|
|
|
|
mpDoubleClickEventHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpMouseEnterHandler.get() ) {
|
|
|
|
mrMultiplexer.removeMouseMoveHandler( mpMouseEnterHandler );
|
|
|
|
mpMouseEnterHandler.reset();
|
|
|
|
}
|
|
|
|
if( mpMouseLeaveHandler.get() ) {
|
|
|
|
mrMultiplexer.removeMouseMoveHandler( mpMouseLeaveHandler );
|
|
|
|
mpMouseLeaveHandler.reset();
|
|
|
|
}
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::setAdvanceOnClick( bool bAdvanceOnClick )
|
|
|
|
{
|
|
|
|
mbAdvanceOnClick = bAdvanceOnClick;
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
// forward to handler, if existing. Otherwise, the handler
|
|
|
|
// creation will do the forwarding.
|
|
|
|
if( mpClickEventHandler.get() )
|
|
|
|
mpClickEventHandler->setAdvanceOnClick( bAdvanceOnClick );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerSlideStartEvent( const EventSharedPtr& rEvent )
|
|
|
|
{
|
|
|
|
registerEvent( mpStartEventHandler,
|
|
|
|
rEvent,
|
|
|
|
boost::bind( &EventMultiplexer::addSlideStartHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1 ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerSlideEndEvent( const EventSharedPtr& rEvent )
|
|
|
|
{
|
|
|
|
registerEvent( mpEndEventHandler,
|
|
|
|
rEvent,
|
|
|
|
boost::bind( &EventMultiplexer::addSlideEndHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1 ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerAnimationStartEvent(
|
|
|
|
const EventSharedPtr& rEvent,
|
|
|
|
const uno::Reference< animations::XAnimationNode>& xNode )
|
|
|
|
{
|
|
|
|
registerEvent( mpAnimationStartEventHandler,
|
|
|
|
rEvent,
|
|
|
|
xNode,
|
|
|
|
boost::bind( &EventMultiplexer::addAnimationStartHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1 ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerAnimationEndEvent(
|
|
|
|
const EventSharedPtr& rEvent,
|
|
|
|
const uno::Reference<animations::XAnimationNode>& xNode )
|
|
|
|
{
|
|
|
|
registerEvent( mpAnimationEndEventHandler,
|
|
|
|
rEvent,
|
|
|
|
xNode,
|
|
|
|
boost::bind( &EventMultiplexer::addAnimationEndHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1 ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerAudioStoppedEvent(
|
|
|
|
const EventSharedPtr& rEvent,
|
|
|
|
const uno::Reference<animations::XAnimationNode>& xNode )
|
|
|
|
{
|
|
|
|
registerEvent( mpAudioStoppedEventHandler,
|
|
|
|
rEvent,
|
|
|
|
xNode,
|
|
|
|
boost::bind( &EventMultiplexer::addAudioStoppedHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1 ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerShapeClickEvent( const EventSharedPtr& rEvent,
|
|
|
|
const ShapeSharedPtr& rShape )
|
|
|
|
{
|
|
|
|
ENSURE_AND_THROW(
|
|
|
|
rEvent.get(),
|
|
|
|
"UserEventQueue::registerShapeClickEvent(): Invalid event" );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
if( !mpShapeClickEventHandler.get() )
|
|
|
|
{
|
|
|
|
// create handler
|
|
|
|
mpShapeClickEventHandler.reset(
|
|
|
|
new ShapeClickEventHandler( mrMultiplexer,
|
|
|
|
mrEventQueue ) );
|
|
|
|
|
|
|
|
// register handler on EventMultiplexer
|
|
|
|
mrMultiplexer.addClickHandler( mpShapeClickEventHandler, 1.0 );
|
|
|
|
mrMultiplexer.addMouseMoveHandler( mpShapeClickEventHandler, 1.0 );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
mpShapeClickEventHandler->addEvent( rEvent, rShape );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
namespace {
|
|
|
|
class ClickEventRegistrationFunctor
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
ClickEventRegistrationFunctor( EventMultiplexer& rMultiplexer,
|
|
|
|
double nPrio,
|
|
|
|
bool bAdvanceOnClick )
|
|
|
|
: mrMultiplexer( rMultiplexer ),
|
|
|
|
mnPrio(nPrio),
|
|
|
|
mbAdvanceOnClick( bAdvanceOnClick ) {}
|
|
|
|
|
|
|
|
void operator()( const boost::shared_ptr<ClickEventHandler>& rHandler )const
|
|
|
|
{
|
|
|
|
// register the handler on _two_ sources: we want the
|
|
|
|
// nextEffect events, e.g. space bar, to trigger clicks, as well!
|
|
|
|
mrMultiplexer.addClickHandler( rHandler, mnPrio );
|
|
|
|
mrMultiplexer.addNextEffectHandler( rHandler, mnPrio );
|
|
|
|
|
|
|
|
// forward advance-on-click state to newly
|
|
|
|
// generated handler (that's the only reason why
|
|
|
|
// we're called here)
|
|
|
|
rHandler->setAdvanceOnClick( mbAdvanceOnClick );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
private:
|
|
|
|
EventMultiplexer& mrMultiplexer;
|
|
|
|
double const mnPrio;
|
|
|
|
bool const mbAdvanceOnClick;
|
|
|
|
};
|
|
|
|
} // anon namespace
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerNextEffectEvent( const EventSharedPtr& rEvent )
|
|
|
|
{
|
|
|
|
// TODO: better name may be mpNextEffectEventHandler? then we have
|
|
|
|
// next effect (=> waiting to be started)
|
|
|
|
// skip effect (skipping the currently running one)
|
|
|
|
// rewind effect (rewinding back running one and waiting (again)
|
|
|
|
// to be started)
|
|
|
|
registerEvent( mpClickEventHandler,
|
|
|
|
rEvent,
|
|
|
|
ClickEventRegistrationFunctor( mrMultiplexer,
|
|
|
|
0.0 /* default prio */,
|
|
|
|
mbAdvanceOnClick ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerSkipEffectEvent( EventSharedPtr const & pEvent )
|
|
|
|
{
|
|
|
|
if (mpSkipEffectEventHandler.get() == 0) {
|
|
|
|
mpSkipEffectEventHandler.reset(
|
|
|
|
new SkipEffectEventHandler( mrEventQueue, mrMultiplexer ) );
|
|
|
|
// register the handler on _two_ sources: we want the
|
|
|
|
// nextEffect events, e.g. space bar, to trigger clicks, as well!
|
|
|
|
mrMultiplexer.addClickHandler( mpSkipEffectEventHandler,
|
|
|
|
-1.0 /* prio below default */ );
|
|
|
|
mrMultiplexer.addNextEffectHandler( mpSkipEffectEventHandler,
|
|
|
|
-1.0 /* prio below default */ );
|
|
|
|
// forward advance-on-click state to newly
|
|
|
|
// generated handler (that's the only reason why
|
|
|
|
// we're called here)
|
|
|
|
mpSkipEffectEventHandler->setAdvanceOnClick( mbAdvanceOnClick );
|
|
|
|
}
|
|
|
|
mpSkipEffectEventHandler->addEvent( pEvent );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerRewindEffectEvent( EventSharedPtr const& pEvent )
|
|
|
|
{
|
|
|
|
registerEvent( mpRewindEffectEventHandler,
|
|
|
|
pEvent,
|
|
|
|
boost::bind( &EventMultiplexer::addClickHandler,
|
|
|
|
boost::ref(mrMultiplexer), _1,
|
|
|
|
-1.0 /* prio below default */ ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerShapeDoubleClickEvent(
|
|
|
|
const EventSharedPtr& rEvent,
|
|
|
|
const ShapeSharedPtr& rShape )
|
|
|
|
{
|
|
|
|
ENSURE_AND_THROW(
|
|
|
|
rEvent.get(),
|
|
|
|
"UserEventQueue::registerShapeDoubleClickEvent(): Invalid event" );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
if( !mpShapeDoubleClickEventHandler.get() )
|
|
|
|
{
|
|
|
|
// create handler
|
|
|
|
mpShapeDoubleClickEventHandler.reset(
|
|
|
|
new ShapeClickEventHandler( mrMultiplexer,
|
|
|
|
mrEventQueue ) );
|
|
|
|
|
|
|
|
// register handler on EventMultiplexer
|
|
|
|
mrMultiplexer.addDoubleClickHandler( mpShapeDoubleClickEventHandler,
|
|
|
|
1.0 );
|
|
|
|
mrMultiplexer.addMouseMoveHandler( mpShapeDoubleClickEventHandler,
|
|
|
|
1.0 );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
mpShapeDoubleClickEventHandler->addEvent( rEvent, rShape );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerDoubleClickEvent( const EventSharedPtr& rEvent )
|
|
|
|
{
|
|
|
|
registerEvent( mpDoubleClickEventHandler,
|
|
|
|
rEvent,
|
|
|
|
boost::bind( &EventMultiplexer::addDoubleClickHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1,
|
|
|
|
0.0 /* default prio */ ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerMouseEnterEvent( const EventSharedPtr& rEvent,
|
|
|
|
const ShapeSharedPtr& rShape )
|
|
|
|
{
|
|
|
|
registerEvent( mpMouseEnterHandler,
|
|
|
|
rEvent,
|
|
|
|
rShape,
|
|
|
|
boost::bind( &EventMultiplexer::addMouseMoveHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1,
|
|
|
|
0.0 /* default prio */ ) );
|
|
|
|
}
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
|
2005-10-11 07:36:36 +00:00
|
|
|
void UserEventQueue::registerMouseLeaveEvent( const EventSharedPtr& rEvent,
|
|
|
|
const ShapeSharedPtr& rShape )
|
|
|
|
{
|
|
|
|
registerEvent( mpMouseLeaveHandler,
|
|
|
|
rEvent,
|
|
|
|
rShape,
|
|
|
|
boost::bind( &EventMultiplexer::addMouseMoveHandler,
|
|
|
|
boost::ref( mrMultiplexer ), _1,
|
|
|
|
0.0 /* default prio */ ) );
|
INTEGRATION: CWS presentationengine01 (1.1.2); FILE ADDED
2004/11/03 18:41:27 thb 1.1.2.11: #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/10/22 16:36:49 thb 1.1.2.10: #107736# Added AdvanceOnClick and ImageAnimationsAllowed properties
2004/10/21 23:24:37 thb 1.1.2.9: #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/09/06 16:07:33 thb 1.1.2.8: #i10000# Fixed various unixoid build breakages (missing types, gcc bind peculiarities, hdl instead of hpp etc.
2004/09/06 13:50:01 thb 1.1.2.7: #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/08/31 17:05:23 thb 1.1.2.6: #110496# Added automatic slide transition support, added user interaction to activate slide transitions
2004/08/31 01:12:33 thb 1.1.2.5: #110496# Implemented shape broadcasting, added CurrentPage property when calling the UnoGraphicExporter for shape metafiles
2004/08/09 11:50:05 thb 1.1.2.4: #i10000# Fixed various const-incorrectnesses (made the stuff compile under Linux and Solaris)
2004/08/01 20:08:13 thb 1.1.2.3: #110496# Changed slideshow API to match the needs of sd more closely
2004/07/26 14:10:09 thb 1.1.2.2: #i10000# Madebind and mem_fn build under Solaris
2004/07/22 19:24:57 thb 1.1.2.1: #110496# Initial revision
2004-11-26 18:00:49 +00:00
|
|
|
}
|
2005-10-11 07:36:36 +00:00
|
|
|
|
|
|
|
} // namespace internal
|
|
|
|
} // namespace presentation
|
|
|
|
|