LibreOffice Module sw (master) 1
|
#include <escher.hxx>
Public Member Functions | |
SwBasicEscherEx (SvStream *pStrm, WW8Export &rWrt) | |
sal_Int32 | WriteGrfFlyFrame (const SwFrameFormat &rFormat, sal_uInt32 nShapeId) |
void | WriteGrfBullet (const Graphic &) |
sal_Int32 | WriteOLEFlyFrame (const SwFrameFormat &rFormat, sal_uInt32 nShapeId) |
void | WriteEmptyFlyFrame (const SwFrameFormat &rFormat, sal_uInt32 nShapeId) |
virtual void | WriteFrameExtraData (const SwFrameFormat &) |
virtual void | WritePictures () |
virtual | ~SwBasicEscherEx () override |
bool | IsRelUrl () const |
OUString | GetBasePath () const |
OUString | BuildFileName (sal_uInt16 &rnLevel, bool &rbRel, const OUString &rUrl) |
void | WriteHyperlinkWithinFly (SvMemoryStream &rStrm, const SwFormatURL *pINetFormatArg) |
void | PreWriteHyperlinkWithinFly (const SwFrameFormat &rFormat, EscherPropertyContainer &rPropOpt) |
Public Member Functions inherited from EscherEx | |
EscherEx (std::shared_ptr< EscherExGlobal > xGlobal, SvStream *pOutStrm, bool bOOXML=false) | |
virtual | ~EscherEx () override |
virtual sal_uInt32 | GenerateShapeId () |
EscherGraphicProvider & | GetGraphicProvider () |
SvStream * | QueryPictureStream () |
void | Flush (SvStream *pPicStreamMergeBSE=nullptr) |
void | InsertAtCurrentPos (sal_uInt32 nBytes) |
void | InsertPersistOffset (sal_uInt32 nKey, sal_uInt32 nOffset) |
void | ReplacePersistOffset (sal_uInt32 nKey, sal_uInt32 nOffset) |
sal_uInt32 | GetPersistOffset (sal_uInt32 nKey) |
bool | SeekToPersistOffset (sal_uInt32 nKey) |
void | InsertAtPersistOffset (sal_uInt32 nKey, sal_uInt32 nValue) |
void | SetEditAs (const OUString &rEditAs) |
const OUString & | GetEditAs () const |
SvStream & | GetStream () const |
sal_uInt64 | GetStreamPos () const |
virtual void | OpenContainer (sal_uInt16 nEscherContainer, int nRecInstance=0) |
virtual void | CloseContainer () |
void | BeginAtom () |
void | EndAtom (sal_uInt16 nRecType, int nRecVersion=0, int nRecInstance=0) |
void | AddAtom (sal_uInt32 nAtomSitze, sal_uInt16 nRecType, int nRecVersion=0, int nRecInstance=0) |
void | AddChildAnchor (const tools::Rectangle &rRectangle) |
void | AddClientAnchor (const tools::Rectangle &rRectangle) |
virtual sal_uInt32 | EnterGroup (const OUString &rShapeName, const tools::Rectangle *pBoundRect) |
sal_uInt32 | EnterGroup (const tools::Rectangle *pBoundRect=nullptr) |
sal_uInt32 | GetGroupLevel () const |
void | SetGroupSnapRect (sal_uInt32 nGroupLevel, const tools::Rectangle &rRect) |
void | SetGroupLogicRect (sal_uInt32 nGroupLevel, const tools::Rectangle &rRect) |
virtual void | LeaveGroup () |
virtual void | AddShape (sal_uInt32 nShpInstance, ShapeFlag nFlagIds, sal_uInt32 nShapeID=0) |
virtual void | Commit (EscherPropertyContainer &rProps, const tools::Rectangle &rRect) |
void | AddSdrPage (const SdrPage &rPage, bool ooxmlExport=false) |
void | AddUnoShapes (const css::uno::Reference< css::drawing::XShapes > &rxShapes, bool ooxmlExport=false) |
sal_uInt32 | AddSdrObject (const SdrObject &rObj, bool ooxmlExport=false, sal_uInt32 nId=0) |
virtual void | AddSdrObjectVMLObject (const SdrObject &) |
void | EndSdrObjectPage () |
virtual EscherExHostAppData * | StartShape (const css::uno::Reference< css::drawing::XShape > &rShape, const tools::Rectangle *pChildAnchor) |
virtual void | EndShape (sal_uInt16 nShapeType, sal_uInt32 nShapeID) |
virtual EscherExHostAppData * | EnterAdditionalTextGroup () |
virtual sal_uInt32 | QueryTextID (const css::uno::Reference< css::drawing::XShape > &, sal_uInt32 nShapeId) |
sal_uInt32 | AddDummyShape () |
void | SetHellLayerId (SdrLayerID nId) |
SdrLayerID | GetHellLayerId () const |
Public Member Functions inherited from EscherPersistTable | |
bool | PtIsID (sal_uInt32 nID) |
void | PtInsert (sal_uInt32 nID, sal_uInt32 nOfs) |
void | PtDelete (sal_uInt32 nID) |
sal_uInt32 | PtGetOffsetByID (sal_uInt32 nID) |
void | PtReplace (sal_uInt32 nID, sal_uInt32 nOfs) |
void | PtReplaceOrInsert (sal_uInt32 nID, sal_uInt32 nOfs) |
EscherPersistTable () | |
virtual | ~EscherPersistTable () |
EscherPersistTable & | operator= (EscherPersistTable const &)=delete |
EscherPersistTable (EscherPersistTable const &)=delete | |
Protected Member Functions | |
virtual sal_Int32 | WriteFlyFrameAttr (const SwFrameFormat &rFormat, MSO_SPT eShapeType, EscherPropertyContainer &rPropOpt) |
void | WriteBrushAttr (const SvxBrushItem &rBrush, EscherPropertyContainer &rPropOpt) |
void | WriteOLEPicture (EscherPropertyContainer &rPropOpt, ShapeFlag nShapeFlags, const Graphic &rGraphic, const SdrObject &rObj, sal_uInt32 nShapeId, const css::awt::Rectangle *pVisArea) |
sal_Int32 | DrawModelToEmu (sal_Int32 nVal) const |
virtual void | SetPicId (const SdrObject &, sal_uInt32, EscherPropertyContainer &) |
SdrLayerID | GetInvisibleHellId () const |
Protected Member Functions inherited from EscherEx | |
bool | DoSeek (sal_uInt32 nKey) |
Static Protected Member Functions | |
static void | WriteGrfAttr (const SwNoTextNode &rNd, const SwFrameFormat &rFormat, EscherPropertyContainer &rPropOpt) |
static sal_Int32 | ToFract16 (sal_Int32 nVal, sal_uInt32 nMax) |
Protected Attributes | |
WW8Export & | mrWrt |
SvStream * | mpEscherStrm |
tools::Long | mnEmuMul |
tools::Long | mnEmuDiv |
Protected Attributes inherited from EscherEx | |
std::shared_ptr< EscherExGlobal > | mxGlobal |
std::unique_ptr< ImplEESdrWriter > | mpImplEESdrWriter |
std::unique_ptr< SvStream > | mxOwnStrm |
SvStream * | mpOutStrm |
sal_uInt32 | mnStrmStartOfs |
std::vector< sal_uInt32 > | mOffsets |
std::vector< sal_uInt16 > | mRecTypes |
sal_uInt32 | mnCurrentDg |
sal_uInt32 | mnCountOfs |
sal_uInt32 | mnGroupLevel |
SdrLayerID | mnHellLayerId |
bool | mbEscherSpgr |
bool | mbEscherDg |
bool | mbOOXML |
OUString | mEditAs |
Private Member Functions | |
void | Init () |
SwBasicEscherEx (const SwBasicEscherEx &)=delete | |
SwBasicEscherEx & | operator= (const SwBasicEscherEx &)=delete |
Additional Inherited Members | |
Static Public Member Functions inherited from EscherEx | |
static sal_uInt32 | GetColor (const sal_uInt32 nColor) |
static sal_uInt32 | GetColor (const Color &rColor) |
static const SdrObject * | GetSdrObject (const css::uno::Reference< css::drawing::XShape > &rXShape) |
Public Attributes inherited from EscherPersistTable | |
::std::vector< std::unique_ptr< EscherPersistEntry > > | maPersistTable |
Definition at line 93 of file escher.hxx.
Definition at line 1514 of file wrtw8esh.cxx.
References Init(), and make_shared().
|
overridevirtual |
Definition at line 1520 of file wrtw8esh.cxx.
|
privatedelete |
OUString SwBasicEscherEx::BuildFileName | ( | sal_uInt16 & | rnLevel, |
bool & | rbRel, | ||
const OUString & | rUrl | ||
) |
Definition at line 128 of file wrtw8esh.cxx.
References GetBasePath(), INetURLObject::GetRelURL(), INET_FILE_SCHEME, IsRelUrl(), INetURLObject::WasEncoded, and INetURLObject::WithCharset.
Referenced by WriteHyperlinkWithinFly().
|
inlineprotected |
Definition at line 111 of file escher.hxx.
References BigMulDiv(), mnEmuDiv, and mnEmuMul.
Referenced by WriteFlyFrameAttr(), SwEscherEx::WriteFlyFrameAttr(), and WriteGrfBullet().
OUString SwBasicEscherEx::GetBasePath | ( | ) | const |
Definition at line 114 of file wrtw8esh.cxx.
References SfxItemSet::GetItem(), SfxMedium::GetItemSet(), SwWW8Writer::GetMedia(), CntUnencodedStringItem::GetValue(), WW8Export::GetWriter(), and mrWrt.
Referenced by BuildFileName().
|
protected |
Definition at line 2155 of file wrtw8esh.cxx.
References SwDoc::getIDocumentDrawModelAccess(), IDocumentDrawModelAccess::GetInvisibleHellId(), MSWordExportBase::m_rDoc, and mrWrt.
Referenced by WriteFlyFrameAttr().
|
private |
Definition at line 2115 of file wrtw8esh.cxx.
References conversionFract(), o3tl::emu, Fraction::GetDenominator(), IDocumentDrawModelAccess::GetDrawModel(), IDocumentDrawModelAccess::GetHellId(), SwDoc::getIDocumentDrawModelAccess(), GetMapFactor(), Fraction::GetNumerator(), MSWordExportBase::m_rDoc, o3tl::mm100, mnEmuDiv, mnEmuMul, mrWrt, EscherEx::SetHellLayerId(), and FrPair::X().
Referenced by SwBasicEscherEx().
bool SwBasicEscherEx::IsRelUrl | ( | ) | const |
Definition at line 103 of file wrtw8esh.cxx.
References sw::proofreadingiterator::get(), SwWW8Writer::GetMedia(), WW8Export::GetWriter(), SfxMedium::IsRemote(), and mrWrt.
Referenced by BuildFileName().
|
privatedelete |
void SwBasicEscherEx::PreWriteHyperlinkWithinFly | ( | const SwFrameFormat & | rFormat, |
EscherPropertyContainer & | rPropOpt | ||
) |
Definition at line 271 of file wrtw8esh.cxx.
References EscherPropertyContainer::AddOpt(), ESCHER_Prop_fPrint, ESCHER_Prop_pihlShape, ESCHER_Prop_wzName, SwFormat::GetAttrSet(), SfxItemSet::GetItemIfSet(), SwFormatURL::GetName(), EscherPropertyContainer::GetOpt(), SwFormatURL::GetURL(), nValue, RES_URL(), and WriteHyperlinkWithinFly().
Referenced by WriteFlyFrameAttr(), and SwEscherEx::WriteFlyFrameAttr().
|
protectedvirtual |
Reimplemented in SwEscherEx.
Definition at line 1761 of file wrtw8esh.cxx.
Referenced by WriteOLEPicture().
|
staticprotected |
Definition at line 2134 of file wrtw8esh.cxx.
Referenced by WriteGrfAttr().
|
protected |
Definition at line 1834 of file wrtw8esh.cxx.
References EscherPropertyContainer::AddOpt(), ESCHER_FillPicture, ESCHER_Prop_fillBackColor, ESCHER_Prop_fillBlip, ESCHER_Prop_fillColor, ESCHER_Prop_fillOpacity, ESCHER_Prop_fillType, ESCHER_Prop_fNoFillHitTest, Color::GetAlpha(), SvxBrushItem::GetColor(), EscherEx::GetColor(), SvxBrushItem::GetGraphicObject(), EscherEx::mxGlobal, and EscherEx::QueryPictureStream().
Referenced by SwEscherEx::SwEscherEx(), WriteFlyFrameAttr(), and WriteGrfBullet().
void SwBasicEscherEx::WriteEmptyFlyFrame | ( | const SwFrameFormat & | rFormat, |
sal_uInt32 | nShapeId | ||
) |
Definition at line 1530 of file wrtw8esh.cxx.
References EscherEx::AddAtom(), EscherEx::AddShape(), EscherEx::CloseContainer(), DFF_msofbtUDefProp, ESCHER_ShpInst_PictureFrame, ESCHER_SpContainer, EscherEx::GetStream(), nInlineHack, EscherEx::OpenContainer(), WriteFrameExtraData(), SvStream::WriteUInt16(), and SvStream::WriteUInt32().
Referenced by SwWW8WrGrf::WriteGraphicNode().
|
protectedvirtual |
Reimplemented in SwEscherEx.
Definition at line 1877 of file wrtw8esh.cxx.
References EscherPropertyContainer::AddOpt(), o3tl::convert(), DFF_Prop_fshadowObscured, DFF_Prop_shadowColor, DFF_Prop_shadowOffsetX, DFF_Prop_shadowOffsetY, DrawModelToEmu(), o3tl::emu, ESCHER_Prop_dxTextLeft, ESCHER_Prop_dxTextRight, ESCHER_Prop_dyTextBottom, ESCHER_Prop_dyTextTop, ESCHER_Prop_fNoLineDrawDash, ESCHER_Prop_fPrint, ESCHER_Prop_lineBackColor, ESCHER_Prop_lineColor, ESCHER_Prop_lineDashing, ESCHER_Prop_lineStyle, ESCHER_Prop_lineWidth, SwFrameFormat::FindRealSdrObject(), SwFormat::GetAttrSet(), EscherEx::GetColor(), SwMSDffManager::GetEscherLineMatch(), EscherEx::GetHellLayerId(), GetInvisibleHellId(), SfxItemSet::GetItemIfSet(), SwFormat::GetItemIfSet(), SdrObject::GetLayer(), SwFormat::GetSurround(), SfxEnumItem< typename EnumT >::GetValue(), sw::IsFlyFrameFormatInHeader(), SwFormat::makeBackgroundBrushItem(), mrWrt, mso_lineDashGEL, mso_lineDotGEL, mso_lineDouble, mso_lineSimple, mso_lineSolid, mso_lineThickThin, mso_lineThinThick, n, nLineWidth, PreWriteHyperlinkWithinFly(), RES_BOX(), RES_SHADOW(), wwUtility::RGBToBGR(), WW8Export::TrueFrameBgBrush(), o3tl::twip, and WriteBrushAttr().
Referenced by SwEscherEx::WriteFlyFrameAttr(), WriteGrfFlyFrame(), and WriteOLEFlyFrame().
|
virtual |
Reimplemented in SwEscherEx.
Definition at line 1524 of file wrtw8esh.cxx.
References EscherEx::AddAtom(), ESCHER_ClientAnchor, EscherEx::GetStream(), and SvStream::WriteUInt32().
Referenced by WriteEmptyFlyFrame(), WriteGrfFlyFrame(), and WriteOLEFlyFrame().
|
staticprotected |
Definition at line 1661 of file wrtw8esh.cxx.
References EscherPropertyContainer::AddOpt(), ESCHER_Prop_cropFromBottom, ESCHER_Prop_cropFromLeft, ESCHER_Prop_cropFromRight, ESCHER_Prop_cropFromTop, ESCHER_Prop_pictureActive, ESCHER_Prop_pictureBrightness, ESCHER_Prop_pictureContrast, SfxItemSet::GetItemIfSet(), SwFormat::GetItemIfSet(), SwContentNode::GetSwAttrSet(), SwNoTextNode::GetTwipSize(), Size::Height(), RES_BOX(), RES_GRFATR_CONTRAST(), RES_GRFATR_CROPGRF(), RES_GRFATR_DRAWMODE(), RES_GRFATR_LUMINANCE(), ToFract16(), and Size::Width().
Referenced by WriteGrfFlyFrame(), and WriteOLEFlyFrame().
void SwBasicEscherEx::WriteGrfBullet | ( | const Graphic & | rGrf | ) |
Definition at line 1564 of file wrtw8esh.cxx.
References EscherEx::AddAtom(), EscherPropertyContainer::AddOpt(), EscherEx::AddShape(), SvxBrushItem::Clone(), EscherEx::CloseContainer(), COL_TRANSPARENT(), COL_WHITE(), EscherPropertyContainer::Commit(), DrawModelToEmu(), ESCHER_BlipFlagDefault, ESCHER_ClientAnchor, ESCHER_Prop_dxTextLeft, ESCHER_Prop_dxTextRight, ESCHER_Prop_dyTextBottom, ESCHER_Prop_dyTextTop, ESCHER_Prop_fNoLineDrawDash, ESCHER_Prop_pib, ESCHER_Prop_pibFlags, ESCHER_Prop_pictureActive, ESCHER_ShpInst_PictureFrame, ESCHER_SpContainer, SvxBrushItem::GetColor(), WW8Export::GetCurrentPageBgBrush(), SvxBrushItem::GetGraphic(), EscherEx::GetStream(), GraphicObject::GetUniqueID(), mrWrt, EscherEx::mxGlobal, EscherEx::OpenContainer(), RES_BACKGROUND(), WriteBrushAttr(), and SvStream::WriteUInt32().
Referenced by SwWW8WrGrf::WriteGrfForBullet().
sal_Int32 SwBasicEscherEx::WriteGrfFlyFrame | ( | const SwFrameFormat & | rFormat, |
sal_uInt32 | nShapeId | ||
) |
Definition at line 1601 of file wrtw8esh.cxx.
References aBuf, AddMirrorFlags(), EscherPropertyContainer::AddOpt(), EscherEx::AddShape(), EscherEx::CloseContainer(), EscherPropertyContainer::Commit(), ESCHER_BlipFlagDefault, ESCHER_BlipFlagDoNotSave, ESCHER_BlipFlagLinkToFile, ESCHER_BlipFlagURL, ESCHER_Prop_pib, ESCHER_Prop_pibFlags, ESCHER_Prop_pibName, ESCHER_ShpInst_PictureFrame, ESCHER_SpContainer, SwGrfNode::GetFileFilterNms(), SwGrfNode::GetGrf(), SwNode::GetGrfNode(), SwAttrSet::GetMirrorGrf(), sw::util::GetNoTextNodeFromSwFrameFormat(), EscherEx::GetStream(), SwContentNode::GetSwAttrSet(), GraphicObject::GetUniqueID(), SwWW8Writer::InsAsString16(), SwWW8Writer::InsUInt16(), SwGrfNode::IsLinkedFile(), mso_sptPictureFrame, EscherEx::mxGlobal, EscherEx::OpenContainer(), EscherEx::QueryPictureStream(), WriteFlyFrameAttr(), WriteFrameExtraData(), and WriteGrfAttr().
Referenced by SwEscherEx::WriteFlyFrame(), and SwWW8WrGrf::WriteGrfFromGrfNode().
void SwBasicEscherEx::WriteHyperlinkWithinFly | ( | SvMemoryStream & | rStrm, |
const SwFormatURL * | pINetFormatArg | ||
) |
Contains file link or URL.
Absolute path.
Text mark.
Target frame.
Definition at line 163 of file wrtw8esh.cxx.
References BuildFileName(), INetURLObject::GetMark(), INetURLObject::GetProtocol(), SwFormatURL::GetTargetFrameName(), SwFormatURL::GetURL(), INetURLObject::HasMark(), SvStream::ReadBytes(), SvStream::remainingSize(), rStrm, SvStream::Seek(), STREAM_SEEK_TO_BEGIN, SvStream::WriteBytes(), SwWW8Writer::WriteLong(), SwWW8Writer::WriteString16(), SwWW8Writer::WriteString8(), SvStream::WriteUInt16(), and SvStream::WriteUInt32().
Referenced by PreWriteHyperlinkWithinFly().
sal_Int32 SwBasicEscherEx::WriteOLEFlyFrame | ( | const SwFrameFormat & | rFormat, |
sal_uInt32 | nShapeId | ||
) |
Definition at line 1775 of file wrtw8esh.cxx.
References AddMirrorFlags(), EscherEx::CloseContainer(), EscherPropertyContainer::Commit(), ESCHER_SpContainer, SwFrameFormat::FindRealSdrObject(), SwOLENode::GetAspect(), SwFormat::GetContent(), SwFormatContent::GetContentIdx(), SwOLENode::GetGraphic(), SwAttrSet::GetMirrorGrf(), SwNodeIndex::GetNode(), SwNode::GetOLENode(), SwOLENode::GetOLEObj(), SwOLEObj::GetOleRef(), EscherEx::GetStream(), SwContentNode::GetSwAttrSet(), mso_sptPictureFrame, EscherEx::OpenContainer(), WriteFlyFrameAttr(), WriteFrameExtraData(), WriteGrfAttr(), and WriteOLEPicture().
Referenced by SwEscherEx::WriteFlyFrame(), and SwWW8WrGrf::WriteGraphicNode().
|
protected |
Definition at line 2879 of file wrtw8esh.cxx.
References EscherPropertyContainer::AddOpt(), EscherEx::AddShape(), ESCHER_Prop_pib, ESCHER_Prop_pictureActive, ESCHER_ShpInst_PictureFrame, GraphicObject::GetUniqueID(), EscherEx::mxGlobal, EscherEx::QueryPictureStream(), and SetPicId().
Referenced by SwEscherEx::WriteOCXControl(), and WriteOLEFlyFrame().
|
virtual |
Reimplemented in SwEscherEx.
Definition at line 2160 of file wrtw8esh.cxx.
References EscherExGlobal::GetPictureStream(), mpEscherStrm, EscherEx::mxGlobal, and SvStream::WriteStream().
Referenced by SwWW8WrGrf::WriteGraphicNode(), SwWW8WrGrf::WriteGrfForBullet(), and SwWW8WrGrf::WriteGrfFromGrfNode().
|
protected |
Definition at line 100 of file escher.hxx.
Referenced by DrawModelToEmu(), and Init().
|
protected |
Definition at line 100 of file escher.hxx.
Referenced by DrawModelToEmu(), and Init().
|
protected |
Definition at line 99 of file escher.hxx.
Referenced by SwEscherEx::FinishEscher(), and WritePictures().
|
protected |
Definition at line 98 of file escher.hxx.
Referenced by SwEscherEx::FinishEscher(), GetBasePath(), GetInvisibleHellId(), Init(), IsRelUrl(), SwEscherEx::MakeZOrderArrAndFollowIds(), SwEscherEx::SwEscherEx(), WriteFlyFrameAttr(), WriteGrfBullet(), SwEscherEx::WriteOCXControl(), and SwEscherEx::WritePictures().