32class SharedStringPool;
85 sal_uInt16
GetCurrentIndex( sal_uInt16 nCreatedId, sal_uInt16 nMaxTabId )
const;
135 const OUString& rApplc,
const OUString& rExtDoc )
const;
145 sal_uInt16& rFileId, OUString& rTabName,
ScRange& rRange)
const;
202 bool IsSelfRef( sal_uInt16 nXtiIndex )
const;
207 sal_uInt16 nXtiIndex )
const;
219 bool GetLinkData( OUString& rApplic, OUString& rTopic, sal_uInt16 nXtiIndex )
const;
221 OUString
GetMacroName( sal_uInt16 nExtSheet, sal_uInt16 nExtName )
const;
Matrix data type that can store values of mixed types.
Contains cached values in a 2-dimensional array.
MOper, multiple operands, stores cached values of external range specified in the record.
MOper(svl::SharedStringPool &rPool, XclImpStream &rStrm)
const ScMatrix & GetCache() const
Stores contents of an external name.
XclImpCachedMatrixPtr mxDdeMatrix
::std::unique_ptr< XclImpCachedMatrix > XclImpCachedMatrixPtr
const OUString & GetName() const
void CreateDdeData(ScDocument &rDoc, const OUString &rApplc, const OUString &rExtDoc) const
Create and apply the cached list of this DDE Link to the document.
std::optional< MOper > moMOper
Cached results of the DDE link.
TokenArrayPtr mxArray
Cached values for OLE link.
bool CreateOleData(const ScDocument &rDoc, const OUString &rUrl, sal_uInt16 &rFileId, OUString &rTabName, ScRange &rRange) const
Create OLE link data.
bool HasFormulaTokens() const
XclImpExtNameType meType
Storage ID for OLE object storages.
XclImpExtName(XclImpSupbook &rSupbook, XclImpStream &rStrm, XclSupbookType eSubType, ExcelToSc *pFormulaConv)
Reads the external name from the stream.
XclImpExtNameType GetType() const
sal_uInt32 GetStorageId() const
::std::unique_ptr< ScTokenArray > TokenArrayPtr
OUString maName
Formula tokens for external name.
sal_uInt32 mnStorageId
The name of the external name.
void CreateExtNameData(const ScDocument &rDoc, sal_uInt16 nFileId) const
Implementation of the link manager.
This is the central class for the import of all internal/external links.
bool GetScTabRange(SCTAB &rnFirstScTab, SCTAB &rnLastScTab, sal_uInt16 nXtiIndex) const
Returns the Calc sheet index range of the specified XTI entry.
void ReadSupbook(XclImpStream &rStrm)
Reads a SUPBOOK record.
void ReadExternname(XclImpStream &rStrm, ExcelToSc *pFormulaConv)
Reads an EXTERNNAME record and appends it to the current SUPBOOK.
void ReadXct(XclImpStream &rStrm)
Reads an XCT record and appends it to the current SUPBOOK.
bool GetLinkData(OUString &rApplic, OUString &rTopic, sal_uInt16 nXtiIndex) const
Tries to decode the URL of the specified XTI entry to OLE or DDE link components.
void ReadCrn(XclImpStream &rStrm)
Reads a CRN record and appends it to the current SUPBOOK.
XclImpLinkManager(const XclImpRoot &rRoot)
const OUString * GetSupbookUrl(sal_uInt16 nXtiIndex) const
::std::unique_ptr< XclImpLinkManagerImpl > XclImpLinkMgrImplPtr
virtual ~XclImpLinkManager() override
void ReadExternsheet(XclImpStream &rStrm)
Reads the EXTERNSHEET record.
bool IsSelfRef(sal_uInt16 nXtiIndex) const
Returns true, if the specified XTI entry contains an internal reference.
OUString GetSupbookTabName(sal_uInt16 nXti, sal_uInt16 nXtiTab) const
OUString GetMacroName(sal_uInt16 nExtSheet, sal_uInt16 nExtName) const
Returns the specified macro name or an empty string on error.
const XclImpExtName * GetExternName(sal_uInt16 nXtiIndex, sal_uInt16 nExtName) const
Returns the specified external name or 0 on error.
XclImpLinkMgrImplPtr mxImpl
Access to global data from other classes.
This class is used to import record oriented streams.
This class represents an external linked document (record SUPBOOK).
A buffer containing information about names and creation order of sheets.
ScfUInt16Vec maTabIdVec
All Excel sheet names with Calc sheet index.
SCTAB GetScTabFromXclName(const OUString &rXclTabName) const
Returns the Calc sheet index from the passed original Excel sheet name.
sal_uInt16 GetCurrentIndex(sal_uInt16 nCreatedId, sal_uInt16 nMaxTabId) const
Returns the current sheet index calculated from creation index.
::std::map< OUString, SCTAB > XclTabNameMap
void ReadTabid(XclImpStream &rStrm)
Reads the TABID record.
void InsertScTab(SCTAB nScTab)
Inserts a Calc sheet index (increases all following sheet indexes).
void AppendXclTabName(const OUString &rXclTabName, SCTAB nScTab)
Appends an original Excel sheet name with corresponding Calc sheet index.
These need to be in global namespace just like their respective types are.
::boost::intrusive_ptr< ScMatrix > ScMatrixRef
XclImpExtNameType
Type of an external name.
@ xlExtOLE
A DDE link range.
@ xlExtDDE
An add-in function name.
@ xlExtAddIn
An external defined name.
@ xlExtEuroConvert
An OLE object link.
XclSupbookType
This enumeration specifies the type of a SUPBOOK record.