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

Represents a text cell record. More...

#include <xetable.hxx>

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

Public Member Functions

 XclExpLabelCell (const XclExpRoot &rRoot, const XclAddress &rXclPos, const ScPatternAttr *pPattern, sal_uInt32 nForcedXFId, const OUString &rStr)
 Constructs the record from an unformatted Calc string cell. More...
 
 XclExpLabelCell (const XclExpRoot &rRoot, const XclAddress &rXclPos, const ScPatternAttr *pPattern, sal_uInt32 nForcedXFId, const EditTextObject *pEditText, XclExpHyperlinkHelper &rHlinkHelper)
 Constructs the record from a formatted Calc edit cell. More...
 
virtual bool IsMultiLineText () const override
 Returns true if the cell contains multi-line text. 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 XclAddressGetXclPos () 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 bool TryMerge (const XclExpCellBase &rCell)
 Derived classes try to merge the contents of the passed cell to own data. 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)
 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...
 
- Public Member Functions inherited from XclExpRecordBase
 XclExpRecordBase ()
 
 XclExpRecordBase (XclExpRecordBase const &)
 
 XclExpRecordBase (XclExpRecordBase &&)
 
XclExpRecordBaseoperator= (XclExpRecordBase const &)
 
XclExpRecordBaseoperator= (XclExpRecordBase &&) noexcept
 
virtual ~XclExpRecordBase ()
 
- Public Member Functions inherited from salhelper::SimpleReferenceObject
 SimpleReferenceObject ()
 
void acquire ()
 
void release ()
 

Private Member Functions

void Init (const XclExpRoot &rRoot, const ScPatternAttr *pPattern, XclExpStringRef const &xText)
 Initializes the record contents. More...
 
virtual void WriteContents (XclExpStream &rStrm) override
 Derived classes write the contents of the specified cell (without XF index). More...
 

Private Attributes

XclExpStringRef mxText
 
sal_uInt32 mnSstIndex
 The cell text. More...
 
bool mbLineBreak
 Index into Shared String Table (only used for BIFF8). More...
 

Additional Inherited Members

- Static Public Member Functions inherited from salhelper::SimpleReferenceObject
static voidoperator new (std::size_t nSize)
 
static voidoperator 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...
 
- Protected Member Functions inherited from salhelper::SimpleReferenceObject
virtual ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE
 
- Protected Attributes inherited from salhelper::SimpleReferenceObject
oslInterlockedCount m_nCount
 

Detailed Description

Represents a text cell record.

May contain a BIFF2-BIFF7 LABEL record for a simple string, or a BIFF2-BIFF7 RSTRING record for a formatted string, or a BIFF8 LABELSST string for any string (simply stores a reference to the Shared String Table).

Definition at line 398 of file xetable.hxx.

Constructor & Destructor Documentation

XclExpLabelCell::XclExpLabelCell ( const XclExpRoot rRoot,
const XclAddress rXclPos,
const ScPatternAttr pPattern,
sal_uInt32  nForcedXFId,
const OUString &  rStr 
)
explicit

Constructs the record from an unformatted Calc string cell.

Definition at line 688 of file xetable.cxx.

References XclExpStringHelper::CreateCellString(), EXC_BIFF8, EXC_LABEL_MAXLEN, EXC_STR_MAXLEN, XclRoot::GetBiff(), Init(), and NONE.

XclExpLabelCell::XclExpLabelCell ( const XclExpRoot rRoot,
const XclAddress rXclPos,
const ScPatternAttr pPattern,
sal_uInt32  nForcedXFId,
const EditTextObject pEditText,
XclExpHyperlinkHelper rHlinkHelper 
)
explicit

Constructs the record from a formatted Calc edit cell.

Definition at line 699 of file xetable.cxx.

References XclExpStringHelper::CreateCellString(), EMPTY_OUSTRING, EXC_BIFF8, EXC_LABEL_MAXLEN, EXC_STR_MAXLEN, XclRoot::GetBiff(), Init(), and NONE.

Member Function Documentation

void XclExpLabelCell::Init ( const XclExpRoot rRoot,
const ScPatternAttr pPattern,
XclExpStringRef const &  xText 
)
private
bool XclExpLabelCell::IsMultiLineText ( ) const
overridevirtual

Returns true if the cell contains multi-line text.

Reimplemented from XclExpCellBase.

Definition at line 718 of file xetable.cxx.

References mbLineBreak, and mxText.

void XclExpLabelCell::SaveXml ( XclExpXmlStream rStrm)
overridevirtual
void XclExpLabelCell::WriteContents ( XclExpStream rStrm)
overrideprivatevirtual

Derived classes write the contents of the specified cell (without XF index).

Implements XclExpSingleCellBase.

Definition at line 792 of file xetable.cxx.

References DBG_ERROR_BIFF, EXC_BIFF5, EXC_BIFF8, XclRoot::GetBiff(), XclExpStream::GetRoot(), mnSstIndex, and mxText.

Member Data Documentation

bool XclExpLabelCell::mbLineBreak
private

Index into Shared String Table (only used for BIFF8).

Definition at line 425 of file xetable.hxx.

Referenced by Init(), and IsMultiLineText().

sal_uInt32 XclExpLabelCell::mnSstIndex
private

The cell text.

Definition at line 424 of file xetable.hxx.

Referenced by Init(), SaveXml(), and WriteContents().

XclExpStringRef XclExpLabelCell::mxText
private

Definition at line 423 of file xetable.hxx.

Referenced by Init(), IsMultiLineText(), and WriteContents().


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