| LibreOffice Module sc (master) 1
    | 
Represents a FORMULA record that describes a cell with a formula. More...
#include <xetable.hxx>
| Public Member Functions | |
| XclExpFormulaCell (const XclExpRoot &rRoot, const XclAddress &rXclPos, const ScPatternAttr *pPattern, sal_uInt32 nForcedXFId, const ScFormulaCell &rScFmlaCell, XclExpArrayBuffer &rArrayBfr, XclExpShrfmlaBuffer &rShrfmlaBfr, XclExpTableopBuffer &rTableopBfr) | |
| virtual void | Save (XclExpStream &rStrm) override | 
| Writes the FORMULA record and additional records related to the formula.  More... | |
| virtual void | SaveXml (XclExpXmlStream &rStrm) override | 
|  Public Member Functions inherited from XclExpSingleCellBase | |
| virtual sal_uInt16 | GetLastXclCol () const override | 
| Returns the last column, which is equal to the first column for single cells.  More... | |
| virtual sal_uInt32 | GetFirstXFId () const override | 
| Return the XF identifier of the cell.  More... | |
| virtual bool | IsEmpty () const override | 
| Returns true, if this record does not contain at least one valid cell.  More... | |
| virtual void | ConvertXFIndexes (const XclExpRoot &rRoot) override | 
| Converts the XF identifier into the Excel XF index.  More... | |
| virtual void | Save (XclExpStream &rStrm) override | 
| Writes cell address, XF index, and calls WriteContents() for each cell.  More... | |
|  Public Member Functions inherited from XclExpCellBase | |
| const XclAddress & | GetXclPos () const | 
| Returns the (first) address of the cell(s).  More... | |
| sal_uInt16 | GetXclCol () const | 
| Returns the (first) Excel column index of the cell(s).  More... | |
| sal_uInt32 | GetXclRow () const | 
| Returns the Excel row index of the cell.  More... | |
| virtual sal_uInt16 | GetLastXclCol () const =0 | 
| Derived classes return the column index of the last contained cell.  More... | |
| virtual sal_uInt32 | GetFirstXFId () const =0 | 
| Derived classes return the XF identifier of the first contained cell.  More... | |
| virtual bool | IsEmpty () const =0 | 
| Derived classes return true, if this record does not contain at least one valid cell.  More... | |
| virtual bool | IsMultiLineText () const | 
| Derived classes return whether the cell contains multi-line text.  More... | |
| virtual bool | TryMerge (const XclExpCellBase &rCell) | 
| Derived classes try to merge the contents of the passed cell to own data.  More... | |
| virtual void | ConvertXFIndexes (const XclExpRoot &rRoot)=0 | 
| Derived classes convert the XF identifier(s) into the Excel XF index(es).  More... | |
| virtual void | GetBlankXFIndexes (ScfUInt16Vec &rXFIndexes) const | 
| Derived classes for blank cells insert the Excel XF index(es) into the passed vector.  More... | |
| virtual void | RemoveUnusedBlankCells (const ScfUInt16Vec &rXFIndexes, size_t nStartAllNotFound) | 
| Derived classes for blank cells remove unused Excel XF index(es).  More... | |
|  Public Member Functions inherited from XclExpRecord | |
| XclExpRecord (sal_uInt16 nRecId=EXC_ID_UNKNOWN, std::size_t nRecSize=0) | |
| XclExpRecord (XclExpRecord const &)=default | |
| virtual | ~XclExpRecord () override | 
| sal_uInt16 | GetRecId () const | 
| Returns the current record ID.  More... | |
| std::size_t | GetRecSize () const | 
| Returns the current record size prediction.  More... | |
| void | SetRecId (sal_uInt16 nRecId) | 
| Sets a new record ID.  More... | |
| void | SetRecSize (std::size_t nRecSize) | 
| Sets a new record size prediction.  More... | |
| void | AddRecSize (std::size_t nRecSize) | 
| Adds a size value to the record size prediction.  More... | |
| void | SetRecHeader (sal_uInt16 nRecId, std::size_t nRecSize) | 
| Sets record ID and size with one call.  More... | |
| virtual void | Save (XclExpStream &rStrm) override | 
| Writes the record header and calls WriteBody().  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 Member Functions | |
| virtual void | WriteContents (XclExpStream &rStrm) override | 
| Derived classes write the contents of the specified cell (without XF index).  More... | |
| Private Attributes | |
| ScFormulaCell & | mrScFmlaCell | 
| XclTokenArrayRef | mxTokArr | 
| The Calc formula cell.  More... | |
| XclExpRangeFmlaRef | mxAddRec | 
| The token array of the formula.  More... | |
| XclExpRecordRef | mxStringRec | 
| Additional record for matrix/shared formulas.  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 XclExpSingleCellBase | |
| XclExpSingleCellBase (sal_uInt16 nRecId, std::size_t nContSize, const XclAddress &rXclPos, sal_uInt32 nXFId) | |
| XclExpSingleCellBase (const XclExpRoot &rRoot, sal_uInt16 nRecId, std::size_t nContSize, const XclAddress &rXclPos, const ScPatternAttr *pPattern, sal_Int16 nScript, sal_uInt32 nForcedXFId) | |
| void | SetContSize (std::size_t nContSize) | 
| std::size_t | GetContSize () const | 
| void | SetXFId (sal_uInt32 nXFId) | 
| sal_uInt32 | GetXFId () const | 
|  Protected Member Functions inherited from XclExpCellBase | |
| XclExpCellBase (sal_uInt16 nRecId, std::size_t nContSize, const XclAddress &rXclPos) | |
| void | SetXclCol (sal_uInt16 nXclCol) | 
| Sets this record to a new column position.  More... | |
| virtual void | WriteBody (XclExpStream &rStrm) | 
| Writes the body of the record (without record header).  More... | |
|  Protected Member Functions inherited from salhelper::SimpleReferenceObject | |
| virtual | ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE | 
|  Protected Attributes inherited from salhelper::SimpleReferenceObject | |
| oslInterlockedCount | m_nCount | 
Represents a FORMULA record that describes a cell with a formula.
Definition at line 431 of file xetable.hxx.
| 
 | explicit | 
Definition at line 816 of file xetable.cxx.
References ScRange::aEnd, ATTR_VALUE_FORMAT(), XclExpArrayBuffer::CreateArray(), XclExpFormulaCompiler::CreateFormula(), XclExpShrfmlaBuffer::CreateOrExtendShrfmla(), XclExpTableopBuffer::CreateOrExtendTableop(), EXC_FMLATYPE_CELL, EXC_XFID_NOTFOUND, XclExpArrayBuffer::FindArray(), Formula, SfxItemSet::Get(), XclExpRoot::GetAddressConverter(), ScFormulaCell::GetCode(), XclRoot::GetCurrScTab(), XclRoot::GetFormatter(), ScFormulaCell::GetFormatType(), XclExpRoot::GetFormulaCompiler(), ScPatternAttr::GetItemSet(), XclExpStringHelper::GetLeadingScriptType(), ScFormulaCell::GetMatColsRows(), ScFormulaCell::GetMatrixFlag(), XclExpRoot::GetNumFmtBuffer(), XclExpNumFmtBuffer::GetStandardFormat(), ScFormulaCell::GetString(), svl::SharedString::getString(), SvNumberFormatter::GetType(), XclExpRoot::GetXFBuffer(), XclExpSingleCellBase::GetXFId(), ScAddress::IncCol(), ScAddress::IncRow(), XclExpXFBuffer::InsertWithNumFmt(), ScFormulaCell::IsMultilineResult(), XclAddress::mnCol, XclAddress::mnRow, mrScFmlaCell, mxAddRec, mxTokArr, NUMBERFORMAT_ENTRY_NOT_FOUND, Reference, XclExpSingleCellBase::SetXFId(), SV_COUNTRY_LANGUAGE_OFFSET, and XclExpAddressConverter::ValidateRange().
| 
 | overridevirtual | 
Writes the FORMULA record and additional records related to the formula.
Reimplemented from XclExpSingleCellBase.
Definition at line 916 of file xetable.cxx.
References EXC_ERR_NA, XclExpCellBase::GetXclCol(), XclExpCellBase::GetXclRow(), mxAddRec, mxStringRec, mxTokArr, rStrm, XclExpSingleCellBase::Save(), and XclExpSingleCellBase::SetContSize().
| 
 | overridevirtual | 
Reimplemented from XclExpRecordBase.
Definition at line 938 of file xetable.cxx.
References ScRange::aEnd, ScFormulaCell::aPos, ScRange::aStart, ScAddress::Col(), Formula, ScFormulaCell::GetCode(), ScFormulaCell::GetErrCode(), XclXmlUtils::GetFormulaTypeAndValue(), ScFormulaCell::GetMatColsRows(), ScFormulaCell::GetMatrixFlag(), XclExpCellBase::GetXclPos(), ScAddress::IncCol(), ScAddress::IncRow(), lcl_GetStyleId(), mnCol, mnRow, mrScFmlaCell, mxAddRec, mxTokArr, NONE, Reference, ScAddress::Row(), rStrm, sType, XclXmlUtils::ToOString(), and XclXmlUtils::ToOUString().
| 
 | overrideprivatevirtual | 
Derived classes write the contents of the specified cell (without XF index).
Implements XclExpSingleCellBase.
Definition at line 1043 of file xetable.cxx.
References EXC_BIFF5, EXC_FORMULA_DEFAULTFLAGS, EXC_FORMULA_RECALC_ALWAYS, EXC_FORMULA_RES_BOOL, EXC_FORMULA_RES_EMPTY, EXC_FORMULA_RES_ERROR, EXC_FORMULA_RES_STRING, EXC_FORMULA_SHARED, EXC_ID_SHRFMLA, ScFormulaCell::GetErrCode(), ScFormulaCell::GetFormatType(), ScFormulaCell::GetString(), svl::SharedString::getString(), ScFormulaCell::GetValue(), XclTools::GetXclErrorCode(), mrScFmlaCell, mxAddRec, mxStringRec, mxTokArr, rStrm, and set_flag().
| 
 | private | 
Definition at line 449 of file xetable.hxx.
Referenced by SaveXml(), WriteContents(), and XclExpFormulaCell().
| 
 | private | 
The token array of the formula.
Definition at line 451 of file xetable.hxx.
Referenced by Save(), SaveXml(), WriteContents(), and XclExpFormulaCell().
| 
 | private | 
Additional record for matrix/shared formulas.
Definition at line 452 of file xetable.hxx.
Referenced by Save(), and WriteContents().
| 
 | private | 
The Calc formula cell.
Definition at line 450 of file xetable.hxx.
Referenced by Save(), SaveXml(), WriteContents(), and XclExpFormulaCell().