28#include <rtl/ustring.hxx>
88 const Size& rPageSize, sal_Int32 nScaleX, sal_Int32 nScaleY );
173 css::uno::Reference< css::drawing::XShape >
const & xShape );
233 css::uno::Reference< css::drawing::XShape >
const & xShape,
236 sal_uInt32 nStrmStart, sal_uInt32 nStrmSize );
255 css::uno::Reference< css::drawing::XShape >
const & xShape,
260 bool SetMacroLink(
const css::script::ScriptEventDescriptor& rEvent );
280 const css::uno::Reference< css::drawing::XShape >
mxShape;
316 css::uno::Reference< css::drawing::XShape >
const & xShape,
325 css::uno::Reference<css::chart::XChartDocument>
GetChartDoc()
const;
330 css::uno::Reference< css::drawing::XShape >
mxShape;
356 std::u16string_view rAddText );
431 sal_uInt16
AddObj( std::unique_ptr<XclObj> pObjRec );
453 const Size& rPageSize,
454 sal_Int32 nScaleX, sal_Int32 nScaleY );
Additional class containing cell annotation data.
css::uno::Reference< css::drawing::XShape > mxShape
The chart itself (BOF/EOF substream data).
css::uno::Reference< css::chart::XChartDocument > GetChartDoc() const
virtual ~XclExpChartObj() override
std::shared_ptr< XclExpChart > XclExpChartRef
virtual void Save(XclExpStream &rStrm) override
Writes the OBJ record and the entire chart substream.
XclExpChartObj(XclExpObjectManager &rObjMgr, css::uno::Reference< css::drawing::XShape > const &xShape, const tools::Rectangle *pChildAnchor, ScDocument *pDoc)
virtual void SaveXml(XclExpXmlStream &rStrm) override
Represents the entire chart substream (all records in BOF/EOF block).
Helper class for form controls to manage spreadsheet links .
sal_uInt16 mnEntryCount
Formula for source data range.
static void WriteFormulaSubRec(XclExpStream &rStrm, sal_uInt16 nSubRecId, const XclTokenArray &rTokArr)
Writes a formula subrecord with special style only valid in OBJ records.
XclExpControlHelper(const XclExpRoot &rRoot)
sal_uInt16 GetSourceEntryCount() const
Returns the number of entries in the source range, or 0, if no source set.
XclTokenArrayRef mxCellLink
virtual ~XclExpControlHelper() override
const XclTokenArray * GetCellLinkTokArr() const
Returns the Excel token array of the cell link, or 0, if no link present.
XclTokenArrayRef mxSrcRange
Formula for linked cell.
const XclTokenArray * GetSourceRangeTokArr() const
Returns the Excel token array of the source range, or 0, if no link present.
ScAddress mxCellLinkAddress
Number of entries in source range.
static void WriteFormula(XclExpStream &rStrm, const XclTokenArray &rTokArr)
Writes a formula with special style only valid in OBJ records.
void ConvertSheetLinks(css::uno::Reference< css::drawing::XShape > const &xShape)
Tries to get spreadsheet cell link and source range link from the passed shape.
Base class for DFF client anchor atoms used in spreadsheets.
virtual void WriteData(EscherEx &rEscherEx, const tools::Rectangle &rRect) override
Called from SVX DFF converter.
XclExpDffAnchorBase(const XclExpRoot &rRoot, sal_uInt16 nFlags=0)
Constructs a dummy client anchor.
void SetFlags(const SdrObject &rSdrObj)
Sets the flags according to the passed SdrObject.
void SetSdrObject(const SdrObject &rSdrObj)
Sets the anchor position and flags according to the passed SdrObject.
virtual void ImplSetFlags(const SdrObject &rSdrObj)
void WriteDffData(EscherEx &rEscherEx) const
Writes the DFF client anchor structure with the current anchor position.
sal_uInt16 mnFlags
The client anchor data.
virtual void ImplCalcAnchorRect(const tools::Rectangle &rRect, MapUnit eMapUnit)
Represents the position (anchor) of a cell dropdown object.
XclExpDffDropDownAnchor(const XclExpRoot &rRoot, const ScAddress &rScPos)
Represents the position (anchor) of a shape in an embedded draw page.
virtual void ImplCalcAnchorRect(const tools::Rectangle &rRect, MapUnit eMapUnit) override
XclExpDffEmbeddedAnchor(const XclExpRoot &rRoot, const Size &rPageSize, sal_Int32 nScaleX, sal_Int32 nScaleY)
virtual void ImplSetFlags(const SdrObject &rSdrObj) override
Represents the position (anchor) of a note object.
XclExpDffNoteAnchor(const XclExpRoot &rRoot, const tools::Rectangle &rRect)
Represents the position (anchor) of an object in a Calc sheet.
virtual void ImplSetFlags(const SdrObject &rSdrObj) override
virtual void ImplCalcAnchorRect(const tools::Rectangle &rRect, MapUnit eMapUnit) override
XclExpDffSheetAnchor(const XclExpRoot &rRoot)
virtual XclExpDffAnchorBase * CreateDffAnchor() const override
Creates a new DFF client anchor object for embedded objects according to the scaling data passed to t...
XclExpEmbeddedObjectManager(const XclExpObjectManager &rParent, const Size &rPageSize, sal_Int32 nScaleX, sal_Int32 nScaleY)
Provides export of bitmap data to an IMGDATA record.
virtual void SaveXml(XclExpXmlStream &rStrm) override
XclExpImgData(Graphic aGraphic, sal_uInt16 nRecId)
virtual void Save(XclExpStream &rStrm) override
Writes the BITMAP record.
sal_uInt16 mnRecId
The VCL graphic.
Base class for records holding DFF stream fragments.
virtual void WriteBody(XclExpStream &rStrm) override
Writes the body of the record (without record header).
sal_uInt32 mnFragmentKey
Reference to the DFF converter containing the DFF stream.
XclExpMsoDrawingBase(XclEscherEx &rEscherEx, sal_uInt16 nRecId)
The MSODRAWINGGROUP record contains the DGGCONTAINER with global DFF data such as the picture contain...
XclExpMsoDrawingGroup(XclEscherEx &rEscherEx)
One or more MSODRAWING records contain the DFF stream data for a drawing shape.
XclExpMsoDrawing(XclEscherEx &rEscherEx)
Represents a NOTE record containing the relevant data of a cell note.
bool mbLocked
Auto scale text.
SdrTextHorzAdjust meTHA
true = permanently visible.
bool mbColHidden
Auto Fill Style.
tools::Rectangle maCommentTo
From and From Offset.
ScAddress maScPos
Text and formatting data (OOXML)
XclExpStringRef mpNoteContents
Main text of the note (<=BIFF7).
void WriteXml(sal_Int32 nAuthorId, XclExpXmlStream &rStrm)
const XclExpRoot & mrRoot
bool mbAutoScale
text vertical adjust
bool mbAutoFill
Position & Size locked.
const XclExpString & GetAuthor() const
OString maNoteText
Name of the author.
virtual void WriteBody(XclExpStream &rStrm) override
Writes the body of the NOTE record.
sal_uInt16 mnObjId
Calc cell address of the note.
SdrTextVertAdjust meTVA
text horizontal adjust
XclExpNote(const XclExpRoot &rRoot, const ScAddress &rScPos, const ScPostIt *pScNote, std::u16string_view rAddText)
Constructs a NOTE record from the passed note object and/or the text.
bool mbVisible
Escher object ID (BIFF8).
bool mbRowHidden
Column containing the comment is hidden.
tools::Rectangle maCommentFrom
Row containing the comment is hidden.
virtual void Save(XclExpStream &rStrm) override
Writes the NOTE record, if the respective Escher object is present.
rtl::Reference< XclExpRecordBase > ProcessDrawing(const css::uno::Reference< css::drawing::XShapes > &rxShapes)
Processes a collection of UNO shapes and returns the record block containing all related records (MSO...
std::unique_ptr< SvMemoryStream > mpBackupStrm
XclExpObjectManager(const XclExpRoot &rRoot)
rtl::Reference< XclExpRecordBase > CreateDrawingGroup()
Creates and returns the MSODRAWINGGROUP record containing global DFF data in the DGGCONTAINER.
virtual XclExpDffAnchorBase * CreateDffAnchor() const
Creates a new DFF client anchor object.
void StartSheet()
Initializes the object manager for a new sheet.
rtl::Reference< XclExpRecordBase > ProcessDrawing(const SdrPage *pSdrPage)
Processes a drawing page and returns the record block containing all related records (MSODRAWING,...
void EndDocument()
Finalizes the object manager after conversion of all sheets.
std::optional< ::utl::TempFileFast > moTempFile
XclExpMsoDrawing * GetMsodrawingPerSheet()
XclEscherEx & GetEscherEx()
sal_uInt16 AddObj(std::unique_ptr< XclObj > pObjRec)
virtual ~XclExpObjectManager() override
void InitStream(bool bTempFile)
rtl::Reference< XclExpObjList > mxObjList
std::unique_ptr< XclObj > RemoveLastObj()
std::shared_ptr< XclEscherEx > mxEscherEx
Represents an OBJ record for an OCX form control.
XclExpOcxControlObj(XclExpObjectManager &rObjMgr, css::uno::Reference< css::drawing::XShape > const &xShape, const tools::Rectangle *pChildAnchor, OUString aClassName, sal_uInt32 nStrmStart, sal_uInt32 nStrmSize)
sal_uInt32 mnStrmStart
Class name of the control.
sal_uInt32 mnStrmSize
Start position in 'Ctls' stream.
virtual void WriteSubRecs(XclExpStream &rStrm) override
Base class for all Excel records.
Base class for single records with any content.
Access to global data from other classes.
virtual ~XclExpShapeObj() override
XclExpShapeObj(XclExpObjectManager &rRoot, css::uno::Reference< css::drawing::XShape > const &xShape, ScDocument *pDoc)
virtual void WriteSubRecs(XclExpStream &rStrm) override
This class is used to export Excel record streams.
This class stores an unformatted or formatted string for Excel export.
Represents an OBJ record for a TBX form control.
const css::uno::Reference< css::drawing::XShape > mxShape
sal_Int16 mnSelEntry
Combobox dropdown line count.
XclExpTbxControlObj(XclExpObjectManager &rObjMgr, css::uno::Reference< css::drawing::XShape > const &xShape, const tools::Rectangle *pChildAnchor)
tools::Rectangle maAreaTo
bool mbFlatButton
Scrollbar: Page step.
sal_uInt16 mnScrollStep
Scrollbar: Maximum value.
sal_uInt16 mnScrollValue
Selected entry in combobox (1-based).
void SaveVml(XclExpXmlStream &rStrm)
Save into xl/drawings/vmlDrawing1.vml.
bool mbScrollHor
true = Multi selection in listbox.
OUString SaveControlPropertiesXml(XclExpXmlStream &rStrm) const
void setShapeId(sal_Int32 aShapeId)
bool mbPrint
Scrollbar: true = horizontal.
bool mbMultiSel
False = 3D border style; True = Flat border style.
sal_uInt16 mnScrollMax
Scrollbar: Minimum value.
XclTbxEventType meEventType
Indexes of all selected entries in a multi selection.
void WriteSbs(XclExpStream &rStrm)
Writes the ftSbs sub structure containing scrollbar data.
sal_uInt16 mnState
Height of the control.
virtual void SaveXml(XclExpXmlStream &rStrm) override
sal_Int16 mnLineCount
Checked/unchecked state.
sal_Int32 mnHeight
Type of supported macro event.
sal_uInt16 mnScrollPage
Scrollbar: Single step.
tools::Rectangle maAreaFrom
bool SetMacroLink(const css::script::ScriptEventDescriptor &rEvent)
Sets the name of a macro attached to this control.
sal_uInt16 mnScrollMin
Scrollbar: Current value.
XclExpObjectManager & mrRoot
virtual void WriteSubRecs(XclExpStream &rStrm) override
void SaveSheetXml(XclExpXmlStream &rStrm, const OUString &aIdFormControlPr) const
void WriteCellLinkSubRec(XclExpStream &rStrm, sal_uInt16 nSubRecId)
Writes a subrecord containing a cell link, or nothing, if no link present.
bool mbFlatBorder
False = 3D button style; True = Flat button style.
XclMacroHelper(const XclExpRoot &rRoot)
virtual ~XclMacroHelper() override
const OUString & GetMacroName() const
bool SetMacroLink(const css::script::ScriptEventDescriptor &rEvent, const XclTbxEventType &nEventType)
Sets the name of a macro for object of passed type.
void WriteMacroSubRec(XclExpStream &rStrm)
Writes an ftMacro subrecord containing a macro link, or nothing, if no macro present.
XclTokenArrayRef mxMacroLink
OUString maMacroName
Token array containing a link to an attached macro.
Binary representation of an Excel token array.
Represents the position (anchor) of an object in a Calc document.
std::shared_ptr< XclExpString > XclExpStringRef