LibreOffice Module sd (master) 1
pptin.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20#pragma once
21
23#include <diadef.h>
24#include <sot/storage.hxx>
25#include <svx/svdtypes.hxx>
26#include <memory>
27
28class SdDrawDocument;
29class SfxMedium;
30
31/*************************************************************************
32|*
33|* local import
34|*
35\************************************************************************/
36
37class SdPage;
38class SdAnimationInfo;
39class Ppt97Animation;
40
41typedef std::shared_ptr< Ppt97Animation > Ppt97AnimationPtr;
42typedef ::std::map < SdrObject*, Ppt97AnimationPtr > tAnimationMap;
43
45{
50 std::vector<OUString> maSlideNameList;
52 sal_uInt32 mnFilterOptions;
56
58 void SetHeaderFooterPageSettings( SdPage* pPage, const PptSlidePersistEntry* pMasterPersist );
59 void ImportPageEffect( SdPage* pPage, const bool bNewAnimationsUsed );
60
61 void FillSdAnimationInfo(SdAnimationInfo* pInfo, const PptInteractiveInfoAtom& rIAtom, const OUString& rMacroName);
62
63 virtual rtl::Reference<SdrObject> ProcessObj( SvStream& rSt, DffObjData& rData, SvxMSDffClientData& rClientData, ::tools::Rectangle& rTextRect, SdrObject* pObj ) override;
64 virtual SdrObject* ApplyTextObj( PPTTextObj* pTextObj, SdrTextObj* pText, SdPageCapsule pPage,
65 SfxStyleSheet*, SfxStyleSheet** ) const override;
66
67public:
68
69 OUString ReadSound( sal_uInt32 nSoundRef ) const;
70 OUString ReadMedia( sal_uInt32 nMediaRef ) const;
71
73 virtual ~ImplSdPPTImport() override;
74
75 bool Import();
76 virtual bool ReadFormControl( tools::SvRef<SotStorage>& rSrc1, css::uno::Reference< css::form::XFormComponent > & rFormComp ) const override;
77};
78
80{
82 std::unique_ptr<ImplSdPPTImport> pFilter;
83
84public:
85
86 SdPPTImport( SdDrawDocument* pDoc, SvStream& rDocStream, SotStorage& rStorage, SfxMedium& rMed );
88
89 bool Import();
90};
91
92/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
PresChange mePresChange
Definition: pptin.hxx:54
SdDrawDocument * mpDoc
Definition: pptin.hxx:53
virtual rtl::Reference< SdrObject > ProcessObj(SvStream &rSt, DffObjData &rData, SvxMSDffClientData &rClientData, ::tools::Rectangle &rTextRect, SdrObject *pObj) override
Definition: pptin.cxx:2588
OUString ReadSound(sal_uInt32 nSoundRef) const
Definition: pptin.cxx:1891
OUString ReadMedia(sal_uInt32 nMediaRef) const
Definition: pptin.cxx:2006
virtual ~ImplSdPPTImport() override
Definition: pptin.cxx:221
virtual bool ReadFormControl(tools::SvRef< SotStorage > &rSrc1, css::uno::Reference< css::form::XFormComponent > &rFormComp) const override
Definition: pptin.cxx:2749
bool Import()
Definition: pptin.cxx:228
tools::SvRef< SotStorageStream > mxPicturesStream
Definition: pptin.hxx:46
tAnimationMap maAnimations
Definition: pptin.hxx:57
virtual SdrObject * ApplyTextObj(PPTTextObj *pTextObj, SdrTextObj *pText, SdPageCapsule pPage, SfxStyleSheet *, SfxStyleSheet **) const override
Definition: pptin.cxx:2185
void ImportPageEffect(SdPage *pPage, const bool bNewAnimationsUsed)
Definition: pptin.cxx:1523
SdrLayerID mnBackgroundObjectsLayerID
Definition: pptin.hxx:55
void SetHeaderFooterPageSettings(SdPage *pPage, const PptSlidePersistEntry *pMasterPersist)
Definition: pptin.cxx:1429
std::vector< OUString > maSlideNameList
Definition: pptin.hxx:50
SotStorage & mrStorage
Definition: pptin.hxx:48
DffRecordHeader maDocHd
Definition: pptin.hxx:49
SfxMedium & mrMed
Definition: pptin.hxx:47
void FillSdAnimationInfo(SdAnimationInfo *pInfo, const PptInteractiveInfoAtom &rIAtom, const OUString &rMacroName)
Definition: pptin.cxx:2076
bool mbDocumentFound
Definition: pptin.hxx:51
sal_uInt32 mnFilterOptions
Definition: pptin.hxx:52
this is a helping class for import of PPT 97 animations
SdPPTImport(SdDrawDocument *pDoc, SvStream &rDocStream, SotStorage &rStorage, SfxMedium &rMed)
Definition: pptin.cxx:99
bool Import()
Definition: pptin.cxx:154
PowerPointImportParam maParam
Definition: pptin.hxx:81
std::unique_ptr< ImplSdPPTImport > pFilter
Definition: pptin.hxx:82
~SdPPTImport()
Definition: pptin.cxx:159
friend friend class ImplSdPPTImport
PresChange
Definition: diadef.h:23
std::shared_ptr< Ppt97Animation > Ppt97AnimationPtr
Definition: pptin.hxx:39
::std::map< SdrObject *, Ppt97AnimationPtr > tAnimationMap
Definition: pptin.hxx:42