LibreOffice Module sc (master) 1
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
ExcelToSc8 Class Reference

#include <excform.hxx>

Inheritance diagram for ExcelToSc8:
[legend]
Collaboration diagram for ExcelToSc8:
[legend]

Classes

struct  ExternalTabInfo
 

Public Member Functions

 ExcelToSc8 (XclImpRoot &rRoot)
 
virtual ~ExcelToSc8 () override
 
virtual ConvErr Convert (std::unique_ptr< ScTokenArray > &rpTokArray, XclImpStream &rStrm, std::size_t nFormulaLen, bool bAllowArrays, const FORMULA_TYPE eFT=FT_CellFormula) override
 
virtual ConvErr Convert (ScRangeListTabs &, XclImpStream &rStrm, std::size_t nFormulaLen, SCTAB nTab, const FORMULA_TYPE eFT=FT_CellFormula) override
 
virtual void ConvertExternName (std::unique_ptr< ScTokenArray > &rpArray, XclImpStream &rStrm, std::size_t nFormulaLen, const OUString &rUrl, const ::std::vector< OUString > &rTabNames) override
 
virtual void GetAbsRefs (ScRangeList &rRangeList, XclImpStream &rStrm, std::size_t nLen) override
 
- Public Member Functions inherited from ExcelToSc
 ExcelToSc (XclImpRoot &rRoot)
 
virtual ~ExcelToSc () override
 
virtual ConvErr Convert (std::unique_ptr< ScTokenArray > &, XclImpStream &rStrm, std::size_t nFormulaLen, bool bAllowArrays, const FORMULA_TYPE eFT=FT_CellFormula) override
 
virtual ConvErr Convert (ScRangeListTabs &, XclImpStream &rStrm, std::size_t nFormulaLen, SCTAB nTab, const FORMULA_TYPE eFT=FT_CellFormula) override
 
virtual void ConvertExternName (std::unique_ptr< ScTokenArray > &rpArray, XclImpStream &rStrm, std::size_t nFormulaLen, const OUString &rUrl, const ::std::vector< OUString > &rTabNames)
 
virtual void GetAbsRefs (ScRangeList &rRangeList, XclImpStream &rStrm, std::size_t nLen)
 
std::unique_ptr< ScTokenArrayGetDummy ()
 
std::unique_ptr< ScTokenArrayGetBoolErr (XclBoolError)
 
const ScTokenArrayGetSharedFormula (const ScAddress &rRefPos) const
 
void SetComplCol (ScComplexRefData &)
 
void SetComplRow (ScComplexRefData &)
 
void ReadExtensions (const ExtensionTypeVec &rExtensions, XclImpStream &aIn)
 
void ReadExtensionArray (unsigned int n, XclImpStream &aIn)
 
void ReadExtensionMemArea (XclImpStream &aIn)
 
- Public Member Functions inherited from ExcelConverterBase
void Reset ()
 
void Reset (const ScAddress &rEingPos)
 
virtual ConvErr Convert (std::unique_ptr< ScTokenArray > &rpErg, XclImpStream &rStrm, std::size_t nFormulaLen, bool bAllowArrays, const FORMULA_TYPE eFT=FT_CellFormula)=0
 
virtual ConvErr Convert (ScRangeListTabs &, XclImpStream &rStrm, std::size_t nFormulaLen, SCTAB nTab, const FORMULA_TYPE eFT=FT_CellFormula)=0
 

Static Public Member Functions

static bool IsComplRowRange (const sal_uInt16 nRow1, const sal_uInt16 nRow2)
 
- Static Public Member Functions inherited from ExcelToSc
static bool ReadSharedFormulaPosition (XclImpStream &rStrm, SCCOL &rCol, SCROW &rRow)
 
static void SetError (ScFormulaCell &rCell, const ConvErr eErr)
 
static bool IsComplColRange (const sal_uInt16 nCol1, const sal_uInt16 nCol2)
 
static bool IsComplRowRange (const sal_uInt16 nRow1, const sal_uInt16 nRow2)
 
static void ReadExtensionNlr (XclImpStream &aIn)
 

Private Member Functions

void ExcRelToScRel8 (sal_uInt16 nRow, sal_uInt16 nCol, ScSingleRefData &, const bool bName)
 
bool GetExternalFileIdFromXti (sal_uInt16 nIxti, sal_uInt16 &rFileId) const
 
virtual bool Read3DTabReference (sal_uInt16 nIxti, SCTAB &rFirstTab, SCTAB &rLastTab, ExternalTabInfo &rExtInfo)
 
bool HandleOleLink (sal_uInt16 nXtiIndex, const XclImpExtName &rExtName, ExternalTabInfo &rExtInfo)
 

Private Attributes

const XclImpLinkManagerrLinkMan
 

Additional Inherited Members

- Protected Types inherited from ExcelToSc
enum  ExtensionType {
  EXTENSION_ARRAY ,
  EXTENSION_NLR ,
  EXTENSION_MEMAREA
}
 
typedef ::std::vector< ExtensionTypeExtensionTypeVec
 
- Protected Member Functions inherited from ExcelToSc
void DoMulArgs (DefTokenId eId, sal_uInt8 nNumArgs)
 
void ExcRelToScRel (sal_uInt16 nRow, sal_uInt8 nCol, ScSingleRefData &, const bool bName)
 
- Protected Member Functions inherited from ExcelConverterBase
 ExcelConverterBase (svl::SharedStringPool &rSPool)
 
virtual ~ExcelConverterBase () override
 
- Protected Member Functions inherited from ConverterBase
 ConverterBase (svl::SharedStringPool &rSPool)
 
virtual ~ConverterBase ()
 
void Reset ()
 
- Protected Member Functions inherited from XclImpRoot
 XclImpRoot (XclImpRootData &rImpRootData)
 
const XclImpRootGetRoot () const
 Returns this root instance - for code readability in derived classes. More...
 
XclImpRootGetRoot ()
 
void SetCodePage (sal_uInt16 nCodePage)
 Sets a code page read from a CODEPAGE record for byte string import. More...
 
void InitializeTable (SCTAB nScTab)
 Is called when import filter starts importing a single sheet (all BIFF versions). More...
 
void FinalizeTable ()
 Is called when import filter stops importing a single sheet (all BIFF versions). More...
 
XclImpAddressConverterGetAddressConverter () const
 Returns the address converter. More...
 
XclImpFormulaCompilerGetFormulaCompiler () const
 Returns the formula converter. More...
 
ExcelToScGetOldFmlaConverter () const
 Returns the old formula converter. More...
 
XclImpSstGetSst () const
 Returns the shared string table. More...
 
XclImpPaletteGetPalette () const
 Returns the color buffer. More...
 
XclImpFontBufferGetFontBuffer () const
 Returns the font buffer. More...
 
XclImpNumFmtBufferGetNumFmtBuffer () const
 Returns the number format buffer. More...
 
XclImpXFBufferGetXFBuffer () const
 Returns the cell formatting attributes buffer. More...
 
XclImpXFRangeBufferGetXFRangeBuffer () const
 Returns the buffer of XF index ranges for a sheet. More...
 
ScRangeListTabsGetPrintAreaBuffer () const
 Returns the buffer that contains all print areas in the document. More...
 
ScRangeListTabsGetTitleAreaBuffer () const
 Returns the buffer that contains all print titles in the document. More...
 
XclImpTabInfoGetTabInfo () const
 Returns the buffer that contains the sheet creation order. More...
 
XclImpNameManagerGetNameManager () const
 Returns the buffer that contains internal defined names. More...
 
XclImpLinkManagerGetLinkManager () const
 Returns the link manager. More...
 
XclImpObjectManagerGetObjectManager () const
 Returns the drawing object manager. More...
 
XclImpSheetDrawingGetCurrSheetDrawing () const
 Returns the drawing container of the current sheet. More...
 
XclImpCondFormatManagerGetCondFormatManager () const
 Returns the conditional formatting manager. More...
 
XclImpValidationManagerGetValidationManager () const
 
XclImpAutoFilterBufferGetFilterManager () const
 Returns the filter manager. More...
 
XclImpWebQueryBufferGetWebQueryBuffer () const
 Returns the web query buffer. More...
 
XclImpPivotTableManagerGetPivotTableManager () const
 Returns the pivot table manager. More...
 
XclImpSheetProtectBufferGetSheetProtectBuffer () const
 Returns the sheet protection options of the current sheet. More...
 
XclImpDocProtectBufferGetDocProtectBuffer () const
 Returns the document protection options. More...
 
XclImpPageSettingsGetPageSettings () const
 Returns the page settings of the current sheet. More...
 
XclImpDocViewSettingsGetDocViewSettings () const
 Returns the view settings of the entire document. More...
 
XclImpTabViewSettingsGetTabViewSettings () const
 Returns the view settings of the current sheet. More...
 
bool HasBasic () const
 Returns true, if the document contains a VB project. More...
 
void SetHasBasic ()
 Called to indicate that the document contains a VB project. More...
 
void ReadCodeName (XclImpStream &rStrm, bool bGlobals)
 Reads the CODENAME record and inserts the codename into the document. More...
 
ScDocumentImportGetDocImport ()
 
- Protected Member Functions inherited from XclRoot
 XclRoot (XclRootData &rRootData)
 
 XclRoot (const XclRoot &rRoot)
 
virtual ~XclRoot ()
 
XclRootoperator= (const XclRoot &rRoot)
 
RootDataGetOldRoot () 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...
 
SfxMediumGetMedium () 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< SotStorageOpenStorage (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< SotStorageOpenStorage (const OUString &rStrgName) const
 Tries to open a storage as child of the root storage for reading or writing. More...
 
tools::SvRef< SotStorageStreamOpenStream (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< SotStorageStreamOpenStream (const OUString &rStrmName) const
 Tries to open a new stream in the root storage for reading or writing. More...
 
ScDocumentGetDoc () const
 Returns reference to the destination document (import) or source document (export). More...
 
SfxObjectShellGetDocShell () const
 Returns the object shell of the Calc document. More...
 
ScModelObjGetDocModelObj () const
 Returns the object model of the Calc document. More...
 
OutputDeviceGetPrinter () const
 Returns pointer to the printer of the Calc document. More...
 
ScStyleSheetPoolGetStyleSheetPool () const
 Returns the style sheet pool of the Calc document. More...
 
ScRangeNameGetNamedRanges () const
 Returns the defined names container of the Calc document. More...
 
SdrPageGetSdrPage (SCTAB nScTab) const
 Returns the drawing layer page of the passed sheet, if present. More...
 
SvNumberFormatterGetFormatter () 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...
 
ScEditEngineDefaulterGetEditEngine () const
 Returns the edit engine for import/export of rich strings etc. More...
 
ScHeaderEditEngineGetHFEditEngine () const
 Returns the edit engine for import/export of headers/footers. More...
 
EditEngineGetDrawEditEngine () const
 Returns the edit engine for import/export of drawing text boxes. More...
 
XclFontPropSetHelperGetFontPropSetHelper () const
 Returns the property set helper for fonts. More...
 
XclChPropSetHelperGetChartPropSetHelper () const
 Returns the property set helper for the chart filters. More...
 
ScExtDocOptionsGetExtDocOptions () const
 Returns the extended document options. More...
 
XclTracerGetTracer () const
 Returns the filter tracer. More...
 
const ScAddressGetScMaxPos () const
 Returns the highest possible cell address in a Calc document. More...
 
const ScAddressGetXclMaxPos () const
 Returns the highest possible cell address in an Excel document (using current BIFF version). More...
 
const ScAddressGetMaxPos () 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 XclImpRoot
static OUString GetScAddInName (const OUString &rXclName)
 Returns the Calc add-in function name for an Excel function name. More...
 
- Static Protected Member Functions inherited from XclRoot
static OUString GetDefaultPassword ()
 Returns the default password used for stream encryption. More...
 
- Protected Attributes inherited from ExcelToSc
XclFunctionProvider maFuncProv
 
const XclBiff meBiff
 
- Protected Attributes inherited from ConverterBase
TokenPool aPool
 
TokenStack aStack
 
ScAddress aEingPos
 
- Static Protected Attributes inherited from ExcelToSc
static const sal_uInt16 nRowMask = 0x3FFF
 

Detailed Description

Definition at line 95 of file excform.hxx.

Constructor & Destructor Documentation

◆ ExcelToSc8()

ExcelToSc8::ExcelToSc8 ( XclImpRoot rRoot)

Definition at line 82 of file excform8.cxx.

◆ ~ExcelToSc8()

ExcelToSc8::~ExcelToSc8 ( )
overridevirtual

Definition at line 88 of file excform8.cxx.

Member Function Documentation

◆ Convert() [1/2]

ConvErr ExcelToSc8::Convert ( ScRangeListTabs rRangeList,
XclImpStream rStrm,
std::size_t  nFormulaLen,
SCTAB  nTab,
const FORMULA_TYPE  eFT = FT_CellFormula 
)
overridevirtual

◆ Convert() [2/2]

ConvErr ExcelToSc8::Convert ( std::unique_ptr< ScTokenArray > &  rpTokArray,
XclImpStream rStrm,
std::size_t  nFormulaLen,
bool  bAllowArrays,
const FORMULA_TYPE  eFT = FT_CellFormula 
)
overridevirtual

Reimplemented from ExcelToSc.

Definition at line 138 of file excform8.cxx.

References ConverterBase::aEingPos, ScRange::aEnd, ConverterBase::aPool, ConverterBase::aStack, ScRange::aStart, Count, ExcelToSc::DoMulArgs(), EXC_ERR_DIV0, EXC_ERR_NA, EXC_ERR_NAME, EXC_ERR_NULL, EXC_ERR_NUM, EXC_ERR_REF, EXC_ERR_VALUE, ExcRelToScRel8(), ExcelToSc::EXTENSION_ARRAY, ExcelToSc::EXTENSION_MEMAREA, ExcelToSc::EXTENSION_NLR, FT_CondFormat, FT_RangeName, FT_SharedFormula, TokenStack::Get(), XclRoot::GetDoc(), XclImpRoot::GetDocImport(), GetExternalFileIdFromXti(), XclImpLinkManager::GetExternName(), XclFunctionProvider::GetFuncInfoFromXclFunc(), XclImpLinkManager::GetLinkData(), XclImpNameManager::GetName(), XclImpRoot::GetNameManager(), XclImpStream::GetRecPos(), TokenPool::GetTokenArray(), XclRoot::GetTracer(), HandleOleLink(), XclImpStream::Ignore(), ScSingleRefData::InitAddress(), ScSingleRefData::InitFlags(), ScComplexRefData::InitFlags(), ScComplexRefData::InitRange(), ScSingleRefData::IsColRel(), ExcelToSc::IsComplColRange(), IsComplRowRange(), ScSingleRefData::IsRowRel(), XclImpLinkManager::IsSelfRef(), XclImpStream::IsValid(), ExcelToSc::maFuncProv, ExcelToSc8::ExternalTabInfo::maRange, ExcelToSc8::ExternalTabInfo::maTabName, ExcelToSc8::ExternalTabInfo::mbExternal, ExcelToSc8::ExternalTabInfo::mnFileId, Ni, ocAdd, ocAmpersand, ocBad, ocClose, ocDde, ocDiv, ocEqual, ocEuroConvert, ocExternal, ocFalse, ocGreater, ocGreaterEqual, ocIntersect, ocLess, ocLessEqual, ocMacro, ocMissing, ocMul, ocNegSub, ocNoName, ocNotAvail, ocNotEqual, ocOpen, ocPercentSign, ocPow, ocPush, ocRange, ocSep, ocStop, ocSub, ocSum, ocTrue, OK, pName, Read3DTabReference(), XclImpStream::ReadDouble(), ExcelToSc::ReadExtensions(), XclImpStream::ReaduInt16(), XclImpStream::ReaduInt8(), XclImpStream::ReadUniString(), ScComplexRefData::Ref1, ScComplexRefData::Ref2, rLinkMan, XclImpStream::Seek(), ScSingleRefData::SetAbsTab(), ScSingleRefData::SetAddress(), ScSingleRefData::SetColDeleted(), ScSingleRefData::SetColRel(), ExcelToSc::SetComplCol(), ExcelToSc::SetComplRow(), ScSingleRefData::SetFlag3D(), ScDocument::SetLinkFormulaNeedingCheck(), ScSingleRefData::SetRelTab(), ScSingleRefData::SetRowDeleted(), ScSingleRefData::SetRowRel(), ScSingleRefData::SetTabDeleted(), TokenPool::Store(), TokenPool::StoreExtName(), TokenPool::StoreExtRef(), TokenPool::StoreMatrix(), TokenPool::StoreName(), TokenPool::StoreNlf(), ScAddress::Tab(), XclTracer::TraceFormulaMissingArg(), ValidTab(), xlExtAddIn, xlExtDDE, xlExtEuroConvert, xlExtName, and xlExtOLE.

Referenced by XclImpChangeTrack::ReadFormula().

◆ ConvertExternName()

void ExcelToSc8::ConvertExternName ( std::unique_ptr< ScTokenArray > &  rpArray,
XclImpStream rStrm,
std::size_t  nFormulaLen,
const OUString &  rUrl,
const ::std::vector< OUString > &  rTabNames 
)
overridevirtual

◆ ExcRelToScRel8()

void ExcelToSc8::ExcRelToScRel8 ( sal_uInt16  nRow,
sal_uInt16  nCol,
ScSingleRefData rSRD,
const bool  bName 
)
private

◆ GetAbsRefs()

void ExcelToSc8::GetAbsRefs ( ScRangeList rRangeList,
XclImpStream rStrm,
std::size_t  nLen 
)
overridevirtual

◆ GetExternalFileIdFromXti()

bool ExcelToSc8::GetExternalFileIdFromXti ( sal_uInt16  nIxti,
sal_uInt16 &  rFileId 
) const
private

◆ HandleOleLink()

bool ExcelToSc8::HandleOleLink ( sal_uInt16  nXtiIndex,
const XclImpExtName rExtName,
ExternalTabInfo rExtInfo 
)
private

◆ IsComplRowRange()

bool ExcelToSc8::IsComplRowRange ( const sal_uInt16  nRow1,
const sal_uInt16  nRow2 
)
inlinestatic

Definition at line 136 of file excform.hxx.

Referenced by Convert().

◆ Read3DTabReference()

bool ExcelToSc8::Read3DTabReference ( sal_uInt16  nIxti,
SCTAB rFirstTab,
SCTAB rLastTab,
ExternalTabInfo rExtInfo 
)
privatevirtual

Member Data Documentation

◆ rLinkMan

const XclImpLinkManager& ExcelToSc8::rLinkMan
private

The documentation for this class was generated from the following files: