[Libreoffice-commits] .: sd/prj sd/source sd/util
Katarina Machalkova
bubli at kemper.freedesktop.org
Thu Oct 21 01:24:51 PDT 2010
sd/prj/build.lst | 5
sd/prj/d.lst | 1
sd/source/filter/pptx/eppt.hxx | 303 -
sd/source/filter/pptx/epptbase.hxx | 411 --
sd/source/filter/pptx/epptdef.hxx | 263 -
sd/source/filter/pptx/epptooxml.hxx | 138
sd/source/filter/pptx/escherex.hxx | 77
sd/source/filter/pptx/grouptable.hxx | 58
sd/source/filter/pptx/makefile.mk | 61
sd/source/filter/pptx/pptexanimations.hxx | 151
sd/source/filter/pptx/pptexsoundcollection.hxx | 86
sd/source/filter/pptx/pptx-NOTES | 2
sd/source/filter/pptx/pptx-eppt.cxx | 1580 --------
sd/source/filter/pptx/pptx-epptbase.cxx | 947 ----
sd/source/filter/pptx/pptx-epptooxml.cxx | 2076 ----------
sd/source/filter/pptx/pptx-epptso.cxx | 3907 --------------------
sd/source/filter/pptx/pptx-escherex.cxx | 294 -
sd/source/filter/pptx/pptx-grouptable.cxx | 114
sd/source/filter/pptx/pptx-pptexanimations.cxx | 2229 -----------
sd/source/filter/pptx/pptx-pptexsoundcollection.cxx | 231 -
sd/source/filter/pptx/pptx-stylesheet.cxx | 485 --
sd/source/filter/pptx/pptx-text.cxx | 1410 -------
sd/source/filter/pptx/text.hxx | 246 -
sd/util/makefile.mk | 31
sd/util/pptx.map | 9
25 files changed, 2 insertions(+), 15113 deletions(-)
New commits:
commit efc7a509108bea1f1223f16aac0dcf7a7b00a8ec
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date: Wed Oct 20 18:32:04 2010 +0200
Undoing pptx filter as a separate lib ( + related changes)
Shared ppt + pptx filter will be merged from cws later
diff --git a/sd/prj/build.lst b/sd/prj/build.lst
index db9214a..6b4f478 100644
--- a/sd/prj/build.lst
+++ b/sd/prj/build.lst
@@ -1,4 +1,4 @@
-sd sd : filter l10n animations svx sfx2 stoc canvas slideshow oox NULL
+sd sd : filter l10n animations svx sfx2 stoc canvas NULL
sd sd usr1 - all sd_mkout NULL
sd sd\inc nmake - all sd_inc NULL
sd sd\prj get - all sd_prj NULL
@@ -33,7 +33,6 @@ sd sd\source\filter\ppt nmake - all sd_ppt sd_inc NULL
sd sd\source\filter nmake - all sd_filt sd_sdi sd_ppt sd_inc NULL
sd sd\source\filter\cgm nmake - all sd_cgm sd_inc NULL
sd sd\source\filter\eppt nmake - all sd_eppt sd_inc NULL
-sd sd\source\filter\pptx nmake - all sd_pptx sd_inc NULL
sd sd\source\filter\grf nmake - all sd_grf sd_inc NULL
sd sd\source\filter\xml nmake - all sd_xml sd_inc NULL
sd sd\source\filter\html nmake - all sd_html sd_inc NULL
@@ -45,5 +44,5 @@ sd sd\source\ui\framework\module nmake - all sd_framework_module sd_inc N
sd sd\source\ui\framework\factories nmake - all sd_framework_factories sd_inc NULL
sd sd\source\ui\framework\tools nmake - all sd_framework_tools sd_inc NULL
sd sd\source\ui\annotations nmake - all sd_uiannotations sd_inc NULL
-sd sd\util nmake - all sd_util sd_app sd_cgm sd_core sd_dlg sd_docsh sd_eppt sd_pptx sd_filt sd_func sd_grf sd_unid sd_view sd_xml sd_html sd_ppt sd_accessibility sd_animations sd_toolpanel sd_toolpanel_controls sd_tools sd_slsshell sd_slsmodel sd_slsview sd_slscontroller sd_slscache sd_notes sd_controller sd_table sd_slideshow sd_presenter sd_undo sd_helper sd_framework_configuration sd_framework_module sd_framework_tools sd_framework_factories sd_text sd_annotations sd_uiannotations NULL
+sd sd\util nmake - all sd_util sd_app sd_cgm sd_core sd_dlg sd_docsh sd_eppt sd_filt sd_func sd_grf sd_unid sd_view sd_xml sd_html sd_ppt sd_accessibility sd_animations sd_toolpanel sd_toolpanel_controls sd_tools sd_slsshell sd_slsmodel sd_slsview sd_slscontroller sd_slscache sd_notes sd_controller sd_table sd_slideshow sd_presenter sd_undo sd_helper sd_framework_configuration sd_framework_module sd_framework_tools sd_framework_factories sd_text sd_annotations sd_uiannotations NULL
sd sd\qa\unoapi nmake - all sd_qa_unoapi NULL
diff --git a/sd/prj/d.lst b/sd/prj/d.lst
index 7e7e9cd..14f85e9 100755
--- a/sd/prj/d.lst
+++ b/sd/prj/d.lst
@@ -22,7 +22,6 @@ mkdir: %_DEST%\xml%_EXT%\uiconfig\modules\simpress\statusbar
..\%__SRC%\bin\sd??????.dll %_DEST%\bin%_EXT%\sd??????.dll
..\%__SRC%\bin\sd*.res %_DEST%\bin%_EXT%\sd*.res
..\%__SRC%\bin\sd???????.dll %_DEST%\bin%_EXT%\sd???????.dll
-..\%__SRC%\bin\pptx*.dll %_DEST%\bin%_EXT%\pptx*.dll
..\%__SRC%\bin\emp?????.* %_DEST%\bin%_EXT%\emp?????.*
mkdir: %_DEST%\pck%_EXT%
diff --git a/sd/source/filter/pptx/eppt.hxx b/sd/source/filter/pptx/eppt.hxx
deleted file mode 100644
index 52a704f..0000000
--- a/sd/source/filter/pptx/eppt.hxx
+++ /dev/null
@@ -1,303 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: eppt.hxx,v $
- * $Revision: 1.51 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _EPPT_HXX_
-#define _EPPT_HXX_
-#include <vector>
-#ifndef _PptEscherEx_HXX
-#include "escherex.hxx"
-#endif
-#include <tools/solar.h>
-#include <sot/storage.hxx>
-#include <vcl/graph.hxx>
-#include <unotools/fontcvt.hxx>
-#include "pptexanimations.hxx"
-#include <pptexsoundcollection.hxx>
-#include "text.hxx"
-// ------------------------------------------------------------------------
-
-#include <vcl/mapmod.hxx>
-#include <com/sun/star/uno/Any.hxx>
-#include <com/sun/star/frame/XModel.hpp>
-#include <com/sun/star/drawing/FillStyle.hpp>
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <com/sun/star/drawing/DashStyle.hpp>
-#include <com/sun/star/drawing/HatchStyle.hpp>
-#include <com/sun/star/drawing/LineEndType.hpp>
-#include <com/sun/star/drawing/Alignment.hpp>
-#include <com/sun/star/drawing/TextAdjust.hpp>
-#include <com/sun/star/drawing/CircleKind.hpp>
-#include <com/sun/star/drawing/PolygonKind.hpp>
-#include <com/sun/star/drawing/PolygonFlags.hpp>
-#include <com/sun/star/drawing/XUniversalShapeDescriptor.hpp>
-#include <com/sun/star/drawing/XShapeGrouper.hpp>
-#include <com/sun/star/text/XSimpleText.hpp>
-#include <com/sun/star/drawing/XConnectorShape.hpp>
-#include <com/sun/star/drawing/BezierPoint.hpp>
-#include <com/sun/star/drawing/Hatch.hpp>
-#include <com/sun/star/drawing/LineDash.hpp>
-#include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
-#include <com/sun/star/presentation/XCustomPresentationSupplier.hpp>
-#include <com/sun/star/awt/XGraphics.hpp>
-#include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
-#include <com/sun/star/presentation/AnimationEffect.hpp>
-#include <com/sun/star/presentation/FadeEffect.hpp>
-#include <com/sun/star/presentation/ClickAction.hpp>
-#include <com/sun/star/presentation/AnimationSpeed.hpp>
-#include <com/sun/star/presentation/PresentationRange.hpp>
-#include <com/sun/star/text/XTextFieldsSupplier.hpp>
-#include <com/sun/star/text/XTextField.hpp>
-#include <com/sun/star/container/XNamed.hpp>
-#include <com/sun/star/container/XIndexContainer.hpp>
-#include <com/sun/star/awt/XControlModel.hpp>
-#include <com/sun/star/style/TabStop.hpp>
-#include <filter/msfilter/msocximex.hxx>
-#include <com/sun/star/beans/XPropertyState.hpp>
-#include <com/sun/star/beans/XPropertySetInfo.hpp>
-#include <com/sun/star/awt/FontFamily.hpp>
-#include <com/sun/star/awt/FontPitch.hpp>
-#include <com/sun/star/awt/CharSet.hpp>
-#include <com/sun/star/text/WritingMode.hpp>
-#include <com/sun/star/lang/Locale.hpp>
-
-#include <epptbase.hxx>
-
-#define EPP_MAINMASTER_PERSIST_KEY 0x80010000
-#define EPP_MAINNOTESMASTER_PERSIST_KEY 0x80020000
-#define EPP_MAINSLIDE_PERSIST_KEY 0x80030000
-#define EPP_MAINNOTES_PERSIST_KEY 0x80040000
-
-#define EPP_Persist_Document 0x80080000
-#define EPP_Persist_MainMaster 0x80100000
-#define EPP_Persist_MainNotes 0x80200000
-#define EPP_Persist_Slide 0x80400000
-#define EPP_Persist_Notes 0x80800000
-#define EPP_Persist_CurrentPos 0x81000000
-#define EPP_Persist_VBAInfoAtom 0x84000000
-#define EPP_Persist_ExObj 0x88000000
-
-#define EPP_TEXTSTYLE_NORMAL 0x00000001
-#define EPP_TEXTSTYLE_TITLE 0x00000010
-#define EPP_TEXTSTYLE_BODY 0x00000100
-#define EPP_TEXTSTYLE_TEXT 0x00001000
-
-class Polygon;
-class XStatusIndicatorRef;
-
-// ------------------------------------------------------------------------
-
-struct EPPTHyperlink
-{
- String aURL;
- sal_uInt32 nType; // bit 0-7 : type ( 1: click action to a slide )
- // ( 2: hyperlink url )
- // bit 8-23: index
- // bit 31 : hyperlink is attached to a shape
-
- EPPTHyperlink( const String rURL, sal_uInt32 nT ) :
- aURL ( rURL ),
- nType ( nT ){};
-};
-
-enum PPTExOleObjEntryType
-{
- NORMAL_OLE_OBJECT, OCX_CONTROL
-};
-
-struct PPTExOleObjEntry
-{
- PPTExOleObjEntryType eType;
- sal_uInt32 nOfsA; // offset to the EPP_ExOleObjAtom in mpExEmbed (set at creation)
- sal_uInt32 nOfsB; // offset to the EPP_ExOleObjStg
-
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > xControlModel;
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > xShape;
-
- PPTExOleObjEntry( PPTExOleObjEntryType eT, sal_uInt32 nOfs ) :
- eType ( eT ),
- nOfsA ( nOfs ) {};
-};
-
-struct TextRuleEntry
-{
- int nPageNumber;
- SvMemoryStream* pOut;
-
- TextRuleEntry( int nPg ) :
- nPageNumber( nPg ),
- pOut ( NULL ){};
-
- ~TextRuleEntry() { delete pOut; };
-};
-
-class TextObjBinary : public TextObj
-{
-public:
- TextObjBinary( ::com::sun::star::uno::Reference< ::com::sun::star::text::XSimpleText > &
- rXText, int nInstance, FontCollection& rFontCollection, PPTExBulletProvider& rBuProv ) : TextObj( rXText, nInstance, rFontCollection, rBuProv ) {}
-
- void Write( SvStream* pStrm );
- void WriteTextSpecInfo( SvStream* pStrm );
-};
-
-// ------------------------------------------------------------------------
-struct CellBorder;
-class PPTWriter : public PPTWriterBase, public PPTExBulletProvider
-{
- sal_uInt32 mnCnvrtFlags;
- sal_Bool mbStatus;
- sal_Bool mbUseNewAnimations;
- sal_uInt32 mnStatMaxValue;
- sal_uInt32 mnLatestStatValue;
-
- EscherGraphicProvider* mpGraphicProvider;
- List maSlideNameList;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::text::XSimpleText > mXText; // TextRef des globalen Text
- ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > mXCursor;
- ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > mXCursorText; // TextRef des Teilstuecks des Cursors
- ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > mXCursorPropSet; // die Properties des Teilstueckes
- ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextField > mXTextField;
- sal_uInt32 mnTextStyle;
-
- sal_Bool mbFontIndependentLineSpacing;
- sal_uInt32 mnTextSize;
-
- SvStorageRef mrStg;
- SvStorageStream* mpCurUserStrm;
- SvStorageStream* mpStrm;
- SvStorageStream* mpPicStrm;
- PptEscherEx* mpPptEscherEx;
-
- List maExOleObj;
- sal_uInt32 mnVBAOleOfs;
- SvMemoryStream* mpVBA;
- sal_uInt32 mnExEmbed;
- SvMemoryStream* mpExEmbed;
-
- sal_uInt32 mnDrawings; // anzahl Slides + masterpages + notes + handout
- sal_uInt32 mnPagesWritten;
- sal_uInt32 mnUniqueSlideIdentifier;
- sal_uInt32 mnTxId; // Identifier determined by the HOST (PP) ????
- sal_uInt32 mnDiaMode; // 0 -> manuell
- // 1 -> halbautomatisch
- // 2 -> automatisch
-
- sal_uInt32 mnShapeMasterTitle;
- sal_uInt32 mnShapeMasterBody;
-
- List maHyperlink;
-
- ppt::ExSoundCollection maSoundCollection;
-
- void ImplWriteExtParaHeader( SvMemoryStream& rSt, sal_uInt32 nRef, sal_uInt32 nInstance, sal_uInt32 nSlideId );
-
-
- sal_uInt32 ImplProgBinaryTag( SvStream* pOutStrm = NULL );
- sal_uInt32 ImplProgBinaryTagContainer( SvStream* pOutStrm = NULL, SvMemoryStream* pBinTag = NULL );
- sal_uInt32 ImplProgTagContainer( SvStream* pOutStrm = NULL, SvMemoryStream* pBinTag = NULL );
- sal_uInt32 ImplOutlineViewInfoContainer( SvStream* pOutStrm = NULL );
- sal_uInt32 ImplSlideViewInfoContainer( sal_uInt32 nInstance, SvStream* pOutStrm = NULL );
- sal_uInt32 ImplVBAInfoContainer( SvStream* pOutStrm = NULL );
- sal_uInt32 ImplDocumentListContainer( SvStream* pOutStrm = NULL );
- sal_uInt32 ImplMasterSlideListContainer( SvStream* pOutStrm = NULL );
-
- protected:
-
- sal_Bool ImplCreateDocumentSummaryInformation();
- sal_Bool ImplCreateCurrentUserStream();
- void ImplCreateHeaderFooterStrings( SvStream& rOut,
- ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& rXPagePropSet );
- void ImplCreateHeaderFooters( ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& rXPagePropSet );
- virtual sal_Bool ImplCreateDocument();
- sal_Bool ImplCreateHyperBlob( SvMemoryStream& rStream );
- sal_uInt32 ImplInsertBookmarkURL( const String& rBookmark, const sal_uInt32 nType,
- const String& rStringVer0, const String& rStringVer1, const String& rStringVer2, const String& rStringVer3 );
- virtual sal_Bool ImplCreateMainNotes();
- sal_Bool ImplCreateNotes( sal_uInt32 nPageNum );
- void ImplWriteBackground( ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > & rXBackgroundPropSet );
- void ImplWriteVBA();
- void ImplWriteOLE();
- sal_Bool ImplWriteAtomEnding();
-
- void ImplFlipBoundingBox( EscherPropertyContainer& rPropOpt );
- sal_Bool ImplGetText();
- sal_Bool ImplCreatePresentationPlaceholder( const sal_Bool bMaster, const PageType PageType,
- const sal_uInt32 StyleInstance, const sal_uInt8 PlaceHolderId );
- sal_Bool ImplGetEffect( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > &,
- ::com::sun::star::presentation::AnimationEffect& eEffect,
- ::com::sun::star::presentation::AnimationEffect& eTextEffect,
- sal_Bool& bHasSound );
- void ImplWriteObjectEffect( SvStream& rSt,
- ::com::sun::star::presentation::AnimationEffect eEffect,
- ::com::sun::star::presentation::AnimationEffect eTextEffect,
- sal_uInt16 nOrder );
- void ImplWriteClickAction( SvStream& rSt, ::com::sun::star::presentation::ClickAction eAction, sal_Bool bMediaClickAction );
- void ImplWriteParagraphs( SvStream& rOutStrm, TextObj& rTextObj );
- void ImplWritePortions( SvStream& rOutStrm, TextObj& rTextObj );
- void ImplWriteTextStyleAtom( SvStream& rOut, int nTextInstance, sal_uInt32 nAtomInstance,
- TextRuleEntry* pTextRule, SvStream& rExtBu, EscherPropertyContainer* );
- void ImplAdjustFirstLineLineSpacing( TextObj& rTextObj, EscherPropertyContainer& rPropOpt );
- void ImplCreateShape( sal_uInt32 nType, sal_uInt32 nFlags, EscherSolverContainer& );
- void ImplCreateTextShape( EscherPropertyContainer&, EscherSolverContainer&, sal_Bool bFill );
-
- void ImplWritePage( const PHLayout& rLayout,
- EscherSolverContainer& rSolver,
- PageType ePageType,
- sal_Bool bMaster,
- int nPageNumber = 0 );
- void ImplCreateCellBorder( const CellBorder* pCellBorder, sal_Int32 nX1, sal_Int32 nY1, sal_Int32 nX2, sal_Int32 nY2 );
- void ImplCreateTable( com::sun::star::uno::Reference< com::sun::star::drawing::XShape >& rXShape, EscherSolverContainer& aSolverContainer,
- EscherPropertyContainer& aPropOpt );
-
- sal_Bool ImplCloseDocument(); // die font-, hyper-, Soundliste wird geschrieben ..
- void ImplWriteCString( SvStream&, const String&, sal_uInt32 nInstance = 0 );
-
- virtual void ImplWriteSlide( sal_uInt32 nPageNum, sal_uInt32 nMasterID, sal_uInt16 nMode,
- sal_Bool bHasBackground, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > aXBackgroundPropSet );
- virtual void ImplWriteNotes( sal_uInt32 nPageNum );
- virtual void ImplWriteSlideMaster( sal_uInt32 nPageNum, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > aXBackgroundPropSet );
-
- public:
- PPTWriter( SvStorageRef& rSvStorage,
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > & rModel,
- ::com::sun::star::uno::Reference< ::com::sun::star::task::XStatusIndicator > & rStatInd,
- SvMemoryStream* pVBA, sal_uInt32 nCnvrtFlags );
-
- ~PPTWriter();
-
- sal_Bool IsValid() const { return mbStatus; };
-
- virtual void exportPPTPre();
- virtual void exportPPTPost();
-};
-
-
-#endif
diff --git a/sd/source/filter/pptx/epptbase.hxx b/sd/source/filter/pptx/epptbase.hxx
deleted file mode 100644
index b92362f..0000000
--- a/sd/source/filter/pptx/epptbase.hxx
+++ /dev/null
@@ -1,411 +0,0 @@
-#ifndef EPP_EPPTBASE_HXX
-#define EPP_EPPTBASE_HXX
-
-#include "grouptable.hxx"
-#include <vector>
-#include <vcl/mapmod.hxx>
-#include <tools/list.hxx>
-#include <tools/string.hxx>
-#include <tools/stream.hxx>
-#include <tools/gen.hxx>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/drawing/XDrawPagesSupplier.hpp>
-#include <com/sun/star/drawing/XMasterPagesSupplier.hpp>
-#include <com/sun/star/drawing/XMasterPageTarget.hpp>
-#include <com/sun/star/frame/XModel.hpp>
-#include <com/sun/star/presentation/XPresentationSupplier.hpp>
-#include <com/sun/star/presentation/FadeEffect.hpp>
-#include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
-
-// PLACEMENT_ID
-#define EPP_LAYOUT_TITLESLIDE 0 /* The slide is a title slide */
-#define EPP_LAYOUT_TITLEANDBODYSLIDE 1 /* Title and body slide */
-#define EPP_LAYOUT_TITLEMASTERSLIDE 2 /* Title master slide */
-#define EPP_LAYOUT_MASTERSLIDE 3 /* Master slide layout */
-#define EPP_LAYOUT_MASTERNOTES 4 /* Master notes layout */
-#define EPP_LAYOUT_NOTESTITLEBODY 5 /* Notes title/body layout */
-#define EPP_LAYOUT_HANDOUTLAYOUT 6 /* Handout layout, therefore it doesn't have placeholders except header, footer, and date */
-#define EPP_LAYOUT_ONLYTITLE 7 /* Only title placeholder */
-#define EPP_LAYOUT_2COLUMNSANDTITLE 8 /* Body of the slide has 2 columns and a title */
-#define EPP_LAYOUT_2ROWSANDTITLE 9 /* Slide's body has 2 rows and a title */
-#define EPP_LAYOUT_RIGHTCOLUMN2ROWS 10 /* Body contains 2 columns, right column has 2 rows */
-#define EPP_LAYOUT_LEFTCOLUMN2ROWS 11 /* Body contains 2 columns, left column has 2 rows */
-#define EPP_LAYOUT_BOTTOMROW2COLUMNS 12 /* Body contains 2 rows, bottom row has 2 columns */
-#define EPP_LAYOUT_TOPROW2COLUMN 13 /* Body contains 2 rows, top row has 2 columns */
-#define EPP_LAYOUT_4OBJECTS 14 /* 4 objects */
-#define EPP_LAYOUT_BIGOBJECT 15 /* Big object */
-#define EPP_LAYOUT_BLANCSLIDE 16 /* Blank slide */
-#define EPP_LAYOUT_TITLERIGHTBODYLEFT 17 /* Vertical title on the right, body on the left */
-#define EPP_LAYOUT_TITLERIGHT2BODIESLEFT 18 /* Vertical title on the right, body on the left split into 2 rows */
-
-#define EPP_LAYOUT_SIZE 25
-
-class PptEscherEx;
-
-struct PHLayout
-{
- sal_Int32 nLayout;
- sal_uInt8 nPlaceHolder[ 8 ];
-
- sal_uInt8 nUsedObjectPlaceHolder;
- sal_uInt8 nTypeOfTitle;
- sal_uInt8 nTypeOfOutliner;
-
- BOOL bTitlePossible;
- BOOL bOutlinerPossible;
- BOOL bSecOutlinerPossible;
-};
-
-enum PageType { NORMAL = 0, MASTER = 1, NOTICE = 2, UNDEFINED = 3 };
-
-class PropValue
-{
- protected :
-
- ::com::sun::star::uno::Any mAny;
-
- ::com::sun::star::uno::Reference
- < ::com::sun::star::beans::XPropertySet > mXPropSet;
-
- sal_Bool ImplGetPropertyValue( const String& rString );
- sal_Bool ImplGetPropertyValue( const ::com::sun::star::uno::Reference
- < ::com::sun::star::beans::XPropertySet > &, const String& );
-
- public :
-
- PropValue() {}
-
- PropValue( ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > rXPropSet )
- : mXPropSet( rXPropSet )
- {}
-
- ::com::sun::star::uno::Any GetAny() { return mAny; }
-
- static sal_Bool GetPropertyValue(
- ::com::sun::star::uno::Any& rAny,
- const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > &,
- const String& rPropertyName,
- sal_Bool bTestPropertyAvailability = sal_False );
-
- static ::com::sun::star::beans::PropertyState GetPropertyState(
- const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > &,
- const String& rPropertyName );
-};
-
-class EscherGraphicProvider;
-class PPTExBulletProvider
-{
- friend struct PPTExParaSheet;
-
- protected :
-
- SvMemoryStream aBuExPictureStream;
- SvMemoryStream aBuExOutlineStream;
- SvMemoryStream aBuExMasterStream;
-
- EscherGraphicProvider* pGraphicProv;
-
- public :
-
- sal_uInt16 GetId( const ByteString& rUniqueId, Size& rGraphicSize );
-
- PPTExBulletProvider();
- ~PPTExBulletProvider();
-};
-
-struct FontCollectionEntry
-{
- String Name;
- double Scaling;
- sal_Int16 Family;
- sal_Int16 Pitch;
- sal_Int16 CharSet;
-
- String Original;
- sal_Bool bIsConverted;
-
- FontCollectionEntry( const String& rName, sal_Int16 nFamily, sal_Int16 nPitch, sal_Int16 nCharSet ) :
- Scaling ( 1.0 ),
- Family ( nFamily ),
- Pitch ( nPitch ),
- CharSet ( nCharSet ),
- Original( rName )
- {
- ImplInit( rName );
- };
-
- FontCollectionEntry( const String& rName ) :
- Scaling ( 1.0 ),
- Original( rName )
- {
- ImplInit( rName );
- };
- ~FontCollectionEntry();
-
- private :
-
- FontCollectionEntry() {};
-
- void ImplInit( const String& rName );
-};
-
-class VirtualDevice;
-class FontCollection : private List
-{
- VirtualDevice* pVDev;
- public :
- FontCollection();
- ~FontCollection();
-
- short GetScriptDirection( const String& rText ) const;
- sal_uInt32 GetId( FontCollectionEntry& rFontDescriptor );
- sal_uInt32 GetCount() const { return List::Count(); };
- const FontCollectionEntry* GetById( sal_uInt32 nId );
- FontCollectionEntry& GetLast() { return *(FontCollectionEntry*)List::Last(); };
-};
-
-// ------------------------------------------------------------------------
-
-#define PPTEX_STYLESHEETENTRYS 9
-
-enum PPTExTextAttr
-{
- ParaAttr_BulletOn,
- ParaAttr_BuHardFont,
- ParaAttr_BuHardColor,
- ParaAttr_BuHardHeight,
- ParaAttr_BulletChar,
- ParaAttr_BulletFont,
- ParaAttr_BulletHeight,
- ParaAttr_BulletColor,
- ParaAttr_Adjust,
- ParaAttr_LineFeed,
- ParaAttr_UpperDist,
- ParaAttr_LowerDist,
- ParaAttr_TextOfs,
- ParaAttr_BulletOfs,
- ParaAttr_DefaultTab,
- ParaAttr_AsianLB_1,
- ParaAttr_AsianLB_2,
- ParaAttr_AsianLB_3,
- ParaAttr_BiDi,
- CharAttr_Bold,
- CharAttr_Italic,
- CharAttr_Underline,
- CharAttr_Shadow,
- CharAttr_Strikeout,
- CharAttr_Embossed,
- CharAttr_Font,
- CharAttr_AsianOrComplexFont,
- CharAttr_Symbol,
- CharAttr_FontHeight,
- CharAttr_FontColor,
- CharAttr_Escapement
-};
-
-struct PPTExCharLevel
-{
- sal_uInt16 mnFlags;
- sal_uInt16 mnFont;
- sal_uInt16 mnAsianOrComplexFont;
- sal_uInt16 mnFontHeight;
- sal_uInt16 mnEscapement;
- sal_uInt32 mnFontColor;
-};
-
-struct PPTExCharSheet
-{
- PPTExCharLevel maCharLevel[ 5 ];
-
- PPTExCharSheet( int nInstance );
-
- void SetStyleSheet( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > &,
- FontCollection& rFontCollection, int nLevel );
- void Write( SvStream& rSt, PptEscherEx* pEx, sal_uInt16 nLev, sal_Bool bFirst, sal_Bool bSimpleText,
- const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > & rPagePropSet );
-
-};
-
-struct PPTExParaLevel
-{
- sal_Bool mbIsBullet;
- sal_uInt16 mnBulletChar;
- sal_uInt16 mnBulletFont;
- sal_uInt16 mnBulletHeight;
- sal_uInt32 mnBulletColor;
-
- sal_uInt16 mnAdjust;
- sal_Int16 mnOOAdjust;
- sal_uInt16 mnLineFeed;
- sal_uInt16 mnUpperDist;
- sal_uInt16 mnLowerDist;
- sal_uInt16 mnTextOfs;
- sal_uInt16 mnBulletOfs;
- sal_uInt16 mnDefaultTab;
-
- sal_Bool mbExtendedBulletsUsed;
- sal_uInt16 mnBulletId;
- sal_uInt16 mnBulletStart;
- sal_uInt32 mnMappedNumType;
- sal_uInt32 mnNumberingType;
- sal_uInt16 mnAsianSettings;
- sal_uInt16 mnBiDi;
-};
-
-struct PPTExParaSheet
-{
- PPTExBulletProvider& rBuProv;
-
- sal_uInt32 mnInstance;
-
- PPTExParaLevel maParaLevel[ 5 ];
- PPTExParaSheet( int nInstance, sal_uInt16 nDefaultTab, PPTExBulletProvider& rProv );
-
- void SetStyleSheet( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > &,
- FontCollection& rFontCollection, int nLevel, const PPTExCharLevel& rCharLevel );
- void Write( SvStream& rSt, PptEscherEx* pEx, sal_uInt16 nLev, sal_Bool bFirst, sal_Bool bSimpleText,
- const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > & rPagePropSet );
-};
-
-class PPTExStyleSheet
-{
-
- public :
-
- PPTExCharSheet* mpCharSheet[ PPTEX_STYLESHEETENTRYS ];
- PPTExParaSheet* mpParaSheet[ PPTEX_STYLESHEETENTRYS ];
-
- PPTExStyleSheet( sal_uInt16 nDefaultTab, PPTExBulletProvider& rBuProv );
- ~PPTExStyleSheet();
-
- PPTExParaSheet& GetParaSheet( int nInstance ) { return *mpParaSheet[ nInstance ]; };
- PPTExCharSheet& GetCharSheet( int nInstance ) { return *mpCharSheet[ nInstance ]; };
-
- void SetStyleSheet( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > &,
- FontCollection& rFontCollection, int nInstance, int nLevel );
- sal_Bool IsHardAttribute( sal_uInt32 nInstance, sal_uInt32 nLevel, PPTExTextAttr eAttr, sal_uInt32 nValue );
-
- sal_uInt32 SizeOfTxCFStyleAtom() const;
- void WriteTxCFStyleAtom( SvStream& rSt );
-};
-
-// ------------------------------------------------------------------------
-
-class PPTWriterBase : public PropValue, public GroupTable
-{
-protected:
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > mXModel;
- ::com::sun::star::uno::Reference< ::com::sun::star::task::XStatusIndicator > mXStatusIndicator;
-
- sal_Bool mbStatusIndicator;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPagesSupplier > mXDrawPagesSupplier;
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XMasterPagesSupplier > mXMasterPagesSupplier;
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPages > mXDrawPages;
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > mXDrawPage;
- ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > mXPagePropSet;
- ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > mXBackgroundPropSet;
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > mXShapes;
- ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > mXShape;
- ::com::sun::star::awt::Size maSize;
- ::com::sun::star::awt::Point maPosition;
- Rectangle maRect;
- ByteString mType;
- sal_Bool mbPresObj;
- sal_Bool mbEmptyPresObj;
- sal_Int32 mnAngle;
-
- sal_uInt32 mnPages; // number of Slides ( w/o master pages & notes & handout )
- sal_uInt32 mnMasterPages;
-
- Fraction maFraction;
- MapMode maMapModeSrc;
- MapMode maMapModeDest;
- ::com::sun::star::awt::Size maDestPageSize;
- ::com::sun::star::awt::Size maNotesPageSize;
-
- PageType meLatestPageType;
- std::vector< PPTExStyleSheet* > maStyleSheetList;
- PPTExStyleSheet* mpStyleSheet;
-
- FontCollection maFontCollection;
-
- List maTextRuleList; // TextRuleEntry's
-
- virtual void ImplWriteSlide( sal_uInt32 /* nPageNum */, sal_uInt32 /* nMasterNum */, sal_uInt16 /* nMode */,
- sal_Bool /* bHasBackground */, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > /* aXBackgroundPropSet */ ) {}
- virtual void ImplWriteNotes( sal_uInt32 nPageNum ) = 0;
- virtual void ImplWriteSlideMaster( sal_uInt32 /* nPageNum */, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > /* aXBackgroundPropSet */ ) {}
- virtual void ImplWriteLayout( sal_Int32 /* nOffset */, sal_uInt32 /* nMasterNum */ ) {}
-
- virtual void exportPPTPre() {}
- virtual void exportPPTPost() {}
-
- virtual sal_Bool ImplCreateDocument()=0;
- virtual sal_Bool ImplCreateMainNotes()=0;
-
- sal_Bool GetStyleSheets();
- sal_Bool GetShapeByIndex( sal_uInt32 nIndex, sal_Bool bGroup = FALSE );
-
- sal_Bool CreateMainNotes();
-
- ::com::sun::star::awt::Size MapSize( const ::com::sun::star::awt::Size& );
- ::com::sun::star::awt::Point MapPoint( const ::com::sun::star::awt::Point& );
- Rectangle MapRectangle( const ::com::sun::star::awt::Rectangle& );
-
- sal_Bool ContainsOtherShapeThanPlaceholders( sal_Bool bForOOMLX );
-
-public:
- PPTWriterBase();
- PPTWriterBase( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > & rModel,
- const ::com::sun::star::uno::Reference< ::com::sun::star::task::XStatusIndicator > & rStatInd );
-
- ~PPTWriterBase();
-
- void exportPPT();
-
- sal_Bool InitSOIface();
- sal_Bool GetPageByIndex( sal_uInt32 nIndex, PageType );
- sal_uInt32 GetMasterIndex( PageType ePageType );
- sal_Bool SetCurrentStyleSheet( sal_uInt32 nPageNum );
-
- sal_Bool GetPresObj() { return mbPresObj; }
-
- PHLayout& GetLayout( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& rXPropSet ) const;
- PHLayout& GetLayout( sal_Int32 nOffset ) const;
- sal_Int32 GetLayoutOffset( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& rXPropSet ) const;
-
- sal_Bool CreateSlide( sal_uInt32 nPageNum );
- sal_Bool CreateSlideMaster( sal_uInt32 nPageNum );
- sal_Bool CreateNotes( sal_uInt32 nPageNum );
-
- static sal_Int8 GetTransition( sal_Int16 nTransitionType, sal_Int16 nTransitionSubtype, ::com::sun::star::presentation::FadeEffect eEffect, sal_uInt8& nDirection );
- static sal_Int8 GetTransition( ::com::sun::star::presentation::FadeEffect eEffect, sal_uInt8& nDirection );
-};
-
-#define PPT_TRANSITION_TYPE_NONE 0
-#define PPT_TRANSITION_TYPE_RANDOM 1
-#define PPT_TRANSITION_TYPE_BLINDS 2
-#define PPT_TRANSITION_TYPE_CHECKER 3
-#define PPT_TRANSITION_TYPE_COVER 4
-#define PPT_TRANSITION_TYPE_DISSOLVE 5
-#define PPT_TRANSITION_TYPE_FADE 6
-#define PPT_TRANSITION_TYPE_PULL 7
-#define PPT_TRANSITION_TYPE_RANDOM_BARS 8
-#define PPT_TRANSITION_TYPE_STRIPS 9
-#define PPT_TRANSITION_TYPE_WIPE 10
-#define PPT_TRANSITION_TYPE_ZOOM 11
-#define PPT_TRANSITION_TYPE_SPLIT 13
-
-// effects, new in xp
-#define PPT_TRANSITION_TYPE_DIAMOND 17
-#define PPT_TRANSITION_TYPE_PLUS 18
-#define PPT_TRANSITION_TYPE_WEDGE 19
-#define PPT_TRANSITION_TYPE_PUSH 20
-#define PPT_TRANSITION_TYPE_COMB 21
-#define PPT_TRANSITION_TYPE_NEWSFLASH 22
-#define PPT_TRANSITION_TYPE_SMOOTHFADE 23
-#define PPT_TRANSITION_TYPE_WHEEL 26
-#define PPT_TRANSITION_TYPE_CIRCLE 27
-
-#endif
diff --git a/sd/source/filter/pptx/epptdef.hxx b/sd/source/filter/pptx/epptdef.hxx
deleted file mode 100644
index b802fdd..0000000
--- a/sd/source/filter/pptx/epptdef.hxx
+++ /dev/null
@@ -1,263 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: epptdef.hxx,v $
- * $Revision: 1.4 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _EPPT_DEF_HXX
-#define _EPPT_DEF_HXX
-
-#include <tools/solar.h>
-
-#define EPP_FLAG_CONTAINER 0x0F // If the version field of a record
- // header takes on this value, the
- // record header marks the start of
- // a container.
-
-#define EPP_Unknown 0
-#define EPP_SubContainerCompleted 1
-#define EPP_IRRAtom 2
-#define EPP_PSS 3
-#define EPP_SubContainerException 4
-#define EPP_ClientSignal1 6
-#define EPP_ClientSignal2 7
-#define EPP_PowerPointStateInfoAtom 10
-#define EPP_Document 1000
-#define EPP_DocumentAtom 1001
-#define EPP_EndDocument 1002
-#define EPP_SlidePersist 1003
-#define EPP_SlideBase 1004
-#define EPP_SlideBaseAtom 1005
-#define EPP_Slide 1006
-#define EPP_SlideAtom 1007
-#define EPP_Notes 1008
-#define EPP_NotesAtom 1009
-#define EPP_Environment 1010
-#define EPP_SlidePersistAtom 1011 //0x03F3
-#define EPP_Scheme 1012
-#define EPP_SchemeAtom 1013
-#define EPP_DocViewInfo 1014
-#define EPP_SslideLayoutAtom 1015
-#define EPP_MainMaster 1016
-#define EPP_SSSlideInfoAtom 1017
-#define EPP_SlideViewInfo 1018
-#define EPP_GuideAtom 1019
-#define EPP_ViewInfo 1020
-#define EPP_ViewInfoAtom 1021
-#define EPP_SlideViewInfoAtom 1022
-#define EPP_VBAInfo 1023
-#define EPP_VBAInfoAtom 1024
-#define EPP_SSDocInfoAtom 1025
-#define EPP_Summary 1026
-#define EPP_Texture 1027
-#define EPP_VBASlideInfo 1028
-#define EPP_VBASlideInfoAtom 1029
-#define EPP_DocRoutingSlip 1030
-#define EPP_OutlineViewInfo 1031
-#define EPP_SorterViewInfo 1032
-#define EPP_ExObjList 1033
-#define EPP_ExObjListAtom 1034
-#define EPP_PPDrawingGroup 1035
-#define EPP_PPDrawing 1036
-#define EPP_NamedShows 1040
-#define EPP_NamedShow 1041
-#define EPP_NamedShowSlides 1042
-#define EPP_List 2000
-#define EPP_FontCollection 2005
-#define EPP_ListPlaceholder 2017
-#define EPP_BookmarkCollection 2019
-#define EPP_SoundCollection 2020
-#define EPP_SoundCollAtom 2021
-#define EPP_Sound 2022
-#define EPP_SoundData 2023
-#define EPP_BookmarkSeedAtom 2025
-#define EPP_GuideList 2026
-#define EPP_RunArray 2028
-#define EPP_RunArrayAtom 2029
-#define EPP_ArrayElementAtom 2030
-#define EPP_Int4ArrayAtom 2031
-#define EPP_ColorSchemeAtom 2032
-
-// these atoms first was seen in ppt2000 in a private Tag atom
-#define EPP_PST_ExtendedBuGraContainer 2040 // consist of 4041
-#define EPP_PST_ExtendedBuGraAtom 2041 // the instance of this atom indices the current graphic
-
-#define EPP_OEShape 3008
-#define EPP_ExObjRefAtom 3009
-#define EPP_OEPlaceholderAtom 3011
-#define EPP_GrColor 3020
-#define EPP_GrectAtom 3025
-#define EPP_GratioAtom 3031
-#define EPP_Gscaling 3032
-#define EPP_GpointAtom 3034
-#define EPP_OEShapeAtom 3035
-#define EPP_OutlineTextRefAtom 3998
-#define EPP_TextHeaderAtom 3999
-#define EPP_TextCharsAtom 4000
-#define EPP_StyleTextPropAtom 4001
-#define EPP_BaseTextPropAtom 4002
-#define EPP_TxMasterStyleAtom 4003
-#define EPP_TxCFStyleAtom 4004
-#define EPP_TxPFStyleAtom 4005
-#define EPP_TextRulerAtom 4006
-#define EPP_TextBookmarkAtom 4007
-#define EPP_TextBytesAtom 4008
-#define EPP_TxSIStyleAtom 4009
-#define EPP_TextSpecInfoAtom 4010
-#define EPP_DefaultRulerAtom 4011
-
-// these atoms first was seen in ppt2000 in a private Tag atom
-#define EPP_PST_ExtendedParagraphAtom 4012
-#define EPP_PST_ExtendedParagraphMasterAtom 4013
-#define EPP_PST_ExtendedPresRuleContainer 4014 // consist of 4012, 4015,
-#define EPP_PST_ExtendedParagraphHeaderAtom 4015 // the instance of this atom indices the current presobj
- // the first UINT32 in this atom indices the current slideId
-
-#define EPP_FontEnityAtom 4023
-#define EPP_FontEmbedData 4024
-#define EPP_TypeFace 4025
-#define EPP_CString 4026
-#define EPP_ExternalObject 4027
-#define EPP_MetaFile 4033
-#define EPP_ExOleObj 4034
-#define EPP_ExOleObjAtom 4035
-#define EPP_ExPlainLinkAtom 4036
-#define EPP_CorePict 4037
-#define EPP_CorePictAtom 4038
-#define EPP_ExPlainAtom 4039
-#define EPP_SrKinsoku 4040
-#define EPP_Handout 4041
-#define EPP_ExEmbed 4044
-#define EPP_ExEmbedAtom 4045
-#define EPP_ExLink 4046
-#define EPP_ExLinkAtom_old 4047
-#define EPP_BookmarkEntityAtom 4048
-#define EPP_ExLinkAtom 4049
-#define EPP_SrKinsokuAtom 4050
-#define EPP_ExHyperlinkAtom 4051
-#define EPP_ExPlain 4053
-#define EPP_ExPlainLink 4054
-#define EPP_ExHyperlink 4055
-#define EPP_SlideNumberMCAtom 4056
-#define EPP_HeadersFooters 4057
-#define EPP_HeadersFootersAtom 4058
-#define EPP_RecolorEntryAtom 4062
-#define EPP_TxInteractiveInfoAtom 4063
-#define EPP_EmFormatAtom 4065
-#define EPP_CharFormatAtom 4066
-#define EPP_ParaFormatAtom 4067
-#define EPP_MasterText 4068
-#define EPP_RecolorInfoAtom 4071
-#define EPP_ExQuickTime 4073
-#define EPP_ExQuickTimeMovie 4074
-#define EPP_ExQuickTimeMovieData 4075
-#define EPP_ExSubscription 4076
-#define EPP_ExSubscriptionSection 4077
-#define EPP_ExControl 4078
-#define EPP_ExControlAtom 4091
-#define EPP_SlideListWithText 4080 // 0x0FF0
-#define EPP_AnimationInfoAtom 4081
-#define EPP_InteractiveInfo 4082
-#define EPP_InteractiveInfoAtom 4083
-#define EPP_SlideList 4084
-#define EPP_UserEditAtom 4085
-#define EPP_CurrentUserAtom 4086
-#define EPP_DateTimeMCAtom 4087
-#define EPP_GenericDateMCAtom 4088
-#define EPP_HeaderMCAtom 4089
-#define EPP_FooterMCAtom 4090
-#define EPP_ExMediaAtom 4100
-#define EPP_ExVideo 4101
-#define EPP_ExAviMovie 4102
-#define EPP_ExMCIMovie 4103
-#define EPP_ExMIDIAudio 4109
-#define EPP_ExCDAudio 4110
-#define EPP_ExWAVAudioEmbedded 4111
-#define EPP_ExWAVAudioLink 4112
-#define EPP_ExOleObjStg 4113
-#define EPP_ExCDAudioAtom 4114
-#define EPP_ExWAVAudioEmbeddedAtom 4115
-#define EPP_AnimationInfo 4116
-#define EPP_RTFDateTimeMCAtom 4117
-#define EPP_ProgTags 5000
-#define EPP_ProgStringTag 5001
-#define EPP_ProgBinaryTag 5002
-#define EPP_BinaryTagData 5003
-#define EPP_PrintOptions 6000
-#define EPP_PersistPtrFullBlock 6001
-#define EPP_PersistPtrIncrementalBlock 6002
-#define EPP_RulerIndentAtom 10000
-#define EPP_GscalingAtom 10001
-#define EPP_GrColorAtom 10002
-#define EPP_GLPointAtom 10003
-
-#define EPP_PLACEHOLDER_NONE 0 // 0 None
-#define EPP_PLACEHOLDER_MASTERTITLE 1 // 1 Master title
-#define EPP_PLACEHOLDER_MASTERBODY 2 // 2 Master body
-#define EPP_PLACEHOLDER_MASTERCENTEREDTITLE 3 // 3 Master centered title
-#define EPP_PLACEHOLDER_MASTERSUBTITLE 4 // 10 Master subtitle
-#define EPP_PLACEHOLDER_MASTERNOTESSLIDEIMAGE 5 // 4 Master notes slide image
-#define EPP_PLACEHOLDER_MASTERNOTESBODYIMAGE 6 // 5 Master notes body image
-#define EPP_PLACEHOLDER_MASTERDATE 7 // 6 Master date
-#define EPP_PLACEHOLDER_MASTERSLIDENUMBER 8 // 7 Master slide number
-#define EPP_PLACEHOLDER_MASTERFOOTER 9 // 8 Master footer
-#define EPP_PLACEHOLDER_MASTERHEADER 10 // 9 Master header
-#define EPP_PLACEHOLDER_GENERICTEXTOBJECT // 11 Generic text object
-#define EPP_PLACEHOLDER_TITLE 13 // 12 Title
-#define EPP_PLACEHOLDER_BODY 14 // 13 Body
-#define EPP_PLACEHOLDER_NOTESBODY 12 // 14 Notes body
-#define EPP_PLACEHOLDER_CENTEREDTITLE 15 // 15 Centered title
-#define EPP_PLACEHOLDER_SUBTITLE 16 // 16 Subtitle
-#define EPP_PLACEHOLDER_VERTICALTEXTTITLE 17 // 17 Vertical text title
-#define EPP_PLACEHOLDER_VERTICALTEXTBODY 18 // 18 Vertical text body
-#define EPP_PLACEHOLDER_NOTESSLIDEIMAGE 11 // 19 Notes slide image
-#define EPP_PLACEHOLDER_OBJECT 19 // 20 Object (no matter the size)
-#define EPP_PLACEHOLDER_GRAPH 20 // 21 Graph
-#define EPP_PLACEHOLDER_TABLE 21 // 22 Table
-#define EPP_PLACEHOLDER_CLIPART 22 // 23 Clip Art
-#define EPP_PLACEHOLDER_ORGANISZATIONCHART 23 // 24 Organization Chart
-#define EPP_PLACEHOLDER_MEDIACLIP 24 // 25 Media Clip
-
-#define EPP_TEXTTYPE_Title 0
-#define EPP_TEXTTYPE_Body 1
-#define EPP_TEXTTYPE_Notes 2
-#define EPP_TEXTTYPE_notUsed 3
-#define EPP_TEXTTYPE_Other 4 // ( Text in a shape )
-#define EPP_TEXTTYPE_CenterBody 5 // ( subtitle in title slide )
-#define EPP_TEXTTYPE_CenterTitle 6 // ( title in title slide )
-#define EPP_TEXTTYPE_HalfBody 7 // ( body in two-column slide )
-#define EPP_TEXTTYPE_QuarterBody 8 // ( body in four-body slide )
-
-#define EPP_SLIDESIZE_TYPEONSCREEN 0
-#define EPP_SLIDESIZE_TYPELETTERSIZERPAPER 1
-#define EPP_SLIDESIZE_TYPEA4PAPER 2
-#define EPP_SLIDESIZE_TYPE35MM 3
-#define EPP_SLIDESIZE_TYPEOVERHEAD 4
-#define EPP_SLIDESIZE_TYPEBANNER 5
-#define EPP_SLIDESIZE_TYPECUSTOM 6
-
-#endif
diff --git a/sd/source/filter/pptx/epptooxml.hxx b/sd/source/filter/pptx/epptooxml.hxx
deleted file mode 100644
index d54169f..0000000
--- a/sd/source/filter/pptx/epptooxml.hxx
+++ /dev/null
@@ -1,138 +0,0 @@
-#ifndef EPPT_POWERPOINT_EXPORT_HXX
-#define EPPT_POWERPOINT_EXPORT_HXX
-
-#include <oox/core/xmlfilterbase.hxx>
-#include <oox/helper/zipstorage.hxx>
-#include <oox/export/shapes.hxx>
-#include "epptbase.hxx"
-
-namespace com { namespace sun { namespace star {
- namespace animations {
- class XAnimate;
- class XAnimationNode;
- }
-}}}
-
-namespace oox {
- namespace drawingml {
- class ShapeExport;
- }
-namespace core {
-
-class PowerPointShapeExport;
-
-struct LayoutInfo
-{
- std::vector< sal_Int32 > mnFileIdArray;
-};
-
-enum PlaceholderType
-{
- None,
- SlideImage,
- Notes,
- Header,
- Footer,
- SlideNumber,
- DateAndTime,
- Outliner,
- Title,
- Subtitle
-};
-
-class PowerPointExport : public XmlFilterBase, public PPTWriterBase
-{
- friend class PowerPointShapeExport;
-public:
-
- PowerPointExport( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > & rSMgr );
- ~PowerPointExport();
-
- // from FilterBase
- virtual bool importDocument() throw();
- virtual bool exportDocument() throw();
-
- // only needed for import, leave them empty, refactor later XmlFilterBase to export and import base?
- virtual sal_Int32 getSchemeClr( sal_Int32 /* nColorSchemeToken */ ) const { return 0; }
- virtual oox::vml::Drawing* getVmlDrawing() { return NULL; }
- virtual const oox::drawingml::Theme* getCurrentTheme() const { return NULL; }
- virtual const oox::drawingml::table::TableStyleListPtr getTableStyles() { return oox::drawingml::table::TableStyleListPtr(); }
- virtual oox::drawingml::chart::ChartConverter* getChartConverter() { return &maChartConverter; }
-
- static const char* GetSideDirection( sal_uInt8 nDirection );
- static const char* GetCornerDirection( sal_uInt8 nDirection );
- static const char* Get8Direction( sal_uInt8 nDirection );
-
-protected:
-
- virtual void ImplWriteSlide( sal_uInt32 nPageNum, sal_uInt32 nMasterNum, sal_uInt16 nMode,
- sal_Bool bHasBackground, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > aXBackgroundPropSet );
- virtual void ImplWriteNotes( sal_uInt32 nPageNum );
- virtual void ImplWriteSlideMaster( sal_uInt32 nPageNum, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > aXBackgroundPropSet );
- virtual void ImplWriteLayout( sal_Int32 nOffset, sal_uInt32 nMasterNum );
- void WriteTheme( sal_Int32 nThemeNum );
-
- virtual sal_Bool ImplCreateDocument();
- virtual sal_Bool ImplCreateMainNotes();
-
- sal_Bool WriteNotesMaster();
-
- void WriteAnimateTo( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Any aValue, const ::rtl::OUString& rAttributeName );
- void WriteAnimateValues( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimate >& rXAnimate );
- void WriteAnimationCondition( ::sax_fastparser::FSHelperPtr pFS, ::com::sun::star::uno::Any& rAny, sal_Bool bWriteEvent, sal_Bool bMainSeqChild );
- void WriteAnimationCondition( ::sax_fastparser::FSHelperPtr pFS, const char* pDelay, const char* pEvent, double fDelay, sal_Bool bHasFDelay );
- void WriteAnimations( ::sax_fastparser::FSHelperPtr pFS );
- void WriteAnimationAttributeName( ::sax_fastparser::FSHelperPtr pFS, const ::rtl::OUString& rAttributeName );
- void WriteAnimationNode( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& rXNode, sal_Bool bMainSeqChild );
- void WriteAnimationNodeAnimate( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& rXNode, sal_Int32 nXmlNodeType, sal_Bool bMainSeqChild );
- void WriteAnimationNodeAnimateInside( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& rXNode, sal_Bool bMainSeqChild, sal_Bool bSimple );
- void WriteAnimationNodeSeq( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& rXNode, sal_Int32 nXmlNodeType, sal_Bool bMainSeqChild );
- void WriteAnimationNodeEffect( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& rXNode, sal_Int32 nXmlNodeType, sal_Bool bMainSeqChild );
- void WriteAnimationNodeCommonPropsStart( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& rXNode, sal_Bool bSingle, sal_Bool bMainSeqChild );
- void WriteAnimationNodeCommonPropsEnd( ::sax_fastparser::FSHelperPtr pFS );
- void WriteAnimationProperty( ::sax_fastparser::FSHelperPtr pFS, const ::com::sun::star::uno::Any& rAny );
- void WriteAnimationTarget( ::sax_fastparser::FSHelperPtr pFS, ::com::sun::star::uno::Any aTarget );
- void WriteTextStyles( ::sax_fastparser::FSHelperPtr pFS );
- void WriteTextStyle( ::sax_fastparser::FSHelperPtr pFS, int nInstance, sal_Int32 xmlToken );
- void WriteTextStyleLevel( ::sax_fastparser::FSHelperPtr pFS, int nInstance, int nLevel );
- void ImplWriteBackground( ::sax_fastparser::FSHelperPtr pFS, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > aXBackgroundPropSet );
- void WriteTransition( ::sax_fastparser::FSHelperPtr pFS );
-
- sal_Int32 GetLayoutFileId( sal_Int32 nOffset, sal_uInt32 nMasterNum );
-
- // shapes
- void WriteShapeTree( ::sax_fastparser::FSHelperPtr pFS, PageType ePageType, sal_Bool bMaster );
-
- sal_uInt32 GetNewSlideId() { return mnSlideIdMax ++; }
- sal_uInt32 GetNewSlideMasterId() { return mnSlideMasterIdMax ++; }
-
-private:
- void AddLayoutIdAndRelation( ::sax_fastparser::FSHelperPtr pFS, sal_Int32 nLayoutFileId );
-
- virtual ::rtl::OUString implGetImplementationName() const;
-
- ::boost::shared_ptr< ::oox::drawingml::chart::ChartConverter > mxChartConv;
-
- ::sax_fastparser::FSHelperPtr mPresentationFS;
-
- LayoutInfo mLayoutInfo[EPP_LAYOUT_SIZE];
- std::vector< ::sax_fastparser::FSHelperPtr > mpSlidesFSArray;
- std::vector< ::sax_fastparser::FSHelperPtr > mpMasterFSArray;
- sal_Int32 mnLayoutFileIdMax;
-
- sal_uInt32 mnSlideIdMax;
- sal_uInt32 mnSlideMasterIdMax;
- sal_uInt32 mnAnimationNodeIdMax;
-
- sal_Bool mbCreateNotes;
-
- static sal_Int32 nStyleLevelToken[5];
-
- ::oox::drawingml::ShapeExport::ShapeHashMap maShapeMap;
- oox::drawingml::chart::ChartConverter maChartConverter;
-};
-
-}
-}
-
-#endif
diff --git a/sd/source/filter/pptx/escherex.hxx b/sd/source/filter/pptx/escherex.hxx
deleted file mode 100644
index 1e2222d..0000000
--- a/sd/source/filter/pptx/escherex.hxx
+++ /dev/null
@@ -1,77 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _PptEscherEX_HXX
-#define _PptEscherEX_HXX
-#include <filter/msfilter/escherex.hxx>
-
-// ---------------------------------------------------------------------------------------------
-// Werte fuer den ULONG im PPT_PST_TextHeaderAtom
-enum PPT_TextHeader
-{
- PPTTH_TITLE,
- PPTTH_BODY,
- PPTTH_NOTES,
- PPTTH_NOTUSED,
- PPTTH_OTHER, // Text in a Shape
- PPTTH_CENTERBODY, // Subtitle in Title-Slide
- PPTTH_CENTERTITLE, // Title in Title-Slide
- PPTTH_HALFBODY, // Body in two-column slide
- PPTTH_QUARTERBODY // Body in four-body slide
-};
-
-// ---------------------------------------------------------------------------------------------
-
-class PptEscherEx : public EscherEx
-{
- sal_uInt32 ImplDggContainerSize();
- void ImplWriteDggContainer( SvStream& rSt );
-
- sal_uInt32 ImplOptAtomSize();
- void ImplWriteOptAtom( SvStream& rSt );
-
- sal_uInt32 ImplSplitMenuColorsAtomSize();
- void ImplWriteSplitMenuColorsAtom( SvStream& rSt );
-
- public:
-
- PptEscherEx( SvStream& rOut );
- ~PptEscherEx();
-
- void OpenContainer( UINT16 n_EscherContainer, int nRecInstance = 0 );
- void CloseContainer();
-
- sal_uInt32 EnterGroup( Rectangle* pBoundRect, SvMemoryStream* pClientData );
-
- UINT32 DrawingGroupContainerSize();
- void WriteDrawingGroupContainer( SvStream& rSt );
-
- using EscherEx::EnterGroup;
-};
-
-
-#endif
diff --git a/sd/source/filter/pptx/grouptable.hxx b/sd/source/filter/pptx/grouptable.hxx
deleted file mode 100644
index 606158a..0000000
--- a/sd/source/filter/pptx/grouptable.hxx
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef EPPT_GROUP_TABLE
-#define EPPT_GROUP_TABLE
-
-#include <com/sun/star/container/XIndexAccess.hpp>
-
-struct GroupEntry
-{
- sal_uInt32 mnCurrentPos;
- sal_uInt32 mnCount;
- ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > mXIndexAccess;
-
- GroupEntry( ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & rIndex )
- {
- mXIndexAccess = rIndex;
- mnCount =mXIndexAccess->getCount();
- mnCurrentPos = 0;
- };
-
- GroupEntry( sal_uInt32 nCount )
- {
- mnCount = nCount;
- mnCurrentPos = 0;
- };
-
- ~GroupEntry(){};
-};
-
-
-class GroupTable
-{
- protected:
-
- sal_uInt32 mnIndex;
- sal_uInt32 mnCurrentGroupEntry;
- sal_uInt32 mnMaxGroupEntry;
- sal_uInt32 mnGroupsClosed;
- GroupEntry** mpGroupEntry;
-
- void ImplResizeGroupTable( sal_uInt32 nEntrys );
-
- public:
-
- sal_uInt32 GetCurrentGroupIndex() const { return mnIndex; };
- sal_Int32 GetCurrentGroupLevel() const { return mnCurrentGroupEntry - 1; };
- ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > &
- GetCurrentGroupAccess() const { return mpGroupEntry[ mnCurrentGroupEntry - 1 ]->mXIndexAccess; };
- sal_uInt32 GetGroupsClosed();
- void SkipCurrentGroup();
- void ResetGroupTable( sal_uInt32 nCount );
- void ClearGroupTable();
- sal_Bool EnterGroup( ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & rIndex );
- sal_Bool GetNextGroupEntry();
- GroupTable();
- ~GroupTable();
-};
-
-
-#endif
diff --git a/sd/source/filter/pptx/makefile.mk b/sd/source/filter/pptx/makefile.mk
deleted file mode 100644
index e833a18..0000000
--- a/sd/source/filter/pptx/makefile.mk
+++ /dev/null
@@ -1,61 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2008 by Sun Microsystems, Inc.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# $RCSfile: makefile.mk,v $
-#
-# $Revision: 1.15 $
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-PRJNAME=sd
-TARGET=pptx
-ENABLE_EXCEPTIONS=TRUE
-VISIBILITY_HIDDEN=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-.IF "$(COM)"=="GCC"
-NOOPTFILES= $(SLO)$/pptx-epptso.obj
-.ENDIF
-
-SLOFILES = $(SLO)$/pptx-eppt.obj \
- $(SLO)$/pptx-epptbase.obj \
- $(SLO)$/pptx-epptooxml.obj \
- $(SLO)$/pptx-epptso.obj \
- $(SLO)$/pptx-escherex.obj \
- $(SLO)$/pptx-grouptable.obj \
- $(SLO)$/pptx-pptexanimations.obj \
- $(SLO)$/pptx-pptexsoundcollection.obj \
- $(SLO)$/pptx-text.obj \
- $(SLO)$/pptx-stylesheet.obj
-
-# --- Targets --------------------------------------------------------------
-
-.INCLUDE : target.mk
diff --git a/sd/source/filter/pptx/pptexanimations.hxx b/sd/source/filter/pptx/pptexanimations.hxx
deleted file mode 100644
index d48591a..0000000
--- a/sd/source/filter/pptx/pptexanimations.hxx
+++ /dev/null
@@ -1,151 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: pptexanimations.hxx,v $
- * $Revision: 1.9 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _SD_PPT_EXANIMATIONS_HXX
-#define _SD_PPT_EXANIMATIONS_HXX
-
-#include <com/sun/star/animations/XTimeContainer.hpp>
-#include <com/sun/star/drawing/XDrawPage.hpp>
-#include <com/sun/star/animations/XAnimate.hpp>
-#include <com/sun/star/beans/NamedValue.hpp>
-#ifndef _SD_PPTANIMATIONS_HXX
-#include "../ppt/pptanimations.hxx"
-#endif
-#include <pptexsoundcollection.hxx>
-#include <filter/msfilter/escherex.hxx>
-
-#ifdef DBG_ANIM_LOG
-#include <stdio.h>
-#endif
-
-#ifndef BOOST_SHARED_PTR_HPP_INCLUDED
-#include <boost/shared_ptr.hpp>
-#endif
-
-#include <list>
-
-class DffRecordHeader;
-class SdPage;
-class SvStream;
-
-namespace ppt
-{
-
- struct AfterEffectNode
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > mxNode;
- ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > mxMaster;
-
- AfterEffectNode( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode,
- const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xMaster )
- : mxNode( xNode ), mxMaster( xMaster ) {}
- };
-
- typedef boost::shared_ptr< AfterEffectNode > AfterEffectNodePtr;
-
-typedef sal_uInt32 TranslateMode;
-#define TRANSLATE_NONE 0
-#define TRANSLATE_VALUE 1
-#define TRANSLATE_ATTRIBUTE 2
-#define TRANSLATE_MEASURE 4
-#define TRANSLATE_NUMBER_TO_STRING 8
-
-const int AFTEREFFECT_NONE = 0;
-const int AFTEREFFECT_COLOR = 1;
-const int AFTEREFFECT_SET = 2;
-
-class AnimationExporter
-{
- ::com::sun::star::uno::Any aTarget;
-
- void writeZString( SvStream& rStrm, const rtl::OUString& rVal );
- sal_Bool getColorAny( const ::com::sun::star::uno::Any& rAny, const sal_Int16 nColorSpace, sal_Int32& rMode, sal_Int32& rA, sal_Int32& rB, sal_Int32& rC ) const;
- sal_Bool exportAnimProperty( SvStream& rStrm, const sal_uInt16 nPropertyId, const ::com::sun::star::uno::Any& rAny, const TranslateMode eTranslateMode );
- void exportAnimPropertyString( SvStream& rStrm, const sal_uInt16 nPropertyId, const rtl::OUString& rVal, const TranslateMode eTranslateMode );
- void exportAnimPropertyFloat( SvStream& rStrm, const sal_uInt16 nPropertyId, const double& rVal, const TranslateMode eTranslateMode );
- void exportAnimPropertyuInt32( SvStream& rStrm, const sal_uInt16 nPropertyId, const sal_uInt32 nVal, const TranslateMode eTranslateMode );
- void exportAnimPropertyByte( SvStream& rStrm, const sal_uInt16 nPropertyId, const sal_uInt8 nVal, const TranslateMode eTranslateMode );
-
- // if available exportAnimPropertySet returns the ::com::sun::star::presentation::EffectNodeType
- sal_Int16 exportAnimPropertySet( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
- void exportAnimNode( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode,
- const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >* pParent, const sal_Int32 nGroupLevel, const sal_Int16 nFillDefault );
- void exportAnimate( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
- void exportAnimateTarget( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, const sal_uInt32 nForceAttributeName = 0, int nAfterEffectType = AFTEREFFECT_NONE );
- void exportAnimateSet( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, int nAfterEffectType );
- void exportAnimAction( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
- void exportAnimEvent( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, const sal_Int32 nFlags = 0 );
- void exportNode( SvStream& rStrm, ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > xNode,
- const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >* xParent,
- const sal_uInt16 nContainerRecType, const sal_uInt16 nInstance, const sal_Int32 nGroupLevel, const sal_Bool bTakeBackInteractiveSequenceTiming,
- const sal_Int16 nFillDefault );
- void exportAnimateTargetElement( SvStream& rStrm, const ::com::sun::star::uno::Any aAny, const sal_Bool bCreate2b01Atom );
- void exportAnimateKeyPoints( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimate >& xAnimate );
- void exportAnimValue( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, const sal_Bool bExportAlways );
- void exportTransitionFilter( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
- void exportAnimateMotion( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
- void exportAnimateTransform( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
- void exportAnimateColor( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, int nAfterEffectType );
- void exportIterate( SvStream& rStrm, const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
-
- const EscherSolverContainer& mrSolverContainer;
- ppt::ExSoundCollection& mrExSoundCollection;
- void processAfterEffectNodes( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode );
-
- bool isAfterEffectNode( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode ) const;
- bool hasAfterEffectNode( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xAfterEffectNode ) const;
- bool isEmptyNode( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode ) const;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > createAfterEffectNodeClone( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode ) const;
-
- std::list< AfterEffectNodePtr > maAfterEffectNodes;
-
-public:
- AnimationExporter( const EscherSolverContainer& rSolverContainer, ppt::ExSoundCollection& rExSoundCollection );
-
- void doexport( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage, SvStream& rStrm );
-
- sal_Int32 mnCurrentGroup;
-
- // helper methods also used in ooxml export
- static ::com::sun::star::uno::Any convertAnimateValue( const ::com::sun::star::uno::Any& rSource, const rtl::OUString& rAttributeName );
- static sal_Bool GetNodeType( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, sal_Int16& nType );
- static sal_Int16 GetFillMode( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode, const sal_Int16 nFillDefault );
- static void GetUserData( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& rUserData, const ::com::sun::star::uno::Any ** pAny, sal_Size nLen );
- static sal_uInt32 TranslatePresetSubType( const sal_uInt32 nPresetClass, const sal_uInt32 nPresetId, const rtl::OUString& rPresetSubType );
- static sal_uInt32 GetPresetID( const rtl::OUString& rPreset, sal_uInt32 nAPIPresetClass, sal_Bool& bPresetId );
- static sal_uInt32 GetValueTypeForAttributeName( const rtl::OUString& rAttributeName );
-
- static const sal_Char* FindTransitionName( const sal_Int16 nType, const sal_Int16 nSubType, const sal_Bool bDirection );
- static ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > getTargetElementShape( const ::com::sun::star::uno::Any& rAny, sal_Int32& rBegin, sal_Int32& rEnd, sal_Bool& rParagraphTarget );
-};
-} // namespace ppt
-
-#endif
diff --git a/sd/source/filter/pptx/pptexsoundcollection.hxx b/sd/source/filter/pptx/pptexsoundcollection.hxx
deleted file mode 100644
index 6831474..0000000
--- a/sd/source/filter/pptx/pptexsoundcollection.hxx
+++ /dev/null
@@ -1,86 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: pptexsoundcollection.hxx,v $
- * $Revision: 1.4 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _SD_PPT_EXSOUNDCOLLECTION_HXX
-#define _SD_PPT_EXSOUNDCOLLECTION_HXX
-
-#ifdef DBG_ANIM_LOG
-#include <stdio.h>
-#endif
-#include <tools/string.hxx>
-#include <tools/stream.hxx>
-#ifndef BOOST_SHARED_PTR_HPP_INCLUDED
-#include <boost/shared_ptr.hpp>
-#endif
-
-#include <list>
-
-namespace ppt
-{
-
-class ExSoundEntry
-{
- sal_uInt32 nFileSize;
- String aSoundURL;
-
- String ImplGetName() const;
- String ImplGetExtension() const;
-
- public :
-
- sal_Bool IsSameURL( const String& rURL ) const;
- sal_uInt32 GetFileSize( ) const { return nFileSize; };
-
- ExSoundEntry( const String& rSoundURL );
-
- // returns the size of a complete SoundContainer
- sal_uInt32 GetSize( sal_uInt32 nId ) const;
- void Write( SvStream& rSt, sal_uInt32 nId );
-};
-
-class ExSoundCollection : private List
-{
- const ExSoundEntry* ImplGetByIndex( sal_uInt32 nId ) const;
-
- public:
-
- ExSoundCollection() {}
- ~ExSoundCollection();
-
- sal_uInt32 GetId( const String& );
-
- // returns the size of a complete SoundCollectionContainer
- sal_uInt32 GetSize() const;
- void Write( SvStream& rSt );
-};
-
-} // namespace ppt
-
-#endif
diff --git a/sd/source/filter/pptx/pptx-NOTES b/sd/source/filter/pptx/pptx-NOTES
deleted file mode 100644
index 1e2f168..0000000
--- a/sd/source/filter/pptx/pptx-NOTES
+++ /dev/null
@@ -1,2 +0,0 @@
-* ParaAdjust of empty text paragraph in shapes is by default set to left, but
-should be set to center. Same problem exist for ppt as well as pptx export
diff --git a/sd/source/filter/pptx/pptx-eppt.cxx b/sd/source/filter/pptx/pptx-eppt.cxx
deleted file mode 100644
index 061db2c..0000000
--- a/sd/source/filter/pptx/pptx-eppt.cxx
+++ /dev/null
@@ -1,1580 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: eppt.cxx,v $
- * $Revision: 1.64.78.1 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_sd.hxx"
-#include <eppt.hxx>
-#include "epptdef.hxx"
-#include <tools/globname.hxx>
-#include <tools/datetime.hxx>
-#include <tools/poly.hxx>
-#include <vcl/graph.hxx>
-#include <vcl/bmpacc.hxx>
-#include <vcl/gradient.hxx>
-#include <rtl/ustring.hxx>
-#include <tools/stream.hxx>
-#include <svtools/fltcall.hxx>
-#include <sfx2/docfile.hxx>
-#include <svx/unoapi.hxx>
-#include <svx/svdobj.hxx>
-#include <svx/svdoole2.hxx>
-#include <svx/svdmodel.hxx>
-#include <svx/svdpage.hxx>
-#include <com/sun/star/view/PaperOrientation.hpp>
-#include <com/sun/star/view/PaperFormat.hpp>
-#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
-#include <tools/zcodec.hxx>
-#include <editeng/svxenum.hxx>
-#include <sot/storinfo.hxx>
-#include <filter/msfilter/msoleexp.hxx>
-#include <vcl/virdev.hxx>
-#include <svtools/wmf.hxx>
-#include <filter/msfilter/msdffimp.hxx>
-#include <editeng/flditem.hxx>
-#include <sfx2/docinf.hxx>
-#include <oox/export/utils.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::presentation;
-
-using ::com::sun::star::beans::XPropertySet;
-
-//============================ PPTWriter ==================================
-
-PPTWriter::PPTWriter( SvStorageRef& rSvStorage,
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > & rXModel,
- ::com::sun::star::uno::Reference< ::com::sun::star::task::XStatusIndicator > & rXStatInd,
- SvMemoryStream* pVBA, sal_uInt32 nCnvrtFlags ) :
- PPTWriterBase ( rXModel, rXStatInd ),
- mnCnvrtFlags ( nCnvrtFlags ),
- mbStatus ( sal_False ),
- mbUseNewAnimations ( sal_True ),
- mnLatestStatValue ( 0 ),
- mrStg ( rSvStorage ),
- mpCurUserStrm ( NULL ),
- mpStrm ( NULL ),
- mpPicStrm ( NULL ),
- mpPptEscherEx ( NULL ),
- mnVBAOleOfs ( 0 ),
- mpVBA ( pVBA ),
- mnExEmbed ( 0 ),
- mpExEmbed ( new SvMemoryStream ),
- mnPagesWritten ( 0 ),
- mnTxId ( 0x7a2f64 )
-{
-}
-
-void PPTWriter::exportPPTPre()
-{
- if ( !mrStg.Is() )
- return;
-
- // MasterPages + Slides und Notizen + NotesMasterPage
- mnDrawings = mnMasterPages + ( mnPages << 1 ) + 1;
-
- if ( mXStatusIndicator.is() )
- {
- mbStatusIndicator = TRUE;
- mnStatMaxValue = ( mnPages + mnMasterPages ) * 5;
- mXStatusIndicator->start( String( RTL_CONSTASCII_USTRINGPARAM( "PowerPoint Export" ) ),
- mnStatMaxValue + ( mnStatMaxValue >> 3 ) );
- }
-
- SvGlobalName aGName( 0x64818d10L, 0x4f9b, 0x11cf, 0x86, 0xea, 0x00, 0xaa, 0x00, 0xb9, 0x29, 0xe8 );
- mrStg->SetClass( aGName, 0, String( RTL_CONSTASCII_USTRINGPARAM( "MS PowerPoint 97" ) ) );
-
- if ( !ImplCreateCurrentUserStream() )
- return;
-
- mpStrm = mrStg->OpenSotStream( String( RTL_CONSTASCII_USTRINGPARAM( "PowerPoint Document" ) ) );
- if ( !mpStrm )
- return;
-
- if ( !mpPicStrm )
- mpPicStrm = mrStg->OpenSotStream( String( RTL_CONSTASCII_USTRINGPARAM( "Pictures" ) ) );
-
- mpPptEscherEx = new PptEscherEx( *mpStrm );
-};
-
-void PPTWriter::exportPPTPost()
-{
- if ( !ImplCloseDocument() )
- return;
-
- if ( mbStatusIndicator )
- {
- mXStatusIndicator->setText( String( RTL_CONSTASCII_USTRINGPARAM( "PowerPoint Export" ) ) );
- sal_uInt32 nValue = mnStatMaxValue + ( mnStatMaxValue >> 3 );
- if ( nValue > mnLatestStatValue )
- {
- mXStatusIndicator->setValue( nValue );
- mnLatestStatValue = nValue;
- }
- }
-
- ImplWriteOLE();
-
- ImplWriteVBA();
-
- if ( !ImplWriteAtomEnding() )
- return;
-
- if ( !ImplCreateDocumentSummaryInformation() )
- return;
-
- mbStatus = TRUE;
-}
-
-// ---------------------------------------------------------------------------------------------
-
-void PPTWriter::ImplWriteSlide( sal_uInt32 nPageNum, sal_uInt32 nMasterNum, sal_uInt16 nMode,
- sal_Bool bHasBackground, Reference< XPropertySet > aXBackgroundPropSet )
-{
- Any aAny;
-
- const PHLayout& rLayout = GetLayout( mXPagePropSet );
- mpPptEscherEx->PtReplaceOrInsert( EPP_Persist_Slide | nPageNum, mpStrm->Tell() );
- mpPptEscherEx->OpenContainer( EPP_Slide );
- mpPptEscherEx->AddAtom( 24, EPP_SlideAtom, 2 );
- *mpStrm << rLayout.nLayout;
- mpStrm->Write( rLayout.nPlaceHolder, 8 ); // placeholderIDs ( 8Stueck )
- *mpStrm << (sal_uInt32)(nMasterNum | 0x80000000) // master ID ( ist gleich 0x80000000 bei einer masterpage )
- << (sal_uInt32)nPageNum + 0x100 // notes ID ( ist gleich null wenn keine notizen vorhanden )
- << nMode
- << (sal_uInt16)0; // padword
-
- mnDiaMode = 0;
- sal_Bool bVisible = sal_True;
- FadeEffect eFe = FadeEffect_NONE;
-
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "Visible" ) ) ) )
- aAny >>= bVisible;
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "Change" ) ) ) )
- {
- switch ( *(INT32*)aAny.getValue() )
- {
- case 1 : // automatisch
- mnDiaMode++;
- case 2 : // halbautomatisch
- mnDiaMode++;
- default :
- case 0 : // manuell
- break;
- }
- }
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "Effect" ) ) ) )
- aAny >>= eFe;
-
- sal_uInt32 nSoundRef = 0;
- sal_Bool bIsSound = sal_False;
- sal_Bool bStopSound = sal_False;
- sal_Bool bLoopSound = sal_False;
-
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "Sound" ) ) ) )
- {
- rtl::OUString aSoundURL;
- if ( aAny >>= aSoundURL )
- {
- nSoundRef = maSoundCollection.GetId( aSoundURL );
- bIsSound = sal_True;
- }
- else
- aAny >>= bStopSound;
- }
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "LoopSound" ) ) ) )
- aAny >>= bLoopSound;
-
-
- sal_Bool bNeedsSSSlideInfoAtom = ( bVisible == FALSE )
- || ( mnDiaMode == 2 )
- || ( bIsSound )
- || ( bStopSound )
- || ( eFe != FadeEffect_NONE );
-
- if ( bNeedsSSSlideInfoAtom )
- {
- sal_uInt8 nDirection = 0;
- sal_uInt8 nTransitionType = 0;
- sal_uInt16 nBuildFlags = 1; // advange by mouseclick
- INT32 nSlideTime = 0; // muss noch !!!
- sal_uInt8 nSpeed = 1;
-
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "Speed" ) ) ) )
- {
- AnimationSpeed aAs;
- aAny >>= aAs;
- nSpeed = (sal_uInt8)aAs;
- }
-
- sal_Int16 nTT = 0, nTST = 0;
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "TransitionType" ) ) )
- && ( aAny >>= nTT ) )
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "TransitionSubtype" ) ) )
- && ( aAny >>= nTST ) )
- nTransitionType = GetTransition( nTT, nTST, eFe, nDirection );
-
- if( !nTransitionType )
- nTransitionType = GetTransition( eFe, nDirection );
-
- if ( mnDiaMode == 2 ) // automatic ?
- nBuildFlags |= 0x400;
- if ( bVisible == FALSE )
- nBuildFlags |= 4;
- if ( bIsSound )
- nBuildFlags |= 16;
- if ( bLoopSound )
- nBuildFlags |= 64;
- if ( bStopSound )
- nBuildFlags |= 256;
-
- if ( GetPropertyValue( aAny, mXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "Duration" ) ) ) )// duration of this slide
- nSlideTime = *(INT32*)aAny.getValue() << 10; // in ticks
-
-
- mpPptEscherEx->AddAtom( 16, EPP_SSSlideInfoAtom );
- *mpStrm << nSlideTime // standtime in ticks
- << nSoundRef
- << nDirection
- << nTransitionType
- << nBuildFlags
- << nSpeed
- << (sal_uInt8)0 << (sal_uInt8)0 << (sal_uInt8)0;
- }
-
- ImplCreateHeaderFooters( mXPagePropSet );
-
- EscherSolverContainer aSolverContainer;
- mpPptEscherEx->OpenContainer( EPP_PPDrawing );
- mpPptEscherEx->OpenContainer( ESCHER_DgContainer );
- mpPptEscherEx->EnterGroup(0,0);
- ImplWritePage( rLayout, aSolverContainer, NORMAL, FALSE, nPageNum ); // Die Shapes der Seite werden im PPT Dok. erzeugt
- mpPptEscherEx->LeaveGroup();
-
- if ( bHasBackground )
- ImplWriteBackground( aXBackgroundPropSet );
- else
- {
- mpPptEscherEx->OpenContainer( ESCHER_SpContainer );
- mpPptEscherEx->AddShape( ESCHER_ShpInst_Rectangle, 0xc00 ); // Flags: Connector | Background | HasSpt
- EscherPropertyContainer aPropOpt;
- aPropOpt.AddOpt( ESCHER_Prop_fillRectRight, PPTtoEMU( maDestPageSize.Width ) );
- aPropOpt.AddOpt( ESCHER_Prop_fillRectBottom, PPTtoEMU( maDestPageSize.Width ) );
- aPropOpt.AddOpt( ESCHER_Prop_fNoFillHitTest, 0x120012 );
- aPropOpt.AddOpt( ESCHER_Prop_fNoLineDrawDash, 0x80000 );
- aPropOpt.AddOpt( ESCHER_Prop_bWMode, ESCHER_wDontShow );
- aPropOpt.AddOpt( ESCHER_Prop_fBackground, 0x10001 ); // if true, this is the background shape
- aPropOpt.Commit( *mpStrm );
- mpPptEscherEx->CloseContainer(); // ESCHER_SpContainer
- }
-
- aSolverContainer.WriteSolver( *mpStrm );
-
- mpPptEscherEx->CloseContainer(); // ESCHER_DgContainer
- mpPptEscherEx->CloseContainer(); // EPP_Drawing
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 1 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x808080 << (sal_uInt32)0x000000 << (sal_uInt32)0x99cc00 << (sal_uInt32)0xcc3333 << (sal_uInt32)0xffcccc << (sal_uInt32)0xb2b2b2;
-
- if ( mbUseNewAnimations )
- {
- SvMemoryStream amsofbtAnimGroup;
- ppt::AnimationExporter aExporter( aSolverContainer, maSoundCollection );
- aExporter.doexport( mXDrawPage, amsofbtAnimGroup );
- sal_uInt32 nmsofbtAnimGroupSize = amsofbtAnimGroup.Tell();
- if ( nmsofbtAnimGroupSize )
- {
- EscherExContainer aProgTags ( *mpStrm, EPP_ProgTags );
- EscherExContainer aProgBinaryTag( *mpStrm, EPP_ProgBinaryTag );
- {
- EscherExAtom aCString( *mpStrm, EPP_CString );
- *mpStrm << (sal_uInt32)0x5f005f
- << (sal_uInt32)0x50005f
- << (sal_uInt32)0x540050
- << (sal_uInt16)0x31
- << (sal_uInt16)0x30;
- }
- {
- EscherExAtom aBinaryTagData( *mpStrm, EPP_BinaryTagData );
- {
- {
- EscherExAtom aMagic2( *mpStrm, 0x2eeb );
- *mpStrm << (sal_uInt32)0x01c45df9
- << (sal_uInt32)0xe1471b30;
- }
- {
- EscherExAtom aMagic( *mpStrm, 0x2b00 );
- *mpStrm << (sal_uInt32)0;
- }
- }
- mpStrm->Write( amsofbtAnimGroup.GetData(), amsofbtAnimGroup.Tell() );
- {
- EscherExContainer aMagic2( *mpStrm, 0x2b02 );
- }
- }
- }
- }
- mpPptEscherEx->CloseContainer(); // EPP_Slide
-}
-
-// ---------------------------------------------------------------------------------------------
-
-void PPTWriter::ImplWriteSlideMaster( sal_uInt32 nPageNum, Reference< XPropertySet > aXBackgroundPropSet )
-{
- sal_uInt32 nFillColor = 0xffffff;
- sal_uInt32 nFillBackColor = 0x000000;
-
- ::com::sun::star::drawing::FillStyle aFS = ::com::sun::star::drawing::FillStyle_NONE;
- if ( ImplGetPropertyValue( aXBackgroundPropSet, String( RTL_CONSTASCII_USTRINGPARAM( "FillStyle" ) ) ) )
- mAny >>= aFS;
- switch ( aFS )
- {
- case ::com::sun::star::drawing::FillStyle_GRADIENT :
- {
- if ( ImplGetPropertyValue( aXBackgroundPropSet, String( RTL_CONSTASCII_USTRINGPARAM( "FillGradient" ) ) ) )
- {
- nFillColor = EscherPropertyContainer::GetGradientColor( (::com::sun::star::awt::Gradient*)mAny.getValue(), 0 );
- nFillBackColor = EscherPropertyContainer::GetGradientColor( (::com::sun::star::awt::Gradient*)mAny.getValue(), 1 );
- }
- }
- break;
-
- case ::com::sun::star::drawing::FillStyle_SOLID :
- {
- if ( ImplGetPropertyValue( aXBackgroundPropSet, String( RTL_CONSTASCII_USTRINGPARAM( "FillColor" ) ) ) )
- {
- nFillColor = mpPptEscherEx->GetColor( *((sal_uInt32*)mAny.getValue()) );
- nFillBackColor = nFillColor ^ 0xffffff;
- }
- }
- break;
-
- default:
- break;
- }
-
- mpPptEscherEx->PtReplaceOrInsert( EPP_Persist_MainMaster | nPageNum, mpStrm->Tell() );
- mpPptEscherEx->OpenContainer( EPP_MainMaster );
- mpPptEscherEx->AddAtom( 24, EPP_SlideAtom, 2 );
- *mpStrm << (INT32)EPP_LAYOUT_TITLEANDBODYSLIDE // slide layout -> title and body slide
- << (sal_uInt8)1 << (sal_uInt8)2 << (sal_uInt8)0 << (sal_uInt8)0 << (sal_uInt8)0 << (sal_uInt8)0 << (sal_uInt8)0 << (sal_uInt8)0 // placeholderID
- << (sal_uInt32)0 // master ID ( ist gleich null bei einer masterpage )
- << (sal_uInt32)0 // notes ID ( ist gleich null wenn keine notizen vorhanden )
- << (sal_uInt16)0 // Bit 1: Follow master objects, Bit 2: Follow master scheme, Bit 3: Follow master background
- << (sal_uInt16)0; // padword
-
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x808080 << (sal_uInt32)0x000000 << (sal_uInt32)0x99cc00 << (sal_uInt32)0xcc3333 << (sal_uInt32)0xffcccc << (sal_uInt32)0xb2b2b2;
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xff0000 << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x00ffff << (sal_uInt32)0x0099ff << (sal_uInt32)0xffff00 << (sal_uInt32)0x0000ff << (sal_uInt32)0x969696;
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xccffff << (sal_uInt32)0x000000 << (sal_uInt32)0x336666 << (sal_uInt32)0x008080 << (sal_uInt32)0x339933 << (sal_uInt32)0x000080 << (sal_uInt32)0xcc3300 << (sal_uInt32)0x66ccff;
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x333333 << (sal_uInt32)0x000000 << (sal_uInt32)0xdddddd << (sal_uInt32)0x808080 << (sal_uInt32)0x4d4d4d << (sal_uInt32)0xeaeaea;
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x808080 << (sal_uInt32)0x000000 << (sal_uInt32)0x66ccff << (sal_uInt32)0xff0000 << (sal_uInt32)0xcc00cc << (sal_uInt32)0xc0c0c0;
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x808080 << (sal_uInt32)0x000000 << (sal_uInt32)0xc0c0c0 << (sal_uInt32)0xff6600 << (sal_uInt32)0x0000ff << (sal_uInt32)0x009900;
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 6 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x808080 << (sal_uInt32)0x000000 << (sal_uInt32)0xff9933 << (sal_uInt32)0xccff99 << (sal_uInt32)0xcc00cc << (sal_uInt32)0xb2b2b2;
-
- for ( int nInstance = EPP_TEXTTYPE_Title; nInstance <= EPP_TEXTTYPE_QuarterBody; nInstance++ )
- {
- if ( nInstance == EPP_TEXTTYPE_notUsed )
- continue;
-
- // the auto color is dependent to the page background,so we have to set a page that is in the right context
- if ( nInstance == EPP_TEXTTYPE_Notes )
- GetPageByIndex( 0, NOTICE );
- else
- GetPageByIndex( 0, MASTER );
-
- mpPptEscherEx->BeginAtom();
-
- sal_Bool bFirst = TRUE;
- sal_Bool bSimpleText = FALSE;
-
- *mpStrm << (sal_uInt16)5; // paragraph count
-
- for ( sal_uInt16 nLev = 0; nLev < 5; nLev++ )
- {
- if ( nInstance >= EPP_TEXTTYPE_CenterBody )
- {
- bFirst = FALSE;
- bSimpleText = TRUE;
- *mpStrm << nLev;
- }
- mpStyleSheet->mpParaSheet[ nInstance ]->Write( *mpStrm, mpPptEscherEx, nLev, bFirst, bSimpleText, mXPagePropSet );
- mpStyleSheet->mpCharSheet[ nInstance ]->Write( *mpStrm, mpPptEscherEx, nLev, bFirst, bSimpleText, mXPagePropSet );
- bFirst = FALSE;
- }
- mpPptEscherEx->EndAtom( EPP_TxMasterStyleAtom, 0, nInstance );
- }
- GetPageByIndex( nPageNum, MASTER );
-
- EscherSolverContainer aSolverContainer;
-
- mpPptEscherEx->OpenContainer( EPP_PPDrawing );
- mpPptEscherEx->OpenContainer( ESCHER_DgContainer );
-
- mpPptEscherEx->EnterGroup(0,0);
- ImplWritePage( GetLayout(0), aSolverContainer, MASTER, TRUE ); // Die Shapes der Seite werden im PPT Dok. erzeugt
- mpPptEscherEx->LeaveGroup();
-
- ImplWriteBackground( aXBackgroundPropSet );
-
- aSolverContainer.WriteSolver( *mpStrm );
-
- mpPptEscherEx->CloseContainer(); // ESCHER_DgContainer
- mpPptEscherEx->CloseContainer(); // EPP_Drawing
- mpPptEscherEx->AddAtom( 32, EPP_ColorSchemeAtom, 0, 1 );
- *mpStrm << (sal_uInt32)0xffffff << (sal_uInt32)0x000000 << (sal_uInt32)0x808080 << (sal_uInt32)0x000000 << (sal_uInt32)0x99cc00 << (sal_uInt32)0xcc3333 << (sal_uInt32)0xffcccc << (sal_uInt32)0xb2b2b2;
-
- if ( aBuExMasterStream.Tell() )
- {
- ImplProgTagContainer( mpStrm, &aBuExMasterStream );
- }
- mpPptEscherEx->CloseContainer(); // EPP_MainMaster
-}
-
-// ---------------------------------------------------------------------------------------------
-
-PPTWriter::~PPTWriter()
-{
- void* pPtr;
- delete mpExEmbed;
- delete mpPptEscherEx;
-
- std::vector< PPTExStyleSheet* >::iterator aStyleSheetIter( maStyleSheetList.begin() );
- while( aStyleSheetIter < maStyleSheetList.end() )
- delete *aStyleSheetIter++;
-
- for ( pPtr = maTextRuleList.First(); pPtr; pPtr = maTextRuleList.Next() )
- delete (TextRuleEntry*)pPtr;
- for ( pPtr = maSlideNameList.First(); pPtr; pPtr = maSlideNameList.Next() )
- delete (::rtl::OUString*)pPtr;
- for ( pPtr = maHyperlink.First(); pPtr; pPtr = maHyperlink.Next() )
- delete (EPPTHyperlink*)pPtr;
- for ( pPtr = maExOleObj.First(); pPtr; pPtr = maExOleObj.Next() )
- delete (PPTExOleObjEntry*)pPtr;
-}
-
-// ---------------------------------------------------------------------------------------------
-
-sal_Bool PPTWriter::ImplCreateCurrentUserStream()
-{
- mpCurUserStrm = mrStg->OpenSotStream( String( RTL_CONSTASCII_USTRINGPARAM( "Current User" ) ) );
- if ( !mpCurUserStrm )
- return FALSE;
- char pUserName[] = "Current User";
- sal_uInt32 nLenOfUserName = strlen( pUserName );
- sal_uInt32 nSizeOfRecord = 0x14 + ( ( nLenOfUserName + 4 ) & ~ 3 );
-
- *mpCurUserStrm << (sal_uInt16)0 << (sal_uInt16)EPP_CurrentUserAtom << nSizeOfRecord;
- *mpCurUserStrm << (sal_uInt32)0x14 // Len
- << (sal_uInt32)0xe391c05f; // Magic
-
- sal_uInt32 nEditPos = mpCurUserStrm->Tell();
- *mpCurUserStrm << (sal_uInt32)0x0 // OffsetToCurrentEdit;
- << (sal_uInt16)nLenOfUserName //
- << (sal_uInt16)0x3f4 // DocFileVersion
- << (sal_uInt8)3 // MajorVersion
- << (sal_uInt8)0 // MinorVersion
- << (sal_uInt16)0; // Pad Word
- pUserName[ nLenOfUserName ] = 8;
- mpCurUserStrm->Write( pUserName, nLenOfUserName + 1 );
- for ( sal_uInt32 i = 0x15 + nLenOfUserName; i < nSizeOfRecord; i++ )
- {
- *mpCurUserStrm << (sal_uInt8)0; // pad bytes
- };
- mpCurUserStrm->Seek( nEditPos );
- return TRUE;
-};
-
-// ---------------------------------------------------------------------------------------------
-
-sal_Bool PPTWriter::ImplCreateDocumentSummaryInformation()
-{
- uno::Reference<document::XDocumentPropertiesSupplier> xDPS(
- mXModel, uno::UNO_QUERY_THROW);
- uno::Reference<document::XDocumentProperties> xDocProps(
- xDPS->getDocumentProperties());
-
- if (xDocProps.is()) {
-
- // no idea what this is...
- static sal_uInt8 aGuid[ 0x52 ] =
- {
- 0x4e, 0x00, 0x00, 0x00,
- '{',0,'D',0,'B',0,'1',0,'A',0,'C',0,'9',0,'6',0,'4',0,'-',0,
- 'E',0,'3',0,'9',0,'C',0,'-',0,'1',0,'1',0,'D',0,'2',0,'-',0,
- 'A',0,'1',0,'E',0,'F',0,'-',0,'0',0,'0',0,'6',0,'0',0,'9',0,
- '7',0,'D',0,'A',0,'5',0,'6',0,'8',0,'9',0,'}',0
- };
- uno::Sequence<sal_uInt8> aGuidSeq(aGuid, 0x52);
-
- SvMemoryStream aHyperBlob;
- ImplCreateHyperBlob( aHyperBlob );
-
- uno::Sequence<sal_uInt8> aHyperSeq(aHyperBlob.Tell());
- const sal_uInt8* pBlob(
- static_cast<const sal_uInt8*>(aHyperBlob.GetData()));
- for (sal_Int32 j = 0; j < aHyperSeq.getLength(); ++j) {
- aHyperSeq[j] = pBlob[j];
- }
-
- if ( mnCnvrtFlags & 0x8000 )
- {
- uno::Sequence<sal_uInt8> aThumbSeq;
- if ( GetPageByIndex( 0, NORMAL ) &&
- ImplGetPropertyValue( mXPagePropSet,
- String( RTL_CONSTASCII_USTRINGPARAM( "PreviewBitmap" ) ) ) )
- {
- aThumbSeq =
- *static_cast<const uno::Sequence<sal_uInt8>*>(mAny.getValue());
- }
- sfx2::SaveOlePropertySet( xDocProps, mrStg,
- &aThumbSeq, &aGuidSeq, &aHyperSeq);
- }
- else
- {
- sfx2::SaveOlePropertySet( xDocProps, mrStg,
- NULL, &aGuidSeq, &aHyperSeq );
- }
- }
-
- return sal_True;
-}
-
-// ---------------------------------------------------------------------------------------------
-
-void PPTWriter::ImplWriteExtParaHeader( SvMemoryStream& rSt, sal_uInt32 nRef, sal_uInt32 nInstance, sal_uInt32 nSlideId )
-{
- if ( rSt.Tell() )
- {
- aBuExOutlineStream << (sal_uInt32)( ( EPP_PST_ExtendedParagraphHeaderAtom << 16 )
- | ( nRef << 4 ) )
- << (sal_uInt32)8
- << (sal_uInt32)nSlideId
- << (sal_uInt32)nInstance;
- aBuExOutlineStream.Write( rSt.GetData(), rSt.Tell() );
- }
-}
-
-// ---------------------------------------------------------------------------------------------
-
-void PPTWriter::ImplCreateHeaderFooterStrings( SvStream& rStrm, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& rXPagePropSet )
-{
- if ( rXPagePropSet.is() )
- {
- rtl::OUString aString;
- ::com::sun::star::uno::Any aAny;
- if ( PropValue::GetPropertyValue( aAny, rXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "HeaderText" ) ), sal_True ) )
- {
- if ( aAny >>= aString )
- ImplWriteCString( rStrm, aString, 1 );
- }
- if ( PropValue::GetPropertyValue( aAny, rXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "FooterText" ) ), sal_True ) )
- {
- if ( aAny >>= aString )
- ImplWriteCString( rStrm, aString, 2 );
- }
- if ( PropValue::GetPropertyValue( aAny, rXPagePropSet, String( RTL_CONSTASCII_USTRINGPARAM( "DateTimeText" ) ), sal_True ) )
- {
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list