Commits

obo  committed de45fd8 Merge

CWS-TOOLING: integrate CWS impress206

  • Participants
  • Parent commits e037e0a, 388a68e

Comments (0)

Files changed (6)

File libxml2/libxml2-xpath.patch

+--- misc/libxml2-2.7.6/xpath.c
++++ misc/build/libxml2-2.7.6/xpath.c
+@@ -8104,9 +8104,17 @@
+ xmlNodePtr
+ xmlXPathNextFollowing(xmlXPathParserContextPtr ctxt, xmlNodePtr cur) {
+     if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL);
+-    if (cur != NULL && cur->children != NULL)
+-        return cur->children ;
+-    if (cur == NULL) cur = ctxt->context->node;
++    if ((cur != NULL) && (cur->type  != XML_ATTRIBUTE_NODE) &&
++        (cur->type != XML_NAMESPACE_DECL) && (cur->children != NULL))
++        return(cur->children);
++
++    if (cur == NULL) {
++        cur = ctxt->context->node;
++        if (cur->type == XML_NAMESPACE_DECL)
++            return(NULL);
++        if (cur->type == XML_ATTRIBUTE_NODE)
++            cur = cur->parent;
++    }
+     if (cur == NULL) return(NULL) ; /* ERROR */
+     if (cur->next != NULL) return(cur->next) ;
+     do {
+@@ -8160,8 +8168,13 @@
+ xmlXPathNextPreceding(xmlXPathParserContextPtr ctxt, xmlNodePtr cur)
+ {
+     if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL);
+-    if (cur == NULL)
++    if (cur == NULL) {
+         cur = ctxt->context->node;
++        if (cur->type == XML_NAMESPACE_DECL)
++            return(NULL);
++        if (cur->type == XML_ATTRIBUTE_NODE)
++            return(cur->parent);
++    }
+     if (cur == NULL)
+ 	return (NULL);
+     if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE))
+@@ -8205,8 +8218,8 @@
+         cur = ctxt->context->node;
+         if (cur == NULL)
+             return (NULL);
+-	if (cur->type == XML_NAMESPACE_DECL)
+-	    cur = (xmlNodePtr)((xmlNsPtr)cur)->next;
++        if (cur->type == XML_NAMESPACE_DECL)
++            return (NULL);
+         ctxt->ancestor = cur->parent;
+     }
+     if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE))

File libxml2/makefile.mk

 PATCH_FILES=libxml2-configure.patch \
             libxml2-mingw.patch \
             libxml2-gnome599717.patch \
+            libxml2-xpath.patch \
             libxml2-global-symbols.patch \
 
 

File sd/source/filter/eppt/epptso.cxx

                 continue;
             }
             else if ( ( mType == "drawing.OLE2" ) || ( mType == "presentation.OLE2" )
-                        || ( mType == "presentation.Chart" ) || ( mType == "presentation.Table" )
+                        || ( mType == "presentation.Chart" ) || ( mType == "presentation.Calc" )
                             || ( mType == "presentation.OrgChart" ) )
             {
                 mpPptEscherEx->OpenContainer( ESCHER_SpContainer );
 					}
 				}
 			}
-			else if ( mType == "drawing.Table" )
+			else if ( (mType == "drawing.Table") || (mType == "presentation.Table") )
 			{
 				SvMemoryStream* pTmp = NULL;
 				if ( bEffect && !mbUseNewAnimations )
                 ImplFlipBoundingBox( aPropOpt );
             aPropOpt.CreateShapeProperties( mXShape );
 			aPropOpt.Commit( *mpStrm );
-            mpPptEscherEx->AddClientAnchor( maRect );
+			if ( GetCurrentGroupLevel() > 0 )		
+		        mpPptEscherEx->AddChildAnchor( maRect );
+			else
+				mpPptEscherEx->AddClientAnchor( maRect );
 
 			if ( pClientData )
             {
 
             aPropOpt.CreateShapeProperties( mXShape );
             aPropOpt.Commit( *mpStrm );
-            mpPptEscherEx->AddClientAnchor( maRect );
+			if ( GetCurrentGroupLevel() > 0 )		
+		        mpPptEscherEx->AddChildAnchor( maRect );
+			else
+				mpPptEscherEx->AddClientAnchor( maRect );
 
             *mpStrm << (sal_uInt32)( ( ESCHER_ClientTextbox << 16 ) | 0xf )
                     << (sal_uInt32)pClientTextBox->Tell();
 				aPropOpt.CreateShapeProperties( rXShape );
 				aPropOpt.Commit( *mpStrm );
 				aPropOpt2.Commit( *mpStrm, 3, ESCHER_UDefProp );
-				mpPptEscherEx->AddAtom( 8, ESCHER_ClientAnchor );
-				*mpStrm << (sal_Int16)maRect.Top()
-						<< (sal_Int16)maRect.Left()
-						<< (sal_Int16)( maRect.GetWidth()  + maRect.Left() )
-						<< (sal_Int16)( maRect.GetHeight() + maRect.Top() );
+				if ( GetCurrentGroupLevel() > 0 )		
+					mpPptEscherEx->AddChildAnchor( maRect );
+				else
+					mpPptEscherEx->AddClientAnchor( maRect );
 				mpPptEscherEx->CloseContainer();
 
 

File sd/source/filter/eppt/escherex.cxx

 		else
 		{
 			AddShape( ESCHER_ShpInst_Min, 0x201, nShapeId );				// Flags: Group | HaveAnchor
-			AddAtom( 8, ESCHER_ClientAnchor );
-			PtReplaceOrInsert( ESCHER_Persist_Grouping_Logic | mnGroupLevel, mpOutStrm->Tell() );
-			*mpOutStrm << (INT16)aRect.Top() << (INT16)aRect.Left() << (INT16)aRect.Right() << (INT16)aRect.Bottom();
+			if ( mnGroupLevel == 1 )
+			{
+				AddAtom( 8, ESCHER_ClientAnchor );
+				PtReplaceOrInsert( ESCHER_Persist_Grouping_Logic | mnGroupLevel, mpOutStrm->Tell() );
+				*mpOutStrm << (INT16)aRect.Top() << (INT16)aRect.Left() << (INT16)aRect.Right() << (INT16)aRect.Bottom();
+			}
+			else
+			{
+				AddAtom( 16, ESCHER_ChildAnchor );
+				PtReplaceOrInsert( ESCHER_Persist_Grouping_Snap | mnGroupLevel, mpOutStrm->Tell() );
+				*mpOutStrm  << (sal_Int32)aRect.Left()
+							<< (sal_Int32)aRect.Top()
+							<< (sal_Int32)aRect.Right()
+							<< (sal_Int32)aRect.Bottom();
+			}
 		}
 		if ( pClientData )
 		{

File sd/source/filter/ppt/propread.cxx

     if (nSize > STRING_MAXLEN)
 		nSize = STRING_MAXLEN;
 
-	return nSize;
+	return static_cast< xub_StrLen >( nSize );
 }
 
 BOOL PropItem::Read( String& rString, sal_uInt32 nStringType, sal_Bool bAlign )

File slideshow/source/engine/shapes/shapeimporter.cxx

     rtl::OUString const& shapeType ) const
 {
     if( shapeType.equalsAsciiL( 
-            RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.MediaShape") )) 
+            RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.MediaShape") ) || 
+		shapeType.equalsAsciiL( 
+            RTL_CONSTASCII_STRINGPARAM("com.sun.star.presentation.MediaShape") ) ) 
     {
         // Media shape (video etc.). This is a special object
         return createMediaShape(xCurrShape, 
                                   mrContext );
     }
     else if( shapeType.equalsAsciiL(
-                 RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.OLE2Shape") ))
+                 RTL_CONSTASCII_STRINGPARAM("com.sun.star.drawing.OLE2Shape") ) ||
+             shapeType.equalsAsciiL(
+				RTL_CONSTASCII_STRINGPARAM("com.sun.star.presentation.OLE2Shape") ) )
     {
         // #i46224# Mark OLE shapes as foreign content - scan them for
         // unsupported actions, and fallback to bitmap, if necessary
     }
     else if( shapeType.equalsAsciiL(
                  RTL_CONSTASCII_STRINGPARAM(
-                     "com.sun.star.drawing.GraphicObjectShape") )) 
+                     "com.sun.star.drawing.GraphicObjectShape") ) ||
+			 shapeType.equalsAsciiL(
+                 RTL_CONSTASCII_STRINGPARAM(
+                     "com.sun.star.presentation.GraphicObjectShape") ) ) 
     {
         GraphicObject aGraphicObject;