LibreOffice Module sc (master) 1
|
Stores all data for internal/external references (the link table). More...
#include <xelink.hxx>
Public Member Functions | |
XclExpLinkManager (const XclExpRoot &rRoot) | |
virtual | ~XclExpLinkManager () override |
void | FindExtSheet (sal_uInt16 &rnExtSheet, sal_uInt16 &rnXclTab, SCTAB nScTab, XclExpRefLogEntry *pRefLogEntry=nullptr) |
Searches for an EXTERNSHEET index for the given Calc sheet. More... | |
void | FindExtSheet (sal_uInt16 &rnExtSheet, sal_uInt16 &rnFirstXclTab, sal_uInt16 &rnLastXclTab, SCTAB nFirstScTab, SCTAB nLastScTab, XclExpRefLogEntry *pRefLogEntry) |
Searches for an EXTERNSHEET index for the given Calc sheet range. More... | |
sal_uInt16 | FindExtSheet (sal_Unicode cCode) |
Searches for a special EXTERNSHEET index for the own document. More... | |
void | FindExtSheet (sal_uInt16 nFileId, const OUString &rTabName, sal_uInt16 nXclTabSpan, sal_uInt16 &rnExtSheet, sal_uInt16 &rnFirstSBTab, sal_uInt16 &rnLastSBTab, XclExpRefLogEntry *pRefLogEntry) |
void | StoreCell (const ScSingleRefData &rRef, const ScAddress &rPos) |
Stores the cell with the given address in a CRN record list. More... | |
void | StoreCellRange (const ScComplexRefData &rRef, const ScAddress &rPos) |
Stores all cells in the given range in a CRN record list. More... | |
void | StoreCell (sal_uInt16 nFileId, const OUString &rTabName, const ScAddress &rPos) |
void | StoreCellRange (sal_uInt16 nFileId, const OUString &rTabName, const ScRange &rRange) |
bool | InsertAddIn (sal_uInt16 &rnExtSheet, sal_uInt16 &rnExtName, const OUString &rName) |
Finds or inserts an EXTERNNAME record for an add-in function name. More... | |
bool | InsertEuroTool (sal_uInt16 &rnExtSheet, sal_uInt16 &rnExtName, const OUString &rName) |
InsertEuroTool. More... | |
bool | InsertDde (sal_uInt16 &rnExtSheet, sal_uInt16 &rnExtName, const OUString &rApplic, const OUString &rTopic, const OUString &rItem) |
Finds or inserts an EXTERNNAME record for DDE links. More... | |
bool | InsertExtName (sal_uInt16 &rnExtSheet, sal_uInt16 &rnExtName, const OUString &rUrl, const OUString &rName, const ScExternalRefCache::TokenArrayRef &rArray) |
virtual void | Save (XclExpStream &rStrm) override |
Writes the entire Link table. More... | |
virtual void | SaveXml (XclExpXmlStream &rStrm) override |
Writes the entire Link table to OOXML. More... | |
Public Member Functions inherited from XclExpRecordBase | |
XclExpRecordBase () | |
XclExpRecordBase (XclExpRecordBase const &) | |
XclExpRecordBase (XclExpRecordBase &&) | |
XclExpRecordBase & | operator= (XclExpRecordBase const &) |
XclExpRecordBase & | operator= (XclExpRecordBase &&) noexcept |
virtual | ~XclExpRecordBase () |
virtual void | Save (XclExpStream &rStrm) |
Overwrite this method to do any operation while saving the record. More... | |
virtual void | SaveXml (XclExpXmlStream &rStrm) |
Public Member Functions inherited from salhelper::SimpleReferenceObject | |
SimpleReferenceObject () | |
void | acquire () |
void | release () |
Private Types | |
typedef std::shared_ptr< XclExpLinkManagerImpl > | XclExpLinkMgrImplPtr |
Private Attributes | |
XclExpLinkMgrImplPtr | mxImpl |
Additional Inherited Members | |
Static Public Member Functions inherited from salhelper::SimpleReferenceObject | |
static void * | operator new (std::size_t nSize) |
static void * | operator new (std::size_t nSize, std::nothrow_t const &rNothrow) |
static void | operator delete (void *pPtr) |
static void | operator delete (void *pPtr, std::nothrow_t const &rNothrow) |
Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE |
Protected Member Functions inherited from XclExpRoot | |
XclExpRoot (XclExpRootData &rExpRootData) | |
const XclExpRoot & | GetRoot () const |
Returns this root instance - for code readability in derived classes. More... | |
bool | IsRelUrl () const |
Returns true, if URLs should be stored relative to the document location. More... | |
sc::CompileFormulaContext & | GetCompileFormulaContext () const |
XclExpTabInfo & | GetTabInfo () const |
Returns the buffer for Calc->Excel sheet index conversion. More... | |
XclExpAddressConverter & | GetAddressConverter () const |
Returns the address converter. More... | |
XclExpFormulaCompiler & | GetFormulaCompiler () const |
Returns the formula compiler to produce formula token arrays. More... | |
XclExpProgressBar & | GetProgressBar () const |
Returns the export progress bar. More... | |
XclExpSst & | GetSst () const |
Returns the shared string table. More... | |
XclExpPalette & | GetPalette () const |
Returns the color buffer. More... | |
XclExpFontBuffer & | GetFontBuffer () const |
Returns the font buffer. More... | |
XclExpNumFmtBuffer & | GetNumFmtBuffer () const |
Returns the number format buffer. More... | |
XclExpXFBuffer & | GetXFBuffer () const |
Returns the cell formatting attributes buffer. More... | |
XclExpLinkManager & | GetGlobalLinkManager () const |
Returns the global link manager for defined names. More... | |
XclExpLinkManager & | GetLocalLinkManager () const |
Returns the local link manager for the current sheet. More... | |
XclExpNameManager & | GetNameManager () const |
Returns the buffer that contains internal defined names. More... | |
XclExpObjectManager & | GetObjectManager () const |
Returns the drawing object manager. More... | |
XclExpFilterManager & | GetFilterManager () const |
Returns the filter manager. More... | |
XclExpPivotTableManager & | GetPivotTableManager () const |
Returns the pivot table manager. More... | |
XclExpDxfs & | GetDxfs () const |
Returns the differential formatting list. More... | |
OStringBuffer & | GetStringBuf () const |
Clean and return the OStringBuffer. More... | |
XclExpXmlPivotTableManager & | GetXmlPivotTableManager () |
XclExpTablesManager & | GetTablesManager () |
void | InitializeConvert () |
Is called when export filter starts to create the Excel document (all BIFF versions). More... | |
void | InitializeGlobals () |
Is called when export filter starts to create the workbook global data (>=BIFF5). More... | |
void | InitializeTable (SCTAB nScTab) |
Is called when export filter starts to create data for a single sheet (all BIFF versions). More... | |
void | InitializeSave () |
Is called before export filter starts to write the records to the stream. More... | |
XclExpRecordRef | CreateRecord (sal_uInt16 nRecId) const |
Returns the reference to a record (or record list) representing a root object. More... | |
bool | IsDocumentEncrypted () const |
css::uno::Sequence< css::beans::NamedValue > | GetEncryptionData () const |
Protected Member Functions inherited from XclRoot | |
XclRoot (XclRootData &rRootData) | |
XclRoot (const XclRoot &rRoot) | |
virtual | ~XclRoot () |
XclRoot & | operator= (const XclRoot &rRoot) |
RootData & | GetOldRoot () const |
Returns old RootData struct. More... | |
XclBiff | GetBiff () const |
Returns the current BIFF version of the importer/exporter. More... | |
XclOutput | GetOutput () const |
Returns the current output format of the importer/exporter. More... | |
bool | IsImport () const |
Returns true, if currently a document is imported. More... | |
rtl_TextEncoding | GetTextEncoding () const |
Returns the text encoding to import/export byte strings. More... | |
LanguageType | GetSysLanguage () const |
Returns the system language, i.e. More... | |
LanguageType | GetDocLanguage () const |
Returns the document language. More... | |
LanguageType | GetUILanguage () const |
Returns the UI language. More... | |
sal_Int16 | GetDefApiScript () const |
Returns the default script type, e.g. More... | |
tools::Long | GetCharWidth () const |
Returns the width of the '0' character (default font) for the current printer (twips). More... | |
tools::Long | GetSpaceWidth () const |
bool | IsInGlobals () const |
Returns the current Calc sheet index. More... | |
SCTAB | GetCurrScTab () const |
Returns the current Calc sheet index. More... | |
sal_Int32 | GetHmmFromPixelX (double fPixelX) const |
Calculates the width of the passed number of pixels in 1/100 mm. More... | |
sal_Int32 | GetHmmFromPixelY (double fPixelY) const |
Calculates the height of the passed number of pixels in 1/100 mm. More... | |
SfxMedium & | GetMedium () const |
Returns the medium to import from. More... | |
const OUString & | GetDocUrl () const |
Returns the document URL of the imported/exported file. More... | |
const OUString & | GetBasePath () const |
Returns the base path of the imported/exported file. More... | |
const OUString & | GetUserName () const |
Returns the current user name. More... | |
css::uno::Sequence< css::beans::NamedValue > | RequestEncryptionData (::comphelper::IDocPasswordVerifier &rVerifier) const |
Requests and verifies a password from the medium or the user. More... | |
const tools::SvRef< SotStorage > & | GetRootStorage () const |
Returns the OLE2 root storage of the imported/exported file. More... | |
bool | HasVbaStorage () const |
Returns true, if the document contains a VBA storage. More... | |
tools::SvRef< SotStorage > | OpenStorage (tools::SvRef< SotStorage > const &xStrg, const OUString &rStrgName) const |
Tries to open a storage as child of the specified storage for reading or writing. More... | |
tools::SvRef< SotStorage > | OpenStorage (const OUString &rStrgName) const |
Tries to open a storage as child of the root storage for reading or writing. More... | |
tools::SvRef< SotStorageStream > | OpenStream (tools::SvRef< SotStorage > const &xStrg, const OUString &rStrmName) const |
Tries to open a new stream in the specified storage for reading or writing. More... | |
tools::SvRef< SotStorageStream > | OpenStream (const OUString &rStrmName) const |
Tries to open a new stream in the root storage for reading or writing. More... | |
ScDocument & | GetDoc () const |
Returns reference to the destination document (import) or source document (export). More... | |
SfxObjectShell * | GetDocShell () const |
Returns the object shell of the Calc document. More... | |
ScModelObj * | GetDocModelObj () const |
Returns the object model of the Calc document. More... | |
OutputDevice * | GetPrinter () const |
Returns pointer to the printer of the Calc document. More... | |
ScStyleSheetPool & | GetStyleSheetPool () const |
Returns the style sheet pool of the Calc document. More... | |
ScRangeName & | GetNamedRanges () const |
Returns the defined names container of the Calc document. More... | |
SdrPage * | GetSdrPage (SCTAB nScTab) const |
Returns the drawing layer page of the passed sheet, if present. More... | |
SvNumberFormatter & | GetFormatter () const |
Returns the number formatter of the Calc document. More... | |
DateTime | GetNullDate () const |
Returns the null date of the current number formatter. More... | |
sal_uInt16 | GetBaseYear () const |
Returns the base year depending on the current null date (1900 or 1904). More... | |
double | GetDoubleFromDateTime (const DateTime &rDateTime) const |
Converts a date/time value to a floating-point value. More... | |
DateTime | GetDateTimeFromDouble (double fValue) const |
Converts a floating-point value to a date/time value. More... | |
ScEditEngineDefaulter & | GetEditEngine () const |
Returns the edit engine for import/export of rich strings etc. More... | |
ScHeaderEditEngine & | GetHFEditEngine () const |
Returns the edit engine for import/export of headers/footers. More... | |
EditEngine & | GetDrawEditEngine () const |
Returns the edit engine for import/export of drawing text boxes. More... | |
XclFontPropSetHelper & | GetFontPropSetHelper () const |
Returns the property set helper for fonts. More... | |
XclChPropSetHelper & | GetChartPropSetHelper () const |
Returns the property set helper for the chart filters. More... | |
ScExtDocOptions & | GetExtDocOptions () const |
Returns the extended document options. More... | |
XclTracer & | GetTracer () const |
Returns the filter tracer. More... | |
const ScAddress & | GetScMaxPos () const |
Returns the highest possible cell address in a Calc document. More... | |
const ScAddress & | GetXclMaxPos () const |
Returns the highest possible cell address in an Excel document (using current BIFF version). More... | |
const ScAddress & | GetMaxPos () const |
Returns the highest possible cell address valid in Calc and Excel (using current BIFF version). More... | |
void | SetDocLanguage (LanguageType eLang) |
Sets the document language. More... | |
void | SetUILanguage (LanguageType eLang) |
Sets the UI language, i.e. More... | |
void | SetTextEncoding (rtl_TextEncoding eTextEnc) |
Sets the text encoding to import/export byte strings. More... | |
void | SetCharWidth (const XclFontData &rFontData) |
Sets the width of the '0' - '9' digit character as well as the ' ' space char (using the default font) for the current printer (twips). More... | |
void | SetCurrScTab (SCTAB nScTab) |
Sets the current Calc sheet index. More... | |
void | IncCurrScTab () |
Increases the current Calc sheet index by 1. More... | |
Static Protected Member Functions inherited from XclExpRoot | |
static css::uno::Sequence< css::beans::NamedValue > | GenerateEncryptionData (std::u16string_view aPass) |
static css::uno::Sequence< css::beans::NamedValue > | GenerateDefaultEncryptionData () |
Static Protected Member Functions inherited from XclRoot | |
static OUString | GetDefaultPassword () |
Returns the default password used for stream encryption. More... | |
Protected Attributes inherited from salhelper::SimpleReferenceObject | |
oslInterlockedCount | m_nCount |
Stores all data for internal/external references (the link table).
Definition at line 145 of file xelink.hxx.
|
private |
Definition at line 218 of file xelink.hxx.
|
explicit |
Definition at line 2559 of file xelink.cxx.
References DBG_ERROR_BIFF, EXC_BIFF5, EXC_BIFF8, XclRoot::GetBiff(), and mxImpl.
|
overridevirtual |
Definition at line 2575 of file xelink.cxx.
void XclExpLinkManager::FindExtSheet | ( | sal_uInt16 & | rnExtSheet, |
sal_uInt16 & | rnFirstXclTab, | ||
sal_uInt16 & | rnLastXclTab, | ||
SCTAB | nFirstScTab, | ||
SCTAB | nLastScTab, | ||
XclExpRefLogEntry * | pRefLogEntry | ||
) |
Searches for an EXTERNSHEET index for the given Calc sheet range.
@descr See above for the meaning of EXTERNSHEET indexes.
rnExtSheet | (out-param) Returns the EXTERNSHEET index. |
rnFirstXclTab | (out-param) Returns the Excel sheet index of the first sheet. |
rnXclTab | (out-param) Returns the Excel sheet index of the last sheet. |
nFirstScTab | The first Calc sheet index to process. |
nLastScTab | The last Calc sheet index to process. param pRefLogEntry If not 0, data about the external link is stored here. |
Definition at line 2586 of file xelink.cxx.
References mxImpl.
void XclExpLinkManager::FindExtSheet | ( | sal_uInt16 & | rnExtSheet, |
sal_uInt16 & | rnXclTab, | ||
SCTAB | nScTab, | ||
XclExpRefLogEntry * | pRefLogEntry = nullptr |
||
) |
Searches for an EXTERNSHEET index for the given Calc sheet.
@descr See above for the meaning of EXTERNSHEET indexes.
rnExtSheet | (out-param) Returns the EXTERNSHEET index. |
rnXclTab | (out-param) Returns the Excel sheet index. |
nScTab | The Calc sheet index to process. param pRefLogEntry If not 0, data about the external link is stored here. |
Definition at line 2579 of file xelink.cxx.
References mxImpl.
Referenced by XclMacroHelper::SetMacroLink().
void XclExpLinkManager::FindExtSheet | ( | sal_uInt16 | nFileId, |
const OUString & | rTabName, | ||
sal_uInt16 | nXclTabSpan, | ||
sal_uInt16 & | rnExtSheet, | ||
sal_uInt16 & | rnFirstSBTab, | ||
sal_uInt16 & | rnLastSBTab, | ||
XclExpRefLogEntry * | pRefLogEntry | ||
) |
Definition at line 2598 of file xelink.cxx.
References mxImpl.
sal_uInt16 XclExpLinkManager::FindExtSheet | ( | sal_Unicode | cCode | ) |
Searches for a special EXTERNSHEET index for the own document.
Definition at line 2593 of file xelink.cxx.
References mxImpl.
bool XclExpLinkManager::InsertAddIn | ( | sal_uInt16 & | rnExtSheet, |
sal_uInt16 & | rnExtName, | ||
const OUString & | rName | ||
) |
Finds or inserts an EXTERNNAME record for an add-in function name.
rnExtSheet | (out-param) Returns the index of the EXTSHEET structure for the add-in function name. |
rnExtName | (out-param) Returns the 1-based EXTERNNAME record index. |
Definition at line 2625 of file xelink.cxx.
References mxImpl.
bool XclExpLinkManager::InsertDde | ( | sal_uInt16 & | rnExtSheet, |
sal_uInt16 & | rnExtName, | ||
const OUString & | rApplic, | ||
const OUString & | rTopic, | ||
const OUString & | rItem | ||
) |
Finds or inserts an EXTERNNAME record for DDE links.
rnExtSheet | (out-param) Returns the index of the EXTSHEET structure for the DDE link. |
rnExtName | (out-param) Returns the 1-based EXTERNNAME record index. |
Definition at line 2637 of file xelink.cxx.
References mxImpl.
bool XclExpLinkManager::InsertEuroTool | ( | sal_uInt16 & | rnExtSheet, |
sal_uInt16 & | rnExtName, | ||
const OUString & | rName | ||
) |
bool XclExpLinkManager::InsertExtName | ( | sal_uInt16 & | rnExtSheet, |
sal_uInt16 & | rnExtName, | ||
const OUString & | rUrl, | ||
const OUString & | rName, | ||
const ScExternalRefCache::TokenArrayRef & | rArray | ||
) |
Definition at line 2644 of file xelink.cxx.
References mxImpl.
|
overridevirtual |
Writes the entire Link table.
Reimplemented from XclExpRecordBase.
Definition at line 2651 of file xelink.cxx.
|
overridevirtual |
Writes the entire Link table to OOXML.
Reimplemented from XclExpRecordBase.
Definition at line 2656 of file xelink.cxx.
void XclExpLinkManager::StoreCell | ( | const ScSingleRefData & | rRef, |
const ScAddress & | rPos | ||
) |
Stores the cell with the given address in a CRN record list.
Definition at line 2605 of file xelink.cxx.
References mxImpl.
void XclExpLinkManager::StoreCell | ( | sal_uInt16 | nFileId, |
const OUString & | rTabName, | ||
const ScAddress & | rPos | ||
) |
Definition at line 2615 of file xelink.cxx.
References mxImpl.
void XclExpLinkManager::StoreCellRange | ( | const ScComplexRefData & | rRef, |
const ScAddress & | rPos | ||
) |
Stores all cells in the given range in a CRN record list.
Definition at line 2610 of file xelink.cxx.
References mxImpl, ScComplexRefData::Ref1, and ScComplexRefData::Ref2.
void XclExpLinkManager::StoreCellRange | ( | sal_uInt16 | nFileId, |
const OUString & | rTabName, | ||
const ScRange & | rRange | ||
) |
Definition at line 2620 of file xelink.cxx.
References mxImpl.
|
private |
Definition at line 219 of file xelink.hxx.
Referenced by FindExtSheet(), InsertAddIn(), InsertDde(), InsertEuroTool(), InsertExtName(), Save(), SaveXml(), StoreCell(), StoreCellRange(), and XclExpLinkManager().