[Libreoffice-commits] .: 18 commits - avmedia/source extras/source sc/source sd/inc sd/source svx/inc svx/source sw/inc sw/source xmloff/source

Thorsten Behrens thorsten at kemper.freedesktop.org
Tue Dec 6 00:40:30 PST 2011


 avmedia/source/win/window.cxx                                               |    2 
 extras/source/palettes/standard.soc                                         |    2 
 sc/source/core/data/documen9.cxx                                            |    1 
 sd/inc/EffectMigration.hxx                                                  |    3 
 sd/source/core/CustomAnimationEffect.cxx                                    |   16 
 sd/source/core/CustomAnimationPreset.cxx                                    |    4 
 sd/source/core/EffectMigration.cxx                                          |   23 
 sd/source/core/stlpool.cxx                                                  |   17 
 sd/source/ui/animations/CustomAnimationPane.cxx                             |    2 
 sd/source/ui/annotations/annotationmanager.cxx                              |    9 
 sd/source/ui/dlg/SpellDialogChildWindow.cxx                                 |    2 
 sd/source/ui/dlg/dlgass.cxx                                                 |    4 
 sd/source/ui/docshell/docshel4.cxx                                          |    1 
 sd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.cxx |    4 
 sd/source/ui/framework/configuration/ResourceId.cxx                         |   12 
 sd/source/ui/framework/factories/BasicViewFactory.cxx                       |    2 
 sd/source/ui/func/fupage.cxx                                                |   21 
 sd/source/ui/func/futempl.cxx                                               |    3 
 sd/source/ui/func/futext.cxx                                                |   15 
 sd/source/ui/slideshow/slideshow.src                                        |    6 
 sd/source/ui/slidesorter/controller/SlsAnimator.cxx                         |    2 
 sd/source/ui/table/tablefunction.cxx                                        |    5 
 sd/source/ui/toolpanel/controls/DocumentHelper.cxx                          |    2 
 sd/source/ui/unoidl/unoobj.cxx                                              |   12 
 sd/source/ui/view/ViewTabBar.cxx                                            |    2 
 svx/inc/svx/sdr/properties/pageproperties.hxx                               |    3 
 svx/inc/svx/sdr/properties/properties.hxx                                   |    4 
 svx/inc/svx/svdmodel.hxx                                                    |    1 
 svx/inc/svx/xdef.hxx                                                        |    2 
 svx/source/customshapes/EnhancedCustomShape2d.cxx                           |    2 
 svx/source/customshapes/EnhancedCustomShapeGeometry.cxx                     |  363 +++-------
 svx/source/form/fmshimp.cxx                                                 |    6 
 svx/source/gallery2/galbrws1.cxx                                            |   23 
 svx/source/gallery2/galbrws1.hxx                                            |    2 
 svx/source/gallery2/galctrl.cxx                                             |    2 
 svx/source/gallery2/gallery1.cxx                                            |   23 
 svx/source/gallery2/galtheme.cxx                                            |   15 
 svx/source/sdr/contact/objectcontact.cxx                                    |    2 
 svx/source/sdr/contact/viewcontact.cxx                                      |    4 
 svx/source/sdr/event/eventhandler.cxx                                       |    4 
 svx/source/sdr/overlay/overlayobjectlist.cxx                                |    6 
 svx/source/sdr/properties/defaultproperties.cxx                             |    4 
 svx/source/sdr/properties/pageproperties.cxx                                |    6 
 svx/source/sdr/properties/properties.cxx                                    |   30 
 svx/source/svdraw/svddrgmt.cxx                                              |    6 
 svx/source/svdraw/svdmodel.cxx                                              |   15 
 svx/source/svdraw/svdoashp.cxx                                              |    2 
 svx/source/svdraw/svdobj.cxx                                                |    6 
 svx/source/svdraw/svdogrp.cxx                                               |    1 
 svx/source/svdraw/svdotextpathdecomposition.cxx                             |    8 
 svx/source/svdraw/svdpntv.cxx                                               |    2 
 svx/source/table/svdotable.cxx                                              |    2 
 svx/source/tbxctrls/tbcontrl.cxx                                            |    2 
 svx/source/unodraw/UnoGraphicExporter.cxx                                   |    2 
 svx/source/xoutdev/xpool.cxx                                                |    4 
 sw/inc/doc.hxx                                                              |    9 
 sw/source/core/doc/docdraw.cxx                                              |   15 
 sw/source/core/doc/docnew.cxx                                               |    3 
 sw/source/ui/app/docshini.cxx                                               |    2 
 xmloff/source/transform/ActionMapTypesOOo.hxx                               |    1 
 xmloff/source/transform/AttrTransformerAction.hxx                           |    1 
 xmloff/source/transform/OOo2Oasis.cxx                                       |   24 
 xmloff/source/transform/TransformerBase.cxx                                 |   11 
 63 files changed, 454 insertions(+), 336 deletions(-)

New commits:
commit 73a395cdc7d3ad802182a470c799720307ed408e
Author: Thorsten Behrens <tbehrens at suse.com>
Date:   Tue Dec 6 09:36:57 2011 +0100

    Make merges of impress210 build.

diff --git a/sd/source/ui/annotations/annotationmanager.cxx b/sd/source/ui/annotations/annotationmanager.cxx
index 52e71c0..1eb18ed 100644
--- a/sd/source/ui/annotations/annotationmanager.cxx
+++ b/sd/source/ui/annotations/annotationmanager.cxx
@@ -153,7 +153,7 @@ static SfxDispatcher* getDispatcher( ViewShellBase& rBase )
 
 com::sun::star::util::DateTime getCurrentDateTime()
 {
-    DateTime aCurrentDate;
+    DateTime aCurrentDate( DateTime::SYSTEM );
     return com::sun::star::util::DateTime( 0, aCurrentDate.GetSec(), aCurrentDate.GetMin(), aCurrentDate.GetHour(), aCurrentDate.GetDay(), aCurrentDate.GetMonth(), aCurrentDate.GetYear() );
 }
 
diff --git a/svx/inc/galtheme.hrc b/svx/inc/galtheme.hrc
index 3567e0c..90b05ab 100755
--- a/svx/inc/galtheme.hrc
+++ b/svx/inc/galtheme.hrc
@@ -43,7 +43,7 @@
 #define RID_GALLERYSTR_THEME_MAPS           (RID_GALLERYSTR_THEME_START + 12)
 #define RID_GALLERYSTR_THEME_PEOPLE                     (RID_GALLERYSTR_THEME_START + 13)
 #define RID_GALLERYSTR_THEME_SURFACES                   (RID_GALLERYSTR_THEME_START + 14)
-// free
+#define RID_GALLERYSTR_THEME_HTMLBUTTONS                (RID_GALLERYSTR_THEME_START + 15)
 #define RID_GALLERYSTR_THEME_POWERPOINT                 (RID_GALLERYSTR_THEME_START + 16)
 #define RID_GALLERYSTR_THEME_RULERS         (RID_GALLERYSTR_THEME_START + 17)
 #define RID_GALLERYSTR_THEME_SOUNDS         (RID_GALLERYSTR_THEME_START + 18)
diff --git a/svx/inc/svx/gallery.hxx b/svx/inc/svx/gallery.hxx
index 05b78ad..c8ca021 100644
--- a/svx/inc/svx/gallery.hxx
+++ b/svx/inc/svx/gallery.hxx
@@ -64,7 +64,7 @@
 #define GALLERY_THEME_MAPS              12
 #define GALLERY_THEME_PEOPLE            13
 #define GALLERY_THEME_SURFACES      14
-// free
+#define GALLERY_THEME_HTMLBUTTONS   15
 #define GALLERY_THEME_POWERPOINT    16
 #define GALLERY_THEME_RULERS        17
 #define GALLERY_THEME_SOUNDS        18
diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx
index b891b4e..8165a57 100644
--- a/sw/inc/doc.hxx
+++ b/sw/inc/doc.hxx
@@ -591,7 +591,7 @@ private:
 
     sal_Bool    mbStartIdleTimer;               // idle timer mode start/stop
 
-    bool        mbSetDrawDefaults;             // set draw pool defaults for freshly created documents
+    bool        mbSetDrawDefaults;              // set draw pool defaults for freshly created documents
 
     static SwAutoCompleteWord *pACmpltWords;    // List of all words for AutoComplete
 
commit e57053c435c4ccd8375904b22e6e0a40f149b346
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 03:43:48 2011 +0100

    impress210: #i41995# using view contact to get bound rect for old path animation import
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1301475461 -7200
    # Node ID d87b5924442237c58b243d83012f655ce59c312d
    # Parent  c6dff567a9e0ee383071e53c64e3f5a06a186015
    
    impress210: #i41995# using view contact to get bound rect for old path animation import

diff --git a/sd/source/core/CustomAnimationEffect.cxx b/sd/source/core/CustomAnimationEffect.cxx
index 7deb7cf..47b47d1 100644
--- a/sd/source/core/CustomAnimationEffect.cxx
+++ b/sd/source/core/CustomAnimationEffect.cxx
@@ -69,6 +69,8 @@
 
 #include <cppuhelper/implbase1.hxx>
 
+#include <drawinglayer/geometry/viewinformation2d.hxx>
+#include <svx/sdr/contact/viewcontact.hxx>
 #include <svx/svdopath.hxx>
 #include <svx/svdpage.hxx>
 #include <svx/unoapi.hxx>
@@ -1735,8 +1737,19 @@ void CustomAnimationEffect::updatePathFromSdrPathObj( const SdrPathObj& rPathObj
     SdrObject* pObj = GetSdrObjectFromXShape( getTargetShape() );
     if( pObj )
     {
-        pObj->RecalcBoundRect(true);
-        const Rectangle aBoundRect( pObj->GetCurrentBoundRect() );
+        Rectangle aBoundRect(0,0,0,0);
+
+        const drawinglayer::primitive2d::Primitive2DSequence xPrimitives(pObj->GetViewContact().getViewIndependentPrimitive2DSequence());
+        const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+            const basegfx::B2DRange aRange(drawinglayer::primitive2d::getB2DRangeFromPrimitive2DSequence(xPrimitives, aViewInformation2D));
+
+        if(!aRange.isEmpty())
+        {
+            aBoundRect = Rectangle(
+                    (sal_Int32)floor(aRange.getMinX()), (sal_Int32)floor(aRange.getMinY()),
+                    (sal_Int32)ceil(aRange.getMaxX()), (sal_Int32)ceil(aRange.getMaxY()));
+        }
+
         const Point aCenter( aBoundRect.Center() );
 
         xPolyPoly.transform(basegfx::tools::createTranslateB2DHomMatrix(-aCenter.X(), -aCenter.Y()));
diff --git a/svx/inc/svx/svdobj.hxx b/svx/inc/svx/svdobj.hxx
index 2b69930..1bac35e 100644
--- a/svx/inc/svx/svdobj.hxx
+++ b/svx/inc/svx/svdobj.hxx
@@ -660,8 +660,7 @@ public:
     // a new method for accessing the last BoundRect.
     virtual const Rectangle& GetLastBoundRect() const;
 
-    // If bForced is true, the boundrect is also calculated when the model is locked
-    virtual void RecalcBoundRect(bool bForced = false);
+    virtual void RecalcBoundRect();
 
     void BroadcastObjectChange() const;
 
diff --git a/svx/inc/svx/svdogrp.hxx b/svx/inc/svx/svdogrp.hxx
index 5b96c38..7e48ec3 100644
--- a/svx/inc/svx/svdogrp.hxx
+++ b/svx/inc/svx/svdogrp.hxx
@@ -80,9 +80,6 @@ public:
     virtual const Rectangle& GetCurrentBoundRect() const;
     virtual const Rectangle& GetSnapRect() const;
 
-    // If bForced is true, the boundrect is also calculated when the model is locked
-    virtual void RecalcBoundRect(bool bForced = false);
-
     virtual SdrObjGroup* Clone() const;
     SdrObjGroup& operator=(const SdrObjGroup& rObj);
 
diff --git a/svx/inc/svx/svdovirt.hxx b/svx/inc/svx/svdovirt.hxx
index 5d05a68..95536ef 100644
--- a/svx/inc/svx/svdovirt.hxx
+++ b/svx/inc/svx/svdovirt.hxx
@@ -76,7 +76,7 @@ public:
 
     virtual const Rectangle& GetCurrentBoundRect() const;
     virtual const Rectangle& GetLastBoundRect() const;
-    virtual void RecalcBoundRect(bool bForced = false);
+    virtual void RecalcBoundRect();
     virtual void SetChanged();
     virtual SdrVirtObj* Clone() const;
     SdrVirtObj& operator=(const SdrVirtObj& rObj);
diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx
index d5a2fe3..d96080b 100644
--- a/svx/source/svdraw/svdobj.cxx
+++ b/svx/source/svdraw/svdobj.cxx
@@ -828,14 +828,14 @@ const Rectangle& SdrObject::GetLastBoundRect() const
     return aOutRect;
 }
 
-void SdrObject::RecalcBoundRect(bool bForced)
+void SdrObject::RecalcBoundRect()
 {
     // #i101680# suppress BoundRect calculations on import(s)
-    if(pModel && pModel->isLocked() && !bForced )
+    if(pModel && pModel->isLocked())
         return;
 
     // central new method which will calculate the BoundRect using primitive geometry
-    if(aOutRect.IsEmpty() || bForced)
+    if(aOutRect.IsEmpty())
     {
         const drawinglayer::primitive2d::Primitive2DSequence xPrimitives(GetViewContact().getViewIndependentPrimitive2DSequence());
 
diff --git a/svx/source/svdraw/svdogrp.cxx b/svx/source/svdraw/svdogrp.cxx
index ff5fec5..df0fe3f 100644
--- a/svx/source/svdraw/svdogrp.cxx
+++ b/svx/source/svdraw/svdogrp.cxx
@@ -267,18 +267,6 @@ const Rectangle& SdrObjGroup::GetCurrentBoundRect() const
     return aOutRect;
 }
 
-void SdrObjGroup::RecalcBoundRect(bool bForced)
-{
-    if( bForced )
-    {
-        sal_uIntPtr nAnz=pSub->GetObjCount();
-        for( sal_uIntPtr i=0; i<nAnz; i++)
-            pSub->GetObj(i)->RecalcBoundRect(true);
-    }
-
-    SdrObject::RecalcBoundRect(bForced);
-}
-
 const Rectangle& SdrObjGroup::GetSnapRect() const
 {
     // <aOutRect> has to contain the bounding rectangle
diff --git a/svx/source/svdraw/svdovirt.cxx b/svx/source/svdraw/svdovirt.cxx
index 10fa828..2aa7d0e 100644
--- a/svx/source/svdraw/svdovirt.cxx
+++ b/svx/source/svdraw/svdovirt.cxx
@@ -137,7 +137,7 @@ const Rectangle& SdrVirtObj::GetLastBoundRect() const
     return aOutRect;
 }
 
-void SdrVirtObj::RecalcBoundRect(bool)
+void SdrVirtObj::RecalcBoundRect()
 {
     aOutRect=rRefObj.GetCurrentBoundRect();
     aOutRect+=aAnchor;
diff --git a/sw/inc/dcontact.hxx b/sw/inc/dcontact.hxx
index 4c2bb43..ff317e5 100644
--- a/sw/inc/dcontact.hxx
+++ b/sw/inc/dcontact.hxx
@@ -293,7 +293,7 @@ class SwDrawVirtObj : public SdrVirtObj
         virtual void NbcSetAnchorPos(const Point& rPnt);
 
         // All overloaded methods which need to use the offset
-        virtual void RecalcBoundRect(bool bForce = false);
+        virtual void RecalcBoundRect();
         virtual ::basegfx::B2DPolyPolygon TakeXorPoly() const;
         virtual ::basegfx::B2DPolyPolygon TakeContour() const;
         virtual SdrHdl* GetHdl(sal_uInt32 nHdlNum) const;
diff --git a/sw/source/core/draw/dcontact.cxx b/sw/source/core/draw/dcontact.cxx
index 38ec0a0..998b167 100644
--- a/sw/source/core/draw/dcontact.cxx
+++ b/sw/source/core/draw/dcontact.cxx
@@ -2384,7 +2384,7 @@ void SwDrawVirtObj::SetBoundRectDirty()
     // do nothing to not lose model information in aOutRect
 }
 
-void SwDrawVirtObj::RecalcBoundRect(bool)
+void SwDrawVirtObj::RecalcBoundRect()
 {
     // OD 2004-04-05 #i26791# - switch order of calling <GetOffset()> and
     // <ReferencedObj().GetCurrentBoundRect()>, because <GetOffset()> calculates
diff --git a/sw/source/core/draw/dflyobj.cxx b/sw/source/core/draw/dflyobj.cxx
index 82629d8..6eac605 100644
--- a/sw/source/core/draw/dflyobj.cxx
+++ b/sw/source/core/draw/dflyobj.cxx
@@ -582,7 +582,7 @@ const Rectangle& SwVirtFlyDrawObj::GetLastBoundRect() const
 }
 
 
-void SwVirtFlyDrawObj::RecalcBoundRect(bool)
+void SwVirtFlyDrawObj::RecalcBoundRect()
 {
     SetRect();
 }
diff --git a/sw/source/core/inc/dflyobj.hxx b/sw/source/core/inc/dflyobj.hxx
index 1ac349d..9e3cf0d 100644
--- a/sw/source/core/inc/dflyobj.hxx
+++ b/sw/source/core/inc/dflyobj.hxx
@@ -102,7 +102,7 @@ public:
     //Wir nehemen die Groessenbehandlung vollstaendig selbst in die Hand.
     virtual const Rectangle& GetCurrentBoundRect() const;
     virtual const Rectangle& GetLastBoundRect() const;
-    virtual       void       RecalcBoundRect(bool bForce = false);
+    virtual       void       RecalcBoundRect();
     virtual       void       RecalcSnapRect();
     virtual const Rectangle& GetSnapRect()  const;
     virtual       void       SetSnapRect(const Rectangle& rRect);
commit f44ed1142d24c2e0adeff039c626f2074c3dab87
Author: Ocke Janssen [oj] <Ocke.Janssen at oracle.com>
Date:   Tue Dec 6 03:34:43 2011 +0100

    impress210: resolve name clash
    
    # HG changeset patch
    # User Ocke Janssen [oj] <Ocke.Janssen at oracle.com>
    # Date 1301308341 -7200
    # Node ID c6dff567a9e0ee383071e53c64e3f5a06a186015
    # Parent  de9c2cc66a6d7a2f16479b97b059b38090f317a0
    
    impress210: resolve name clash

diff --git a/sd/source/ui/unoidl/unoobj.cxx b/sd/source/ui/unoidl/unoobj.cxx
index 8341121..6bfa698 100644
--- a/sd/source/ui/unoidl/unoobj.cxx
+++ b/sd/source/ui/unoidl/unoobj.cxx
@@ -647,12 +647,12 @@ void SAL_CALL SdXShape::setPropertyValue( const ::rtl::OUString& aPropertyName,
                 case WID_ANIMPATH:
                 {
                     uno::Reference< drawing::XShape > xShape( aValue, uno::UNO_QUERY );
-                    SdrPathObj* pObj = xShape.is() ? dynamic_cast< SdrPathObj* >( GetSdrObjectFromXShape( xShape ) ) : NULL;
+                    SdrPathObj* pObj2 = xShape.is() ? dynamic_cast< SdrPathObj* >( GetSdrObjectFromXShape( xShape ) ) : NULL;
 
-                    if( pObj == NULL )
+                    if( pObj2 == NULL )
                         throw lang::IllegalArgumentException();
 
-                    EffectMigration::SetAnimationPath( mpShape, pObj );
+                    EffectMigration::SetAnimationPath( mpShape, pObj2 );
                     break;
                 }
                 case WID_IMAGEMAP:
commit e0247cb339336a108ce19e4e64b41d366bea344e
Author: Ocke Janssen [oj] <Ocke.Janssen at oracle.com>
Date:   Tue Dec 6 03:34:14 2011 +0100

    impress210: comment out not needed line
    
    # HG changeset patch
    # User Ocke Janssen [oj] <Ocke.Janssen at oracle.com>
    # Date 1301304590 -7200
    # Node ID de9c2cc66a6d7a2f16479b97b059b38090f317a0
    # Parent  ac21acda382420131e228c65959f33b6ef999475
    
    impress210: comment out not needed line

diff --git a/sd/source/core/EffectMigration.cxx b/sd/source/core/EffectMigration.cxx
index f90808d..071f302 100644
--- a/sd/source/core/EffectMigration.cxx
+++ b/sd/source/core/EffectMigration.cxx
@@ -1330,8 +1330,6 @@ void EffectMigration::SetAnimationPath( SvxShape* pShape, SdrPathObj* pPathObj )
 
         if( pObj )
         {
-            sd::MainSequencePtr pMainSequence = static_cast<SdPage*>(pObj->GetPage())->getMainSequence();
-
             const Reference< XShape > xShape( pShape );
             SdPage* pPage = dynamic_cast< SdPage* >( pPathObj ? pPathObj->GetPage() : 0 );
             if( pPage )
commit 36894acb4d7b7adafcab8007c2a8272c178b8cd4
Author: Thorsten Behrens <tbehrens at suse.com>
Date:   Tue Dec 6 03:31:15 2011 +0100

    Fix a warning.

diff --git a/svx/source/svdraw/svdovirt.cxx b/svx/source/svdraw/svdovirt.cxx
index b8155ea..10fa828 100644
--- a/svx/source/svdraw/svdovirt.cxx
+++ b/svx/source/svdraw/svdovirt.cxx
@@ -137,7 +137,7 @@ const Rectangle& SdrVirtObj::GetLastBoundRect() const
     return aOutRect;
 }
 
-void SdrVirtObj::RecalcBoundRect(bool bForced)
+void SdrVirtObj::RecalcBoundRect(bool)
 {
     aOutRect=rRefObj.GetCurrentBoundRect();
     aOutRect+=aAnchor;
commit cbaadd31d3ff53f18a7b8d2b0af947328dc81d91
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 03:28:41 2011 +0100

    impress210: #i117319# disconnect and reconnect to table style on change model in SdrTableObjImpl
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1299770834 -3600
    # Node ID 8177bdbe49941e3c2a8b62c7c5cf166dcadb7a54
    # Parent  6b1140cdac81a77836e5be80033f328a0956c94a
    
    impress210: #i117319# disconnect and reconnect to table style on change model in SdrTableObjImpl

diff --git a/svx/source/table/svdotable.cxx b/svx/source/table/svdotable.cxx
index d347720..f9b8269 100644
--- a/svx/source/table/svdotable.cxx
+++ b/svx/source/table/svdotable.cxx
@@ -330,6 +330,7 @@ void SdrTableObjImpl::operator=( const SdrTableObjImpl& rSource )
 void SdrTableObjImpl::SetModel(SdrModel* /*pOldModel*/, SdrModel* pNewModel)
 {
     // try to find new table style
+    disconnectTableStyle();
 
     Reference< XIndexAccess > xNewTableStyle;
     if( mxTableStyle.is() ) try
@@ -360,6 +361,7 @@ void SdrTableObjImpl::SetModel(SdrModel* /*pOldModel*/, SdrModel* pNewModel)
 
     mxTableStyle = xNewTableStyle;
 
+    connectTableStyle();
     update();
 }
 
commit b97726f4b66aa85db8cb2ab27b8413066930cf4f
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 03:27:48 2011 +0100

    impress210: #i117133# put new drawing layer fill and stroke styles in pool only for newly created documents
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1299763312 -3600
    # Node ID 6b1140cdac81a77836e5be80033f328a0956c94a
    # Parent  8edc33ef50a3b6ebbc4e88d574b6b1ba57b1dbaa
    
    impress210: #i117133# put new drawing layer fill and stroke styles in pool only for newly created documents

diff --git a/sc/source/core/data/documen9.cxx b/sc/source/core/data/documen9.cxx
index bb37434..b8cca4c 100644
--- a/sc/source/core/data/documen9.cxx
+++ b/sc/source/core/data/documen9.cxx
@@ -198,6 +198,7 @@ void ScDocument::UpdateDrawDefaults()
     {
         SfxItemPool& rDrawPool = pDrawLayer->GetItemPool();
         rDrawPool.SetPoolDefaultItem( SvxAutoKernItem( true, EE_CHAR_PAIRKERNING ) );
+        pDrawLayer->SetDrawingLayerPoolDefaults();
     }
 }
 
diff --git a/sd/source/ui/docshell/docshel4.cxx b/sd/source/ui/docshell/docshel4.cxx
index a63a728..a486f56 100644
--- a/sd/source/ui/docshell/docshel4.cxx
+++ b/sd/source/ui/docshell/docshel4.cxx
@@ -269,6 +269,7 @@ sal_Bool DrawDocShell::InitNew( const ::com::sun::star::uno::Reference< ::com::s
 
     if (bRet)
     {
+        mpDoc->SetDrawingLayerPoolDefaults();
         if( !mbSdDataObj )
             mpDoc->NewOrLoadCompleted(NEW_DOC);  // otherwise calling
                                                 // NewOrLoadCompleted(NEW_LOADED) in
diff --git a/svx/inc/svx/svdmodel.hxx b/svx/inc/svx/svdmodel.hxx
index 567c821..2b74913 100644
--- a/svx/inc/svx/svdmodel.hxx
+++ b/svx/inc/svx/svdmodel.hxx
@@ -693,6 +693,7 @@ public:
         also during the runtime of the Undo() and Redo() methods. */
     bool IsUndoEnabled() const;
 
+    void SetDrawingLayerPoolDefaults();
 };
 
 typedef tools::WeakReference< SdrModel > SdrModelWeakRef;
diff --git a/svx/source/svdraw/svdmodel.cxx b/svx/source/svdraw/svdmodel.cxx
index 20f19d5..b387f4c 100644
--- a/svx/source/svdraw/svdmodel.cxx
+++ b/svx/source/svdraw/svdmodel.cxx
@@ -74,6 +74,9 @@
 #include "svx/svdstr.hrc"   // object's name
 #include "svdoutlinercache.hxx"
 
+#include "svx/xflclit.hxx"
+#include "svx/xflhtit.hxx"
+#include "svx/xlnclit.hxx"
 
 #include <svl/asiancfg.hxx>
 #include "editeng/fontitem.hxx"
@@ -2054,6 +2057,18 @@ const ::com::sun::star::uno::Sequence< sal_Int8 >& SdrModel::getUnoTunnelImpleme
     return theSdrModelUnoTunnelImplementationId::get().getSeq();
 }
 
+void SdrModel::SetDrawingLayerPoolDefaults()
+{
+    const String aNullStr;
+    const Color aNullLineCol(COL_DEFAULT_SHAPE_STROKE);
+    const Color aNullFillCol(COL_DEFAULT_SHAPE_FILLING);
+    const XHatch aNullHatch(aNullLineCol);
+
+    pItemPool->SetPoolDefaultItem( XFillColorItem(aNullStr,aNullFillCol) );
+    pItemPool->SetPoolDefaultItem( XFillHatchItem(pItemPool,aNullHatch) );
+    pItemPool->SetPoolDefaultItem( XLineColorItem(aNullStr,aNullLineCol) );
+}
+
 ////////////////////////////////////////////////////////////////////////////////////////////////////
 
 TYPEINIT1(SdrHint,SfxHint);
diff --git a/svx/source/xoutdev/xpool.cxx b/svx/source/xoutdev/xpool.cxx
index 25a0447..3434083 100644
--- a/svx/source/xoutdev/xpool.cxx
+++ b/svx/source/xoutdev/xpool.cxx
@@ -51,8 +51,8 @@ XOutdevItemPool::XOutdevItemPool(
     const XubString aNullStr;
     const Bitmap aNullBmp;
     const basegfx::B2DPolyPolygon aNullPol;
-    const Color aNullLineCol(RGB_Color(COL_DEFAULT_SHAPE_STROKE));
-    const Color aNullFillCol(RGB_Color(COL_DEFAULT_SHAPE_FILLING));
+    const Color aNullLineCol(RGB_Color(COL_BLACK));
+    const Color aNullFillCol(RGB_COLORDATA( 153, 204, 255 ));
     const Color aNullShadowCol(RGB_Color(COL_LIGHTGRAY));
     const XDash aNullDash;
     const XGradient aNullGrad(aNullLineCol, RGB_Color(COL_WHITE));
diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx
index 7bd5e2d..b891b4e 100644
--- a/sw/inc/doc.hxx
+++ b/sw/inc/doc.hxx
@@ -591,6 +591,8 @@ private:
 
     sal_Bool    mbStartIdleTimer;               // idle timer mode start/stop
 
+    bool        mbSetDrawDefaults;             // set draw pool defaults for freshly created documents
+
     static SwAutoCompleteWord *pACmpltWords;    // List of all words for AutoComplete
 
     //---------------- private methods ------------------------------
@@ -2043,6 +2045,13 @@ public:
      */
     void dumpAsXml( xmlTextWriterPtr writer = NULL );
 #endif
+
+    /// must be called only in SwDocShell::InitNew, causes UpdateDrawDefaults to be called when drawing layer is created
+    void SetDrawDefaults();
+
+private:
+    /// method to set new graphics pool defaults, must only be called by SetDrawDefaults!
+    void UpdateDrawDefaults();
 };
 
 // This method is called in Dtor of SwDoc and deletes cache of ContourObjects.
diff --git a/sw/source/core/doc/docdraw.cxx b/sw/source/core/doc/docdraw.cxx
index 75c90ad..2d5671c 100644
--- a/sw/source/core/doc/docdraw.cxx
+++ b/sw/source/core/doc/docdraw.cxx
@@ -658,6 +658,8 @@ void SwDoc::InitDrawModel()
             pViewSh = (ViewShell*)pViewSh->GetNext();
         }while( pViewSh != pCurrentView );
     }
+
+    UpdateDrawDefaults();
 }
 
 /** method to notify drawing page view about the invisible layers */
@@ -1034,4 +1036,17 @@ namespace docfunc
     }
 }
 
+void SwDoc::SetDrawDefaults()
+{
+    mbSetDrawDefaults = true;
+    UpdateDrawDefaults();
+}
+
+void SwDoc::UpdateDrawDefaults()
+{
+    // drawing layer defaults that are set for new documents (if InitNew was called)
+    if ( pDrawModel && mbSetDrawDefaults )
+        pDrawModel->SetDrawingLayerPoolDefaults();
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/doc/docnew.cxx b/sw/source/core/doc/docnew.cxx
index 9587561..cba7694 100644
--- a/sw/source/core/doc/docnew.cxx
+++ b/sw/source/core/doc/docnew.cxx
@@ -279,7 +279,8 @@ SwDoc::SwDoc()
     mbLastBrowseMode( false ),
     n32DummyCompatabilityOptions1(0),
     n32DummyCompatabilityOptions2(0),
-    mbStartIdleTimer(sal_False)
+    mbStartIdleTimer(sal_False),
+    mbSetDrawDefaults(false)
 {
     RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722",  "SwDoc::SwDoc" );
 
diff --git a/sw/source/ui/app/docshini.cxx b/sw/source/ui/app/docshini.cxx
index 98eb848..8321abd 100644
--- a/sw/source/ui/app/docshini.cxx
+++ b/sw/source/ui/app/docshini.cxx
@@ -339,6 +339,8 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
     //#i16874# AutoKerning as default for new documents
     pDoc->SetDefault( SvxAutoKernItem( sal_True, RES_CHRATR_AUTOKERN ) );
 
+    pDoc->SetDrawDefaults();
+
     // #i42080# - Due to the several calls of method <SetDefault(..)>
     // at the document instance, the document is modified. Thus, reset this
     // status here. Note: In method <SubInitNew()> this is also done.
commit f0a1b95f99bed6d184e3020b5c7e30bc6c1597f6
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 02:48:42 2011 +0100

    impress210: #i41995# fixed import of path animation from sxi files
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1299691949 -3600
    # Node ID 8edc33ef50a3b6ebbc4e88d574b6b1ba57b1dbaa
    # Parent  0b9b11216b0d3401f8824542dd5f2794eb141035
    
    impress210: #i41995# fixed import of path animation from sxi files

diff --git a/sd/inc/EffectMigration.hxx b/sd/inc/EffectMigration.hxx
index 03fd553..59e19da 100644
--- a/sd/inc/EffectMigration.hxx
+++ b/sd/inc/EffectMigration.hxx
@@ -37,6 +37,7 @@ class SdPage;
 class SvxShape;
 class SdAnimationInfo;
 class SdrObject;
+class SdrPathObj;
 
 namespace sd {
 
@@ -77,6 +78,8 @@ public:
     static void UpdateSoundEffect( SvxShape* pShape, SdAnimationInfo* pInfo );
     static ::rtl::OUString GetSoundFile( SvxShape* pShape );
     static sal_Bool GetSoundOn( SvxShape* pShape );
+
+    static void SetAnimationPath( SvxShape* pShape, SdrPathObj* pPathObj );
 };
 
 } // end of namespace sd
diff --git a/sd/source/core/CustomAnimationEffect.cxx b/sd/source/core/CustomAnimationEffect.cxx
index 054fcd0..7deb7cf 100644
--- a/sd/source/core/CustomAnimationEffect.cxx
+++ b/sd/source/core/CustomAnimationEffect.cxx
@@ -1735,6 +1735,7 @@ void CustomAnimationEffect::updatePathFromSdrPathObj( const SdrPathObj& rPathObj
     SdrObject* pObj = GetSdrObjectFromXShape( getTargetShape() );
     if( pObj )
     {
+        pObj->RecalcBoundRect(true);
         const Rectangle aBoundRect( pObj->GetCurrentBoundRect() );
         const Point aCenter( aBoundRect.Center() );
 
diff --git a/sd/source/core/EffectMigration.cxx b/sd/source/core/EffectMigration.cxx
index 9d03a10..f90808d 100644
--- a/sd/source/core/EffectMigration.cxx
+++ b/sd/source/core/EffectMigration.cxx
@@ -32,6 +32,7 @@
 #include <com/sun/star/presentation/ParagraphTarget.hpp>
 #include <svx/unoshape.hxx>
 #include <svx/svdotext.hxx>
+#include <svx/svdopath.hxx>
 #include "drawdoc.hxx"
 #include "sdpage.hxx"
 #include <CustomAnimationPreset.hxx>
@@ -1319,4 +1320,28 @@ sal_Bool EffectMigration::GetSoundOn( SvxShape* pShape )
     return GetSoundFile( pShape ).getLength() != 0;
 }
 
+// --------------------------------------------------------------------
+
+void EffectMigration::SetAnimationPath( SvxShape* pShape, SdrPathObj* pPathObj )
+{
+    if( pShape && pPathObj )
+    {
+        SdrObject* pObj = pShape->GetSdrObject();
+
+        if( pObj )
+        {
+            sd::MainSequencePtr pMainSequence = static_cast<SdPage*>(pObj->GetPage())->getMainSequence();
+
+            const Reference< XShape > xShape( pShape );
+            SdPage* pPage = dynamic_cast< SdPage* >( pPathObj ? pPathObj->GetPage() : 0 );
+            if( pPage )
+            {
+                boost::shared_ptr< sd::MainSequence > pMainSequence( pPage->getMainSequence() );
+                if( pMainSequence.get() )
+                    CustomAnimationEffectPtr pCreated( pMainSequence->append( *pPathObj, makeAny( xShape ), -1.0 ) );
+            }
+        }
+    }
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/unoidl/unoobj.cxx b/sd/source/ui/unoidl/unoobj.cxx
index 8f1ab65..8341121 100644
--- a/sd/source/ui/unoidl/unoobj.cxx
+++ b/sd/source/ui/unoidl/unoobj.cxx
@@ -644,7 +644,17 @@ void SAL_CALL SdXShape::setPropertyValue( const ::rtl::OUString& aPropertyName,
                         }
                     }
                     break;
-// TODO: WID_ANIMPATH
+                case WID_ANIMPATH:
+                {
+                    uno::Reference< drawing::XShape > xShape( aValue, uno::UNO_QUERY );
+                    SdrPathObj* pObj = xShape.is() ? dynamic_cast< SdrPathObj* >( GetSdrObjectFromXShape( xShape ) ) : NULL;
+
+                    if( pObj == NULL )
+                        throw lang::IllegalArgumentException();
+
+                    EffectMigration::SetAnimationPath( mpShape, pObj );
+                    break;
+                }
                 case WID_IMAGEMAP:
                 {
                     SdDrawDocument* pDoc = mpModel?mpModel->GetDoc():NULL;
diff --git a/svx/inc/svx/svdobj.hxx b/svx/inc/svx/svdobj.hxx
index 1bac35e..2b69930 100644
--- a/svx/inc/svx/svdobj.hxx
+++ b/svx/inc/svx/svdobj.hxx
@@ -660,7 +660,8 @@ public:
     // a new method for accessing the last BoundRect.
     virtual const Rectangle& GetLastBoundRect() const;
 
-    virtual void RecalcBoundRect();
+    // If bForced is true, the boundrect is also calculated when the model is locked
+    virtual void RecalcBoundRect(bool bForced = false);
 
     void BroadcastObjectChange() const;
 
diff --git a/svx/inc/svx/svdogrp.hxx b/svx/inc/svx/svdogrp.hxx
index 7e48ec3..5b96c38 100644
--- a/svx/inc/svx/svdogrp.hxx
+++ b/svx/inc/svx/svdogrp.hxx
@@ -80,6 +80,9 @@ public:
     virtual const Rectangle& GetCurrentBoundRect() const;
     virtual const Rectangle& GetSnapRect() const;
 
+    // If bForced is true, the boundrect is also calculated when the model is locked
+    virtual void RecalcBoundRect(bool bForced = false);
+
     virtual SdrObjGroup* Clone() const;
     SdrObjGroup& operator=(const SdrObjGroup& rObj);
 
diff --git a/svx/inc/svx/svdovirt.hxx b/svx/inc/svx/svdovirt.hxx
index 95536ef..5d05a68 100644
--- a/svx/inc/svx/svdovirt.hxx
+++ b/svx/inc/svx/svdovirt.hxx
@@ -76,7 +76,7 @@ public:
 
     virtual const Rectangle& GetCurrentBoundRect() const;
     virtual const Rectangle& GetLastBoundRect() const;
-    virtual void RecalcBoundRect();
+    virtual void RecalcBoundRect(bool bForced = false);
     virtual void SetChanged();
     virtual SdrVirtObj* Clone() const;
     SdrVirtObj& operator=(const SdrVirtObj& rObj);
diff --git a/svx/source/svdraw/svdobj.cxx b/svx/source/svdraw/svdobj.cxx
index 5a11ca6..d5a2fe3 100644
--- a/svx/source/svdraw/svdobj.cxx
+++ b/svx/source/svdraw/svdobj.cxx
@@ -828,14 +828,14 @@ const Rectangle& SdrObject::GetLastBoundRect() const
     return aOutRect;
 }
 
-void SdrObject::RecalcBoundRect()
+void SdrObject::RecalcBoundRect(bool bForced)
 {
     // #i101680# suppress BoundRect calculations on import(s)
-    if(pModel && pModel->isLocked() )
+    if(pModel && pModel->isLocked() && !bForced )
         return;
 
     // central new method which will calculate the BoundRect using primitive geometry
-    if(aOutRect.IsEmpty())
+    if(aOutRect.IsEmpty() || bForced)
     {
         const drawinglayer::primitive2d::Primitive2DSequence xPrimitives(GetViewContact().getViewIndependentPrimitive2DSequence());
 
diff --git a/svx/source/svdraw/svdogrp.cxx b/svx/source/svdraw/svdogrp.cxx
index 1e52062..ff5fec5 100644
--- a/svx/source/svdraw/svdogrp.cxx
+++ b/svx/source/svdraw/svdogrp.cxx
@@ -267,6 +267,17 @@ const Rectangle& SdrObjGroup::GetCurrentBoundRect() const
     return aOutRect;
 }
 
+void SdrObjGroup::RecalcBoundRect(bool bForced)
+{
+    if( bForced )
+    {
+        sal_uIntPtr nAnz=pSub->GetObjCount();
+        for( sal_uIntPtr i=0; i<nAnz; i++)
+            pSub->GetObj(i)->RecalcBoundRect(true);
+    }
+
+    SdrObject::RecalcBoundRect(bForced);
+}
 
 const Rectangle& SdrObjGroup::GetSnapRect() const
 {
diff --git a/svx/source/svdraw/svdovirt.cxx b/svx/source/svdraw/svdovirt.cxx
index 2aa7d0e..b8155ea 100644
--- a/svx/source/svdraw/svdovirt.cxx
+++ b/svx/source/svdraw/svdovirt.cxx
@@ -137,7 +137,7 @@ const Rectangle& SdrVirtObj::GetLastBoundRect() const
     return aOutRect;
 }
 
-void SdrVirtObj::RecalcBoundRect()
+void SdrVirtObj::RecalcBoundRect(bool bForced)
 {
     aOutRect=rRefObj.GetCurrentBoundRect();
     aOutRect+=aAnchor;
diff --git a/sw/inc/dcontact.hxx b/sw/inc/dcontact.hxx
index ff317e5..4c2bb43 100644
--- a/sw/inc/dcontact.hxx
+++ b/sw/inc/dcontact.hxx
@@ -293,7 +293,7 @@ class SwDrawVirtObj : public SdrVirtObj
         virtual void NbcSetAnchorPos(const Point& rPnt);
 
         // All overloaded methods which need to use the offset
-        virtual void RecalcBoundRect();
+        virtual void RecalcBoundRect(bool bForce = false);
         virtual ::basegfx::B2DPolyPolygon TakeXorPoly() const;
         virtual ::basegfx::B2DPolyPolygon TakeContour() const;
         virtual SdrHdl* GetHdl(sal_uInt32 nHdlNum) const;
diff --git a/sw/source/core/draw/dcontact.cxx b/sw/source/core/draw/dcontact.cxx
index 998b167..38ec0a0 100644
--- a/sw/source/core/draw/dcontact.cxx
+++ b/sw/source/core/draw/dcontact.cxx
@@ -2384,7 +2384,7 @@ void SwDrawVirtObj::SetBoundRectDirty()
     // do nothing to not lose model information in aOutRect
 }
 
-void SwDrawVirtObj::RecalcBoundRect()
+void SwDrawVirtObj::RecalcBoundRect(bool)
 {
     // OD 2004-04-05 #i26791# - switch order of calling <GetOffset()> and
     // <ReferencedObj().GetCurrentBoundRect()>, because <GetOffset()> calculates
diff --git a/sw/source/core/draw/dflyobj.cxx b/sw/source/core/draw/dflyobj.cxx
index 6eac605..82629d8 100644
--- a/sw/source/core/draw/dflyobj.cxx
+++ b/sw/source/core/draw/dflyobj.cxx
@@ -582,7 +582,7 @@ const Rectangle& SwVirtFlyDrawObj::GetLastBoundRect() const
 }
 
 
-void SwVirtFlyDrawObj::RecalcBoundRect()
+void SwVirtFlyDrawObj::RecalcBoundRect(bool)
 {
     SetRect();
 }
diff --git a/sw/source/core/inc/dflyobj.hxx b/sw/source/core/inc/dflyobj.hxx
index 9e3cf0d..1ac349d 100644
--- a/sw/source/core/inc/dflyobj.hxx
+++ b/sw/source/core/inc/dflyobj.hxx
@@ -102,7 +102,7 @@ public:
     //Wir nehemen die Groessenbehandlung vollstaendig selbst in die Hand.
     virtual const Rectangle& GetCurrentBoundRect() const;
     virtual const Rectangle& GetLastBoundRect() const;
-    virtual       void       RecalcBoundRect();
+    virtual       void       RecalcBoundRect(bool bForce = false);
     virtual       void       RecalcSnapRect();
     virtual const Rectangle& GetSnapRect()  const;
     virtual       void       SetSnapRect(const Rectangle& rRect);
commit 15aeab6cbd0b50b1d78646f03588237b8473285c
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 02:35:07 2011 +0100

    impress210: #i41995# fixed distinct shape and page id
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1299691906 -3600
    # Node ID 0b9b11216b0d3401f8824542dd5f2794eb141035
    # Parent  69091b8fc77c9951fcdc52b800a37a92dc70bf84
    
    impress210: #i41995# fixed distinct shape and page id

diff --git a/xmloff/source/transform/ActionMapTypesOOo.hxx b/xmloff/source/transform/ActionMapTypesOOo.hxx
index 18c92eb..a036d6c 100644
--- a/xmloff/source/transform/ActionMapTypesOOo.hxx
+++ b/xmloff/source/transform/ActionMapTypesOOo.hxx
@@ -87,6 +87,7 @@ enum ActionMapTypesOOo
     OOO_SOURCE_SERVICE_ACTIONS,
     OOO_DRAW_AREA_POLYGON_ACTIONS,
     OOO_SCRIPT_ACTIONS,
+    OOO_ANIMATION_ACTIONS,
     MAX_OOO_ACTIONS
 };
 
diff --git a/xmloff/source/transform/AttrTransformerAction.hxx b/xmloff/source/transform/AttrTransformerAction.hxx
index 8dc28f2..e10e7f5 100644
--- a/xmloff/source/transform/AttrTransformerAction.hxx
+++ b/xmloff/source/transform/AttrTransformerAction.hxx
@@ -135,6 +135,7 @@ enum XMLAttrTransformerAction
     XML_ATACTION_GAMMA_OOO,              // converts double value to percentage
     XML_ATACTION_DECODE_ID,              // converts strings with non numeric characters to only numeric character ids
     XML_ATACTION_OPACITY_FIX,            // converts transparency to opacity and back
+    XML_ATACTION_SHAPEID,                // convert shape id
     XML_ATACTION_USER_DEFINED=0x40000000,// user defined actions start here
     XML_ATACTION_END=XML_TACTION_END
 };
diff --git a/xmloff/source/transform/OOo2Oasis.cxx b/xmloff/source/transform/OOo2Oasis.cxx
index d343bdb..264b062 100644
--- a/xmloff/source/transform/OOo2Oasis.cxx
+++ b/xmloff/source/transform/OOo2Oasis.cxx
@@ -567,6 +567,14 @@ static XMLTransformerActionInit aActionTable[] =
     ENTRY1( TABLE, SOURCE_SERVICE, XML_ETACTION_PROC_ATTRS,
             OOO_SOURCE_SERVICE_ACTIONS ),
 
+    // fix id strings in old animation elements
+    ENTRY1( PRESENTATION, DIM, XML_ETACTION_PROC_ATTRS, OOO_ANIMATION_ACTIONS ),
+    ENTRY1( PRESENTATION, PLAY, XML_ETACTION_PROC_ATTRS, OOO_ANIMATION_ACTIONS ),
+    ENTRY1( PRESENTATION, SHOW_TEXT, XML_ETACTION_PROC_ATTRS, OOO_ANIMATION_ACTIONS ),
+    ENTRY1( PRESENTATION, SHOW_SHAPE, XML_ETACTION_PROC_ATTRS, OOO_ANIMATION_ACTIONS ),
+    ENTRY1( PRESENTATION, HIDE_TEXT, XML_ETACTION_PROC_ATTRS, OOO_ANIMATION_ACTIONS ),
+    ENTRY1( PRESENTATION, HIDE_SHAPE, XML_ETACTION_PROC_ATTRS, OOO_ANIMATION_ACTIONS ),
+
     ENTRY0( OFFICE, TOKEN_INVALID, XML_ETACTION_EOT )
 };
 
@@ -749,6 +757,9 @@ static XMLTransformerActionInit aShapeActionTable[] =
     ENTRY2( CHART, LEGEND_POSITION, XML_ATACTION_RENAME_ATTRIBUTE,
             RENAME_ENTRY( XML_LEFT, XML_START ),
             RENAME_ENTRY( XML_RIGHT, XML_END )),
+    ENTRY0( DRAW, ID, XML_ATACTION_SHAPEID ),
+    ENTRY0( DRAW, START_SHAPE, XML_ATACTION_SHAPEID ),
+    ENTRY0( DRAW, END_SHAPE, XML_ATACTION_SHAPEID ),
     ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
 };
 
@@ -772,6 +783,7 @@ static XMLTransformerActionInit aConnectorActionTable[] =
     ENTRY1Q( FORM, ID, XML_ATACTION_RENAME,
                     XML_NAMESPACE_DRAW, XML_CONTROL ),
     ENTRY1( XLINK, HREF, XML_ATACTION_URI_OOO, sal_True ),
+    ENTRY0( DRAW, ID, XML_ATACTION_SHAPEID ),
     ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
 };
 
@@ -1029,6 +1041,14 @@ static XMLTransformerActionInit aSourceServiceActionTable[] =
     ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
 };
 
+// OOO_ANIMATION_ACTIONS
+static XMLTransformerActionInit aAnimationsActionTable[] =
+{
+    ENTRY0( DRAW, SHAPE_ID, XML_ATACTION_SHAPEID ),
+    ENTRY0( PRESENTATION, PATH_ID, XML_ATACTION_SHAPEID ),
+    ENTRY0( OFFICE, TOKEN_INVALID, XML_ATACTION_EOT )
+};
+
 // OOO_DRAW_AREA_POLYGON_ACTIONS (to be added to OOO_SHAPE_ACTIONS)
 static XMLTransformerActionInit aDrawAreaPolygonActionTable[] =
 {
@@ -1767,6 +1787,10 @@ XMLTransformerActions *OOo2OasisTransformer::GetUserDefinedActions(
                     m_aActions[OOO_SCRIPT_ACTIONS] =
                         new XMLTransformerActions( aScriptActionTable );
                     break;
+                case OOO_ANIMATION_ACTIONS:
+                    m_aActions[OOO_ANIMATION_ACTIONS] =
+                        new XMLTransformerActions( aAnimationsActionTable );
+                    break;
             }
         }
         pActions = m_aActions[n];
diff --git a/xmloff/source/transform/TransformerBase.cxx b/xmloff/source/transform/TransformerBase.cxx
index c7253e7..cc85973 100644
--- a/xmloff/source/transform/TransformerBase.cxx
+++ b/xmloff/source/transform/TransformerBase.cxx
@@ -239,6 +239,9 @@ void SAL_CALL XMLTransformerBase::startElement( const OUString& rName,
 {
     SvXMLNamespaceMap *pRewindMap = 0;
 
+    bool bRect = rName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "presentation:show-shape" ) );
+    (void)bRect;
+
     // Process namespace attributes. This must happen before creating the
     // context, because namespace decaration apply to the element name itself.
     XMLMutableAttributeList *pMutableAttrList = 0;
@@ -882,6 +885,14 @@ XMLMutableAttributeList *XMLTransformerBase::ProcessAttrList(
                         bRename = sal_True;
                     }
                     break;
+                case XML_ATACTION_SHAPEID:
+                {
+                    OUString sNewValue( RTL_CONSTASCII_USTRINGPARAM( "shape" ) );
+                    sNewValue += rAttrValue;
+                    pMutableAttrList->SetValueByIndex( i, sNewValue );
+                    break;
+                }
+
                 default:
                     OSL_ENSURE( !this, "unknown action" );
                     break;
commit b7540a2bfe424ff761f6bfd1e7264349c83e3f59
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 02:24:51 2011 +0100

    impress210: #i50899# clean up fill attributes if fill style changes
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1299270680 -3600
    # Node ID 69091b8fc77c9951fcdc52b800a37a92dc70bf84
    # Parent  20c5c9384888da33596d864251881e6e46bdd339
    
    impress210: #i50899# clean up fill attributes if fill style changes

diff --git a/sd/source/ui/func/fupage.cxx b/sd/source/ui/func/fupage.cxx
index 4d07bef..5c7e0df 100644
--- a/sd/source/ui/func/fupage.cxx
+++ b/sd/source/ui/func/fupage.cxx
@@ -52,6 +52,7 @@
 #include <svl/itempool.hxx>
 #include <editeng/ulspitem.hxx>
 #include <editeng/lrspitem.hxx>
+#include <svx/sdr/properties/properties.hxx>
 
 #include "glob.hrc"
 #include <editeng/shaditem.hxx>
@@ -386,7 +387,11 @@ const SfxItemSet* FuPage::ExecuteDialog( Window* pParent )
                     if(!mpPage->IsMasterPage())
                     {
                         // on normal pages, switch off fill attribute usage
-                        mpPage->getSdrPageProperties().PutItem(XFillStyleItem(XFILL_NONE));
+                        SdrPageProperties& rPageProperties = mpPage->getSdrPageProperties();
+                        rPageProperties.ClearItem( XATTR_FILLBITMAP );
+                        rPageProperties.ClearItem( XATTR_FILLGRADIENT );
+                        rPageProperties.ClearItem( XATTR_FILLHATCH );
+                        rPageProperties.PutItem(XFillStyleItem(XFILL_NONE));
                     }
                 }
             }
@@ -402,6 +407,7 @@ const SfxItemSet* FuPage::ExecuteDialog( Window* pParent )
                 StyleSheetUndoAction* pAction = new StyleSheetUndoAction(mpDoc, (SfxStyleSheet*)pStyleSheet, &(*pTempSet.get()));
                 mpDocSh->GetUndoManager()->AddUndoAction(pAction);
                 pStyleSheet->GetItemSet().Put( *(pTempSet.get()) );
+                sdr::properties::CleanupFillProperties( pStyleSheet->GetItemSet() );
                 pStyleSheet->Broadcast(SfxSimpleHint(SFX_HINT_DATACHANGED));
             }
             else if( bSetToAllPages )
@@ -423,6 +429,7 @@ const SfxItemSet* FuPage::ExecuteDialog( Window* pParent )
                         new StyleSheetUndoAction(mpDoc, (SfxStyleSheet*)pStyle, &(*pTempSet.get()));
                     pUndoGroup->AddAction(pAction);
                     pStyle->GetItemSet().Put( *(pTempSet.get()) );
+                    sdr::properties::CleanupFillProperties( pStyleSheet->GetItemSet() );
                     pStyle->Broadcast(SfxSimpleHint(SFX_HINT_DATACHANGED));
                 }
 
@@ -437,7 +444,13 @@ const SfxItemSet* FuPage::ExecuteDialog( Window* pParent )
                     {
                         SdBackgroundObjUndoAction *pBackgroundObjUndoAction = new SdBackgroundObjUndoAction(*mpDoc, *pPage, rFillAttributes);
                         pUndoGroup->AddAction(pBackgroundObjUndoAction);
-                        pPage->getSdrPageProperties().PutItem(XFillStyleItem(XFILL_NONE));
+
+                        SdrPageProperties& rPageProperties = pPage->getSdrPageProperties();
+                        rPageProperties.ClearItem( XATTR_FILLBITMAP );
+                        rPageProperties.ClearItem( XATTR_FILLGRADIENT );
+                        rPageProperties.ClearItem( XATTR_FILLHATCH );
+                        rPageProperties.PutItem(XFillStyleItem(XFILL_NONE));
+
                         pPage->ActionChanged();
                     }
                 }
@@ -599,8 +612,10 @@ void FuPage::ApplyItemSet( const SfxItemSet* pArgs )
             delete mpBackgroundObjUndoAction;
             mpBackgroundObjUndoAction = new SdBackgroundObjUndoAction(
                 *mpDoc, *mpPage, mpPage->getSdrPageProperties().GetItemSet());
+            SfxItemSet aSet( *pArgs );
+            sdr::properties::CleanupFillProperties(aSet);
             mpPage->getSdrPageProperties().ClearItem();
-            mpPage->getSdrPageProperties().PutItemSet(*pArgs);
+            mpPage->getSdrPageProperties().PutItemSet(aSet);
         }
     }
 
diff --git a/sd/source/ui/func/futempl.cxx b/sd/source/ui/func/futempl.cxx
index 64a8791..b67c710 100644
--- a/sd/source/ui/func/futempl.cxx
+++ b/sd/source/ui/func/futempl.cxx
@@ -48,6 +48,7 @@
 #include <editeng/lrspitem.hxx>
 #include <svx/svdopage.hxx>
 #include <svx/svditer.hxx>
+#include <svx/sdr/properties/properties.hxx>
 
 #include <sfx2/viewfrm.hxx>
 #include <svx/xlndsit.hxx>
@@ -471,6 +472,8 @@ void FuTemplate::DoExecute( SfxRequest& rReq )
 
                         SfxItemSet& rAttr = pStyleSheet->GetItemSet();
 
+                        sdr::properties::CleanupFillProperties( rAttr );
+
                         // check for unique names of named items for xml
                         if( rAttr.GetItemState( XATTR_FILLBITMAP ) == SFX_ITEM_SET )
                         {
diff --git a/svx/inc/svx/sdr/properties/pageproperties.hxx b/svx/inc/svx/sdr/properties/pageproperties.hxx
index 592bc38..0e87ccc 100644
--- a/svx/inc/svx/sdr/properties/pageproperties.hxx
+++ b/svx/inc/svx/sdr/properties/pageproperties.hxx
@@ -46,6 +46,9 @@ namespace sdr
             // Do the ItemChange, may do special handling
             virtual void ItemChange(const sal_uInt16 nWhich, const SfxPoolItem* pNewItem = 0);
 
+            // Called after ItemChange() is done for all items.
+            virtual void PostItemChange(const sal_uInt16 nWhich);
+
         public:
             // basic constructor
             PageProperties(SdrObject& rObj);
diff --git a/svx/inc/svx/sdr/properties/properties.hxx b/svx/inc/svx/sdr/properties/properties.hxx
index eb4cb69..a6a202f 100644
--- a/svx/inc/svx/sdr/properties/properties.hxx
+++ b/svx/inc/svx/sdr/properties/properties.hxx
@@ -188,6 +188,10 @@ namespace sdr
             // default implementation returns 0 (zero)
             virtual sal_uInt32 getVersion() const;
         };
+
+        // checks the FillStyle item and removes unneeded Gradient, FillBitmap and Hatch items
+        void SVX_DLLPUBLIC CleanupFillProperties( SfxItemSet& rItemSet );
+
     } // end of namespace properties
 } // end of namespace sdr
 
diff --git a/svx/source/sdr/properties/defaultproperties.cxx b/svx/source/sdr/properties/defaultproperties.cxx
index c03bf92..aa6b10c 100644
--- a/svx/source/sdr/properties/defaultproperties.cxx
+++ b/svx/source/sdr/properties/defaultproperties.cxx
@@ -203,8 +203,10 @@ namespace sdr
         {
         }
 
-        void DefaultProperties::PostItemChange(const sal_uInt16 /*nWhich*/)
+        void DefaultProperties::PostItemChange(const sal_uInt16 nWhich )
         {
+            if( (nWhich == XATTR_FILLSTYLE) && (mpItemSet != NULL) )
+                CleanupFillProperties(*mpItemSet);
         }
 
         void DefaultProperties::SetStyleSheet(SfxStyleSheet* /*pNewStyleSheet*/, sal_Bool /*bDontRemoveHardAttr*/)
diff --git a/svx/source/sdr/properties/pageproperties.cxx b/svx/source/sdr/properties/pageproperties.cxx
index 7db4cc3..7ecaab9 100644
--- a/svx/source/sdr/properties/pageproperties.cxx
+++ b/svx/source/sdr/properties/pageproperties.cxx
@@ -88,6 +88,12 @@ namespace sdr
             return 0L;
         }
 
+        void PageProperties::PostItemChange(const sal_uInt16 nWhich )
+        {
+            if( (nWhich == XATTR_FILLSTYLE) && (mpEmptyItemSet != NULL) )
+                CleanupFillProperties(*mpEmptyItemSet);
+        }
+
         void PageProperties::ClearObjectItem(const sal_uInt16 /*nWhich*/)
         {
             // simply ignore item clearing on page objects
diff --git a/svx/source/sdr/properties/properties.cxx b/svx/source/sdr/properties/properties.cxx
index 0284402..ce3b999 100644
--- a/svx/source/sdr/properties/properties.cxx
+++ b/svx/source/sdr/properties/properties.cxx
@@ -31,6 +31,7 @@
 #include <svl/itemset.hxx>
 #include <svx/svdogrp.hxx>
 #include <svx/svditer.hxx>
+#include <svx/xfillit0.hxx>
 
 //////////////////////////////////////////////////////////////////////////////
 
@@ -181,6 +182,35 @@ namespace sdr
         {
             return 0;
         }
+
+        void CleanupFillProperties( SfxItemSet& rItemSet )
+        {
+            const bool bFillBitmap = rItemSet.GetItemState(XATTR_FILLBITMAP, sal_False) == SFX_ITEM_SET;
+            const bool bFillGradient = rItemSet.GetItemState(XATTR_FILLGRADIENT, sal_False) == SFX_ITEM_SET;
+            const bool bFillHatch = rItemSet.GetItemState(XATTR_FILLHATCH, sal_False) == SFX_ITEM_SET;
+            if( bFillBitmap || bFillGradient || bFillHatch )
+            {
+                const XFillStyleItem* pFillStyleItem = dynamic_cast< const XFillStyleItem* >( rItemSet.GetItem(XATTR_FILLSTYLE) );
+                if( pFillStyleItem )
+                {
+                    if( bFillBitmap && (pFillStyleItem->GetValue() != XFILL_BITMAP) )
+                    {
+                        rItemSet.ClearItem( XATTR_FILLBITMAP );
+                    }
+
+                    if( bFillGradient && (pFillStyleItem->GetValue() != XFILL_GRADIENT) )
+                    {
+                        rItemSet.ClearItem( XATTR_FILLGRADIENT );
+                    }
+
+                    if( bFillHatch && (pFillStyleItem->GetValue() != XFILL_HATCH) )
+                    {
+                        rItemSet.ClearItem( XATTR_FILLHATCH );
+                    }
+                }
+            }
+        }
+
     } // end of namespace properties
 } // end of namespace sdr
 
commit 416435e1dcbc175787a5a9e03142f7f766b6a648
Author: Ocke Janssen [oj] <Ocke.Janssen at oracle.com>
Date:   Tue Dec 6 02:04:18 2011 +0100

    impress210: check readonly
    
    # HG changeset patch
    # User Ocke Janssen [oj] <Ocke.Janssen at oracle.com>
    # Date 1299656309 -3600
    # Node ID de61efa884c2a12ae9e88e9919c297b1b9676443
    # Parent  c65bb4f46738b43bd506f1a75b634c6bd6fb6bfe
    
    impress210: chekc readonly

diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx
index 321e1ee..4286ff6 100644
--- a/sd/source/ui/func/futext.cxx
+++ b/sd/source/ui/func/futext.cxx
@@ -638,9 +638,24 @@ sal_Bool FuText::MouseButtonUp(const MouseEvent& rMEvt)
     mpViewShell->GetViewFrame()->GetBindings().Invalidate( SidArray );
 
     Point aPnt( mpWindow->PixelToLogic( rMEvt.GetPosPixel() ) );
+    sal_Bool bOldReadOnly = sal_False;
+    if ( mpView && mpDocSh->IsReadOnly() )
+    {
+        if ( mpView &&  mpView->GetTextEditOutlinerView() )
+        {
+            bOldReadOnly = mpView->GetTextEditOutlinerView()->IsReadOnly();
+            mpView->GetTextEditOutlinerView()->SetReadOnly(sal_True);
+        }
+    }
 
     if( (mpView && mpView->MouseButtonUp(rMEvt, mpWindow)) || rMEvt.GetClicks() == 2 )
+    {
+        if ( mpView &&  mpView->GetTextEditOutlinerView() )
+            mpView->GetTextEditOutlinerView()->SetReadOnly(bOldReadOnly);
         return (sal_True); // Event von der SdrView ausgewertet
+    }
+    if ( mpView &&  mpView->GetTextEditOutlinerView() )
+        mpView->GetTextEditOutlinerView()->SetReadOnly(bOldReadOnly);
 
     sal_Bool bEmptyTextObj = sal_False;
 
diff --git a/sd/source/ui/table/tablefunction.cxx b/sd/source/ui/table/tablefunction.cxx
index 33c971d..9a87589 100644
--- a/sd/source/ui/table/tablefunction.cxx
+++ b/sd/source/ui/table/tablefunction.cxx
@@ -184,6 +184,7 @@ void DrawViewShell::FuTable(SfxRequest& rReq)
             }
         }
 
+        GetParentWindow()->GrabFocus();
         if( pPickObj )
             mpView->ReplaceObjectAtView(pPickObj, *pPV, pObj, sal_True );
         else
@@ -191,6 +192,10 @@ void DrawViewShell::FuTable(SfxRequest& rReq)
 
         Invalidate(SID_DRAWTBX_INSERT);
         rReq.Ignore();
+        SfxViewShell* pViewShell = GetViewShell();
+        OSL_ASSERT (pViewShell!=NULL);
+        SfxBindings& rBindings = pViewShell->GetViewFrame()->GetBindings();
+        rBindings.Invalidate( SID_INSERT_TABLE, sal_True, sal_False );
         break;
     }
     case SID_TABLEDESIGN:
commit dc7d25dd994b18b12214ce796ecbc6d9e4fcf310
Author: sj at openoffice.org <sj at openoffice.org>
Date:   Tue Dec 6 01:57:23 2011 +0100

    #158674# some minor customshape fixes
    
    # HG changeset patch
    # User sj <sj at openoffice.org>
    # Date 1298982488 -3600
    # Node ID 95f3a25e5fc5af0502ef95fbba4dad3207051351
    # Parent  31d48f0e498a3f8e91c8b2e31c01a6bffc85db65
    
    #158674# some minor customshape fixes

diff --git a/svx/source/customshapes/EnhancedCustomShape2d.cxx b/svx/source/customshapes/EnhancedCustomShape2d.cxx
index 12fb3e4..2b2078a 100644
--- a/svx/source/customshapes/EnhancedCustomShape2d.cxx
+++ b/svx/source/customshapes/EnhancedCustomShape2d.cxx
@@ -785,7 +785,7 @@ EnhancedCustomShape2d::EnhancedCustomShape2d( SdrObject* pAObj ) :
         case mso_sptCurvedLeftArrow :
         case mso_sptCurvedRightArrow :
         case mso_sptCurvedUpArrow :
-        case mso_sptCurvedDownArrow :           nColorData = 0x2d000000; break;
+        case mso_sptCurvedDownArrow :           nColorData = 0x20d00000; break;
         case mso_sptRibbon2 :                   nColorData = 0x30ee0000; break;
         case mso_sptRibbon :                    nColorData = 0x30ee0000; break;
 
diff --git a/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx b/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
index dcc2bad..d8bb491 100644
--- a/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
+++ b/svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
@@ -1185,221 +1185,14 @@ static const mso_CustomShape msoBentUpArrow =
     (SvxMSDffHandle*)mso_sptBentUpArrowHandle, sizeof( mso_sptBentUpArrowHandle ) / sizeof( SvxMSDffHandle )
 };
 
-
-static const SvxMSDffVertPair mso_sptCurvedDownVert[] =
-{
-    { 0, 0 }, { 3 MSO_I, 21 MSO_I }, { 0, 21600 }, { 4 MSO_I, 0 },
-    { 0, 0 }, { 3 MSO_I, 21 MSO_I }, { 4 MSO_I, 0 }, { 17 MSO_I, 24 MSO_I },
-    { 15 MSO_I, 0 }, { 1 MSO_I, 21 MSO_I }, { 17 MSO_I, 24 MSO_I }, { 15 MSO_I, 21600 },
-    { 15 MSO_I, 0 }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 0 }, { 13 MSO_I, 2 MSO_I },
-    { 14 MSO_I, 2 MSO_I }, { 8 MSO_I, 21600 }, { 12 MSO_I, 2 MSO_I },
-    { 0, 0 }, { 3 MSO_I, 21 MSO_I }, { 11 MSO_I, 2 MSO_I }, { 17 MSO_I, 24 MSO_I },
-    { 0, 0 }, { 3 MSO_I, 21 MSO_I }, { 17 MSO_I, 24 MSO_I }, { 4 MSO_I, 0 }
-};
-static const sal_uInt16 mso_sptCurvedDownSegm[] =
-{
-    0xa508,
-    0xa304,
-    0x6000,
-    0x8000,
-    0xa604,
-    0x0003,
-    0xa308,
-    0x6000,
-    0x8000
-};
-static const SvxMSDffCalculationData mso_sptCurvedDownCalc[] =
-{
-    { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
-    { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
-    { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
-    { 0xa000, { DFF_Prop_adjustValue, 21600, DFF_Prop_adjust2Value } },
-    { 0x2001, { 0x403, 1, 2 } },
-    { 0x6000, { DFF_Prop_adjust2Value, DFF_Prop_adjust2Value, 21600 } },
-    { 0xe000, { 0x405, DFF_Prop_adjust2Value, DFF_Prop_adjustValue } },
-    { 0x2001, { 0x406, 1, 2 } },
-    { 0x4002, { 21600, DFF_Prop_adjustValue, 0 } },
-    { 0x8000, { 21600, 0, DFF_Prop_adjust3Value } },
-    { 0xa00f, { 0x409, 21600, 0x404 } },
-    { 0x6000, { 0x404, 0x40a, 0 } },
-    { 0x6000, { 0x40b, DFF_Prop_adjust2Value, 21600 } },
-    { 0x6000, { 0x407, 0x40a, 0 } },
-    { 0xa000, { 0x40c, 21600, DFF_Prop_adjustValue } },
-    { 0xa000, { 0x405, 0, DFF_Prop_adjustValue } },
-    { 0x2001, { 0x40f, 1, 2 } },
-    { 0x6002, { 0x404, 0x407, 0 } },
-    { 0x6000, { DFF_Prop_adjustValue, DFF_Prop_adjust2Value, 21600 } },
-    { 0x2001, { 0x412, 1, 2 } },
-    { 0xa000, { 0x411, 0, 0x413 } },
-    { 0x0001, { 21600, 2, 1 } },
-    { 0xa000, { 0x411, 0, 0x404 } },
-    { 0x600f, { 0x416, 0x404, 21600 } },
-    { 0x8000, { 21600, 0, 0x417 } },
-    { 0x2000, { 0x408, 128, 0 } },
-    { 0x2001, { 0x405, 1, 2 } },
-    { 0x2000, { 0x405, 0, 128 } },
-    { 0xe000, { DFF_Prop_adjustValue, 0x411, 0x40c } },
-    { 0x600f, { 0x414, 0x404, 21600 } },
-    { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
-    { 0x2001, { 0x41e, 1, 2 } },
-    { 0x0001, { 21600, 21600, 1 } },
-    { 0x6001, { 0x409, 0x409, 1 } },
-    { 0xa000, { 0x420, 0, 0x421 } },
-    { 0x200d, { 0x422, 0, 0 } },
-    { 0x2000, { 0x423, 21600, 0 } },
-    { 0x8001, { 21600, 21600, 0x424 } },
-    { 0x2000, { 0x425, 64, 0 } },
-    { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
-    { 0x600f, { 0x41f, 0x427, 21600 } },
-    { 0x8000, { 21600, 0, 0x428 } },
-    { 0x2000, { 0x429, 64, 0 } },
-    { 0x2001, { 0x404, 1, 2 } },
-    { 0xa000, { DFF_Prop_adjust2Value, 0, 0x42b } },
-    { 0x0001, { 21600, 2195, 16384 } },
-    { 0x0001, { 21600, 14189, 16384 } }
-};
-static const sal_Int32 mso_sptCurvedDownDefault[] =
-{
-    3, 12960, 19440, 14400
-};
-static const SvxMSDffTextRectangles mso_sptCurvedDownTextRect[] =
-{
-    { { 43 MSO_I, 45 MSO_I }, { 44 MSO_I, 46 MSO_I } }
-};
-static const SvxMSDffVertPair mso_sptCurvedDownGluePoints[] =
-{
-    { 17 MSO_I, 0 }, { 16 MSO_I, 21600 }, { 12 MSO_I, 2 MSO_I }, { 8 MSO_I, 21600 }, { 14 MSO_I, 2 MSO_I }
-};
-static const SvxMSDffHandle mso_sptCurvedDownHandles[] =
-{
-    {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
-        0x100, 21600, 10800, 10800, 3 + 0x26, 3 + 0x1b, 0, 10800 },
-    {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL,
-        0x101, 21600, 10800, 10800, 3 + 0x19, 21600, 0, 10800 },
-    {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL,
-        21600, 0x102, 10800, 10800, 3375, 21600, 3 + 0x2a, 21600 }
-};
-static const mso_CustomShape msoCurvedDownArrow =
-{
-    (SvxMSDffVertPair*)mso_sptCurvedDownVert, sizeof( mso_sptCurvedDownVert ) / sizeof( SvxMSDffVertPair ),
-    (sal_uInt16*)mso_sptCurvedDownSegm, sizeof( mso_sptCurvedDownSegm ) >> 1,
-    (SvxMSDffCalculationData*)mso_sptCurvedDownCalc, sizeof( mso_sptCurvedDownCalc ) / sizeof( SvxMSDffCalculationData ),
-    (sal_Int32*)mso_sptCurvedDownDefault,
-    (SvxMSDffTextRectangles*)mso_sptCurvedDownTextRect, sizeof( mso_sptCurvedDownTextRect ) / sizeof( SvxMSDffTextRectangles ),
-    21600, 21600,
-    0x80000000, 0x80000000,
-    (SvxMSDffVertPair*)mso_sptCurvedDownGluePoints, sizeof( mso_sptCurvedDownGluePoints ) / sizeof( SvxMSDffVertPair ),
-    (SvxMSDffHandle*)mso_sptCurvedDownHandles, sizeof( mso_sptCurvedDownHandles ) / sizeof( SvxMSDffHandle )
-};
-
-static const SvxMSDffVertPair mso_sptCurvedUpVert[] =
-{
-    { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 0, 0 }, { 4 MSO_I, 21 MSO_I },
-        { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 21 MSO_I }, { 12 MSO_I, 2 MSO_I },
-    { 13 MSO_I, 2 MSO_I }, { 8 MSO_I, 0 }, { 11 MSO_I, 2 MSO_I },
-    { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 10 MSO_I, 2 MSO_I }, { 16 MSO_I, 24 MSO_I },
-    { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I }, { 14 MSO_I, 0 },
-    { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I }
-};
-static const sal_uInt16 mso_sptCurvedUpSegm[] =
-{
-    0xa408,
-    0x0003,
-    0xa508,
-    0x6000,
-    0x8000,
-    0xa604,
-    0xaa00,
-    0x8000
-};
-static const SvxMSDffCalculationData mso_sptCurvedUpCalc[] =
-{
-    { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
-    { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
-    { 0x2000, { DFF_Prop_adjust3Value, 0, 0 } },
-    { 0xa000, { DFF_Prop_adjustValue, 21600, DFF_Prop_adjust2Value } },
-    { 0x2001, { 0x403, 1, 2 } },
-    { 0x6000, { DFF_Prop_adjust2Value, DFF_Prop_adjust2Value, 21600 } },
-    { 0xe000, { 0x405, DFF_Prop_adjust2Value, DFF_Prop_adjustValue } },
-    { 0x2001, { 0x406, 1, 2 } },
-    { 0x4002, { 21600, DFF_Prop_adjustValue, 0 } },
-    { 0xa00f, { DFF_Prop_adjust3Value, 21600, 0x404 } },
-    { 0x6000, { 0x404, 0x409, 0 } },
-    { 0x6000, { 0x40a, DFF_Prop_adjust2Value, 21600 } },
-    { 0x6000, { 0x407, 0x409, 0 } },
-    { 0xa000, { 0x40b, 21600, DFF_Prop_adjustValue } },
-    { 0xa000, { 0x405, 0, DFF_Prop_adjustValue } },
-    { 0x2001, { 0x40e, 1, 2 } },
-    { 0x6002, { 0x404, 0x407, 0 } },
-    { 0x6000, { DFF_Prop_adjustValue, DFF_Prop_adjust2Value, 21600 } },
-    { 0x2001, { 0x411, 1, 2 } },
-    { 0xa000, { 0x410, 0, 0x412 } },
-    { 0x0000, { 21600, 0, 0 } },
-    { 0x0000, { 21600, 0, 0 } },
-    { 0x0000, { 0, 0, 21600 } },
-    { 0xa000, { 0x410, 0, 0x404 } },
-    { 0x600f, { 0x417, 0x404, 21600 } },
-    { 0x2000, { 0x408, 128, 0 } },
-    { 0x2001, { 0x405, 1, 2 } },
-    { 0x2000, { 0x405, 0, 128 } },
-    { 0xe000, { DFF_Prop_adjustValue, 0x410, 0x40b } },
-    { 0x8000, { 21600, 0, DFF_Prop_adjustValue } },
-    { 0x2001, { 0x41d, 1, 2 } },
-    { 0x0001, { 21600, 21600, 1 } },
-    { 0x6001, { DFF_Prop_adjust3Value, DFF_Prop_adjust3Value, 1 } },
-    { 0xa000, { 0x41f, 0, 0x420 } },
-    { 0x200d, { 0x421, 0, 0 } },
-    { 0x2000, { 0x422, 21600, 0 } },
-    { 0x8001, { 21600, 21600, 0x423 } },
-    { 0x2000, { 0x424, 64, 0 } },
-    { 0x2001, { DFF_Prop_adjustValue, 1, 2 } },
-    { 0x600f, { 0x41e, 0x426, 21600 } },
-    { 0x2000, { 0x427, 0, 64 } },
-    { 0x2001, { 0x404, 1, 2 } },
-    { 0xa000, { DFF_Prop_adjust2Value, 0, 0x429 } },
-    { 0x0001, { 21600, 2195, 16384 } },
-    { 0x0001, { 21600, 14189, 16384 } }
-};
-static const sal_Int32 mso_sptCurvedUpDefault[] =
-{
-    3, 12960, 19440, 7200
-};
-static const SvxMSDffTextRectangles mso_sptCurvedUpTextRect[] =
-{
-    { { 41 MSO_I, 43 MSO_I }, { 42 MSO_I, 44 MSO_I } }
-};
-static const SvxMSDffVertPair mso_sptCurvedUpGluePoints[] =
-{
-    { 8 MSO_I, 0 }, { 11 MSO_I, 2 MSO_I }, { 15 MSO_I, 0 }, { 16 MSO_I, 21 MSO_I }, { 13 MSO_I, 2 MSO_I }
-};
-static const SvxMSDffHandle mso_sptCurvedUpHandles[] =
-{
-    {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
-        0x100, 0, 10800, 10800, 3 + 37, 3 + 27, 0, 10800 },
-    {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
-        0x101, 0, 10800, 10800, 3 + 25, 3 + 20, 0, 10800 },
-    {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
-        21600, 0x102, 10800, 10800, 3375, 21600, 0, 3 + 40 }
-};
-static const mso_CustomShape msoCurvedUpArrow =
-{
-    (SvxMSDffVertPair*)mso_sptCurvedUpVert, sizeof( mso_sptCurvedUpVert ) / sizeof( SvxMSDffVertPair ),
-    (sal_uInt16*)mso_sptCurvedUpSegm, sizeof( mso_sptCurvedUpSegm ) >> 1,
-    (SvxMSDffCalculationData*)mso_sptCurvedUpCalc, sizeof( mso_sptCurvedUpCalc ) / sizeof( SvxMSDffCalculationData ),
-    (sal_Int32*)mso_sptCurvedUpDefault,
-    (SvxMSDffTextRectangles*)mso_sptCurvedUpTextRect, sizeof( mso_sptCurvedUpTextRect ) / sizeof( SvxMSDffTextRectangles ),
-    21600, 21600,
-    0x80000000, 0x80000000,
-    (SvxMSDffVertPair*)mso_sptCurvedUpGluePoints, sizeof( mso_sptCurvedUpGluePoints ) / sizeof( SvxMSDffVertPair ),
-    (SvxMSDffHandle*)mso_sptCurvedUpHandles, sizeof( mso_sptCurvedUpHandles ) / sizeof( SvxMSDffHandle )
-};
-
 static const SvxMSDffVertPair mso_sptCurvedRightVert[] =
 {
     { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 22 MSO_I, 0 }, { 0, 4 MSO_I }, { 0, 15 MSO_I }, { 23 MSO_I, 1 MSO_I }, { 0, 7 MSO_I }, { 2 MSO_I, 13 MSO_I },
     { 2 MSO_I, 14 MSO_I }, { 22 MSO_I, 8 MSO_I }, { 2 MSO_I, 12 MSO_I },
     { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 2 MSO_I, 11 MSO_I }, { 26 MSO_I, 17 MSO_I }, { 0, 15 MSO_I }, { 23 MSO_I, 1 MSO_I }, { 26 MSO_I, 17 MSO_I }, { 22 MSO_I, 15 MSO_I },
-    { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 0, 4 MSO_I }, { 26 MSO_I, 17 MSO_I }
+    { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 22 MSO_I, 0 }, { 0, 4 MSO_I },
+    { 0, 0 }, { 23 MSO_I, 3 MSO_I }, { 0, 4 MSO_I }, { 26 MSO_I, 17 MSO_I },
+    { 0, 15 MSO_I }, { 23 MSO_I, 1 MSO_I }, { 26 MSO_I, 17 MSO_I }, { 22 MSO_I, 15 MSO_I }
 };
 static const sal_uInt16 mso_sptCurvedRightSegm[] =
 {
@@ -1409,7 +1202,9 @@ static const sal_uInt16 mso_sptCurvedRightSegm[] =
     0x6000,
     0x8000,
     0xa404,
-    0xaa00,
+    0xa304,
+    0xa504,
+    0x6000,
     0x8000
 };
 static const SvxMSDffCalculationData mso_sptCurvedRightCalc[] =
@@ -1498,25 +1293,86 @@ static const mso_CustomShape msoCurvedRightArrow =
     (SvxMSDffHandle*)mso_sptCurvedRightHandles, sizeof( mso_sptCurvedRightHandles ) / sizeof( SvxMSDffHandle )
 };
 
-static const SvxMSDffVertPair mso_sptCurvedLeftVert[] =
+static const SvxMSDffVertPair mso_sptCurvedDownVert[] =
 {
-    { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 0, 0 }, { 21 MSO_I, 4 MSO_I }, { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 21 MSO_I, 7 MSO_I }, { 2 MSO_I, 12 MSO_I },
-    { 2 MSO_I, 13 MSO_I }, { 0, 8 MSO_I }, { 2 MSO_I, 11 MSO_I },
-    { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 2 MSO_I, 10 MSO_I }, { 24 MSO_I, 16 MSO_I }, { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 24 MSO_I, 16 MSO_I }, { 0, 14 MSO_I },
-    { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 21 MSO_I, 7 MSO_I }, { 24 MSO_I, 16 MSO_I }
+   { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 0, 22 MSO_I }, { 4 MSO_I, 0 },
+   { 15 MSO_I, 0 }, { 1 MSO_I, 23 MSO_I }, { 7 MSO_I, 0 }, { 13 MSO_I, 2 MSO_I },
+   { 14 MSO_I, 2 MSO_I }, { 8 MSO_I, 22 MSO_I }, { 12 MSO_I, 2 MSO_I }, 
+   { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 11 MSO_I, 2 MSO_I }, { 17 MSO_I, 26 MSO_I }, { 15 MSO_I, 0 },
+   { 1 MSO_I, 23 MSO_I }, { 17 MSO_I, 26 MSO_I }, { 15 MSO_I, 22 MSO_I },
+   { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 0, 22 MSO_I }, { 4 MSO_I, 0 },
+   { 0, 0 }, { 3 MSO_I, 23 MSO_I }, { 4 MSO_I, 0 }, { 17 MSO_I, 26 MSO_I },
+   { 15 MSO_I, 0 }, { 1 MSO_I, 23 MSO_I }, { 17 MSO_I, 26 MSO_I }, { 15 MSO_I, 22 MSO_I }
 };
-static const sal_uInt16 mso_sptCurvedLeftSegm[] =
+static const sal_uInt16 mso_sptCurvedDownSegm[] =
 {
     0xa608,
     0x0003,
     0xa308,
     0x6000,
     0x8000,
-    0xa404,
-    0xaa00,
-    0x8000
+   0xa604,
+   0xa504,
+   0xa304,
+   0x6000,
+   0x8000
+};
+static const SvxMSDffTextRectangles mso_sptCurvedDownTextRect[] =
+{
+   { { 45 MSO_I, 47 MSO_I }, { 46 MSO_I, 48 MSO_I } }
 };
-static const SvxMSDffCalculationData mso_sptCurvedLeftCalc[] =
+static const SvxMSDffVertPair mso_sptCurvedDownGluePoints[] =
+{
+   { 17 MSO_I, 0 }, { 16 MSO_I, 22 MSO_I }, { 12 MSO_I, 2 MSO_I }, { 8 MSO_I, 22 MSO_I }, { 14 MSO_I, 2 MSO_I }
+};
+static const SvxMSDffHandle mso_sptCurvedDownHandles[] =
+{
+   {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
+       0x100, 21600, 10800, 10800, 3 + 40, 3 + 29, 0, 10800 },
+   {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
+       0x101, 21600, 10800, 10800, 3 + 27, 3 + 21, 0, 10800 },
+   {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
+       21600, 0x102, 10800, 10800, 3375, 21600, 3 + 44, 3 + 22 }
+};
+
+static const mso_CustomShape msoCurvedDownArrow =
+{
+   (SvxMSDffVertPair*)mso_sptCurvedDownVert, sizeof( mso_sptCurvedDownVert ) / sizeof( SvxMSDffVertPair ),
+   (sal_uInt16*)mso_sptCurvedDownSegm, sizeof( mso_sptCurvedDownSegm ) >> 1,
+   (SvxMSDffCalculationData*)mso_sptCurvedRightCalc, sizeof( mso_sptCurvedRightCalc ) / sizeof( SvxMSDffCalculationData ),
+   (sal_Int32*)mso_sptCurvedRightDefault,
+   (SvxMSDffTextRectangles*)mso_sptCurvedDownTextRect, sizeof( mso_sptCurvedDownTextRect ) / sizeof( SvxMSDffTextRectangles ),
+   21600, 21600,
+   0x80000000, 0x80000000,
+   (SvxMSDffVertPair*)mso_sptCurvedDownGluePoints, sizeof( mso_sptCurvedDownGluePoints ) / sizeof( SvxMSDffVertPair ),
+   (SvxMSDffHandle*)mso_sptCurvedDownHandles, sizeof( mso_sptCurvedDownHandles ) / sizeof( SvxMSDffHandle )
+};
+
+static const SvxMSDffVertPair mso_sptCurvedUpVert[] =
+{
+   { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 0, 0 }, { 4 MSO_I, 21 MSO_I },
+   { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 21 MSO_I },
+   { 12 MSO_I, 2 MSO_I }, { 13 MSO_I, 2 MSO_I }, { 8 MSO_I, 0 }, { 11 MSO_I, 2 MSO_I },
+   { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 10 MSO_I, 2 MSO_I }, { 16 MSO_I, 24 MSO_I },
+   { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I }, { 14 MSO_I, 0 },
+   { 0, 22 MSO_I }, { 3 MSO_I, 21 MSO_I }, { 0, 0 }, { 4 MSO_I, 21 MSO_I },
+   { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 7 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I },
+   { 14 MSO_I, 22 MSO_I }, { 1 MSO_I, 21 MSO_I }, { 16 MSO_I, 24 MSO_I }, { 14 MSO_I, 0 }
+};
+static const sal_uInt16 mso_sptCurvedUpSegm[] =
+{
+   0xa408,
+   0x0003,
+   0xa508,
+   0x6000,
+   0x8000,
+   0xa404,
+   0xa508,
+   0xa504,
+   0x6000,
+   0x8000
+};
+static const SvxMSDffCalculationData mso_sptCurvedUpCalc[] =
 {
     { 0x2000, { DFF_Prop_adjustValue, 0, 0 } },
     { 0x2000, { DFF_Prop_adjust2Value, 0, 0 } },
@@ -1564,10 +1420,63 @@ static const SvxMSDffCalculationData mso_sptCurvedLeftCalc[] =
     { 0x0001, { 21600, 2195, 16384 } },
     { 0x0001, { 21600, 14189, 16384 } }
 };
-static const sal_Int32 mso_sptCurvedLeftDefault[] =
+static const sal_Int32 mso_sptCurvedUpDefault[] =
 {
     3, 12960, 19440, 7200
 };
+static const SvxMSDffTextRectangles mso_sptCurvedUpTextRect[] =
+{
+   { { 41 MSO_I, 43 MSO_I }, { 42 MSO_I, 44 MSO_I } }
+};
+static const SvxMSDffVertPair mso_sptCurvedUpGluePoints[] =
+{
+   { 8 MSO_I, 0 }, { 11 MSO_I, 2 MSO_I }, { 15 MSO_I, 0 }, { 16 MSO_I, 21 MSO_I }, { 13 MSO_I, 2 MSO_I }
+};
+static const SvxMSDffHandle mso_sptCurvedUpHandles[] =
+{
+   {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
+       0x100, 0, 10800, 10800, 3 + 37, 3 + 27, 0, 10800 },
+   {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_X_MIN_IS_SPECIAL | MSDFF_HANDLE_FLAGS_RANGE_X_MAX_IS_SPECIAL,
+       0x101, 0, 10800, 10800, 3 + 25, 3 + 20, 0, 10800 },
+   {   MSDFF_HANDLE_FLAGS_RANGE | MSDFF_HANDLE_FLAGS_RANGE_Y_MAX_IS_SPECIAL,
+       21600, 0x102, 10800, 10800, 3375, 21600, 0, 3 + 40 }
+};
+static const mso_CustomShape msoCurvedUpArrow =
+{
+   (SvxMSDffVertPair*)mso_sptCurvedUpVert, sizeof( mso_sptCurvedUpVert ) / sizeof( SvxMSDffVertPair ),
+   (sal_uInt16*)mso_sptCurvedUpSegm, sizeof( mso_sptCurvedUpSegm ) >> 1,
+   (SvxMSDffCalculationData*)mso_sptCurvedUpCalc, sizeof( mso_sptCurvedUpCalc ) / sizeof( SvxMSDffCalculationData ),
+   (sal_Int32*)mso_sptCurvedUpDefault,
+   (SvxMSDffTextRectangles*)mso_sptCurvedUpTextRect, sizeof( mso_sptCurvedUpTextRect ) / sizeof( SvxMSDffTextRectangles ),
+   21600, 21600,
+   0x80000000, 0x80000000,
+   (SvxMSDffVertPair*)mso_sptCurvedUpGluePoints, sizeof( mso_sptCurvedUpGluePoints ) / sizeof( SvxMSDffVertPair ),
+   (SvxMSDffHandle*)mso_sptCurvedUpHandles, sizeof( mso_sptCurvedUpHandles ) / sizeof( SvxMSDffHandle )
+};
+
+static const SvxMSDffVertPair mso_sptCurvedLeftVert[] =
+{
+   { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 0, 0 }, { 21 MSO_I, 4 MSO_I },
+   { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 21 MSO_I, 7 MSO_I }, { 2 MSO_I, 12 MSO_I },
+   { 2 MSO_I, 13 MSO_I }, { 0, 8 MSO_I }, { 2 MSO_I, 11 MSO_I },
+   { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 2 MSO_I, 10 MSO_I }, { 24 MSO_I, 16 MSO_I },
+   { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 24 MSO_I, 16 MSO_I }, { 0, 14 MSO_I },
+   { 22 MSO_I, 0 }, { 21 MSO_I, 3 MSO_I }, { 0, 0 }, { 21 MSO_I, 4 MSO_I },
+   { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 21 MSO_I, 7 MSO_I }, { 24 MSO_I, 16 MSO_I },
+   { 22 MSO_I, 14 MSO_I }, { 21 MSO_I, 1 MSO_I }, { 24 MSO_I, 16 MSO_I }, { 0, 14 MSO_I }
+};
+static const sal_uInt16 mso_sptCurvedLeftSegm[] =
+{
+   0xa608,
+   0x0003,
+   0xa308,
+   0x6000,
+   0x8000,
+   0xa604,
+   0xa308,
+   0x6000,
+   0x8000
+};
 static const SvxMSDffTextRectangles mso_sptCurvedLeftTextRect[] =
 {
     { { 43 MSO_I, 41 MSO_I }, { 44 MSO_I, 42 MSO_I } }
@@ -1589,8 +1498,8 @@ static const mso_CustomShape msoCurvedLeftArrow =
 {
     (SvxMSDffVertPair*)mso_sptCurvedLeftVert, sizeof( mso_sptCurvedLeftVert ) / sizeof( SvxMSDffVertPair ),
     (sal_uInt16*)mso_sptCurvedLeftSegm, sizeof( mso_sptCurvedLeftSegm ) >> 1,
-    (SvxMSDffCalculationData*)mso_sptCurvedLeftCalc, sizeof( mso_sptCurvedLeftCalc ) / sizeof( SvxMSDffCalculationData ),
-    (sal_Int32*)mso_sptCurvedLeftDefault,
+    (SvxMSDffCalculationData*)mso_sptCurvedUpCalc, sizeof( mso_sptCurvedUpCalc ) / sizeof( SvxMSDffCalculationData ),
+    (sal_Int32*)mso_sptCurvedUpDefault,
     (SvxMSDffTextRectangles*)mso_sptCurvedLeftTextRect, sizeof( mso_sptCurvedLeftTextRect ) / sizeof( SvxMSDffTextRectangles ),
     21600, 21600,
     0x80000000, 0x80000000,
@@ -1598,10 +1507,6 @@ static const mso_CustomShape msoCurvedLeftArrow =
     (SvxMSDffHandle*)mso_sptCurvedLeftHandles, sizeof( mso_sptCurvedLeftHandles ) / sizeof( SvxMSDffHandle )
 };
 
-
-
-
-
 static const SvxMSDffVertPair mso_sptStripedRightArrowVert[] =  // adjustment1 : x 3375 - 21600
 {                                                               // adjustment2 : y 0 - 10800
     { 3375, 0 MSO_I }, { 1 MSO_I, 0 MSO_I }, { 1 MSO_I, 0 }, { 21600, 10800 },
@@ -6515,7 +6420,7 @@ static const SvxMSDffCalculationData mso_sptTextArchCurveCalc[] =
 };
 static const sal_uInt16 mso_sptTextArchUpCurveSegm[] =
 {
-    0xA504, 0x8000      // clockwíse arc
+    0xA504, 0x8000      // clockwíse arc
 };
 static const SvxMSDffHandle mso_sptTextArchUpCurveHandle[] =
 {
commit 909bf6e983d62ae2674c67067ee3e81b74bb8b53
Author: Ocke.Janssen at oracle.com <Ocke.Janssen at oracle.com>
Date:   Tue Dec 6 01:54:18 2011 +0100

    impress210: #i106378# use datetime to get current date
    
    # HG changeset patch
    # User Ocke.Janssen at oracle.com
    # Date 1297761051 -3600
    # Node ID 3df655ccd7e3966c5c22df761981dde35b5e0059
    # Parent  227bb8fe599b58e849c1f19f2233d2c1b0b767ad
    
    impress210: #i106378# use datetime to get current date

diff --git a/sd/source/ui/annotations/annotationmanager.cxx b/sd/source/ui/annotations/annotationmanager.cxx
index fdc9655..52e71c0 100644
--- a/sd/source/ui/annotations/annotationmanager.cxx
+++ b/sd/source/ui/annotations/annotationmanager.cxx
@@ -47,6 +47,8 @@
 #include <unotools/syslocale.hxx>
 #include <unotools/saveopt.hxx>
 
+#include <tools/datetime.hxx>
+
 #include <sfx2/imagemgr.hxx>
 #include <sfx2/viewfrm.hxx>
 #include <sfx2/bindings.hxx>
@@ -151,11 +153,8 @@ static SfxDispatcher* getDispatcher( ViewShellBase& rBase )
 
 com::sun::star::util::DateTime getCurrentDateTime()
 {
-    TimeValue osltime;
-    osl_getSystemTime( &osltime );
-    oslDateTime osldt;
-    osl_getDateTimeFromTimeValue( &osltime, &osldt );
-    return com::sun::star::util::DateTime( 0, osldt.Seconds, osldt.Minutes, osldt.Hours, osldt.Day, osldt.Month, osldt.Year );
+    DateTime aCurrentDate;
+    return com::sun::star::util::DateTime( 0, aCurrentDate.GetSec(), aCurrentDate.GetMin(), aCurrentDate.GetHour(), aCurrentDate.GetDay(), aCurrentDate.GetMonth(), aCurrentDate.GetYear() );
 }
 
 OUString getAnnotationDateTimeString( const Reference< XAnnotation >& xAnnotation )
commit a43400917e635a1b394b1eb4b53c8e709032e52d
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 01:48:15 2011 +0100

    impress210: #i116846# added missing commits from cws impressdefaults1
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1297098330 -3600
    # Node ID 499a3c7022ddd6bf9b2771a5f2c69230ea1b9d48
    # Parent  e7f337a6055814068bdc823306bc3a3f9cac48e5
    
    impress210: #i116846# added missing commits from cws impressdefaults1

diff --git a/sd/source/ui/slideshow/slideshow.src b/sd/source/ui/slideshow/slideshow.src
index c3efa2a..0b62170 100644
--- a/sd/source/ui/slideshow/slideshow.src
+++ b/sd/source/ui/slideshow/slideshow.src
@@ -74,7 +74,7 @@ Menu RID_SLIDESHOW_CONTEXTMENU
         MenuItem
         {
             Identifier = CM_PEN_MODE;
-            Text [ en-US ] = "Mouse Pointer as ~Pen";
+            Text [ en-US ] = "Mouse pointer as ~Pen";
         };
         MenuItem
         {
commit 37fe168502f4c21b2f1d4bb0491cbb658ae6afcb
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 01:46:46 2011 +0100

    impress210: #i116846# adding uncommited changes from cws impressdefautls1
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1297097627 -3600
    # Node ID e7f337a6055814068bdc823306bc3a3f9cac48e5
    # Parent  80a255ef3468baa8b249e02aa760b0da463e1d26
    
    impress210: #i116846# adding uncommited changes from cws impressdefautls1

diff --git a/extras/source/palettes/standard.soc b/extras/source/palettes/standard.soc
index 0370e7a..f48577a 100644
--- a/extras/source/palettes/standard.soc
+++ b/extras/source/palettes/standard.soc
@@ -48,7 +48,7 @@
   <draw:color draw:name="Blue 6" draw:color="#0099ff"/>
   <draw:color draw:name="Blue 7" draw:color="#00b8ff"/>
   <draw:color draw:name="Blue 8" draw:color="#99ccff"/>
- <draw:color draw:name="Blue 9" draw:color="#CFE7E5"/>
+  <draw:color draw:name="Blue 9" draw:color="#CFE7F5"/>
   <draw:color draw:name="Turquoise 1" draw:color="#00dcff"/>
   <draw:color draw:name="Turquoise 2" draw:color="#00cccc"/>
   <draw:color draw:name="Turquoise 3" draw:color="#23b8dc"/>
diff --git a/sd/source/ui/slideshow/slideshow.src b/sd/source/ui/slideshow/slideshow.src
index 78cd2aa..c3efa2a 100644
--- a/sd/source/ui/slideshow/slideshow.src
+++ b/sd/source/ui/slideshow/slideshow.src
@@ -74,7 +74,7 @@ Menu RID_SLIDESHOW_CONTEXTMENU
         MenuItem
         {
             Identifier = CM_PEN_MODE;
-            Text [ en-US ] = "Mouse pointer as ~pen";
+            Text [ en-US ] = "Mouse Pointer as ~Pen";
         };
         MenuItem
         {
@@ -115,12 +115,12 @@ Menu RID_SLIDESHOW_CONTEXTMENU
         MenuItem
         {
             Identifier = CM_COLOR_PEN ;
-            Text [ en-US ] = "~Change Pen Color..." ;
+            Text [ en-US ] = "~Change pen Color..." ;
         };
         MenuItem
         {
             Identifier = CM_ERASE_ALLINK ;
-            Text [ en-US ] = "~Erase All Ink On Slide" ;
+            Text [ en-US ] = "~Erase all ink on Slide" ;
         };
         MenuItem
         {
diff --git a/svx/inc/svx/xdef.hxx b/svx/inc/svx/xdef.hxx
index 645f868..beaaa8a 100644
--- a/svx/inc/svx/xdef.hxx
+++ b/svx/inc/svx/xdef.hxx
@@ -37,7 +37,7 @@
 |*
 \************************************************************************/
 
-#define COL_DEFAULT_SHAPE_FILLING   RGB_COLORDATA( 0xCF, 0xE7, 0xE5 )
+#define COL_DEFAULT_SHAPE_FILLING  RGB_COLORDATA( 0xCF, 0xE7, 0xF5 )
 #define COL_DEFAULT_SHAPE_STROKE    RGB_COLORDATA( 128, 128, 128 )
 
 #define XATTR_START             1000
commit 78fff8ca491b70af21705ae169ab48f68b8a5e37
Author: Christian Lippka ORACLE <christian.lippka at oracle.com>
Date:   Tue Dec 6 01:43:22 2011 +0100

    impressdefaults1: #i115996# change default bullet symbol
    
    #i115996# change default bullet symbol order from 'Oo-' in 'O-O-O'
    inside text objects
    
    # HG changeset patch
    # User Christian Lippka ORACLE <christian.lippka at oracle.com>
    # Date 1292243696 -3600
    # Node ID 80a255ef3468baa8b249e02aa760b0da463e1d26
    # Parent  055aad264da0cf9598fd1b7aafbd3e144c9b8ce2
    
    impressdefaults1: #i115996# change default bullet symbol order from 'Oo-' in 'O-O-O' inside text objects

diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx
index eadefb1..f6ee1bd 100644
--- a/sd/source/core/stlpool.cxx
+++ b/sd/source/core/stlpool.cxx
@@ -1056,32 +1056,33 @@ void SdStyleSheetPool::PutNumBulletItem( SfxStyleSheetBase* pSheet,
                 switch(i)
                 {
                     case 0:
-                    case 1:
                     {
                         nFontSize = 32;
                         nFirstLineOffset = -900;
                     }
                     break;
 
-                    case 2:
+                    case 1:
                     {
-                        nFontSize = 28;
-                        nFirstLineOffset = -800;
                         aNumberFormat.SetBulletChar( 0x2013 );  // StarBats: 0xF000 + 150
                         aNumberFormat.SetBulletRelSize(75);
+                        nFontSize = 32;
+                        nFirstLineOffset = -900;
                     }
                     break;
 
-                    case 3:
+                    case 2:
                     {
-                        nFontSize = 24;
+                        nFontSize = 28;
+                        nFirstLineOffset = -800;
                     }
                     break;
 
-                    case 4:
+                    case 3:
                     {
-                        aNumberFormat.SetBulletChar( 0x2013 ); // StarBats: 0xF000 + 150
+                        aNumberFormat.SetBulletChar( 0x2013 );  // StarBats: 0xF000 + 150
                         aNumberFormat.SetBulletRelSize(75);
+                        nFontSize = 24;
                     }
                     break;
                 }
commit 9753031300bb9bd61bbba2f617900422cdbde1ff
Author: Ocke.Janssen at oracle.com <Ocke.Janssen at oracle.com>
Date:   Tue Dec 6 01:28:00 2011 +0100

    impress210: #i105310# set tooltip for items and some refactoring
    
    # HG changeset patch
    # User Ocke.Janssen at oracle.com
    # Date 1297164555 -3600
    # Node ID 902597eed5414555107034f62583c4ccc2cdfd4b
    # Parent  2f0f385e8b25938777bb9fed6a86a2ff43e0b7cd
    
    impress210: #i105310# set tooltip for items and some refactoring

diff --git a/sd/source/core/CustomAnimationPreset.cxx b/sd/source/core/CustomAnimationPreset.cxx
index 21aae84..feab133 100644
--- a/sd/source/core/CustomAnimationPreset.cxx
+++ b/sd/source/core/CustomAnimationPreset.cxx
@@ -630,7 +630,7 @@ Reference< XAnimationNode > CustomAnimationPresets::getRandomPreset( sal_Int16 n
         sal_Int32 nCategory = (rand() * pCategoryList->size() / RAND_MAX);
 
         PresetCategoryPtr pCategory = (*pCategoryList)[nCategory];
-        if( pCategory.get() && pCategory->maEffects.size() )
+        if( pCategory.get() && !pCategory->maEffects.empty() )
         {
             sal_Int32 nDescriptor = (rand() * pCategory->maEffects.size() / RAND_MAX);
             CustomAnimationPresetPtr pPreset = pCategory->maEffects[nDescriptor];
@@ -639,7 +639,7 @@ Reference< XAnimationNode > CustomAnimationPresets::getRandomPreset( sal_Int16 n
                 UStringList aSubTypes = pPreset->getSubTypes();
 
                 OUString aSubType;
-                if( aSubTypes.size() )
+                if( !aSubTypes.empty() )
                 {
                     sal_Int32 nSubType = (rand() * aSubTypes.size() / RAND_MAX);
                     aSubType = aSubTypes[nSubType];
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx
index 7dd2966..bb16681 100644
--- a/sd/source/ui/animations/CustomAnimationPane.cxx
+++ b/sd/source/ui/animations/CustomAnimationPane.cxx
@@ -2036,7 +2036,7 @@ void CustomAnimationPane::createPath( PathKind eKind, std::vector< Any >& rTarge
 
 void CustomAnimationPane::onRemove()
 {
-    if( maListSelection.size() )
+   if( !maListSelection.empty() )
     {
         addUndo();
 
diff --git a/sd/source/ui/dlg/SpellDialogChildWindow.cxx b/sd/source/ui/dlg/SpellDialogChildWindow.cxx
index 5616a50..0d984d5 100644
--- a/sd/source/ui/dlg/SpellDialogChildWindow.cxx
+++ b/sd/source/ui/dlg/SpellDialogChildWindow.cxx
@@ -107,7 +107,7 @@ void SpellDialogChildWindow::InvalidateSpellDialog (void)
 
     // Close the spell check dialog when there are no more sentences to
     // check.
-    if (aResult.size() == 0)
+    if (aResult.empty())
     {
         SfxBoolItem aItem (SID_SPELL_DIALOG, sal_False);
         GetBindings().GetDispatcher()->Execute(
diff --git a/sd/source/ui/dlg/dlgass.cxx b/sd/source/ui/dlg/dlgass.cxx
index eb885b6..3c0c3e3 100644
--- a/sd/source/ui/dlg/dlgass.cxx
+++ b/sd/source/ui/dlg/dlgass.cxx
@@ -902,7 +902,7 @@ void AssistentDlgImpl::TemplateScanDone (
 
         // HACK! presnt directory is always initially selected.
         // We have to look at the first entry to get a URL.
-        if (pDir->maEntries.size() > 0)
+        if (!pDir->maEntries.empty() )
         {
             TemplateEntry* pEntry = pDir->maEntries.front();
             if (pEntry != NULL)
@@ -927,7 +927,7 @@ void AssistentDlgImpl::TemplateScanDone (
 
         // HACK! layout directory is always initially selected.
         // We have to look at the first entry to get a URL.
-        if (pDir->maEntries.size() > 0)
+        if (!pDir->maEntries.empty() )
         {
             TemplateEntry* pEntry = pDir->maEntries.front();
             if (pEntry != NULL)
diff --git a/sd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.cxx b/sd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.cxx
index 6e26106..ec03006 100644
--- a/sd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.cxx
+++ b/sd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.cxx
@@ -184,14 +184,14 @@ void ConfigurationControllerBroadcaster::DisposeAndClear (void)
 {
     lang::EventObject aEvent;
     aEvent.Source = mxConfigurationController;
-    while (maListenerMap.size() > 0)
+    while (!maListenerMap.empty())
     {
         ListenerMap::iterator iMap (maListenerMap.begin());
         if (iMap == maListenerMap.end())
             break;
 
         // When the first vector is empty then remove it from the map.
-        if (iMap->second.size() == 0)
+        if (iMap->second.empty())
         {
             maListenerMap.erase(iMap);
             continue;
diff --git a/sd/source/ui/framework/configuration/ResourceId.cxx b/sd/source/ui/framework/configuration/ResourceId.cxx
index deb46b0..2957dfa 100644
--- a/sd/source/ui/framework/configuration/ResourceId.cxx
+++ b/sd/source/ui/framework/configuration/ResourceId.cxx
@@ -183,7 +183,7 @@ OUString SAL_CALL
     ResourceId::getResourceURL (void)
     throw(com::sun::star::uno::RuntimeException)
 {
-    if (maResourceURLs.size() > 0)
+    if (!maResourceURLs.empty())
         return maResourceURLs[0];
     else
         return OUString();
@@ -200,7 +200,7 @@ util::URL SAL_CALL
         return *mpURL;
 
     Reference<util::XURLTransformer> xURLTransformer (mxURLTransformerWeak);
-    if (xURLTransformer.is() && maResourceURLs.size() > 0)
+    if (xURLTransformer.is() && !maResourceURLs.empty() )
     {
         mpURL.reset(new util::URL);
         mpURL->Complete = maResourceURLs[0];
@@ -209,7 +209,7 @@ util::URL SAL_CALL
     }
 
     util::URL aURL;
-    if (maResourceURLs.size() > 0)
+    if (!maResourceURLs.empty())
         aURL.Complete = maResourceURLs[0];
     return aURL;
 }
@@ -268,7 +268,7 @@ OUString SAL_CALL
     ResourceId::getResourceTypePrefix (void)
     throw (RuntimeException)
 {
-    if (maResourceURLs.size() > 0)
+    if (!maResourceURLs.empty() )
     {
         // Return the "private:resource/<type>/" prefix.
 
@@ -298,7 +298,7 @@ sal_Int16 SAL_CALL
     if ( ! rxResourceId.is())
     {
         // The empty reference is interpreted as empty resource id object.
-        if (maResourceURLs.size() > 0)
+        if (!maResourceURLs.empty())
             nResult = +1;
         else
             nResult = 0;
@@ -610,7 +610,7 @@ void ResourceId::ParseResourceURL (void)
             Reference<XInterface>(xURLTransformer,UNO_QUERY));
     }
 
-    if (xURLTransformer.is() && maResourceURLs.size() > 0)
+    if (xURLTransformer.is() && !maResourceURLs.empty() )
     {
         mpURL.reset(new util::URL);
         mpURL->Complete = maResourceURLs[0];
diff --git a/sd/source/ui/framework/factories/BasicViewFactory.cxx b/sd/source/ui/framework/factories/BasicViewFactory.cxx
index 830e226..3159e6b 100644
--- a/sd/source/ui/framework/factories/BasicViewFactory.cxx
+++ b/sd/source/ui/framework/factories/BasicViewFactory.cxx
@@ -524,7 +524,7 @@ bool BasicViewFactory::IsCacheable (const ::boost::shared_ptr<ViewDescriptor>& r
     if (xResource.is())
     {
         static ::std::vector<Reference<XResourceId> > maCacheableResources;
-        if (maCacheableResources.size() == 0)
+        if (maCacheableResources.empty() )
         {
             ::boost::shared_ptr<FrameworkHelper> pHelper (FrameworkHelper::Instance(*mpBase));
 
diff --git a/sd/source/ui/slidesorter/controller/SlsAnimator.cxx b/sd/source/ui/slidesorter/controller/SlsAnimator.cxx
index 164ed23..47a1d17 100644
--- a/sd/source/ui/slidesorter/controller/SlsAnimator.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsAnimator.cxx
@@ -273,7 +273,7 @@ IMPL_LINK(Animator, TimeoutHandler, Timer*, EMPTYARG)
     // Unlock the draw lock.  This should lead to a repaint.
     mpDrawLock.reset();
 
-    if (maAnimations.size() > 0)
+    if (!maAnimations.empty())
         RequestNextFrame();
 
     return 0;
diff --git a/sd/source/ui/toolpanel/controls/DocumentHelper.cxx b/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
index 74dd8d4..25c60eb 100644
--- a/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
+++ b/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
@@ -335,7 +335,7 @@ void DocumentHelper::AssignMasterPageToPageList (
             aCleanedList.push_back(*iPage);
         }
     }
-    if (aCleanedList.size() == 0)
+        if (aCleanedList.empty() )
         return;
 
     ::svl::IUndoManager* pUndoMgr = rTargetDocument.GetDocSh()->GetUndoManager();
diff --git a/sd/source/ui/view/ViewTabBar.cxx b/sd/source/ui/view/ViewTabBar.cxx
index 384f021..082c789 100644
--- a/sd/source/ui/view/ViewTabBar.cxx
+++ b/sd/source/ui/view/ViewTabBar.cxx
@@ -481,7 +481,7 @@ int ViewTabBar::GetHeight (void)
 {
     int nHeight (0);
 
-    if (maTabBarButtons.size() > 0)
+    if (!maTabBarButtons.empty())
     {
         TabPage* pActivePage (mpTabControl->GetTabPage(
             mpTabControl->GetCurPageId()));
diff --git a/svx/inc/galtheme.hrc b/svx/inc/galtheme.hrc
index 90b05ab..3567e0c 100755
--- a/svx/inc/galtheme.hrc
+++ b/svx/inc/galtheme.hrc
@@ -43,7 +43,7 @@
 #define RID_GALLERYSTR_THEME_MAPS           (RID_GALLERYSTR_THEME_START + 12)
 #define RID_GALLERYSTR_THEME_PEOPLE                     (RID_GALLERYSTR_THEME_START + 13)
 #define RID_GALLERYSTR_THEME_SURFACES                   (RID_GALLERYSTR_THEME_START + 14)
-#define RID_GALLERYSTR_THEME_HTMLBUTTONS                (RID_GALLERYSTR_THEME_START + 15)
+// free
 #define RID_GALLERYSTR_THEME_POWERPOINT                 (RID_GALLERYSTR_THEME_START + 16)
 #define RID_GALLERYSTR_THEME_RULERS         (RID_GALLERYSTR_THEME_START + 17)
 #define RID_GALLERYSTR_THEME_SOUNDS         (RID_GALLERYSTR_THEME_START + 18)
diff --git a/svx/inc/svx/gallery.hxx b/svx/inc/svx/gallery.hxx
index c8ca021..05b78ad 100644
--- a/svx/inc/svx/gallery.hxx
+++ b/svx/inc/svx/gallery.hxx
@@ -64,7 +64,7 @@
 #define GALLERY_THEME_MAPS              12
 #define GALLERY_THEME_PEOPLE            13
 #define GALLERY_THEME_SURFACES      14
-#define GALLERY_THEME_HTMLBUTTONS   15
+// free
 #define GALLERY_THEME_POWERPOINT    16
 #define GALLERY_THEME_RULERS        17
 #define GALLERY_THEME_SOUNDS        18
diff --git a/svx/source/form/fmshimp.cxx b/svx/source/form/fmshimp.cxx
index 6dc3395..6aea3ed 100644
--- a/svx/source/form/fmshimp.cxx
+++ b/svx/source/form/fmshimp.cxx
@@ -1559,7 +1559,7 @@ void FmXFormShell::ExecuteSearch()
         aContextNames.swap( aValidContexts );
     }
 
-    if (m_aSearchForms.size() == 0)
+    if (m_aSearchForms.empty() )
     {   // es gibt keine Controls, die alle Bedingungen fuer eine Suche erfuellen
         ErrorBox(NULL, WB_OK, SVX_RESSTR(RID_STR_NODATACONTROLS)).Execute();
         return;
@@ -2566,7 +2566,7 @@ IMPL_LINK(FmXFormShell, OnSearchContextRequest, FmSearchContext*, pfmscContextIn
     strFieldList.EraseTrailingChars(';');
     sFieldDisplayNames.EraseTrailingChars(';');
 
-    if (!pfmscContextInfo->arrFields.size())
+    if (pfmscContextInfo->arrFields.empty())
     {
         pfmscContextInfo->arrFields.clear();
         pfmscContextInfo->xCursor = NULL;
@@ -3670,7 +3670,7 @@ void FmXFormShell::viewDeactivated( FmFormView& _rCurrentView, sal_Bool _bDeacti
         // move all events from our queue to a new one, omit the events for the deactivated
         // page
         ::std::queue< FmLoadAction > aNewEvents;
-        while ( m_aLoadingPages.size() )
+        while ( !m_aLoadingPages.empty() )
         {
             FmLoadAction aAction = m_aLoadingPages.front();
             m_aLoadingPages.pop();
diff --git a/svx/source/gallery2/galbrws1.cxx b/svx/source/gallery2/galbrws1.cxx
index 4c50608..fc20022 100644
--- a/svx/source/gallery2/galbrws1.cxx
+++ b/svx/source/gallery2/galbrws1.cxx
@@ -256,9 +256,8 @@ void GalleryBrowser1::ImplFillExchangeData( const GalleryTheme* pThm, ExchangeDa
 
 // -----------------------------------------------------------------------------
 
-::std::vector< sal_uInt16 > GalleryBrowser1::ImplGetExecuteVector()
+void GalleryBrowser1::ImplGetExecuteVector(::std::vector< sal_uInt16 >& o_aExec)
 {
-    ::std::vector< sal_uInt16 > aExecVector;
     GalleryTheme*           pTheme = mpGallery->AcquireTheme( GetSelectedTheme(), *this );
 
     if( pTheme )
@@ -282,23 +281,21 @@ void GalleryBrowser1::ImplFillExchangeData( const GalleryTheme* pThm, ExchangeDa
             bUpdateAllowed = bRenameAllowed = bRemoveAllowed = sal_True;
 
         if( bUpdateAllowed && pTheme->GetObjectCount() )
-            aExecVector.push_back( MN_ACTUALIZE );
+            o_aExec.push_back( MN_ACTUALIZE );
 
         if( bRenameAllowed )
-            aExecVector.push_back( MN_RENAME );
+            o_aExec.push_back( MN_RENAME );
 
         if( bRemoveAllowed )
-            aExecVector.push_back( MN_DELETE );
+            o_aExec.push_back( MN_DELETE );
 
         if( bIdDialog && !pTheme->IsReadOnly() && !pTheme->IsImported() )
-            aExecVector.push_back( MN_ASSIGN_ID );
+            o_aExec.push_back( MN_ASSIGN_ID );
 
-        aExecVector.push_back( MN_PROPERTIES );
+        o_aExec.push_back( MN_PROPERTIES );
 
         mpGallery->ReleaseTheme( pTheme, *this );
     }
-
-    return aExecVector;
 }
 
 // -----------------------------------------------------------------------------
@@ -585,7 +582,8 @@ sal_Bool GalleryBrowser1::KeyInput( const KeyEvent& rKEvt, Window* pWindow )
 
     if( !bRet )
     {
-        ::std::vector< sal_uInt16 > aExecVector( ImplGetExecuteVector() );
+        ::std::vector< sal_uInt16 > aExecVector;
+        ImplGetExecuteVector(aExecVector);
         sal_uInt16                  nExecuteId = 0;
         sal_Bool                    bMod1 = rKEvt.GetKeyCode().IsMod1();
 
@@ -649,9 +647,10 @@ sal_Bool GalleryBrowser1::KeyInput( const KeyEvent& rKEvt, Window* pWindow )
 
 IMPL_LINK( GalleryBrowser1, ShowContextMenuHdl, void*, EMPTYARG )
 {
-    ::std::vector< sal_uInt16 > aExecVector( ImplGetExecuteVector() );
+    ::std::vector< sal_uInt16 > aExecVector;
+    ImplGetExecuteVector(aExecVector);
 
-    if( aExecVector.size() )
+    if( !aExecVector.empty() )
     {
         PopupMenu aMenu( GAL_RESID( RID_SVXMN_GALLERY1 ) );
 
diff --git a/svx/source/gallery2/galbrws1.hxx b/svx/source/gallery2/galbrws1.hxx
index 10b7606..5441b1f 100644
--- a/svx/source/gallery2/galbrws1.hxx
+++ b/svx/source/gallery2/galbrws1.hxx
@@ -102,7 +102,7 @@ private:
     void                    ImplAdjustControls();
     sal_uIntPtr                 ImplInsertThemeEntry( const GalleryThemeEntry* pEntry );
     void                    ImplFillExchangeData( const GalleryTheme* pThm, ExchangeData& rData );
-    ::std::vector< sal_uInt16 > ImplGetExecuteVector();
+    void                    ImplGetExecuteVector(::std::vector< sal_uInt16 >& o_aExec);
     void                    ImplExecute( sal_uInt16 nId );
     void                    ImplGalleryThemeProperties( const String & rThemeName, bool bCreateNew );
     void                    ImplEndGalleryThemeProperties( VclAbstractDialog2* pDialog, bool bCreateNew );
diff --git a/svx/source/gallery2/galctrl.cxx b/svx/source/gallery2/galctrl.cxx
index 84b27b7..72a481e 100644
--- a/svx/source/gallery2/galctrl.cxx
+++ b/svx/source/gallery2/galctrl.cxx
@@ -401,7 +401,7 @@ void GalleryIconView::UserDraw( const UserDrawEvent& rUDEvt )
                 aGraphic.Draw( pDev, aPos, aSize );
             }
 
-            SetItemText( nId, GalleryBrowser2::GetItemText( *mpTheme, *pObj, GALLERY_ITEM_THEMENAME | GALLERY_ITEM_TITLE | GALLERY_ITEM_PATH ) );
+            SetItemText( nId, GalleryBrowser2::GetItemText( *mpTheme, *pObj, GALLERY_ITEM_TITLE) );
             mpTheme->ReleaseObject( pObj );
         }
     }
diff --git a/svx/source/gallery2/gallery1.cxx b/svx/source/gallery2/gallery1.cxx
index 773a03e..4c10186 100644
--- a/svx/source/gallery2/gallery1.cxx
+++ b/svx/source/gallery2/gallery1.cxx
@@ -326,16 +326,19 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
 
             if( xContentAccess.is() )
             {
+                static const ::rtl::OUString s_sTitle(RTL_CONSTASCII_USTRINGPARAM("Title"));
+                static const ::rtl::OUString s_sIsReadOnly(RTL_CONSTASCII_USTRINGPARAM("IsReadOnly"));
+                static const ::rtl::OUString s_sSDG_EXT(RTL_CONSTASCII_USTRINGPARAM("sdg"));
+                static const ::rtl::OUString s_sSDV_EXT(RTL_CONSTASCII_USTRINGPARAM("sdv"));
+
                 while( xResultSet->next() )
                 {
                     INetURLObject aThmURL( xContentAccess->queryContentIdentifierString() );
 
                     if(aThmURL.GetExtension().equalsIgnoreAsciiCaseAscii("thm"))
                     {
-                        INetURLObject   aSdgURL( aThmURL); aSdgURL.SetExtension( OUString(RTL_CONSTASCII_USTRINGPARAM("sdg")) );
-                        INetURLObject   aSdvURL( aThmURL ); aSdvURL.SetExtension( OUString(RTL_CONSTASCII_USTRINGPARAM("sdv")) );
-                        const OUString aTitleProp( RTL_CONSTASCII_USTRINGPARAM("Title") );
-                        const OUString aReadOnlyProp( RTL_CONSTASCII_USTRINGPARAM("IsReadOnly") );
+                        INetURLObject   aSdgURL( aThmURL); aSdgURL.SetExtension( s_sSDG_EXT );
+                        INetURLObject   aSdvURL( aThmURL ); aSdvURL.SetExtension( s_sSDV_EXT );
                         OUString        aTitle;
                         sal_Bool        bReadOnly = sal_False;
 
@@ -347,7 +350,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
 
                             try
                             {
-                                aThmCnt.getPropertyValue( aTitleProp ) >>= aTitle;
+                                aThmCnt.getPropertyValue( s_sTitle ) >>= aTitle;
                             }
                             catch( const uno::RuntimeException& )
                             {
@@ -360,7 +363,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
                             {
                                 try
                                 {
-                                    aThmCnt.getPropertyValue( aReadOnlyProp ) >>= bReadOnly;
+                                    aThmCnt.getPropertyValue( s_sIsReadOnly ) >>= bReadOnly;
                                 }
                                 catch( const uno::RuntimeException& )
                                 {
@@ -373,7 +376,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
                                 {
                                     try
                                     {
-                                        aSdgCnt.getPropertyValue( aTitleProp ) >>= aTitle;
+                                        aSdgCnt.getPropertyValue( s_sTitle ) >>= aTitle;
                                     }
                                     catch( const ::com::sun::star::uno::RuntimeException& )
                                     {
@@ -386,7 +389,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
                                     {
                                         try
                                         {
-                                            aSdgCnt.getPropertyValue( aReadOnlyProp ) >>= bReadOnly;
+                                            aSdgCnt.getPropertyValue( s_sIsReadOnly ) >>= bReadOnly;
                                         }
                                         catch( const uno::RuntimeException& )
                                         {
@@ -401,7 +404,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
                                 {
                                     try
                                     {
-                                        aSdvCnt.getPropertyValue( aTitleProp ) >>= aTitle;
+                                        aSdvCnt.getPropertyValue( s_sTitle ) >>= aTitle;
                                     }
                                     catch( const ::com::sun::star::uno::RuntimeException& )
                                     {
@@ -414,7 +417,7 @@ void Gallery::ImplLoadSubDirs( const INetURLObject& rBaseURL, sal_Bool& rbDirIsR
                                     {
                                         try
                                         {
-                                            aSdvCnt.getPropertyValue( aReadOnlyProp ) >>= bReadOnly;
+                                            aSdvCnt.getPropertyValue( s_sIsReadOnly ) >>= bReadOnly;
                                         }
                                         catch( const uno::RuntimeException& )
                                         {
diff --git a/svx/source/gallery2/galtheme.cxx b/svx/source/gallery2/galtheme.cxx
index 8741d5a..12f1e6d 100644
--- a/svx/source/gallery2/galtheme.cxx
+++ b/svx/source/gallery2/galtheme.cxx
@@ -1191,18 +1191,13 @@ sal_Bool GalleryTheme::InsertFileOrDirURL( const INetURLObject& rFileOrDirURL, s
             uno::Sequence< OUString > aProps( 1 );
             aProps.getArray()[ 0 ] = OUString(RTL_CONSTASCII_USTRINGPARAM("Url"));

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list