57 css::drawing::XShape >& xShape,
ScDocument* pDoc );
91 const css::uno::Reference< css::drawing::XShape>& rxShape,
93 virtual void EndShape( sal_uInt16 nShapeType, sal_uInt32 nShapeID )
override;
101 css::uno::Reference< css::drawing::XShape >
const & xShape,
108 css::uno::Reference< css::drawing::XShape >
const & xShape,
115 css::uno::Reference< css::awt::XControlModel >
const & xCtrlModel );
121 std::stack< std::pair< XclObj*, std::unique_ptr<XclEscherHostAppData> > >
aStack;
static void PopulateShapeInteractionInfo(const XclExpObjectManager &rObjMgr, const css::uno::Reference< css::drawing::XShape > &xShape, EscherExHostAppData &rHostAppData)
static XclExpShapeObj * CreateShapeObj(XclExpObjectManager &rObjMgr, const css::uno::Reference< css::drawing::XShape > &xShape, ScDocument *pDoc)
virtual void WriteData(EscherEx &rEx) const override
virtual void WriteData(EscherEx &rEx) const override
void SetXclObj(XclObj *p)
ONLY for the AdditionalText mimic.
XclEscherClientTextbox(const XclExpRoot &rRoot, const SdrTextObj &rObj, XclObj *pObj)
const SdrTextObj & rTextObj
virtual SvStream * ImplQueryPictureStream() override
Override to create a new temporary file and return its stream.
::std::optional< ::utl::TempFileFast > moPicTempFile
XclEscherExGlobal(const XclExpRoot &rRoot)
bool HasPendingDffData()
Returns true, if there is more data left in the DFF stream than owned by the last MSODRAWING record.
std::unique_ptr< XclEscherClientData > pTheClientData
virtual void EndShape(sal_uInt16 nShapeType, sal_uInt32 nShapeID) override
XclEscherEx(const XclExpRoot &rRoot, XclExpObjectManager &rObjMgr, SvStream &rStrm, const XclEscherEx *pParent=nullptr)
sal_uInt32 InitNextDffFragment()
Called by MSODRAWING record constructors to initialize the DFF stream fragment they will own.
std::unique_ptr< XclEscherHostAppData > pCurrAppData
std::unique_ptr< XclExpOcxControlObj > CreateOCXCtrlObj(css::uno::Reference< css::drawing::XShape > const &xShape, const tools::Rectangle *pChildAnchor)
Creates an OCX form control OBJ record from the passed form control.
virtual ~XclEscherEx() override
sal_uInt32 GetDffFragmentPos(sal_uInt32 nFragmentKey)
Returns the position of the specified DFF stream fragment.
std::stack< std::pair< XclObj *, std::unique_ptr< XclEscherHostAppData > > > aStack
sal_uInt32 GetDffFragmentSize(sal_uInt32 nFragmentKey)
Returns the size of the specified DFF stream fragment.
virtual EscherExHostAppData * StartShape(const css::uno::Reference< css::drawing::XShape > &rxShape, const tools::Rectangle *pChildAnchor) override
void EndDocument()
Flush and merge PicStream into EscherStream.
void UpdateDffFragmentEnd()
Called after some data has been written to the DFF stream, to update the end position of the DFF frag...
std::unique_ptr< XclExpTbxControlObj > CreateTBXCtrlObj(css::uno::Reference< css::drawing::XShape > const &xShape, const tools::Rectangle *pChildAnchor)
The 'Ctls' stream.
XclExpObjectManager & mrObjMgr
sal_uInt16 nAdditionalText
XclEscherClientTextbox * pAdditionalText
void ConvertTbxMacro(XclExpTbxControlObj &rTbxCtrlObj, css::uno::Reference< css::awt::XControlModel > const &xCtrlModel)
Tries to get the name of a Basic macro from a control.
XclExpDffAnchorBase * CreateDffAnchor(const SdrObject &rSdrObj) const
Creates a new DFF client anchor object and calculates the anchor position of the passed object.
tools::SvRef< SotStorageStream > mxCtlsStrm
virtual EscherExHostAppData * EnterAdditionalTextGroup() override
bool IsStackedGroup() const
void SetStackedGroup(bool b)
Base class for DFF client anchor atoms used in spreadsheets.
Represents an OBJ record for an OCX form control.
Access to global data from other classes.
Represents an OBJ record for a TBX form control.