LibreOffice Module sc (master) 1
|
This class contains the cell contents and more of an entire sheet. More...
#include <xetable.hxx>
Public Member Functions | |
XclExpCellTable (const XclExpRoot &rRoot) | |
void | Finalize (bool bXLS) |
Converts all XF identifiers into the Excel XF indexes and calculates default formats. More... | |
XclExpRecordRef | CreateRecord (sal_uInt16 nRecId) const |
Returns the reference to an internal record specified by the passed record id. More... | |
virtual void | Save (XclExpStream &rStrm) override |
Saves the entire cell table. More... | |
virtual void | SaveXml (XclExpXmlStream &rStrm) override |
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 XclExpRecordList< XclExpNote > | XclExpNoteList |
typedef XclExpRecordList< XclExpHyperlink > | XclExpHyperlinkList |
typedef rtl::Reference< XclExpDefrowheight > | XclExpDefrowhRef |
typedef rtl::Reference< XclExpNoteList > | XclExpNoteListRef |
typedef rtl::Reference< XclExpMergedcells > | XclExpMergedcellsRef |
typedef rtl::Reference< XclExpHyperlinkList > | XclExpHyperlinkRef |
typedef rtl::Reference< XclExpDval > | XclExpDvalRef |
typedef rtl::Reference< XclExtLst > | XclExtLstRef |
Private Attributes | |
XclExpColinfoBuffer | maColInfoBfr |
XclExpRowBuffer | maRowBfr |
Buffer for column formatting. More... | |
XclExpArrayBuffer | maArrayBfr |
Rows and cell records. More... | |
XclExpShrfmlaBuffer | maShrfmlaBfr |
Buffer for ARRAY records. More... | |
XclExpTableopBuffer | maTableopBfr |
Buffer for SHRFMLA records. More... | |
XclExpDefrowhRef | mxDefrowheight |
Buffer for TABLEOP records. More... | |
XclExpRecordRef | mxGuts |
DEFROWHEIGHT record for default row format. More... | |
XclExpNoteListRef | mxNoteList |
GUTS record for outline areas. More... | |
XclExpMergedcellsRef | mxMergedcells |
List of NOTE records. More... | |
XclExpHyperlinkRef | mxHyperlinkList |
MERGEDCELLS record for merged cell ranges. More... | |
XclExpDvalRef | mxDval |
List of HLINK records. More... | |
XclExtLstRef | mxExtLst |
Data validation with DVAL and DV records. More... | |
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 |
This class contains the cell contents and more of an entire sheet.
The cell table includes the settings and default formatting of all columns, the settings and default formatting of all used rows, and the contents of all cells of one sheet in a spreadsheet document.
The constructor does all the work creating the cell table. It reads the Calc sheet and converts all columns, rows, and cells to Excel record data. Additionally, hyperlink records, note records, additional records for formula cells, data validation records, and outline records are created.
The Finalize() function does even more work. It calculates default column settings and removes column records that are equal to this default. The same happens with rows: A default format is calculated for each row, and all blank cells in this row that have the same format are removed. Then, the most used row settings are calculated, and all empty rows that have the same settings are removed too.
Records that are not stored inside the cell table area in an Excel file (i.e. DEFROWHEIGHT record, NOTE records, MERGEDCELLS record, HLINK records, DVAL and DV records for data validation) can be accessed with the function CreateRecord(). It returns the reference to the respective record (or record list) which can be inserted into a record list.
Definition at line 986 of file xetable.hxx.
|
private |
Definition at line 1007 of file xetable.hxx.
|
private |
Definition at line 1011 of file xetable.hxx.
|
private |
Definition at line 1005 of file xetable.hxx.
|
private |
Definition at line 1010 of file xetable.hxx.
|
private |
Definition at line 1009 of file xetable.hxx.
|
private |
Definition at line 1004 of file xetable.hxx.
|
private |
Definition at line 1008 of file xetable.hxx.
|
private |
Definition at line 1012 of file xetable.hxx.
|
explicit |
Definition at line 2523 of file xetable.cxx.
References XclExpProgressBar::ActivateCreateRowsSegment(), ScGlobal::addToken(), ScRange::aEnd, XclExpRowBuffer::AppendCell(), ScRange::aStart, ATTR_HYPERLINK(), ATTR_MERGE(), ATTR_MERGE_FLAG(), ATTR_VALIDDATA(), ATTR_VALUE_FORMAT(), CELLTYPE_EDIT, CELLTYPE_FORMULA, CELLTYPE_NONE, CELLTYPE_STRING, CELLTYPE_VALUE, ScfTools::CheckItem(), ScAddress::Col(), XclExpRowBuffer::CreateRows(), EXC_XFID_NOTFOUND, SfxItemSet::Get(), XclExpRoot::GetAddressConverter(), ScUsedAreaIterator::GetCell(), ScMergeAttr::GetColMerge(), XclRoot::GetCurrScTab(), XclRoot::GetDoc(), ScRefCellValue::getDouble(), ScRefCellValue::getEditText(), ScUsedAreaIterator::GetEndCol(), XclRoot::GetFormatter(), ScRefCellValue::getFormula(), ScPatternAttr::GetItemSet(), ScDocument::GetLastFlaggedRow(), XclExpHyperlinkHelper::GetLinkRecord(), XclRoot::GetMaxPos(), ScUsedAreaIterator::GetNext(), ScDocument::GetOutlineTable(), ScUsedAreaIterator::GetPattern(), XclExpRoot::GetProgressBar(), ScOutlineArray::GetRange(), XclTools::GetRKFromDouble(), XclExpRoot::GetRoot(), ScUsedAreaIterator::GetRow(), ScMergeAttr::GetRowMerge(), ScRefCellValue::getSharedString(), ScUsedAreaIterator::GetStartCol(), svl::SharedString::getString(), ScDocument::GetTableArea(), ScRefCellValue::getType(), SvNumberFormatter::GetType(), XclExpHyperlinkHelper::GetUrlList(), XclExpHyperlinkHelper::HasLinkRecord(), XclExpHyperlinkHelper::HasMultipleUrls(), ScAddress::IncCol(), ScAddress::IncRow(), XclExpColinfoBuffer::Initialize(), ScMergeAttr::IsMerged(), ScMergeFlagAttr::IsOverlapped(), maArrayBfr, maColInfoBfr, maRowBfr, maShrfmlaBfr, maTableopBfr, mxDval, mxHyperlinkList, mxMergedcells, mxNoteList, nIndex, ScAddress::Row(), ScAddress::SetCol(), and XclExpAddressConverter::ValidateRange().
XclExpRecordRef XclExpCellTable::CreateRecord | ( | sal_uInt16 | nRecId | ) | const |
Returns the reference to an internal record specified by the passed record id.
nRecId | The record identifier that specifies which record is returned. Possible values are: EXC_ID_DEFROWHEIGHT, EXC_ID_NOTE, EXC_ID_MERGEDCELLS, EXC_ID_HLINK, EXC_ID_DVAL. |
Definition at line 2793 of file xetable.cxx.
References EXC_ID2_DEFROWHEIGHT, EXC_ID3_DIMENSIONS, EXC_ID_DVAL, EXC_ID_EXTLST, EXC_ID_GUTS, EXC_ID_HLINK, EXC_ID_MERGEDCELLS, EXC_ID_NOTE, maRowBfr, mxDefrowheight, mxDval, mxExtLst, mxGuts, mxHyperlinkList, mxMergedcells, and mxNoteList.
void XclExpCellTable::Finalize | ( | bool | bXLS | ) |
Converts all XF identifiers into the Excel XF indexes and calculates default formats.
Definition at line 2767 of file xetable.cxx.
References EXC_XF_DEFAULTCELL, XclExpTableopBuffer::Finalize(), XclExpColinfoBuffer::Finalize(), XclExpRowBuffer::Finalize(), findFirstAllSameUntilEnd(), maColInfoBfr, maRowBfr, maTableopBfr, and mxDefrowheight.
|
overridevirtual |
Saves the entire cell table.
Reimplemented from XclExpRecordBase.
Definition at line 2811 of file xetable.cxx.
References maColInfoBfr, maRowBfr, rStrm, XclExpColinfoBuffer::Save(), and XclExpRowBuffer::Save().
|
overridevirtual |
Reimplemented from XclExpRecordBase.
Definition at line 2819 of file xetable.cxx.
References XclExpColinfoBuffer::GetDefColWidth(), XclExpColinfoBuffer::GetHighestOutlineLevel(), XclExpRowBuffer::GetHighestOutlineLevel(), XclExpDefaultRowData::IsHidden(), maColInfoBfr, maRowBfr, XclExpDefaultRowData::mnHeight, mxDefrowheight, mxExtLst, rStrm, XclExpColinfoBuffer::SaveXml(), and XclExpRowBuffer::SaveXml().
|
private |
Rows and cell records.
Definition at line 1016 of file xetable.hxx.
Referenced by XclExpCellTable().
|
private |
Definition at line 1014 of file xetable.hxx.
Referenced by Finalize(), Save(), SaveXml(), and XclExpCellTable().
|
private |
Buffer for column formatting.
Definition at line 1015 of file xetable.hxx.
Referenced by CreateRecord(), Finalize(), Save(), SaveXml(), and XclExpCellTable().
|
private |
Buffer for ARRAY records.
Definition at line 1017 of file xetable.hxx.
Referenced by XclExpCellTable().
|
private |
Buffer for SHRFMLA records.
Definition at line 1018 of file xetable.hxx.
Referenced by Finalize(), and XclExpCellTable().
|
private |
Buffer for TABLEOP records.
Definition at line 1019 of file xetable.hxx.
Referenced by CreateRecord(), Finalize(), and SaveXml().
|
private |
List of HLINK records.
Definition at line 1024 of file xetable.hxx.
Referenced by CreateRecord(), and XclExpCellTable().
|
private |
Data validation with DVAL and DV records.
Definition at line 1025 of file xetable.hxx.
Referenced by CreateRecord(), and SaveXml().
|
private |
DEFROWHEIGHT record for default row format.
Definition at line 1020 of file xetable.hxx.
Referenced by CreateRecord().
|
private |
MERGEDCELLS record for merged cell ranges.
Definition at line 1023 of file xetable.hxx.
Referenced by CreateRecord(), and XclExpCellTable().
|
private |
List of NOTE records.
Definition at line 1022 of file xetable.hxx.
Referenced by CreateRecord(), and XclExpCellTable().
|
private |
GUTS record for outline areas.
Definition at line 1021 of file xetable.hxx.
Referenced by CreateRecord(), and XclExpCellTable().