summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2004-11-26 18:38:53 +0000
committerRüdiger Timm <rt@openoffice.org>2004-11-26 18:38:53 +0000
commit68348308edfc7a92960615c6b91acc2946841416 (patch)
tree479b5abb042953099d0dcc8fb95ec649a1c02ac8 /sd
parenta5e3c298d586c551243d51d88af7e825467b8dc6 (diff)
INTEGRATION: CWS presentationengine01 (1.13.338); FILE MERGED
2004/10/12 22:34:44 thb 1.13.338.12: RESYNC: (1.16-1.17); FILE MERGED 2004/09/30 20:44:27 cl 1.13.338.11: list to paragraph changes for effects 2004/09/26 18:33:25 cl 1.13.338.10: added animation undo 2004/08/28 22:35:04 cl 1.13.338.9: removed old presentation code 2004/08/22 22:20:46 cl 1.13.338.8: dependency clean up and more text group support 2004/08/19 11:16:33 cl 1.13.338.7: new transition api 2004/07/29 10:42:23 thb 1.13.338.6: #i10000# gcc requires const & for temporaries 2004/07/28 11:10:35 cl 1.13.338.5: #i31376# added strings for translation 2004/07/23 14:03:38 thb 1.13.338.4: RESYNC: (1.14-1.16); FILE MERGED 2004/07/06 19:30:36 thb 1.13.338.3: RESYNC: (1.13-1.14); FILE MERGED 2004/04/16 11:01:00 cl 1.13.338.2: fixed merge conflict 2004/04/14 09:48:20 cl 1.13.338.1: new smile api
Diffstat (limited to 'sd')
-rw-r--r--sd/inc/sdpage.hxx106
1 files changed, 85 insertions, 21 deletions
diff --git a/sd/inc/sdpage.hxx b/sd/inc/sdpage.hxx
index 90c8b1ff0f5e..83a956622fff 100644
--- a/sd/inc/sdpage.hxx
+++ b/sd/inc/sdpage.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: sdpage.hxx,v $
*
- * $Revision: 1.18 $
+ * $Revision: 1.19 $
*
- * last change: $Author: pjunck $ $Date: 2004-11-03 08:52:30 $
+ * last change: $Author: rt $ $Date: 2004-11-26 19:38:53 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -62,6 +62,10 @@
#ifndef _SDPAGE_HXX
#define _SDPAGE_HXX
+#ifndef BOOST_SHARED_PTR_HPP_INCLUDED
+#include <boost/shared_ptr.hpp>
+#endif
+
#ifndef INCLUDED_LIST
#include <list>
#define INCLUDED_LIST
@@ -72,14 +76,18 @@
#define INCLUDED_FUNCTIONAL
#endif
-#ifndef _COM_SUN_STAR_UNO_XINTERFACE_HPP_
-#include <com/sun/star/uno/XInterface.hpp>
+#ifndef _COM_SUN_STAR_DRAWING_XDRAWPAGE_HPP_
+#include <com/sun/star/drawing/XDrawPage.hpp>
#endif
#ifndef _COM_SUN_STAR_PRESENTATION_FADEEFFECT_HPP_
#include <com/sun/star/presentation/FadeEffect.hpp>
#endif
+#include <list>
+#include <functional>
+
+
#ifndef _SVDOBJ_HXX //autogen
#include <svx/svdobj.hxx>
#endif
@@ -101,6 +109,10 @@
#include "sddllapi.h"
#endif
+namespace com { namespace sun { namespace star { namespace animations {
+ class XAnimationNode;
+} } } }
+
class SfxStyleSheet;
class SdDrawDocument;
class SdrTextObj;
@@ -109,6 +121,18 @@ class StarBASIC;
class SfxItemSet;
struct StyleRequestData;
class SdPage;
+class Paragraph;
+class Outliner;
+
+namespace sd
+{
+ class MainSequence;
+}
+
+namespace boost
+{
+ template<class X> class shared_ptr;
+}
enum PresObjKind
{
@@ -186,9 +210,17 @@ namespace sd {
};
};
+namespace sd {
+ class UndoAnimation;
+ class UndoTransition;
+}
+
class SD_DLLPUBLIC SdPage : public FmFormPage, public SdrObjUserCall
{
friend class SdGenericDrawPage;
+friend class SdDrawPage;
+friend class sd::UndoAnimation;
+friend class sd::UndoTransition;
protected:
PageKind ePageKind; // Seitentyp
@@ -197,8 +229,6 @@ protected:
BOOL bOwnArrangement; // Objekte werden intern angeordnet
BOOL bSelected; // Selektionskennung
- FadeSpeed eFadeSpeed; // Ueberblendgeschwindigkeit
- ::com::sun::star::presentation::FadeEffect eFadeEffect; // Ueberblendeffekt
PresChange ePresChange; // manuell/automatisch/halbautomatisch
UINT32 nTime; // Anzeigedauer in Sekunden
BOOL bSoundOn; // mit/ohne Sound (TRUE/FALSE)
@@ -216,6 +246,12 @@ protected:
Orientation eOrientation; // Print-Orientation
SdPageLink* pPageLink; // PageLink (nur bei gelinkten Seiten)
+ /** holds the smil animation sequences for this page */
+ ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > mxAnimationNode;
+
+ /** a helper class to manipulate effects inside the main sequence */
+ boost::shared_ptr< sd::MainSequence > mpMainSequence;
+
BOOL InsertPresObj(SdrObject* pObj, PresObjKind eObjKind, BOOL bVertical,
Rectangle rRect, BOOL bInit, sd::PresentationObjectList& rObjList);
@@ -230,6 +266,14 @@ protected:
SfxItemSet* getOrCreateItems();
sd::HeaderFooterSettings maHeaderFooterSettings;
+
+ // new transition settings
+ sal_Int16 mnTransitionType;
+ sal_Int16 mnTransitionSubtype;
+ sal_Bool mbTransitionDirection;
+ sal_Int32 mnTransitionFadeColor;
+ double mfTransitionDuration;
+
public:
TYPEINFO();
@@ -290,11 +334,8 @@ public:
void SetSelected(BOOL bSel) { bSelected = bSel; }
BOOL IsSelected() const { return bSelected; }
- void SetFadeSpeed(FadeSpeed eNewSpeed) { eFadeSpeed = eNewSpeed; }
- FadeSpeed GetFadeSpeed() const { return eFadeSpeed; }
-
- void SetFadeEffect(::com::sun::star::presentation::FadeEffect eNewEffect) { eFadeEffect = eNewEffect; }
- ::com::sun::star::presentation::FadeEffect GetFadeEffect() const { return eFadeEffect; }
+ void SetFadeEffect(::com::sun::star::presentation::FadeEffect eNewEffect);
+ ::com::sun::star::presentation::FadeEffect GetFadeEffect() const;
void SetPresChange(PresChange eChange) { ePresChange = eChange; }
PresChange GetPresChange() const { return ePresChange; }
@@ -314,17 +355,27 @@ public:
void SetSoundFile(const String& rStr) { aSoundFile = rStr; }
String GetSoundFile() const { return aSoundFile; }
-#ifndef SVX_LIGHT
+ sal_Int16 getTransitionType() const { return mnTransitionType; }
+ void setTransitionType( sal_Int16 nTransitionType ) { mnTransitionType = nTransitionType; }
+
+ sal_Int16 getTransitionSubtype() const { return mnTransitionSubtype; }
+ void setTransitionSubtype( sal_Int16 nTransitionSubtype ) { mnTransitionSubtype = nTransitionSubtype; }
+
+ sal_Bool getTransitionDirection() const { return mbTransitionDirection; }
+ void setTransitionDirection( sal_Bool bTransitionbDirection ) { mbTransitionDirection = bTransitionbDirection; }
+
+ sal_Int32 getTransitionFadeColor() const { return mnTransitionFadeColor; }
+ void setTransitionFadeColor( sal_Int32 nTransitionFadeColor ) { mnTransitionFadeColor = nTransitionFadeColor; }
+
+ double getTransitionDuration() const { return mfTransitionDuration; }
+ void setTransitionDuration( double fTranstionDuration ) { mfTransitionDuration = fTranstionDuration; }
+
// Virtuelle Methoden von SdrObjUserCall
virtual void Changed(const SdrObject& rObj, SdrUserCallType eType,
const Rectangle& rOldBoundRect);
virtual void RequestBasic();
-//BFS02 virtual void WriteData(SvStream& rOut) const;
-#endif
-//BFS02 virtual void ReadData(const SdrIOHeader& rHead, SvStream& rIn);
-
void SetLayoutName(String aName);
virtual String GetLayoutName() const { return aLayoutName; }
@@ -334,13 +385,11 @@ public:
virtual String GetBookmarkName() const { return aBookmarkName; }
SdPageLink* GetLink() { return pPageLink; }
-#ifndef SVX_LIGHT
void ConnectLink();
void DisconnectLink();
void ScaleObjects(const Size& rNewPageSize, const Rectangle& rNewBorderRect,
BOOL bScaleAllObj);
-#endif
const String& GetName();
String GetRealName() const { return aPageName; };
@@ -366,6 +415,18 @@ public:
sal_Bool setAlienAttributes( const com::sun::star::uno::Any& rAttributes );
void getAlienAttributes( com::sun::star::uno::Any& rAttributes );
+ /** returns the main animation node */
+ ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > getAnimationNode() throw (::com::sun::star::uno::RuntimeException);
+
+ /** returns a helper class to manipulate effects inside the main sequence */
+ boost::shared_ptr< sd::MainSequence > getMainSequence();
+
+ /** returns the SdPage implementation for the given XDrawPage or 0 if not available */
+ static SdPage* getImplementation( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage );
+
+ /** removes all custom animations for the given shape */
+ void removeAnimations( const SdrObject* pObj );
+
/** Set the name of the page and broadcast a model change.
*/
virtual void SetName (const String& rName);
@@ -381,10 +442,13 @@ public:
::sdr::contact::ViewObjectContact& rOriginal,
::sdr::contact::DisplayInfo& rDisplayInfo,
bool bEdit );
-};
-
-#endif // _SDPAGE_HXX
+ /** callback from the sd::View when a new paragraph for one object on this page is created */
+ void onParagraphInserted( ::Outliner* pOutliner, Paragraph* pPara, SdrObject* pObj );
+ /** callback from the sd::View when a paragraph from one object on this page is removed */
+ void onParagraphRemoving( ::Outliner* pOutliner, Paragraph* pPara, SdrObject* pObj );
+};
+#endif // _SDPAGE_HXX