LibreOffice Module sc (master)  1
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
oox::xls::ExternalSheetDataContext Class Reference

This class implements importing the sheetData element in external sheets. More...

#include <externallinkfragment.hxx>

Inheritance diagram for oox::xls::ExternalSheetDataContext:
[legend]
Collaboration diagram for oox::xls::ExternalSheetDataContext:
[legend]

Public Member Functions

 ExternalSheetDataContext (WorkbookFragmentBase &rFragment, const css::uno::Reference< css::sheet::XExternalSheetCache > &rxSheetCache)
 
- Public Member Functions inherited from oox::xls::WorkbookContextBase
template<typename ParentType >
 WorkbookContextBase (ParentType &rParent)
 
- Public Member Functions inherited from oox::core::ContextHandler2
 ContextHandler2 (ContextHandler2Helper const &rParent)
 
virtual ~ContextHandler2 () override
 
 ContextHandler2 (ContextHandler2 const &)=default
 
 ContextHandler2 (ContextHandler2 &&)=default
 
ContextHandler2operator= (ContextHandler2 const &)=delete
 
ContextHandler2operator= (ContextHandler2 &&)=delete
 
virtual void SAL_CALL acquire () override
 
virtual void SAL_CALL release () override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext (sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &rxAttribs) final override
 
virtual void SAL_CALL startFastElement (sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &rxAttribs) final override
 
virtual void SAL_CALL characters (const OUString &rChars) final override
 
virtual void SAL_CALL endFastElement (sal_Int32 nElement) final override
 
virtual ContextHandlerRef createRecordContext (sal_Int32 nRecId, SequenceInputStream &rStrm) override
 
virtual void startRecord (sal_Int32 nRecId, SequenceInputStream &rStrm) override
 
virtual void endRecord (sal_Int32 nRecId) override
 
virtual void onStartElement (const AttributeList &rAttribs) override
 
virtual void onEndElement () override
 
virtual void onStartRecord (SequenceInputStream &rStrm) override
 
virtual void onEndRecord () override
 
- Public Member Functions inherited from oox::core::ContextHandler
 ContextHandler (const ContextHandler &rParent)
 
virtual ~ContextHandler () override
 
XmlFilterBasegetFilter () const
 
const RelationsgetRelations () const
 
const OUString & getFragmentPath () const
 
OUString getFragmentPathFromRelation (const Relation &rRelation) const
 
OUString getFragmentPathFromRelId (const OUString &rRelId) const
 
OUString getFragmentPathFromFirstType (const OUString &rType) const
 
OUString getFragmentPathFromFirstTypeFromOfficeDoc (const OUString &rType) const
 
virtual void SAL_CALL startFastElement (::sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual void SAL_CALL startUnknownElement (const OUString &Namespace, const OUString &Name, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual void SAL_CALL endFastElement (::sal_Int32 Element) override
 
virtual void SAL_CALL endUnknownElement (const OUString &Namespace, const OUString &Name) override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext (::sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createUnknownChildContext (const OUString &Namespace, const OUString &Name, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
- Public Member Functions inherited from oox::core::ContextHandler2Helper
 ContextHandler2Helper (bool bEnableTrimSpace)
 
 ContextHandler2Helper (const ContextHandler2Helper &rParent)
 
virtual ~ContextHandler2Helper ()
 
sal_Int32 getCurrentElement () const
 
sal_Int32 getCurrentElementWithMce () const
 
bool isCurrentElement (sal_Int32 nElement) const
 
bool isCurrentElement (sal_Int32 nElement1, sal_Int32 nElement2) const
 
sal_Int32 getParentElement (sal_Int32 nCountBack=1) const
 
bool isParentElement (sal_Int32 nElement, sal_Int32 nCountBack=1) const
 
bool isRootElement () const
 
- Public Member Functions inherited from oox::xls::WorkbookHelper
 WorkbookHelper (WorkbookGlobals &rBookGlob)
 
virtual ~WorkbookHelper ()
 
 WorkbookHelper (WorkbookHelper const &)=default
 
 WorkbookHelper (WorkbookHelper &&)=default
 
WorkbookHelperoperator= (WorkbookHelper const &)=delete
 
WorkbookHelperoperator= (WorkbookHelper &&)=delete
 
::oox::core::FilterBasegetBaseFilter () const
 Returns the base filter object (base class of all filters). More...
 
SegmentProgressBargetProgressBar () const
 Returns the filter progress bar. More...
 
sal_Int16 getCurrentSheetIndex () const
 Returns the index of the current Calc sheet, if filter currently processes a sheet. More...
 
bool isGeneratorKnownGood () const
 Returns true when reading a file generated by a known good generator. More...
 
void setVbaProjectStorage (const StorageRef &rxVbaPrjStrg)
 Sets the VBA project storage used to import VBA source code and forms. More...
 
void setCurrentSheetIndex (SCTAB nSheet)
 Sets the index of the current Calc sheet, if filter currently processes a sheet. More...
 
void finalizeWorkbookImport ()
 Final conversion after importing the workbook. More...
 
void useInternalChartDataTable (bool bInternal)
 
ScDocumentgetScDocument ()
 
const ScDocumentgetScDocument () const
 
ScDocumentImportgetDocImport ()
 
const ScDocumentImportgetDocImport () const
 
ScEditEngineDefaultergetEditEngine () const
 
const css::uno::Reference< css::sheet::XSpreadsheetDocument > & getDocument () const
 Returns a reference to the source/target spreadsheet document model. More...
 
css::uno::Reference< css::sheet::XSpreadsheet > getSheetFromDoc (sal_Int32 nSheet) const
 Returns a reference to the specified spreadsheet in the document model. More...
 
css::uno::Reference< css::sheet::XSpreadsheet > getSheetFromDoc (const OUString &rSheet) const
 Returns a reference to the specified spreadsheet in the document model. More...
 
css::uno::Reference< css::table::XCellRange > getCellRangeFromDoc (const ScRange &rRange) const
 Returns the XCellRange interface for the passed cell range address. More...
 
css::uno::Reference< css::container::XNameContainer > getCellStyleFamily () const
 Returns the cell styles container from the Calc document. More...
 
css::uno::Reference< css::style::XStyle > getStyleObject (const OUString &rStyleName, bool bPageStyle) const
 Returns the specified cell or page style from the Calc document. More...
 
ScRangeDatacreateNamedRangeObject (OUString &orName, const css::uno::Sequence< css::sheet::FormulaToken > &rTokens, sal_Int32 nIndex, sal_Int32 nNameFlags) const
 Creates and returns a defined name on-the-fly in the Calc document. More...
 
ScRangeDatacreateLocalNamedRangeObject (OUString &orName, const css::uno::Sequence< css::sheet::FormulaToken > &rTokens, sal_Int32 nIndex, sal_Int32 nNameFlags, sal_Int32 nTab) const
 Creates and returns a defined name on-the-fly in the sheet. More...
 
css::uno::Reference< css::sheet::XDatabaseRange > createDatabaseRangeObject (OUString &orName, const ScRange &rRangeAddr) const
 Creates and returns a database range on-the-fly in the Calc document. More...
 
css::uno::Reference< css::sheet::XDatabaseRange > createUnnamedDatabaseRangeObject (const ScRange &rRangeAddr) const
 Creates and returns an unnamed database range on-the-fly in the Calc document. More...
 
ScDBDatafindDatabaseRangeByIndex (sal_uInt16 nIndex) const
 Finds the (already existing) database range of the given formula token index. More...
 
css::uno::Reference< css::style::XStyle > createStyleObject (OUString &orStyleName, bool bPageStyle) const
 Creates and returns a com.sun.star.style.Style object for cells or pages. More...
 
FormulaBuffergetFormulaBuffer () const
 
WorkbookSettingsgetWorkbookSettings () const
 Returns the global workbook settings object. More...
 
ViewSettingsgetViewSettings () const
 Returns the workbook and sheet view settings object. More...
 
WorksheetBuffergetWorksheets () const
 Returns the worksheet buffer containing sheet names and properties. More...
 
ThemeBuffergetTheme () const
 Returns the office theme object read from the theme substorage. More...
 
StylesBuffergetStyles () const
 Returns all cell formatting objects read from the styles substream. More...
 
SharedStringsBuffergetSharedStrings () const
 Returns the shared strings read from the shared strings substream. More...
 
ExternalLinkBuffergetExternalLinks () const
 Returns the external links read from the external links substream. More...
 
DefinedNamesBuffergetDefinedNames () const
 Returns the defined names read from the workbook globals. More...
 
TableBuffergetTables () const
 Returns the tables collection (equivalent to Calc's database ranges). More...
 
ScenarioBuffergetScenarios () const
 Returns the scenarios collection. More...
 
ConnectionsBuffergetConnections () const
 Returns the collection of external data connections. More...
 
PivotCacheBuffergetPivotCaches () const
 Returns the collection of pivot caches. More...
 
PivotTableBuffergetPivotTables () const
 Returns the collection of pivot tables. More...
 
FormulaParsergetFormulaParser () const
 Returns a shared import formula parser (import filter only!). More...
 
FormulaParsercreateFormulaParser () const
 Returns an unshared import formula parser (import filter only!). More...
 
UnitConvertergetUnitConverter () const
 Returns the measurement unit converter. More...
 
AddressConvertergetAddressConverter () const
 Returns the converter for string to cell address/range conversion. More...
 
oox::drawingml::chart::ChartConvertergetChartConverter () const
 Returns the chart object converter. More...
 
PageSettingsConvertergetPageSettingsConverter () const
 Returns the page and print settings converter. More...
 
::oox::core::XmlFilterBasegetOoxFilter () const
 Returns the base OOXML/BIFF12 filter object. More...
 
bool importOoxFragment (const rtl::Reference< oox::core::FragmentHandler > &rxHandler)
 Imports a fragment using the passed fragment handler, which contains the full path to the fragment stream. More...
 
bool importOoxFragment (const rtl::Reference< oox::core::FragmentHandler > &rxHandler, oox::core::FastParser &rParser)
 
rtl_TextEncoding getTextEncoding () const
 Returns the text encoding used to import/export byte strings. More...
 

Protected Member Functions

virtual ::oox::core::ContextHandlerRef onCreateContext (sal_Int32 nElement, const AttributeList &rAttribs) override
 
virtual void onCharacters (const OUString &rChars) override
 
virtual ::oox::core::ContextHandlerRef onCreateRecordContext (sal_Int32 nRecId, SequenceInputStream &rStrm) override
 
- Protected Member Functions inherited from oox::core::ContextHandler
 ContextHandler (const FragmentBaseDataRef &rxBaseData)
 
void implSetLocator (const css::uno::Reference< css::xml::sax::XLocator > &rxLocator)
 
- Protected Member Functions inherited from oox::core::ContextHandler2Helper
css::uno::Reference< css::xml::sax::XFastContextHandler > implCreateChildContext (sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &rxAttribs)
 
void implStartElement (sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &rxAttribs)
 
void implCharacters (const OUString &rChars)
 
void implEndElement (sal_Int32 nElement)
 
ContextHandlerRef implCreateRecordContext (sal_Int32 nRecId, SequenceInputStream &rStrm)
 
void implStartRecord (sal_Int32 nRecId, SequenceInputStream &rStrm)
 
void implEndRecord (sal_Int32 nRecId)
 

Private Member Functions

void importCell (const AttributeList &rAttribs)
 Imports cell settings from a c element. More...
 
void importExtCellBlank (SequenceInputStream &rStrm)
 Imports the EXTCELL_BLANK from the passed stream. More...
 
void importExtCellBool (SequenceInputStream &rStrm)
 Imports the EXTCELL_BOOL from the passed stream. More...
 
void importExtCellDouble (SequenceInputStream &rStrm)
 Imports the EXTCELL_DOUBLE from the passed stream. More...
 
void importExtCellError (SequenceInputStream &rStrm)
 Imports the EXTCELL_ERROR from the passed stream. More...
 
void importExtCellString (SequenceInputStream &rStrm)
 Imports the EXTCELL_STRING from the passed stream. More...
 
void setCellValue (const css::uno::Any &rValue)
 Sets the passed cell value to the current position in the sheet cache. More...
 

Private Attributes

css::uno::Reference< css::sheet::XExternalSheetCache > mxSheetCache
 
ScAddress maCurrPos
 The sheet cache used to store external cell values. More...
 
sal_Int32 mnCurrType
 Position of current cell. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from oox::xls::WorkbookHelper
static WorkbookGlobalsRef constructGlobals (ExcelFilter &rFilter)
 
- Protected Attributes inherited from oox::core::ContextHandler2Helper
bool mbEnableTrimSpace
 

Detailed Description

This class implements importing the sheetData element in external sheets.

The sheetData element embedded in the externalBook element contains cached cells from externally linked sheets.

Definition at line 33 of file externallinkfragment.hxx.

Constructor & Destructor Documentation

oox::xls::ExternalSheetDataContext::ExternalSheetDataContext ( WorkbookFragmentBase rFragment,
const css::uno::Reference< css::sheet::XExternalSheetCache > &  rxSheetCache 
)
explicit

Definition at line 38 of file externallinkfragment.cxx.

References mxSheetCache, and XML_TOKEN_INVALID.

Member Function Documentation

void oox::xls::ExternalSheetDataContext::importCell ( const AttributeList rAttribs)
private
void oox::xls::ExternalSheetDataContext::importExtCellBlank ( SequenceInputStream rStrm)
private

Imports the EXTCELL_BLANK from the passed stream.

Definition at line 116 of file externallinkfragment.cxx.

References Any, maCurrPos, oox::BinaryInputStream::readInt32(), setCellValue(), and ScAddress::SetCol().

Referenced by onCreateRecordContext().

void oox::xls::ExternalSheetDataContext::importExtCellBool ( SequenceInputStream rStrm)
private

Imports the EXTCELL_BOOL from the passed stream.

Definition at line 122 of file externallinkfragment.cxx.

References Any, maCurrPos, oox::BinaryInputStream::readInt32(), oox::BinaryInputStream::readuInt8(), setCellValue(), and ScAddress::SetCol().

Referenced by onCreateRecordContext().

void oox::xls::ExternalSheetDataContext::importExtCellDouble ( SequenceInputStream rStrm)
private

Imports the EXTCELL_DOUBLE from the passed stream.

Definition at line 129 of file externallinkfragment.cxx.

References Any, maCurrPos, oox::BinaryInputStream::readDouble(), oox::BinaryInputStream::readInt32(), setCellValue(), and ScAddress::SetCol().

Referenced by onCreateRecordContext().

void oox::xls::ExternalSheetDataContext::importExtCellError ( SequenceInputStream rStrm)
private
void oox::xls::ExternalSheetDataContext::importExtCellString ( SequenceInputStream rStrm)
private

Imports the EXTCELL_STRING from the passed stream.

Definition at line 141 of file externallinkfragment.cxx.

References Any, maCurrPos, oox::BinaryInputStream::readInt32(), oox::xls::BiffHelper::readString(), setCellValue(), and ScAddress::SetCol().

Referenced by onCreateRecordContext().

void oox::xls::ExternalSheetDataContext::onCharacters ( const OUString &  rChars)
overrideprotectedvirtual
ContextHandlerRef oox::xls::ExternalSheetDataContext::onCreateContext ( sal_Int32  nElement,
const AttributeList rAttribs 
)
overrideprotectedvirtual
ContextHandlerRef oox::xls::ExternalSheetDataContext::onCreateRecordContext ( sal_Int32  nRecId,
SequenceInputStream rStrm 
)
overrideprotectedvirtual
void oox::xls::ExternalSheetDataContext::setCellValue ( const css::uno::Any &  rValue)
private

Member Data Documentation

ScAddress oox::xls::ExternalSheetDataContext::maCurrPos
private
sal_Int32 oox::xls::ExternalSheetDataContext::mnCurrType
private

Position of current cell.

Definition at line 68 of file externallinkfragment.hxx.

Referenced by importCell(), and onCharacters().

css::uno::Reference< css::sheet::XExternalSheetCache > oox::xls::ExternalSheetDataContext::mxSheetCache
private

Definition at line 66 of file externallinkfragment.hxx.

Referenced by ExternalSheetDataContext(), and setCellValue().


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